diff --git a/main/packages/examples/react-demo/build/assets/index-DBjuYDsM.js b/main/packages/examples/react-demo/build/assets/index-DBjuYDsM.js new file mode 100644 index 000000000..d251b7b6a --- /dev/null +++ b/main/packages/examples/react-demo/build/assets/index-DBjuYDsM.js @@ -0,0 +1,580 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();function O5(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ly={exports:{}},eu={},cy={exports:{}},Pe={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Aa=Symbol.for("react.element"),$5=Symbol.for("react.portal"),N5=Symbol.for("react.fragment"),B5=Symbol.for("react.strict_mode"),D5=Symbol.for("react.profiler"),F5=Symbol.for("react.provider"),j5=Symbol.for("react.context"),U5=Symbol.for("react.forward_ref"),K5=Symbol.for("react.suspense"),H5=Symbol.for("react.memo"),z5=Symbol.for("react.lazy"),fp=Symbol.iterator;function V5(e){return e===null||typeof e!="object"?null:(e=fp&&e[fp]||e["@@iterator"],typeof e=="function"?e:null)}var uy={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},dy=Object.assign,fy={};function as(e,t,n){this.props=e,this.context=t,this.refs=fy,this.updater=n||uy}as.prototype.isReactComponent={};as.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};as.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function hy(){}hy.prototype=as.prototype;function Ph(e,t,n){this.props=e,this.context=t,this.refs=fy,this.updater=n||uy}var Lh=Ph.prototype=new hy;Lh.constructor=Ph;dy(Lh,as.prototype);Lh.isPureReactComponent=!0;var hp=Array.isArray,py=Object.prototype.hasOwnProperty,Ih={current:null},my={key:!0,ref:!0,__self:!0,__source:!0};function gy(e,t,n){var r,i={},o=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(o=""+t.key),t)py.call(t,r)&&!my.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1>>1,k=P[$];if(0>>1;$i(O,B))zi(Y,O)?(P[$]=Y,P[z]=B,$=z):(P[$]=O,P[N]=B,$=N);else if(zi(Y,B))P[$]=Y,P[z]=B,$=z;else break e}}return L}function i(P,L){var B=P.sortIndex-L.sortIndex;return B!==0?B:P.id-L.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var l=[],c=[],u=1,d=null,f=3,p=!1,g=!1,y=!1,S=typeof setTimeout=="function"?setTimeout:null,h=typeof clearTimeout=="function"?clearTimeout:null,v=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function w(P){for(var L=n(c);L!==null;){if(L.callback===null)r(c);else if(L.startTime<=P)r(c),L.sortIndex=L.expirationTime,t(l,L);else break;L=n(c)}}function T(P){if(y=!1,w(P),!g)if(n(l)!==null)g=!0,M(I);else{var L=n(c);L!==null&&A(T,L.startTime-P)}}function I(P,L){g=!1,y&&(y=!1,h(H),H=-1),p=!0;var B=f;try{for(w(L),d=n(l);d!==null&&(!(d.expirationTime>L)||P&&!q());){var $=d.callback;if(typeof $=="function"){d.callback=null,f=d.priorityLevel;var k=$(d.expirationTime<=L);L=e.unstable_now(),typeof k=="function"?d.callback=k:d===n(l)&&r(l),w(L)}else r(l);d=n(l)}if(d!==null)var x=!0;else{var N=n(c);N!==null&&A(T,N.startTime-L),x=!1}return x}finally{d=null,f=B,p=!1}}var j=!1,D=null,H=-1,G=5,K=-1;function q(){return!(e.unstable_now()-KP||125$?(P.sortIndex=B,t(c,P),n(l)===null&&P===n(c)&&(y?(h(H),H=-1):y=!0,A(T,B-$))):(P.sortIndex=k,t(l,P),g||p||(g=!0,M(I))),P},e.unstable_shouldYield=q,e.unstable_wrapCallback=function(P){var L=f;return function(){var B=f;f=L;try{return P.apply(this,arguments)}finally{f=B}}}})(by);Ey.exports=by;var n4=Ey.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var r4=ke,fn=n4;function pe(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Zd=Object.prototype.hasOwnProperty,i4=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,mp={},gp={};function o4(e){return Zd.call(gp,e)?!0:Zd.call(mp,e)?!1:i4.test(e)?gp[e]=!0:(mp[e]=!0,!1)}function s4(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function a4(e,t,n,r){if(t===null||typeof t>"u"||s4(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Vt(e,t,n,r,i,o,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=s}var Ct={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ct[e]=new Vt(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ct[t]=new Vt(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ct[e]=new Vt(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ct[e]=new Vt(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ct[e]=new Vt(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Ct[e]=new Vt(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Ct[e]=new Vt(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Ct[e]=new Vt(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Ct[e]=new Vt(e,5,!1,e.toLowerCase(),null,!1,!1)});var Oh=/[\-:]([a-z])/g;function $h(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(Oh,$h);Ct[t]=new Vt(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(Oh,$h);Ct[t]=new Vt(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(Oh,$h);Ct[t]=new Vt(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Ct[e]=new Vt(e,1,!1,e.toLowerCase(),null,!1,!1)});Ct.xlinkHref=new Vt("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Ct[e]=new Vt(e,1,!1,e.toLowerCase(),null,!0,!0)});function Nh(e,t,n,r){var i=Ct.hasOwnProperty(t)?Ct[t]:null;(i!==null?i.type!==0:r||!(2a||i[s]!==o[a]){var l=` +`+i[s].replace(" at new "," at ");return e.displayName&&l.includes("")&&(l=l.replace("",e.displayName)),l}while(1<=s&&0<=a);break}}}finally{Pu=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?ks(e):""}function l4(e){switch(e.tag){case 5:return ks(e.type);case 16:return ks("Lazy");case 13:return ks("Suspense");case 19:return ks("SuspenseList");case 0:case 2:case 15:return e=Lu(e.type,!1),e;case 11:return e=Lu(e.type.render,!1),e;case 1:return e=Lu(e.type,!0),e;default:return""}}function ef(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case bo:return"Fragment";case Eo:return"Portal";case Qd:return"Profiler";case Bh:return"StrictMode";case Jd:return"Suspense";case Xd:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case _y:return(e.displayName||"Context")+".Consumer";case Sy:return(e._context.displayName||"Context")+".Provider";case Dh:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Fh:return t=e.displayName||null,t!==null?t:ef(e.type)||"Memo";case Zr:t=e._payload,e=e._init;try{return ef(e(t))}catch{}}return null}function c4(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ef(t);case 8:return t===Bh?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ei(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function xy(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function u4(e){var t=xy(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(s){r=""+s,o.call(this,s)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(s){r=""+s},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Fa(e){e._valueTracker||(e._valueTracker=u4(e))}function Ay(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=xy(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function nc(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function tf(e,t){var n=t.checked;return Xe({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function vp(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ei(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function My(e,t){t=t.checked,t!=null&&Nh(e,"checked",t,!1)}function nf(e,t){My(e,t);var n=Ei(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?rf(e,t.type,n):t.hasOwnProperty("defaultValue")&&rf(e,t.type,Ei(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function wp(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function rf(e,t,n){(t!=="number"||nc(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var xs=Array.isArray;function Fo(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=ja.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function ea(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Os={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},d4=["Webkit","ms","Moz","O"];Object.keys(Os).forEach(function(e){d4.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Os[t]=Os[e]})});function Iy(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Os.hasOwnProperty(e)&&Os[e]?(""+t).trim():t+"px"}function Ry(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=Iy(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var f4=Xe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function af(e,t){if(t){if(f4[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(pe(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(pe(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(pe(61))}if(t.style!=null&&typeof t.style!="object")throw Error(pe(62))}}function lf(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var cf=null;function jh(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var uf=null,jo=null,Uo=null;function Cp(e){if(e=Pa(e)){if(typeof uf!="function")throw Error(pe(280));var t=e.stateNode;t&&(t=ou(t),uf(e.stateNode,e.type,t))}}function Oy(e){jo?Uo?Uo.push(e):Uo=[e]:jo=e}function $y(){if(jo){var e=jo,t=Uo;if(Uo=jo=null,Cp(e),t)for(e=0;e>>=0,e===0?32:31-(S4(e)/_4|0)|0}var Ua=64,Ka=4194304;function As(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function sc(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,s=n&268435455;if(s!==0){var a=s&~i;a!==0?r=As(a):(o&=s,o!==0&&(r=As(o)))}else s=n&~i,s!==0?r=As(s):o!==0&&(r=As(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===16&&(o&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Ma(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Kn(t),e[t]=n}function M4(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=Ns),Lp=" ",Ip=!1;function t2(e,t){switch(e){case"keyup":return n8.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function n2(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Co=!1;function i8(e,t){switch(e){case"compositionend":return n2(t);case"keypress":return t.which!==32?null:(Ip=!0,Lp);case"textInput":return e=t.data,e===Lp&&Ip?null:e;default:return null}}function o8(e,t){if(Co)return e==="compositionend"||!Gh&&t2(e,t)?(e=Xy(),xl=Vh=si=null,Co=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Np(n)}}function s2(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?s2(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function a2(){for(var e=window,t=nc();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=nc(e.document)}return t}function Yh(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function p8(e){var t=a2(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&s2(n.ownerDocument.documentElement,n)){if(r!==null&&Yh(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=Bp(n,o);var s=Bp(n,r);i&&s&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(s.node,s.offset)):(t.setEnd(s.node,s.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,So=null,gf=null,Ds=null,yf=!1;function Dp(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;yf||So==null||So!==nc(r)||(r=So,"selectionStart"in r&&Yh(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ds&&sa(Ds,r)||(Ds=r,r=cc(gf,"onSelect"),0xo||(e.current=Sf[xo],Sf[xo]=null,xo--)}function ze(e,t){xo++,Sf[xo]=e.current,e.current=t}var bi={},$t=xi(bi),Qt=xi(!1),Wi=bi;function Xo(e,t){var n=e.type.contextTypes;if(!n)return bi;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Jt(e){return e=e.childContextTypes,e!=null}function dc(){We(Qt),We($t)}function Vp(e,t,n){if($t.current!==bi)throw Error(pe(168));ze($t,t),ze(Qt,n)}function g2(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(pe(108,c4(e)||"Unknown",i));return Xe({},n,r)}function fc(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||bi,Wi=$t.current,ze($t,e),ze(Qt,Qt.current),!0}function Wp(e,t,n){var r=e.stateNode;if(!r)throw Error(pe(169));n?(e=g2(e,t,Wi),r.__reactInternalMemoizedMergedChildContext=e,We(Qt),We($t),ze($t,e)):We(Qt),ze(Qt,n)}var gr=null,su=!1,Vu=!1;function y2(e){gr===null?gr=[e]:gr.push(e)}function x8(e){su=!0,y2(e)}function Ai(){if(!Vu&&gr!==null){Vu=!0;var e=0,t=Ue;try{var n=gr;for(Ue=1;e>=s,i-=s,Cr=1<<32-Kn(t)+i|n<H?(G=D,D=null):G=D.sibling;var K=f(h,D,w[H],T);if(K===null){D===null&&(D=G);break}e&&D&&K.alternate===null&&t(h,D),v=o(K,v,H),j===null?I=K:j.sibling=K,j=K,D=G}if(H===w.length)return n(h,D),Ye&&Pi(h,H),I;if(D===null){for(;HH?(G=D,D=null):G=D.sibling;var q=f(h,D,K.value,T);if(q===null){D===null&&(D=G);break}e&&D&&q.alternate===null&&t(h,D),v=o(q,v,H),j===null?I=q:j.sibling=q,j=q,D=G}if(K.done)return n(h,D),Ye&&Pi(h,H),I;if(D===null){for(;!K.done;H++,K=w.next())K=d(h,K.value,T),K!==null&&(v=o(K,v,H),j===null?I=K:j.sibling=K,j=K);return Ye&&Pi(h,H),I}for(D=r(h,D);!K.done;H++,K=w.next())K=p(D,h,H,K.value,T),K!==null&&(e&&K.alternate!==null&&D.delete(K.key===null?H:K.key),v=o(K,v,H),j===null?I=K:j.sibling=K,j=K);return e&&D.forEach(function(W){return t(h,W)}),Ye&&Pi(h,H),I}function S(h,v,w,T){if(typeof w=="object"&&w!==null&&w.type===bo&&w.key===null&&(w=w.props.children),typeof w=="object"&&w!==null){switch(w.$$typeof){case Da:e:{for(var I=w.key,j=v;j!==null;){if(j.key===I){if(I=w.type,I===bo){if(j.tag===7){n(h,j.sibling),v=i(j,w.props.children),v.return=h,h=v;break e}}else if(j.elementType===I||typeof I=="object"&&I!==null&&I.$$typeof===Zr&&Yp(I)===j.type){n(h,j.sibling),v=i(j,w.props),v.ref=gs(h,j,w),v.return=h,h=v;break e}n(h,j);break}else t(h,j);j=j.sibling}w.type===bo?(v=Hi(w.props.children,h.mode,T,w.key),v.return=h,h=v):(T=Ol(w.type,w.key,w.props,null,h.mode,T),T.ref=gs(h,v,w),T.return=h,h=T)}return s(h);case Eo:e:{for(j=w.key;v!==null;){if(v.key===j)if(v.tag===4&&v.stateNode.containerInfo===w.containerInfo&&v.stateNode.implementation===w.implementation){n(h,v.sibling),v=i(v,w.children||[]),v.return=h,h=v;break e}else{n(h,v);break}else t(h,v);v=v.sibling}v=Xu(w,h.mode,T),v.return=h,h=v}return s(h);case Zr:return j=w._init,S(h,v,j(w._payload),T)}if(xs(w))return g(h,v,w,T);if(ds(w))return y(h,v,w,T);Ya(h,w)}return typeof w=="string"&&w!==""||typeof w=="number"?(w=""+w,v!==null&&v.tag===6?(n(h,v.sibling),v=i(v,w),v.return=h,h=v):(n(h,v),v=Ju(w,h.mode,T),v.return=h,h=v),s(h)):n(h,v)}return S}var ts=b2(!0),C2=b2(!1),mc=xi(null),gc=null,To=null,Xh=null;function e0(){Xh=To=gc=null}function t0(e){var t=mc.current;We(mc),e._currentValue=t}function xf(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Ho(e,t){gc=e,Xh=To=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Zt=!0),e.firstContext=null)}function Ln(e){var t=e._currentValue;if(Xh!==e)if(e={context:e,memoizedValue:t,next:null},To===null){if(gc===null)throw Error(pe(308));To=e,gc.dependencies={lanes:0,firstContext:e}}else To=To.next=e;return t}var $i=null;function n0(e){$i===null?$i=[e]:$i.push(e)}function S2(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,n0(t)):(n.next=i.next,i.next=n),t.interleaved=n,Rr(e,r)}function Rr(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Qr=!1;function r0(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function _2(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Tr(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function mi(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ne&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Rr(e,n)}return i=r.interleaved,i===null?(t.next=t,n0(r)):(t.next=i.next,i.next=t),r.interleaved=t,Rr(e,n)}function Ml(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Kh(e,n)}}function Zp(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,o=null;if(n=n.firstBaseUpdate,n!==null){do{var s={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};o===null?i=o=s:o=o.next=s,n=n.next}while(n!==null);o===null?i=o=t:o=o.next=t}else i=o=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:o,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function yc(e,t,n,r){var i=e.updateQueue;Qr=!1;var o=i.firstBaseUpdate,s=i.lastBaseUpdate,a=i.shared.pending;if(a!==null){i.shared.pending=null;var l=a,c=l.next;l.next=null,s===null?o=c:s.next=c,s=l;var u=e.alternate;u!==null&&(u=u.updateQueue,a=u.lastBaseUpdate,a!==s&&(a===null?u.firstBaseUpdate=c:a.next=c,u.lastBaseUpdate=l))}if(o!==null){var d=i.baseState;s=0,u=c=l=null,a=o;do{var f=a.lane,p=a.eventTime;if((r&f)===f){u!==null&&(u=u.next={eventTime:p,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var g=e,y=a;switch(f=t,p=n,y.tag){case 1:if(g=y.payload,typeof g=="function"){d=g.call(p,d,f);break e}d=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=y.payload,f=typeof g=="function"?g.call(p,d,f):g,f==null)break e;d=Xe({},d,f);break e;case 2:Qr=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,f=i.effects,f===null?i.effects=[a]:f.push(a))}else p={eventTime:p,lane:f,tag:a.tag,payload:a.payload,callback:a.callback,next:null},u===null?(c=u=p,l=d):u=u.next=p,s|=f;if(a=a.next,a===null){if(a=i.shared.pending,a===null)break;f=a,a=f.next,f.next=null,i.lastBaseUpdate=f,i.shared.pending=null}}while(!0);if(u===null&&(l=d),i.baseState=l,i.firstBaseUpdate=c,i.lastBaseUpdate=u,t=i.shared.interleaved,t!==null){i=t;do s|=i.lane,i=i.next;while(i!==t)}else o===null&&(i.shared.lanes=0);Yi|=s,e.lanes=s,e.memoizedState=d}}function Qp(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=qu.transition;qu.transition={};try{e(!1),t()}finally{Ue=n,qu.transition=r}}function U2(){return In().memoizedState}function P8(e,t,n){var r=yi(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},K2(e))H2(t,n);else if(n=S2(e,t,n,r),n!==null){var i=Kt();Hn(n,e,r,i),z2(n,t,r)}}function L8(e,t,n){var r=yi(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(K2(e))H2(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var s=t.lastRenderedState,a=o(s,n);if(i.hasEagerState=!0,i.eagerState=a,Vn(a,s)){var l=t.interleaved;l===null?(i.next=i,n0(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}n=S2(e,t,i,r),n!==null&&(i=Kt(),Hn(n,e,r,i),z2(n,t,r))}}function K2(e){var t=e.alternate;return e===Je||t!==null&&t===Je}function H2(e,t){Fs=wc=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function z2(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Kh(e,n)}}var Ec={readContext:Ln,useCallback:St,useContext:St,useEffect:St,useImperativeHandle:St,useInsertionEffect:St,useLayoutEffect:St,useMemo:St,useReducer:St,useRef:St,useState:St,useDebugValue:St,useDeferredValue:St,useTransition:St,useMutableSource:St,useSyncExternalStore:St,useId:St,unstable_isNewReconciler:!1},I8={readContext:Ln,useCallback:function(e,t){return Qn().memoizedState=[e,t===void 0?null:t],e},useContext:Ln,useEffect:Xp,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Pl(4194308,4,N2.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Pl(4194308,4,e,t)},useInsertionEffect:function(e,t){return Pl(4,2,e,t)},useMemo:function(e,t){var n=Qn();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Qn();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=P8.bind(null,Je,e),[r.memoizedState,e]},useRef:function(e){var t=Qn();return e={current:e},t.memoizedState=e},useState:Jp,useDebugValue:d0,useDeferredValue:function(e){return Qn().memoizedState=e},useTransition:function(){var e=Jp(!1),t=e[0];return e=T8.bind(null,e[1]),Qn().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Je,i=Qn();if(Ye){if(n===void 0)throw Error(pe(407));n=n()}else{if(n=t(),mt===null)throw Error(pe(349));Gi&30||M2(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,Xp(P2.bind(null,r,o,e),[e]),r.flags|=2048,pa(9,T2.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Qn(),t=mt.identifierPrefix;if(Ye){var n=Sr,r=Cr;n=(r&~(1<<32-Kn(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=fa++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),n==="select"&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[Xn]=t,e[ca]=r,ev(e,t,!1,!1),t.stateNode=e;e:{switch(s=lf(n,r),n){case"dialog":Ve("cancel",e),Ve("close",e),i=r;break;case"iframe":case"object":case"embed":Ve("load",e),i=r;break;case"video":case"audio":for(i=0;iis&&(t.flags|=128,r=!0,ys(o,!1),t.lanes=4194304)}else{if(!r)if(e=vc(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),ys(o,!0),o.tail===null&&o.tailMode==="hidden"&&!s.alternate&&!Ye)return _t(t),null}else 2*rt()-o.renderingStartTime>is&&n!==1073741824&&(t.flags|=128,r=!0,ys(o,!1),t.lanes=4194304);o.isBackwards?(s.sibling=t.child,t.child=s):(n=o.last,n!==null?n.sibling=s:t.child=s,o.last=s)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=rt(),t.sibling=null,n=Qe.current,ze(Qe,r?n&1|2:n&1),t):(_t(t),null);case 22:case 23:return y0(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?sn&1073741824&&(_t(t),t.subtreeFlags&6&&(t.flags|=8192)):_t(t),null;case 24:return null;case 25:return null}throw Error(pe(156,t.tag))}function j8(e,t){switch(Qh(t),t.tag){case 1:return Jt(t.type)&&dc(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return ns(),We(Qt),We($t),s0(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return o0(t),null;case 13:if(We(Qe),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(pe(340));es()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return We(Qe),null;case 4:return ns(),null;case 10:return t0(t.type._context),null;case 22:case 23:return y0(),null;case 24:return null;default:return null}}var Qa=!1,It=!1,U8=typeof WeakSet=="function"?WeakSet:Set,we=null;function Po(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){tt(e,t,r)}else n.current=null}function $f(e,t,n){try{n()}catch(r){tt(e,t,r)}}var u1=!1;function K8(e,t){if(vf=ac,e=a2(),Yh(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var s=0,a=-1,l=-1,c=0,u=0,d=e,f=null;t:for(;;){for(var p;d!==n||i!==0&&d.nodeType!==3||(a=s+i),d!==o||r!==0&&d.nodeType!==3||(l=s+r),d.nodeType===3&&(s+=d.nodeValue.length),(p=d.firstChild)!==null;)f=d,d=p;for(;;){if(d===e)break t;if(f===n&&++c===i&&(a=s),f===o&&++u===r&&(l=s),(p=d.nextSibling)!==null)break;d=f,f=d.parentNode}d=p}n=a===-1||l===-1?null:{start:a,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(wf={focusedElem:e,selectionRange:n},ac=!1,we=t;we!==null;)if(t=we,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,we=e;else for(;we!==null;){t=we;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var y=g.memoizedProps,S=g.memoizedState,h=t.stateNode,v=h.getSnapshotBeforeUpdate(t.elementType===t.type?y:Nn(t.type,y),S);h.__reactInternalSnapshotBeforeUpdate=v}break;case 3:var w=t.stateNode.containerInfo;w.nodeType===1?w.textContent="":w.nodeType===9&&w.documentElement&&w.removeChild(w.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(pe(163))}}catch(T){tt(t,t.return,T)}if(e=t.sibling,e!==null){e.return=t.return,we=e;break}we=t.return}return g=u1,u1=!1,g}function js(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&$f(t,n,o)}i=i.next}while(i!==r)}}function cu(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Nf(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function rv(e){var t=e.alternate;t!==null&&(e.alternate=null,rv(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Xn],delete t[ca],delete t[Cf],delete t[_8],delete t[k8])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function iv(e){return e.tag===5||e.tag===3||e.tag===4}function d1(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||iv(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Bf(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=uc));else if(r!==4&&(e=e.child,e!==null))for(Bf(e,t,n),e=e.sibling;e!==null;)Bf(e,t,n),e=e.sibling}function Df(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Df(e,t,n),e=e.sibling;e!==null;)Df(e,t,n),e=e.sibling}var wt=null,Bn=!1;function Dr(e,t,n){for(n=n.child;n!==null;)ov(e,t,n),n=n.sibling}function ov(e,t,n){if(lr&&typeof lr.onCommitFiberUnmount=="function")try{lr.onCommitFiberUnmount(tu,n)}catch{}switch(n.tag){case 5:It||Po(n,t);case 6:var r=wt,i=Bn;wt=null,Dr(e,t,n),wt=r,Bn=i,wt!==null&&(Bn?(e=wt,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):wt.removeChild(n.stateNode));break;case 18:wt!==null&&(Bn?(e=wt,n=n.stateNode,e.nodeType===8?zu(e.parentNode,n):e.nodeType===1&&zu(e,n),ia(e)):zu(wt,n.stateNode));break;case 4:r=wt,i=Bn,wt=n.stateNode.containerInfo,Bn=!0,Dr(e,t,n),wt=r,Bn=i;break;case 0:case 11:case 14:case 15:if(!It&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,s=o.destroy;o=o.tag,s!==void 0&&(o&2||o&4)&&$f(n,t,s),i=i.next}while(i!==r)}Dr(e,t,n);break;case 1:if(!It&&(Po(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){tt(n,t,a)}Dr(e,t,n);break;case 21:Dr(e,t,n);break;case 22:n.mode&1?(It=(r=It)||n.memoizedState!==null,Dr(e,t,n),It=r):Dr(e,t,n);break;default:Dr(e,t,n)}}function f1(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new U8),t.forEach(function(r){var i=Q8.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function Rn(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=s),r&=~o}if(r=i,r=rt()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*z8(r/1960))-r,10e?16:e,ai===null)var r=!1;else{if(e=ai,ai=null,Sc=0,Ne&6)throw Error(pe(331));var i=Ne;for(Ne|=4,we=e.current;we!==null;){var o=we,s=o.child;if(we.flags&16){var a=o.deletions;if(a!==null){for(var l=0;lrt()-m0?Ki(e,0):p0|=n),Xt(e,t)}function hv(e,t){t===0&&(e.mode&1?(t=Ka,Ka<<=1,!(Ka&130023424)&&(Ka=4194304)):t=1);var n=Kt();e=Rr(e,t),e!==null&&(Ma(e,t,n),Xt(e,n))}function Z8(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),hv(e,n)}function Q8(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(pe(314))}r!==null&&r.delete(t),hv(e,n)}var pv;pv=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Qt.current)Zt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Zt=!1,D8(e,t,n);Zt=!!(e.flags&131072)}else Zt=!1,Ye&&t.flags&1048576&&v2(t,pc,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Ll(e,t),e=t.pendingProps;var i=Xo(t,$t.current);Ho(t,n),i=l0(null,t,r,e,i,n);var o=c0();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Jt(r)?(o=!0,fc(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,r0(t),i.updater=lu,t.stateNode=i,i._reactInternals=t,Mf(t,r,e,n),t=Lf(null,t,r,!0,o,n)):(t.tag=0,Ye&&o&&Zh(t),Dt(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Ll(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=X8(r),e=Nn(r,e),i){case 0:t=Pf(null,t,r,e,n);break e;case 1:t=a1(null,t,r,e,n);break e;case 11:t=o1(null,t,r,e,n);break e;case 14:t=s1(null,t,r,Nn(r.type,e),n);break e}throw Error(pe(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Nn(r,i),Pf(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Nn(r,i),a1(e,t,r,i,n);case 3:e:{if(Q2(t),e===null)throw Error(pe(387));r=t.pendingProps,o=t.memoizedState,i=o.element,_2(e,t),yc(t,r,null,n);var s=t.memoizedState;if(r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=rs(Error(pe(423)),t),t=l1(e,t,r,n,i);break e}else if(r!==i){i=rs(Error(pe(424)),t),t=l1(e,t,r,n,i);break e}else for(un=pi(t.stateNode.containerInfo.firstChild),dn=t,Ye=!0,Fn=null,n=C2(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(es(),r===i){t=Or(e,t,n);break e}Dt(e,t,r,n)}t=t.child}return t;case 5:return k2(t),e===null&&kf(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,s=i.children,Ef(r,i)?s=null:o!==null&&Ef(r,o)&&(t.flags|=32),Z2(e,t),Dt(e,t,s,n),t.child;case 6:return e===null&&kf(t),null;case 13:return J2(e,t,n);case 4:return i0(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=ts(t,null,r,n):Dt(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Nn(r,i),o1(e,t,r,i,n);case 7:return Dt(e,t,t.pendingProps,n),t.child;case 8:return Dt(e,t,t.pendingProps.children,n),t.child;case 12:return Dt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,s=i.value,ze(mc,r._currentValue),r._currentValue=s,o!==null)if(Vn(o.value,s)){if(o.children===i.children&&!Qt.current){t=Or(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var a=o.dependencies;if(a!==null){s=o.child;for(var l=a.firstContext;l!==null;){if(l.context===r){if(o.tag===1){l=Tr(-1,n&-n),l.tag=2;var c=o.updateQueue;if(c!==null){c=c.shared;var u=c.pending;u===null?l.next=l:(l.next=u.next,u.next=l),c.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),xf(o.return,n,t),a.lanes|=n;break}l=l.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(pe(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),xf(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Dt(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Ho(t,n),i=Ln(i),r=r(i),t.flags|=1,Dt(e,t,r,n),t.child;case 14:return r=t.type,i=Nn(r,t.pendingProps),i=Nn(r.type,i),s1(e,t,r,i,n);case 15:return G2(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Nn(r,i),Ll(e,t),t.tag=1,Jt(r)?(e=!0,fc(t)):e=!1,Ho(t,n),V2(t,r,i),Mf(t,r,i,n),Lf(null,t,r,!0,e,n);case 19:return X2(e,t,n);case 22:return Y2(e,t,n)}throw Error(pe(156,t.tag))};function mv(e,t){return Ky(e,t)}function J8(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Mn(e,t,n,r){return new J8(e,t,n,r)}function w0(e){return e=e.prototype,!(!e||!e.isReactComponent)}function X8(e){if(typeof e=="function")return w0(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Dh)return 11;if(e===Fh)return 14}return 2}function vi(e,t){var n=e.alternate;return n===null?(n=Mn(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Ol(e,t,n,r,i,o){var s=2;if(r=e,typeof e=="function")w0(e)&&(s=1);else if(typeof e=="string")s=5;else e:switch(e){case bo:return Hi(n.children,i,o,t);case Bh:s=8,i|=8;break;case Qd:return e=Mn(12,n,t,i|2),e.elementType=Qd,e.lanes=o,e;case Jd:return e=Mn(13,n,t,i),e.elementType=Jd,e.lanes=o,e;case Xd:return e=Mn(19,n,t,i),e.elementType=Xd,e.lanes=o,e;case ky:return du(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Sy:s=10;break e;case _y:s=9;break e;case Dh:s=11;break e;case Fh:s=14;break e;case Zr:s=16,r=null;break e}throw Error(pe(130,e==null?e:typeof e,""))}return t=Mn(s,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function Hi(e,t,n,r){return e=Mn(7,e,r,t),e.lanes=n,e}function du(e,t,n,r){return e=Mn(22,e,r,t),e.elementType=ky,e.lanes=n,e.stateNode={isHidden:!1},e}function Ju(e,t,n){return e=Mn(6,e,null,t),e.lanes=n,e}function Xu(e,t,n){return t=Mn(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function eE(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ru(0),this.expirationTimes=Ru(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ru(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function E0(e,t,n,r,i,o,s,a,l){return e=new eE(e,t,n,a,l),t===1?(t=1,o===!0&&(t|=8)):t=0,o=Mn(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},r0(o),e}function tE(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(wv)}catch(e){console.error(e)}}wv(),wy.exports=hn;var sE=wy.exports,Ev,E1=sE;Ev=E1.createRoot,E1.hydrateRoot;const aE="modulepreload",lE=function(e,t){return new URL(e,t).href},b1={},cE=function(t,n,r){let i=Promise.resolve();if(n&&n.length>0){const s=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),l=(a==null?void 0:a.nonce)||(a==null?void 0:a.getAttribute("nonce"));i=Promise.allSettled(n.map(c=>{if(c=lE(c,r),c in b1)return;b1[c]=!0;const u=c.endsWith(".css"),d=u?'[rel="stylesheet"]':"";if(!!r)for(let g=s.length-1;g>=0;g--){const y=s[g];if(y.href===c&&(!u||y.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${c}"]${d}`))return;const p=document.createElement("link");if(p.rel=u?"stylesheet":aE,u||(p.as="script"),p.crossOrigin="",p.href=c,l&&p.setAttribute("nonce",l),document.head.appendChild(p),u)return new Promise((g,y)=>{p.addEventListener("load",g),p.addEventListener("error",()=>y(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(s){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=s,window.dispatchEvent(a),!a.defaultPrevented)throw s}return i.then(s=>{for(const a of s||[])a.status==="rejected"&&o(a.reason);return t().catch(o)})};var Qi=typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{},C1=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Hf={exports:{}};(function(e,t){var n=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||C1!==void 0&&C1,r=function(){function o(){this.fetch=!1,this.DOMException=n.DOMException}return o.prototype=n,new o}();(function(o){(function(s){var a=o!==void 0&&o||typeof self<"u"&&self||a!==void 0&&a,l="URLSearchParams"in a,c="Symbol"in a&&"iterator"in Symbol,u="FileReader"in a&&"Blob"in a&&function(){try{return new Blob,!0}catch{return!1}}(),d="FormData"in a,f="ArrayBuffer"in a;if(f)var p=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],g=ArrayBuffer.isView||function(m){return m&&p.indexOf(Object.prototype.toString.call(m))>-1};function y(m){if(typeof m!="string"&&(m=String(m)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(m)||m==="")throw new TypeError('Invalid character in header field name: "'+m+'"');return m.toLowerCase()}function S(m){return typeof m!="string"&&(m=String(m)),m}function h(m){var _={next:function(){var M=m.shift();return{done:M===void 0,value:M}}};return c&&(_[Symbol.iterator]=function(){return _}),_}function v(m){this.map={},m instanceof v?m.forEach(function(_,M){this.append(M,_)},this):Array.isArray(m)?m.forEach(function(_){this.append(_[0],_[1])},this):m&&Object.getOwnPropertyNames(m).forEach(function(_){this.append(_,m[_])},this)}function w(m){if(m.bodyUsed)return Promise.reject(new TypeError("Already read"));m.bodyUsed=!0}function T(m){return new Promise(function(_,M){m.onload=function(){_(m.result)},m.onerror=function(){M(m.error)}})}function I(m){var _=new FileReader,M=T(_);return _.readAsArrayBuffer(m),M}function j(m){if(m.slice)return m.slice(0);var _=new Uint8Array(m.byteLength);return _.set(new Uint8Array(m)),_.buffer}function D(){return this.bodyUsed=!1,this._initBody=function(m){var _;this.bodyUsed=this.bodyUsed,this._bodyInit=m,m?typeof m=="string"?this._bodyText=m:u&&Blob.prototype.isPrototypeOf(m)?this._bodyBlob=m:d&&FormData.prototype.isPrototypeOf(m)?this._bodyFormData=m:l&&URLSearchParams.prototype.isPrototypeOf(m)?this._bodyText=m.toString():f&&u&&(_=m)&&DataView.prototype.isPrototypeOf(_)?(this._bodyArrayBuffer=j(m.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):f&&(ArrayBuffer.prototype.isPrototypeOf(m)||g(m))?this._bodyArrayBuffer=j(m):this._bodyText=m=Object.prototype.toString.call(m):this._bodyText="",this.headers.get("content-type")||(typeof m=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):l&&URLSearchParams.prototype.isPrototypeOf(m)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},u&&(this.blob=function(){var m=w(this);if(m)return m;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){if(this._bodyArrayBuffer){var m=w(this);return m||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}return this.blob().then(I)}),this.text=function(){var m,_,M,A=w(this);if(A)return A;if(this._bodyBlob)return m=this._bodyBlob,_=new FileReader,M=T(_),_.readAsText(m),M;if(this._bodyArrayBuffer)return Promise.resolve(function(P){for(var L=new Uint8Array(P),B=new Array(L.length),$=0;$-1?A:M),this.mode=_.mode||this.mode||null,this.signal=_.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&P)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(P),!(this.method!=="GET"&&this.method!=="HEAD"||_.cache!=="no-store"&&_.cache!=="no-cache")){var L=/([?&])_=[^&]*/;L.test(this.url)?this.url=this.url.replace(L,"$1_="+new Date().getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+new Date().getTime()}}function K(m){var _=new FormData;return m.trim().split("&").forEach(function(M){if(M){var A=M.split("="),P=A.shift().replace(/\+/g," "),L=A.join("=").replace(/\+/g," ");_.append(decodeURIComponent(P),decodeURIComponent(L))}}),_}function q(m,_){if(!(this instanceof q))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');_||(_={}),this.type="default",this.status=_.status===void 0?200:_.status,this.ok=this.status>=200&&this.status<300,this.statusText=_.statusText===void 0?"":""+_.statusText,this.headers=new v(_.headers),this.url=_.url||"",this._initBody(m)}G.prototype.clone=function(){return new G(this,{body:this._bodyInit})},D.call(G.prototype),D.call(q.prototype),q.prototype.clone=function(){return new q(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new v(this.headers),url:this.url})},q.error=function(){var m=new q(null,{status:0,statusText:""});return m.type="error",m};var W=[301,302,303,307,308];q.redirect=function(m,_){if(W.indexOf(_)===-1)throw new RangeError("Invalid status code");return new q(null,{status:_,headers:{location:m}})},s.DOMException=a.DOMException;try{new s.DOMException}catch{s.DOMException=function(_,M){this.message=_,this.name=M;var A=Error(_);this.stack=A.stack},s.DOMException.prototype=Object.create(Error.prototype),s.DOMException.prototype.constructor=s.DOMException}function C(m,_){return new Promise(function(M,A){var P=new G(m,_);if(P.signal&&P.signal.aborted)return A(new s.DOMException("Aborted","AbortError"));var L=new XMLHttpRequest;function B(){L.abort()}L.onload=function(){var $,k,x={status:L.status,statusText:L.statusText,headers:($=L.getAllResponseHeaders()||"",k=new v,$.replace(/\r?\n[\t ]+/g," ").split("\r").map(function(O){return O.indexOf(` +`)===0?O.substr(1,O.length):O}).forEach(function(O){var z=O.split(":"),Y=z.shift().trim();if(Y){var V=z.join(":").trim();k.append(Y,V)}}),k)};x.url="responseURL"in L?L.responseURL:x.headers.get("X-Request-URL");var N="response"in L?L.response:L.responseText;setTimeout(function(){M(new q(N,x))},0)},L.onerror=function(){setTimeout(function(){A(new TypeError("Network request failed"))},0)},L.ontimeout=function(){setTimeout(function(){A(new TypeError("Network request failed"))},0)},L.onabort=function(){setTimeout(function(){A(new s.DOMException("Aborted","AbortError"))},0)},L.open(P.method,function($){try{return $===""&&a.location.href?a.location.href:$}catch{return $}}(P.url),!0),P.credentials==="include"?L.withCredentials=!0:P.credentials==="omit"&&(L.withCredentials=!1),"responseType"in L&&(u?L.responseType="blob":f&&P.headers.get("Content-Type")&&P.headers.get("Content-Type").indexOf("application/octet-stream")!==-1&&(L.responseType="arraybuffer")),!_||typeof _.headers!="object"||_.headers instanceof v?P.headers.forEach(function($,k){L.setRequestHeader(k,$)}):Object.getOwnPropertyNames(_.headers).forEach(function($){L.setRequestHeader($,S(_.headers[$]))}),P.signal&&(P.signal.addEventListener("abort",B),L.onreadystatechange=function(){L.readyState===4&&P.signal.removeEventListener("abort",B)}),L.send(P._bodyInit===void 0?null:P._bodyInit)})}C.polyfill=!0,a.fetch||(a.fetch=C,a.Headers=v,a.Request=G,a.Response=q),s.Headers=v,s.Request=G,s.Response=q,s.fetch=C})({})})(r),r.fetch.ponyfill=!0,delete r.fetch.polyfill;var i=n.fetch?n:r;(t=i.fetch).default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t})(Hf,Hf.exports);var bv=Hf.exports;function Cv(){throw new Error("setTimeout has not been defined")}function Sv(){throw new Error("clearTimeout has not been defined")}var zr=Cv,Vr=Sv;function _v(e){if(zr===setTimeout)return setTimeout(e,0);if((zr===Cv||!zr)&&setTimeout)return zr=setTimeout,setTimeout(e,0);try{return zr(e,0)}catch{try{return zr.call(null,e,0)}catch{return zr.call(this,e,0)}}}typeof Qi.setTimeout=="function"&&(zr=setTimeout),typeof Qi.clearTimeout=="function"&&(Vr=clearTimeout);var Bi,_r=[],Vo=!1,$l=-1;function uE(){Vo&&Bi&&(Vo=!1,Bi.length?_r=Bi.concat(_r):$l=-1,_r.length&&kv())}function kv(){if(!Vo){var e=_v(uE);Vo=!0;for(var t=_r.length;t;){for(Bi=_r,_r=[];++$l1)for(var n=1;n=1.5*c;return Math.round(a/c)+" "+u+(d?"s":"")}return ed=function(a,l){l=l||{};var c=typeof a;if(c==="string"&&a.length>0)return function(u){if(!((u=String(u)).length>100)){var d=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(d){var f=parseFloat(d[1]);switch((d[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return f*o;case"weeks":case"week":case"w":return f*i;case"days":case"day":case"d":return f*r;case"hours":case"hour":case"hrs":case"hr":case"h":return f*n;case"minutes":case"minute":case"mins":case"min":case"m":return f*t;case"seconds":case"second":case"secs":case"sec":case"s":return f*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return f;default:return}}}}(a);if(c==="number"&&isFinite(a))return l.long?function(u){var d=Math.abs(u);return d>=r?s(u,d,r,"day"):d>=n?s(u,d,n,"hour"):d>=t?s(u,d,t,"minute"):d>=e?s(u,d,e,"second"):u+" ms"}(a):function(u){var d=Math.abs(u);return d>=r?Math.round(u/r)+"d":d>=n?Math.round(u/n)+"h":d>=t?Math.round(u/t)+"m":d>=e?Math.round(u/e)+"s":u+"ms"}(a);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(a))},ed}var bE=function(e){function t(i){let o,s,a,l=null;function c(...u){if(!c.enabled)return;const d=c,f=Number(new Date),p=f-(o||f);d.diff=p,d.prev=o,d.curr=f,o=f,u[0]=t.coerce(u[0]),typeof u[0]!="string"&&u.unshift("%O");let g=0;u[0]=u[0].replace(/%([a-zA-Z%])/g,(y,S)=>{if(y==="%%")return"%";g++;const h=t.formatters[S];if(typeof h=="function"){const v=u[g];y=h.call(d,v),u.splice(g,1),g--}return y}),t.formatArgs.call(d,u),(d.log||t.log).apply(d,u)}return c.namespace=i,c.useColors=t.useColors(),c.color=t.selectColor(i),c.extend=n,c.destroy=t.destroy,Object.defineProperty(c,"enabled",{enumerable:!0,configurable:!1,get:()=>l!==null?l:(s!==t.namespaces&&(s=t.namespaces,a=t.enabled(i)),a),set:u=>{l=u}}),typeof t.init=="function"&&t.init(c),c}function n(i,o){const s=t(this.namespace+(o===void 0?":":o)+i);return s.log=this.log,s}function r(i){return i.toString().substring(2,i.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(i){return i instanceof Error?i.stack||i.message:i},t.disable=function(){const i=[...t.names.map(r),...t.skips.map(r).map(o=>"-"+o)].join(",");return t.enable(""),i},t.enable=function(i){let o;t.save(i),t.namespaces=i,t.names=[],t.skips=[];const s=(typeof i=="string"?i:"").split(/[\s,]+/),a=s.length;for(o=0;o{t[i]=e[i]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(i){let o=0;for(let s=0;s{a!=="%%"&&(o++,a==="%c"&&(s=o))}),r.splice(s,0,i)},t.save=function(r){try{r?t.storage.setItem("debug",r):t.storage.removeItem("debug")}catch{}},t.load=function(){let r;try{r=t.storage.getItem("debug")}catch{}return!r&&xn!==void 0&&"env"in xn&&(r=xn.env.DEBUG),r},t.useColors=function(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch{}}(),t.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=bE(t);const{formatters:n}=e.exports;n.j=function(r){try{return JSON.stringify(r)}catch(i){return"[UnexpectedJSONParseError]: "+i.message}}})(zf,zf.exports);var _1,Ut=zf.exports,Ia={exports:{}};_1=Ia,function(e){var t=Object.hasOwnProperty,n=Array.isArray?Array.isArray:function(C){return Object.prototype.toString.call(C)==="[object Array]"},r=typeof xn=="object"&&typeof xn.nextTick=="function",i=typeof Symbol=="function",o=typeof Reflect=="object",s=typeof setImmediate=="function"?setImmediate:setTimeout,a=i?o&&typeof Reflect.ownKeys=="function"?Reflect.ownKeys:function(C){var m=Object.getOwnPropertyNames(C);return m.push.apply(m,Object.getOwnPropertySymbols(C)),m}:Object.keys;function l(){this._events={},this._conf&&c.call(this,this._conf)}function c(C){C&&(this._conf=C,C.delimiter&&(this.delimiter=C.delimiter),C.maxListeners!==e&&(this._maxListeners=C.maxListeners),C.wildcard&&(this.wildcard=C.wildcard),C.newListener&&(this._newListener=C.newListener),C.removeListener&&(this._removeListener=C.removeListener),C.verboseMemoryLeak&&(this.verboseMemoryLeak=C.verboseMemoryLeak),C.ignoreErrors&&(this.ignoreErrors=C.ignoreErrors),this.wildcard&&(this.listenerTree={}))}function u(C,m){var _="(node) warning: possible EventEmitter memory leak detected. "+C+" listeners added. Use emitter.setMaxListeners() to increase limit.";if(this.verboseMemoryLeak&&(_+=" Event name: "+m+"."),xn!==void 0&&xn.emitWarning){var M=new Error(_);M.name="MaxListenersExceededWarning",M.emitter=this,M.count=C,xn.emitWarning(M)}else console.error(_),console.trace&&console.trace()}var d=function(C,m,_){var M=arguments.length;switch(M){case 0:return[];case 1:return[C];case 2:return[C,m];case 3:return[C,m,_];default:for(var A=new Array(M);M--;)A[M]=arguments[M];return A}};function f(C,m){for(var _={},M=C.length,A=0,P=0;P0;)if(B===C[$])return P;L(m)}}Object.assign(p.prototype,{subscribe:function(C,m,_){var M=this,A=this._target,P=this._emitter,L=this._listeners,B=function(){var $=d.apply(null,arguments),k={data:$,name:m,original:C};_?_.call(A,k)!==!1&&P.emit.apply(P,[k.name].concat($)):P.emit.apply(P,[m].concat($))};if(L[C])throw Error("Event '"+C+"' is already listening");this._listenersCount++,P._newListener&&P._removeListener&&!M._onNewListener?(this._onNewListener=function($){$===m&&L[C]===null&&(L[C]=B,M._on.call(A,C,B))},P.on("newListener",this._onNewListener),this._onRemoveListener=function($){$===m&&!P.hasListeners($)&&L[C]&&(L[C]=null,M._off.call(A,C,B))},L[C]=null,P.on("removeListener",this._onRemoveListener)):(L[C]=B,M._on.call(A,C,B))},unsubscribe:function(C){var m,_,M,A=this,P=this._listeners,L=this._emitter,B=this._off,$=this._target;if(C&&typeof C!="string")throw TypeError("event must be a string");function k(){A._onNewListener&&(L.off("newListener",A._onNewListener),L.off("removeListener",A._onRemoveListener),A._onNewListener=null,A._onRemoveListener=null);var x=T.call(L,A);L._observers.splice(x,1)}if(C){if(!(m=P[C]))return;B.call($,C,m),delete P[C],--this._listenersCount||k()}else{for(M=(_=a(P)).length;M-- >0;)C=_[M],B.call($,C,P[C]);this._listeners={},this._listenersCount=0,k()}}});var h=S(["function"]),v=S(["object","function"]);function w(C,m,_){var M,A,P,L=0,B=new C(function($,k,x){function N(){A&&(A=null),L&&(clearTimeout(L),L=0)}_=g(_,{timeout:0,overload:!1},{timeout:function(Y,V){return(typeof(Y*=1)!="number"||Y<0||!Number.isFinite(Y))&&V("timeout must be a positive number"),Y}}),M=!_.overload&&typeof C.prototype.cancel=="function"&&typeof x=="function";var O=function(Y){N(),$(Y)},z=function(Y){N(),k(Y)};M?m(O,z,x):(A=[function(Y){z(Y||Error("canceled"))}],m(O,z,function(Y){if(P)throw Error("Unable to subscribe on cancel event asynchronously");if(typeof Y!="function")throw TypeError("onCancel callback must be a function");A.push(Y)}),P=!0),_.timeout>0&&(L=setTimeout(function(){var Y=Error("timeout");Y.code="ETIMEDOUT",L=0,B.cancel(Y),k(Y)},_.timeout))});return M||(B.cancel=function($){if(A){for(var k=A.length,x=1;x0;)(O=te[B])!=="_listeners"&&(ie=I(C,m,_[O],M+1,A))&&(ne?ne.push.apply(ne,ie):ne=ie);return ne}if(ge==="**"){for((Q=M+1===A||M+2===A&&oe==="*")&&_._listeners&&(ne=I(C,m,_,A,A)),B=(te=a(_)).length;B-- >0;)(O=te[B])!=="_listeners"&&(O==="*"||O==="**"?(_[O]._listeners&&!Q&&(ie=I(C,m,_[O],A,A))&&(ne?ne.push.apply(ne,ie):ne=ie),ie=I(C,m,_[O],M,A)):ie=I(C,m,_[O],O===oe?M+2:M,A),ie&&(ne?ne.push.apply(ne,ie):ne=ie));return ne}_[ge]&&(ne=I(C,m,_[ge],M+1,A))}if((z=_["*"])&&I(C,m,z,M+1,A),Y=_["**"])if(M0;)(O=te[B])!=="_listeners"&&(O===oe?I(C,m,Y[O],M+2,A):O===ge?I(C,m,Y[O],M+1,A):((V={})[O]=Y[O],I(C,m,{"**":V},M+1,A)));else Y._listeners?I(C,m,Y,A,A):Y["*"]&&Y["*"]._listeners&&I(C,m,Y["*"],A,A);return ne}function j(C,m,_){var M,A,P=0,L=0,B=this.delimiter,$=B.length;if(typeof C=="string")if((M=C.indexOf(B))!==-1){A=new Array(5);do A[P++]=C.slice(L,M),L=M+$;while((M=C.indexOf(B,L))!==-1);A[P++]=C.slice(L)}else A=[C],P=1;else A=C,P=C.length;if(P>1){for(M=0;M+10&&x._listeners.length>this._maxListeners&&(x._listeners.warned=!0,u.call(this,x._listeners.length,k))):x._listeners=m,!0;return!0}function D(C,m,_,M){for(var A,P,L,B,$=a(C),k=$.length,x=C._listeners;k-- >0;)A=C[P=$[k]],L=P==="_listeners"?_:_?_.concat(P):[P],B=M||typeof P=="symbol",x&&m.push(B?L:L.join(this.delimiter)),typeof A=="object"&&D.call(this,A,m,L,B);return m}function H(C){for(var m,_,M,A=a(C),P=A.length;P-- >0;)(m=C[_=A[P]])&&(M=!0,_==="_listeners"||H(m)||delete C[_]);return M}function G(C,m,_){this.emitter=C,this.event=m,this.listener=_}function K(C,m,_){if(_===!0)A=!0;else if(_===!1)M=!0;else{if(!_||typeof _!="object")throw TypeError("options should be an object or true");var M=_.async,A=_.promisify,P=_.nextTick,L=_.objectify}if(M||P||A){var B=m,$=m._origin||m;if(P&&!r)throw Error("process.nextTick is not supported");A===e&&(A=m.constructor.name==="AsyncFunction"),m=function(){var k=arguments,x=this,N=this.event;return A?P?Promise.resolve():new Promise(function(O){s(O)}).then(function(){return x.event=N,B.apply(x,k)}):(P?xn.nextTick:s)(function(){x.event=N,B.apply(x,k)})},m._async=!0,m._origin=$}return[m,L?new G(this,C,m):this]}function q(C){this._events={},this._newListener=!1,this._removeListener=!1,this.verboseMemoryLeak=!1,c.call(this,C)}G.prototype.off=function(){return this.emitter.off(this.event,this.listener),this},q.EventEmitter2=q,q.prototype.listenTo=function(C,m,_){if(typeof C!="object")throw TypeError("target musts be an object");var M=this;function A(P){if(typeof P!="object")throw TypeError("events must be an object");var L,B=_.reducers,$=T.call(M,C);L=$===-1?new p(M,C,_):M._observers[$];for(var k,x=a(P),N=x.length,O=typeof B=="function",z=0;z0;)M=_[A],C&&M._target!==C||(M.unsubscribe(m),P=!0);return P},q.prototype.delimiter=".",q.prototype.setMaxListeners=function(C){C!==e&&(this._maxListeners=C,this._conf||(this._conf={}),this._conf.maxListeners=C)},q.prototype.getMaxListeners=function(){return this._maxListeners},q.prototype.event="",q.prototype.once=function(C,m,_){return this._once(C,m,!1,_)},q.prototype.prependOnceListener=function(C,m,_){return this._once(C,m,!0,_)},q.prototype._once=function(C,m,_,M){return this._many(C,1,m,_,M)},q.prototype.many=function(C,m,_,M){return this._many(C,m,_,!1,M)},q.prototype.prependMany=function(C,m,_,M){return this._many(C,m,_,!0,M)},q.prototype._many=function(C,m,_,M,A){var P=this;if(typeof _!="function")throw new Error("many only accepts instances of Function");function L(){return--m==0&&P.off(C,L),_.apply(this,arguments)}return L._origin=_,this._on(C,L,M,A)},q.prototype.emit=function(){if(!this._events&&!this._all)return!1;this._events||l.call(this);var C,m,_,M,A,P,L=arguments[0],B=this.wildcard;if(L==="newListener"&&!this._newListener&&!this._events.newListener)return!1;if(B&&(C=L,L!=="newListener"&&L!=="removeListener"&&typeof L=="object")){if(_=L.length,i){for(M=0;M<_;M++)if(typeof L[M]=="symbol"){P=!0;break}}P||(L=L.join(this.delimiter))}var $,k=arguments.length;if(this._all&&this._all.length)for(M=0,_=($=this._all.slice()).length;M<_;M++)switch(this.event=L,k){case 1:$[M].call(this,L);break;case 2:$[M].call(this,L,arguments[1]);break;case 3:$[M].call(this,L,arguments[1],arguments[2]);break;default:$[M].apply(this,arguments)}if(B)$=[],I.call(this,$,C,this.listenerTree,0,_);else{if(typeof($=this._events[L])=="function"){switch(this.event=L,k){case 1:$.call(this);break;case 2:$.call(this,arguments[1]);break;case 3:$.call(this,arguments[1],arguments[2]);break;default:for(m=new Array(k-1),A=1;A3)for(m=new Array(k-1),A=1;A3)for(_=new Array(x-1),P=1;P0&&this._events[C].length>this._maxListeners&&(this._events[C].warned=!0,u.call(this,this._events[C].length,C))):this._events[C]=m,P)},q.prototype.off=function(C,m){if(typeof m!="function")throw new Error("removeListener only takes instances of Function");var _,M=[];if(this.wildcard){var A=typeof C=="string"?C.split(this.delimiter):C.slice();if(!(M=I.call(this,null,A,this.listenerTree,0)))return this}else{if(!this._events[C])return this;_=this._events[C],M.push({_listeners:_})}for(var P=0;P0){for(_=0,M=(m=this._all).length;_0;)typeof(_=L[m[A]])=="function"?M.push(_):M.push.apply(M,_);return M}if(this.wildcard){if(!(P=this.listenerTree))return[];var B=[],$=typeof C=="string"?C.split(this.delimiter):C.slice();return I.call(this,B,$,P,0),B}return L&&(_=L[C])?typeof _=="function"?[_]:_:[]},q.prototype.eventNames=function(C){var m=this._events;return this.wildcard?D.call(this,this.listenerTree,[],null,C):m?a(m):[]},q.prototype.listenerCount=function(C){return this.listeners(C).length},q.prototype.hasListeners=function(C){if(this.wildcard){var m=[],_=typeof C=="string"?C.split(this.delimiter):C.slice();return I.call(this,m,_,this.listenerTree,0),m.length>0}var M=this._events,A=this._all;return!!(A&&A.length||M&&(C===e?a(M).length:M[C]))},q.prototype.listenersAny=function(){return this._all?this._all:[]},q.prototype.waitFor=function(C,m){var _=this,M=typeof m;return M==="number"?m={timeout:m}:M==="function"&&(m={filter:m}),w((m=g(m,{timeout:0,filter:e,handleError:!1,Promise,overload:!1},{filter:h,Promise:y})).Promise,function(A,P,L){function B(){var $=m.filter;if(!$||$.apply(_,arguments))if(_.off(C,B),m.handleError){var k=arguments[0];k?P(k):A(d.apply(null,arguments).slice(1))}else A(d.apply(null,arguments))}L(function(){_.off(C,B)}),_._on(C,B,!1)},{timeout:m.timeout,overload:m.overload})};var W=q.prototype;Object.defineProperties(q,{defaultMaxListeners:{get:function(){return W._maxListeners},set:function(C){if(typeof C!="number"||C<0||Number.isNaN(C))throw TypeError("n must be a non-negative number");W._maxListeners=C},enumerable:!0},once:{value:function(C,m,_){return w((_=g(_,{Promise,timeout:0,overload:!1},{Promise:y})).Promise,function(M,A,P){var L;if(typeof C.addEventListener=="function")return L=function(){M(d.apply(null,arguments))},P(function(){C.removeEventListener(m,L)}),void C.addEventListener(m,L,{once:!0});var B,$=function(){B&&C.removeListener("error",B),M(d.apply(null,arguments))};m!=="error"&&(B=function(k){C.removeListener(m,$),A(k)},C.once("error",B)),P(function(){B&&C.removeListener("error",B),C.removeListener(m,$)}),C.once(m,$)},{timeout:_.timeout,overload:_.overload})},writable:!0,configurable:!0}}),Object.defineProperties(W,{_maxListeners:{value:10,writable:!0,configurable:!0},_observers:{value:null,writable:!0,configurable:!0}}),_1.exports=q}();var td,CE=Ia.exports,SE=new Uint8Array(16);function _E(){if(!td&&!(td=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return td(SE)}var kE=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function xc(e){return typeof e=="string"&&kE.test(e)}for(var vt=[],nd=0;nd<256;++nd)vt.push((nd+256).toString(16).substr(1));function Av(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=(vt[e[t+0]]+vt[e[t+1]]+vt[e[t+2]]+vt[e[t+3]]+"-"+vt[e[t+4]]+vt[e[t+5]]+"-"+vt[e[t+6]]+vt[e[t+7]]+"-"+vt[e[t+8]]+vt[e[t+9]]+"-"+vt[e[t+10]]+vt[e[t+11]]+vt[e[t+12]]+vt[e[t+13]]+vt[e[t+14]]+vt[e[t+15]]).toLowerCase();if(!xc(n))throw TypeError("Stringified UUID is invalid");return n}function k1(e,t,n){function r(i,o,s,a){if(typeof i=="string"&&(i=function(u){u=unescape(encodeURIComponent(u));for(var d=[],f=0;f>>24,f[1]=d>>>16&255,f[2]=d>>>8&255,f[3]=255&d,f[4]=(d=parseInt(u.slice(9,13),16))>>>8,f[5]=255&d,f[6]=(d=parseInt(u.slice(14,18),16))>>>8,f[7]=255&d,f[8]=(d=parseInt(u.slice(19,23),16))>>>8,f[9]=255&d,f[10]=(d=parseInt(u.slice(24,36),16))/1099511627776&255,f[11]=d/4294967296&255,f[12]=d>>>24&255,f[13]=d>>>16&255,f[14]=d>>>8&255,f[15]=255&d,f}(o)),o.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");var l=new Uint8Array(16+i.length);if(l.set(o),l.set(i,o.length),(l=n(l))[6]=15&l[6]|t,l[8]=63&l[8]|128,s){a=a||0;for(var c=0;c<16;++c)s[a+c]=l[c];return s}return Av(l)}try{r.name=e}catch{}return r.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",r.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8",r}function x1(e){return 14+(e+64>>>9<<4)+1}function li(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function gu(e,t,n,r,i,o){return li((s=li(li(t,e),li(r,o)))<<(a=i)|s>>>32-a,n);var s,a}function kt(e,t,n,r,i,o,s){return gu(t&n|~t&r,e,t,i,o,s)}function xt(e,t,n,r,i,o,s){return gu(t&r|n&~r,e,t,i,o,s)}function At(e,t,n,r,i,o,s){return gu(t^n^r,e,t,i,o,s)}function Mt(e,t,n,r,i,o,s){return gu(n^(t|~r),e,t,i,o,s)}function _0(e,t,n){var r=(e=e||{}).random||(e.rng||_E)();return r[6]=15&r[6]|64,r[8]=63&r[8]|128,Av(r)}function xE(e,t,n,r){switch(e){case 0:return t&n^~t&r;case 1:case 3:return t^n^r;case 2:return t&n^t&r^n&r}}function rd(e,t){return e<>>32-t}k1("v3",48,function(e){if(typeof e=="string"){var t=unescape(encodeURIComponent(e));e=new Uint8Array(t.length);for(var n=0;n>5]>>>a%32&255,c=parseInt(s.charAt(l>>>4&15)+s.charAt(15&l),16);i.push(c)}return i}(function(r,i){r[i>>5]|=128<>5]|=(255&r[s/8])<>>0;w=v,v=h,h=rd(S,30)>>>0,S=y,y=j}n[0]=n[0]+y>>>0,n[1]=n[1]+S>>>0,n[2]=n[2]+h>>>0,n[3]=n[3]+v>>>0,n[4]=n[4]+w>>>0}return[n[0]>>24&255,n[0]>>16&255,n[0]>>8&255,255&n[0],n[1]>>24&255,n[1]>>16&255,n[1]>>8&255,255&n[1],n[2]>>24&255,n[2]>>16&255,n[2]>>8&255,255&n[2],n[3]>>24&255,n[3]>>16&255,n[3]>>8&255,255&n[3],n[4]>>24&255,n[4]>>16&255,n[4]>>8&255,255&n[4]]});const Jn=Object.create(null);Jn.open="0",Jn.close="1",Jn.ping="2",Jn.pong="3",Jn.message="4",Jn.upgrade="5",Jn.noop="6";const Nl=Object.create(null);Object.keys(Jn).forEach(e=>{Nl[Jn[e]]=e});const AE={type:"error",data:"parser error"},Mv=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Tv=typeof ArrayBuffer=="function",Pv=e=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,Vf=({type:e,data:t},n,r)=>Mv&&t instanceof Blob?n?r(t):A1(t,r):Tv&&(t instanceof ArrayBuffer||Pv(t))?n?r(t):A1(new Blob([t]),r):r(Jn[e]+(t||"")),A1=(e,t)=>{const n=new FileReader;return n.onload=function(){const r=n.result.split(",")[1];t("b"+(r||""))},n.readAsDataURL(e)};function M1(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let id;function ME(e,t){return Mv&&e.data instanceof Blob?e.data.arrayBuffer().then(M1).then(t):Tv&&(e.data instanceof ArrayBuffer||Pv(e.data))?t(M1(e.data)):void Vf(e,!1,n=>{id||(id=new TextEncoder),t(id.encode(n))})}const TE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ts=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let e=0;e<64;e++)Ts[TE.charCodeAt(e)]=e;const PE=typeof ArrayBuffer=="function",Wf=(e,t)=>{if(typeof e!="string")return{type:"message",data:Lv(e,t)};const n=e.charAt(0);return n==="b"?{type:"message",data:LE(e.substring(1),t)}:Nl[n]?e.length>1?{type:Nl[n],data:e.substring(1)}:{type:Nl[n]}:AE},LE=(e,t)=>{if(PE){const n=(r=>{let i,o,s,a,l,c=.75*r.length,u=r.length,d=0;r[r.length-1]==="="&&(c--,r[r.length-2]==="="&&c--);const f=new ArrayBuffer(c),p=new Uint8Array(f);for(i=0;i>4,p[d++]=(15&s)<<4|a>>2,p[d++]=(3&a)<<6|63&l;return f})(e);return Lv(n,t)}return{base64:!0,data:e}},Lv=(e,t)=>t==="blob"?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer,T1="";let od;function ot(e){if(e)return function(t){for(var n in ot.prototype)t[n]=ot.prototype[n];return t}(e)}ot.prototype.on=ot.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},ot.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},ot.prototype.off=ot.prototype.removeListener=ot.prototype.removeAllListeners=ot.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(arguments.length==1)return delete this._callbacks["$"+e],this;for(var i=0;i(e.hasOwnProperty(r)&&(n[r]=e[r]),n),{})}const IE=An.setTimeout,RE=An.clearTimeout;function yu(e,t){t.useNativeTimers?(e.setTimeoutFn=IE.bind(An),e.clearTimeoutFn=RE.bind(An)):(e.setTimeoutFn=An.setTimeout.bind(An),e.clearTimeoutFn=An.clearTimeout.bind(An))}class OE extends Error{constructor(t,n,r){super(t),this.description=n,this.context=r,this.type="TransportError"}}class sd extends ot{constructor(t){super(),this.writable=!1,yu(this,t),this.opts=t,this.query=t.query,this.socket=t.socket}onError(t,n,r){return super.emitReserved("error",new OE(t,n,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return this.readyState!=="opening"&&this.readyState!=="open"||(this.doClose(),this.onClose()),this}send(t){this.readyState==="open"&&this.write(t)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(t){const n=Wf(t,this.socket.binaryType);this.onPacket(n)}onPacket(t){super.emitReserved("packet",t)}onClose(t){this.readyState="closed",super.emitReserved("close",t)}pause(t){}createUri(t,n={}){return t+"://"+this._hostname()+this._port()+this.opts.path+this._query(n)}_hostname(){const t=this.opts.hostname;return t.indexOf(":")===-1?t:"["+t+"]"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(t){const n=function(r){let i="";for(let o in r)r.hasOwnProperty(o)&&(i.length&&(i+="&"),i+=encodeURIComponent(o)+"="+encodeURIComponent(r[o]));return i}(t);return n.length?"?"+n:""}}const Rv="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),qf=64,$E={};let P1,L1=0,el=0;function I1(e){let t="";do t=Rv[e%qf]+t,e=Math.floor(e/qf);while(e>0);return t}function R1(){const e=I1(+new Date);return e!==P1?(L1=0,P1=e):e+"."+I1(L1++)}for(;el{var i;r.readyState===3&&((i=this.opts.cookieJar)===null||i===void 0||i.parseCookies(r)),r.readyState===4&&(r.status===200||r.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof r.status=="number"?r.status:0)},0))},r.send(this.data)}catch(i){return void this.setTimeoutFn(()=>{this.onError(i)},0)}typeof document<"u"&&(this.index=ur.requestsCount++,ur.requests[this.index]=this)}onError(t){this.emitReserved("error",t,this.xhr),this.cleanup(!0)}cleanup(t){if(this.xhr!==void 0&&this.xhr!==null){if(this.xhr.onreadystatechange=BE,t)try{this.xhr.abort()}catch{}typeof document<"u"&&delete ur.requests[this.index],this.xhr=null}}onLoad(){const t=this.xhr.responseText;t!==null&&(this.emitReserved("data",t),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}ur.requestsCount=0,ur.requests={},typeof document<"u"&&(typeof attachEvent=="function"?attachEvent("onunload",O1):typeof addEventListener=="function"&&addEventListener("onpagehide"in An?"pagehide":"unload",O1,!1));function O1(){for(let e in ur.requests)ur.requests.hasOwnProperty(e)&&ur.requests[e].abort()}const Gf=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,t)=>t(e,0),tl=An.WebSocket||An.MozWebSocket,$1=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";function FE(e,t){return e.type==="message"&&typeof e.data!="string"&&t[0]>=48&&t[0]<=54}const jE={websocket:class extends sd{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),t=this.opts.protocols,n=$1?{}:Iv(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(n.headers=this.opts.extraHeaders);try{this.ws=$1?new tl(e,t,n):t?new tl(e,t):new tl(e)}catch(r){return this.emitReserved("error",r)}this.ws.binaryType=this.socket.binaryType||"arraybuffer",this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.ws.send(i)}catch{}r&&Gf(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){this.ws!==void 0&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=R1()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!tl}},webtransport:class extends sd{get name(){return"webtransport"}doOpen(){typeof WebTransport=="function"&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this.transport.ready.then(()=>{this.transport.createBidirectionalStream().then(e=>{const t=e.readable.getReader();let n;this.writer=e.writable.getWriter();const r=()=>{t.read().then(({done:o,value:s})=>{o||(n||s.byteLength!==1||s[0]!==54?(this.onPacket(function(a,l,c){od||(od=new TextDecoder);const u=l||a[0]<48||a[0]>54;return Wf(u?a:od.decode(a),c)}(s,n,"arraybuffer")),n=!1):n=!0,r())}).catch(o=>{})};r();const i=this.query.sid?`0{"sid":"${this.query.sid}"}`:"0";this.writer.write(new TextEncoder().encode(i)).then(()=>this.onOpen())})}))}write(e){this.writable=!1;for(let t=0;t{FE(n,i)&&this.writer.write(Uint8Array.of(54)),this.writer.write(i).then(()=>{r&&Gf(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})})}}doClose(){var e;(e=this.transport)===null||e===void 0||e.close()}},polling:class extends sd{constructor(e){if(super(e),this.polling=!1,typeof location<"u"){const n=location.protocol==="https:";let r=location.port;r||(r=n?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||r!==e.port}const t=e&&e.forceBase64;this.supportsBinary=DE&&!t,this.opts.withCredentials&&(this.cookieJar=void 0)}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this.polling||!this.writable){let n=0;this.polling&&(n++,this.once("pollComplete",function(){--n||t()})),this.writable||(n++,this.once("drain",function(){--n||t()}))}else t()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){((t,n)=>{const r=t.split(T1),i=[];for(let o=0;o{if(this.readyState==="opening"&&t.type==="open"&&this.onOpen(),t.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(t)}),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,((t,n)=>{const r=t.length,i=new Array(r);let o=0;t.forEach((s,a)=>{Vf(s,!1,l=>{i[a]=l,++o===r&&n(i.join(T1))})})})(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=R1()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new ur(this.uri(),e)}doWrite(e,t){const n=this.request({method:"POST",data:e});n.on("success",t),n.on("error",(r,i)=>{this.onError("xhr post error",r,i)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,n)=>{this.onError("xhr poll error",t,n)}),this.pollXhr=e}}},UE=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,KE=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Yf(e){const t=e,n=e.indexOf("["),r=e.indexOf("]");n!=-1&&r!=-1&&(e=e.substring(0,n)+e.substring(n,r).replace(/:/g,";")+e.substring(r,e.length));let i=UE.exec(e||""),o={},s=14;for(;s--;)o[KE[s]]=i[s]||"";return n!=-1&&r!=-1&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=function(a,l){const c=/\/{2,9}/g,u=l.replace(c,"/").split("/");return l.slice(0,1)!="/"&&l.length!==0||u.splice(0,1),l.slice(-1)=="/"&&u.splice(u.length-1,1),u}(0,o.path),o.queryKey=function(a,l){const c={};return l.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(u,d,f){d&&(c[d]=f)}),c}(0,o.query),o}let Nv=class go extends ot{constructor(t,n={}){super(),this.writeBuffer=[],t&&typeof t=="object"&&(n=t,t=null),t?(t=Yf(t),n.hostname=t.host,n.secure=t.protocol==="https"||t.protocol==="wss",n.port=t.port,t.query&&(n.query=t.query)):n.host&&(n.hostname=Yf(n.host).host),yu(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=n.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=function(r){let i={},o=r.split("&");for(let s=0,a=o.length;s{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(t){const n=Object.assign({},this.opts.query);n.EIO=4,n.transport=t,this.id&&(n.sid=this.id);const r=Object.assign({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[t]);return new jE[t](r)}open(){let t;if(this.opts.rememberUpgrade&&go.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)t="websocket";else{if(this.transports.length===0)return void this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);t=this.transports[0]}this.readyState="opening";try{t=this.createTransport(t)}catch{return this.transports.shift(),void this.open()}t.open(),this.setTransport(t)}setTransport(t){this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",n=>this.onClose("transport close",n))}probe(t){let n=this.createTransport(t),r=!1;go.priorWebsocketSuccess=!1;const i=()=>{r||(n.send([{type:"ping",data:"probe"}]),n.once("packet",d=>{if(!r)if(d.type==="pong"&&d.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;go.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{r||this.readyState!=="closed"&&(u(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const f=new Error("probe error");f.transport=n.name,this.emitReserved("upgradeError",f)}}))};function o(){r||(r=!0,u(),n.close(),n=null)}const s=d=>{const f=new Error("probe error: "+d);f.transport=n.name,o(),this.emitReserved("upgradeError",f)};function a(){s("transport closed")}function l(){s("socket closed")}function c(d){n&&d.name!==n.name&&o()}const u=()=>{n.removeListener("open",i),n.removeListener("error",s),n.removeListener("close",a),this.off("close",l),this.off("upgrading",c)};n.once("open",i),n.once("error",s),n.once("close",a),this.once("close",l),this.once("upgrading",c),this.upgrades.indexOf("webtransport")!==-1&&t!=="webtransport"?this.setTimeoutFn(()=>{r||n.open()},200):n.open()}onOpen(){if(this.readyState="open",go.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){let t=0;const n=this.upgrades.length;for(;t{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const t=this.getWritablePackets();this.transport.send(t),this.prevBufferLen=t.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let r=0;r=57344?a+=3:(l++,a+=4);return a}(n):Math.ceil(1.33*(n.byteLength||n.size))),r>0&&t>this.maxPayload)return this.writeBuffer.slice(0,r);t+=2}var n;return this.writeBuffer}write(t,n,r){return this.sendPacket("message",t,n,r),this}send(t,n,r){return this.sendPacket("message",t,n,r),this}sendPacket(t,n,r,i){if(typeof n=="function"&&(i=n,n=void 0),typeof r=="function"&&(i=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;(r=r||{}).compress=r.compress!==!1;const o={type:t,data:n,options:r};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),i&&this.once("flush",i),this.flush()}close(){const t=()=>{this.onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),t()},r=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return this.readyState!=="opening"&&this.readyState!=="open"||(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():t()}):this.upgrading?r():t()),this}onError(t){go.priorWebsocketSuccess=!1,this.emitReserved("error",t),this.onClose("transport error",t)}onClose(t,n){this.readyState!=="opening"&&this.readyState!=="open"&&this.readyState!=="closing"||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",t,n),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(t){const n=[];let r=0;const i=t.length;for(;rtypeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,Bv=Object.prototype.toString,VE=typeof Blob=="function"||typeof Blob<"u"&&Bv.call(Blob)==="[object BlobConstructor]",WE=typeof File=="function"||typeof File<"u"&&Bv.call(File)==="[object FileConstructor]";function k0(e){return HE&&(e instanceof ArrayBuffer||zE(e))||VE&&e instanceof Blob||WE&&e instanceof File}function Bl(e,t){if(!e||typeof e!="object")return!1;if(Array.isArray(e)){for(let n=0,r=e.length;n=0&&e.num{delete this.acks[t];for(let s=0;s{this.io.clearTimeoutFn(o),n.apply(this,[null,...s])}}emitWithAck(t,...n){const r=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((i,o)=>{n.push((s,a)=>r?s?o(s):i(a):i(s)),this.emit(t,...n)})}_addToQueue(t){let n;typeof t[t.length-1]=="function"&&(n=t.pop());const r={id:this._queueSeq++,tryCount:0,pending:!1,args:t,flags:Object.assign({fromQueue:!0},this.flags)};t.push((i,...o)=>{if(r===this._queue[0])return i!==null?r.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(i)):(this._queue.shift(),n&&n(null,...o)),r.pending=!1,this._drainQueue()}),this._queue.push(r),this._drainQueue()}_drainQueue(t=!1){if(!this.connected||this._queue.length===0)return;const n=this._queue[0];n.pending&&!t||(n.pending=!0,n.tryCount++,this.flags=n.flags,this.emit.apply(this,n.args))}packet(t){t.nsp=this.nsp,this.io._packet(t)}onopen(){typeof this.auth=="function"?this.auth(t=>{this._sendConnectPacket(t)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(t){this.packet({type:Ie.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},t):t})}onerror(t){this.connected||this.emitReserved("connect_error",t)}onclose(t,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",t,n)}onpacket(t){if(t.nsp===this.nsp)switch(t.type){case Ie.CONNECT:t.data&&t.data.sid?this.onconnect(t.data.sid,t.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case Ie.EVENT:case Ie.BINARY_EVENT:this.onevent(t);break;case Ie.ACK:case Ie.BINARY_ACK:this.onack(t);break;case Ie.DISCONNECT:this.ondisconnect();break;case Ie.CONNECT_ERROR:this.destroy();const n=new Error(t.data.message);n.data=t.data.data,this.emitReserved("connect_error",n)}}onevent(t){const n=t.data||[];t.id!=null&&n.push(this.ack(t.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(t){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const r of n)r.apply(this,t)}super.emit.apply(this,t),this._pid&&t.length&&typeof t[t.length-1]=="string"&&(this._lastOffset=t[t.length-1])}ack(t){const n=this;let r=!1;return function(...i){r||(r=!0,n.packet({type:Ie.ACK,id:t,data:i}))}}onack(t){const n=this.acks[t.id];typeof n=="function"&&(n.apply(this,t.data),delete this.acks[t.id])}onconnect(t,n){this.id=t,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(t=>this.emitEvent(t)),this.receiveBuffer=[],this.sendBuffer.forEach(t=>{this.notifyOutgoingListeners(t),this.packet(t)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(t=>t()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:Ie.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(t){return this.flags.compress=t,this}get volatile(){return this.flags.volatile=!0,this}timeout(t){return this.flags.timeout=t,this}onAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(t),this}prependAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(t),this}offAny(t){if(!this._anyListeners)return this;if(t){const n=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}yo.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),n=Math.floor(t*this.jitter*e);e=1&Math.floor(10*t)?e+n:e-n}return 0|Math.min(e,this.max)},yo.prototype.reset=function(){this.attempts=0},yo.prototype.setMin=function(e){this.ms=e},yo.prototype.setMax=function(e){this.max=e},yo.prototype.setJitter=function(e){this.jitter=e};class Jf extends ot{constructor(t,n){var r;super(),this.nsps={},this.subs=[],t&&typeof t=="object"&&(n=t,t=void 0),(n=n||{}).path=n.path||"/socket.io",this.opts=n,yu(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((r=n.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new yo({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=t;const i=n.parser||QE;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(t){return arguments.length?(this._reconnection=!!t,this):this._reconnection}reconnectionAttempts(t){return t===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=t,this)}reconnectionDelay(t){var n;return t===void 0?this._reconnectionDelay:(this._reconnectionDelay=t,(n=this.backoff)===null||n===void 0||n.setMin(t),this)}randomizationFactor(t){var n;return t===void 0?this._randomizationFactor:(this._randomizationFactor=t,(n=this.backoff)===null||n===void 0||n.setJitter(t),this)}reconnectionDelayMax(t){var n;return t===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=t,(n=this.backoff)===null||n===void 0||n.setMax(t),this)}timeout(t){return arguments.length?(this._timeout=t,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(t){if(~this._readyState.indexOf("open"))return this;this.engine=new Nv(this.uri,this.opts);const n=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const i=Dn(n,"open",function(){r.onopen(),t&&t()}),o=a=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",a),t?t(a):this.maybeReconnectOnOpen()},s=Dn(n,"error",o);if(this._timeout!==!1){const a=this._timeout,l=this.setTimeoutFn(()=>{i(),o(new Error("timeout")),n.close()},a);this.opts.autoUnref&&l.unref(),this.subs.push(()=>{this.clearTimeoutFn(l)})}return this.subs.push(i),this.subs.push(s),this}connect(t){return this.open(t)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const t=this.engine;this.subs.push(Dn(t,"ping",this.onping.bind(this)),Dn(t,"data",this.ondata.bind(this)),Dn(t,"error",this.onerror.bind(this)),Dn(t,"close",this.onclose.bind(this)),Dn(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(t){try{this.decoder.add(t)}catch(n){this.onclose("parse error",n)}}ondecoded(t){Gf(()=>{this.emitReserved("packet",t)},this.setTimeoutFn)}onerror(t){this.emitReserved("error",t)}socket(t,n){let r=this.nsps[t];return r?this._autoConnect&&!r.active&&r.connect():(r=new Dv(this,t,n),this.nsps[t]=r),r}_destroy(t){const n=Object.keys(this.nsps);for(const r of n)if(this.nsps[r].active)return;this._close()}_packet(t){const n=this.encoder.encode(t);for(let r=0;rt()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(t,n){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",t,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const t=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn(()=>{t.skipReconnect||(this.emitReserved("reconnect_attempt",t.backoff.attempts),t.skipReconnect||t.open(i=>{i?(t._reconnecting=!1,t.reconnect(),this.emitReserved("reconnect_error",i)):t.onreconnect()}))},n);this.opts.autoUnref&&r.unref(),this.subs.push(()=>{this.clearTimeoutFn(r)})}}onreconnect(){const t=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",t)}}const ws={};function Dl(e,t){typeof e=="object"&&(t=e,e=void 0);const n=function(l,c="",u){let d=l;u=u||typeof location<"u"&&location,l==null&&(l=u.protocol+"//"+u.host),typeof l=="string"&&(l.charAt(0)==="/"&&(l=l.charAt(1)==="/"?u.protocol+l:u.host+l),/^(https?|wss?):\/\//.test(l)||(l=u!==void 0?u.protocol+"//"+l:"https://"+l),d=Yf(l)),d.port||(/^(http|ws)$/.test(d.protocol)?d.port="80":/^(http|ws)s$/.test(d.protocol)&&(d.port="443")),d.path=d.path||"/";const f=d.host.indexOf(":")!==-1?"["+d.host+"]":d.host;return d.id=d.protocol+"://"+f+":"+d.port+c,d.href=d.protocol+"://"+f+(u&&u.port===d.port?"":":"+d.port),d}(e,(t=t||{}).path||"/socket.io"),r=n.source,i=n.id,o=n.path,s=ws[i]&&o in ws[i].nsps;let a;return t.forceNew||t["force new connection"]||t.multiplex===!1||s?a=new Jf(r,t):(ws[i]||(ws[i]=new Jf(r,t)),a=ws[i]),n.query&&!t.query&&(t.query=n.queryKey),a.socket(n.path,t)}function ce(e,t,n,r){return new(n||(n=Promise))(function(i,o){function s(c){try{l(r.next(c))}catch(u){o(u)}}function a(c){try{l(r.throw(c))}catch(u){o(u)}}function l(c){var u;c.done?i(c.value):(u=c.value,u instanceof n?u:new n(function(d){d(u)})).then(s,a)}l((r=r.apply(e,t||[])).next())})}Object.assign(Dl,{Manager:Jf,Socket:Dv,io:Dl,connect:Dl}),typeof SuppressedError=="function"&&SuppressedError;var Ht=Qi!==void 0?Qi:typeof self<"u"?self:typeof window<"u"?window:{},er=[],En=[],XE=typeof Uint8Array<"u"?Uint8Array:Array,A0=!1;function Fv(){A0=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;t<64;++t)er[t]=e[t],En[e.charCodeAt(t)]=t;En[45]=62,En[95]=63}function e6(e,t,n){for(var r,i,o=[],s=t;s>18&63]+er[i>>12&63]+er[i>>6&63]+er[63&i]);return o.join("")}function B1(e){var t;A0||Fv();for(var n=e.length,r=n%3,i="",o=[],s=16383,a=0,l=n-r;al?l:a+s));return r===1?(t=e[n-1],i+=er[t>>2],i+=er[t<<4&63],i+="=="):r===2&&(t=(e[n-2]<<8)+e[n-1],i+=er[t>>10],i+=er[t>>4&63],i+=er[t<<2&63],i+="="),o.push(i),o.join("")}function nl(e,t,n,r,i){var o,s,a=8*i-r-1,l=(1<>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,o=p&(1<<-u)-1,p>>=-u,u+=a;u>0;o=256*o+e[t+d],d+=f,u-=8);for(s=o&(1<<-u)-1,o>>=-u,u+=r;u>0;s=256*s+e[t+d],d+=f,u-=8);if(o===0)o=1-c;else{if(o===l)return s?NaN:1/0*(p?-1:1);s+=Math.pow(2,r),o-=c}return(p?-1:1)*s*Math.pow(2,o-r)}function jv(e,t,n,r,i,o){var s,a,l,c=8*o-i-1,u=(1<>1,f=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,g=r?1:-1,y=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-s))<1&&(s--,l*=2),(t+=s+d>=1?f/l:f*Math.pow(2,1-d))*l>=2&&(s++,l/=2),s+d>=u?(a=0,s=u):s+d>=1?(a=(t*l-1)*Math.pow(2,i),s+=d):(a=t*Math.pow(2,d-1)*Math.pow(2,i),s=0));i>=8;e[n+p]=255&a,p+=g,a/=256,i-=8);for(s=s<0;e[n+p]=255&s,p+=g,s/=256,c-=8);e[n+p-g]|=128*y}var t6={}.toString,Uv=Array.isArray||function(e){return t6.call(e)=="[object Array]"};re.TYPED_ARRAY_SUPPORT=Ht.TYPED_ARRAY_SUPPORT===void 0||Ht.TYPED_ARRAY_SUPPORT;var n6=Ac();function Ac(){return re.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function kr(e,t){if(Ac()=Ac())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+Ac().toString(16)+" bytes");return 0|e}function tr(e){return!(e==null||!e._isBuffer)}function zv(e,t){if(tr(e))return e.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;typeof e!="string"&&(e=""+e);var n=e.length;if(n===0)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return Mc(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Gv(e).length;default:if(r)return Mc(e).length;t=(""+t).toLowerCase(),r=!0}}function r6(e,t,n){var r=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return f6(this,t,n);case"utf8":case"utf-8":return Wv(this,t,n);case"ascii":return u6(this,t,n);case"latin1":case"binary":return d6(this,t,n);case"base64":return c6(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return h6(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function Mi(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function D1(e,t,n,r,i){if(e.length===0)return-1;if(typeof n=="string"?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if(typeof t=="string"&&(t=re.from(t,r)),tr(t))return t.length===0?-1:F1(e,t,n,r,i);if(typeof t=="number")return t&=255,re.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):F1(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function F1(e,t,n,r,i){var o,s=1,a=e.length,l=t.length;if(r!==void 0&&((r=String(r).toLowerCase())==="ucs2"||r==="ucs-2"||r==="utf16le"||r==="utf-16le")){if(e.length<2||t.length<2)return-1;s=2,a/=2,l/=2,n/=2}function c(p,g){return s===1?p[g]:p.readUInt16BE(g*s)}if(i){var u=-1;for(o=n;oa&&(n=a-l),o=n;o>=0;o--){for(var d=!0,f=0;fi&&(r=i):r=i;var o=t.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var s=0;s>8,l=s%256,c.push(l),c.push(a);return c}(t,e.length-n),e,n,r)}function c6(e,t,n){return t===0&&n===e.length?B1(e):B1(e.slice(t,n))}function Wv(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:c>223?3:c>191?2:1;if(i+d<=n)switch(d){case 1:c<128&&(u=c);break;case 2:(192&(o=e[i+1]))==128&&(l=(31&c)<<6|63&o)>127&&(u=l);break;case 3:o=e[i+1],s=e[i+2],(192&o)==128&&(192&s)==128&&(l=(15&c)<<12|(63&o)<<6|63&s)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:o=e[i+1],s=e[i+2],a=e[i+3],(192&o)==128&&(192&s)==128&&(192&a)==128&&(l=(15&c)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&l<1114112&&(u=l)}u===null?(u=65533,d=1):u>65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u),i+=d}return function(f){var p=f.length;if(p<=j1)return String.fromCharCode.apply(String,f);for(var g="",y=0;y0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),""},re.prototype.compare=function(e,t,n,r,i){if(!tr(e))throw new TypeError("Argument must be a Buffer");if(t===void 0&&(t=0),n===void 0&&(n=e?e.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),a=Math.min(o,s),l=this.slice(r,i),c=e.slice(t,n),u=0;ui)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return i6(this,e,t,n);case"utf8":case"utf-8":return o6(this,e,t,n);case"ascii":return Vv(this,e,t,n);case"latin1":case"binary":return s6(this,e,t,n);case"base64":return a6(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return l6(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},re.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var j1=4096;function u6(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function Wt(e,t,n,r,i,o){if(!tr(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function rl(e,t,n,r){t<0&&(t=65535+t+1);for(var i=0,o=Math.min(e.length-n,2);i>>8*(r?i:1-i)}function il(e,t,n,r){t<0&&(t=4294967295+t+1);for(var i=0,o=Math.min(e.length-n,4);i>>8*(r?i:3-i)&255}function qv(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function U1(e,t,n,r,i){return i||qv(e,0,n,4),jv(e,t,n,r,23,4),n+4}function K1(e,t,n,r,i){return i||qv(e,0,n,8),jv(e,t,n,r,52,8),n+8}re.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=t===void 0?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(i*=256);)r+=this[e+--t]*i;return r},re.prototype.readUInt8=function(e,t){return t||ut(e,1,this.length),this[e]},re.prototype.readUInt16LE=function(e,t){return t||ut(e,2,this.length),this[e]|this[e+1]<<8},re.prototype.readUInt16BE=function(e,t){return t||ut(e,2,this.length),this[e]<<8|this[e+1]},re.prototype.readUInt32LE=function(e,t){return t||ut(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},re.prototype.readUInt32BE=function(e,t){return t||ut(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},re.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||ut(e,t,this.length);for(var r=this[e],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*t)),r},re.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||ut(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},re.prototype.readInt8=function(e,t){return t||ut(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},re.prototype.readInt16LE=function(e,t){t||ut(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},re.prototype.readInt16BE=function(e,t){t||ut(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},re.prototype.readInt32LE=function(e,t){return t||ut(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},re.prototype.readInt32BE=function(e,t){return t||ut(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},re.prototype.readFloatLE=function(e,t){return t||ut(e,4,this.length),nl(this,e,!0,23,4)},re.prototype.readFloatBE=function(e,t){return t||ut(e,4,this.length),nl(this,e,!1,23,4)},re.prototype.readDoubleLE=function(e,t){return t||ut(e,8,this.length),nl(this,e,!0,52,8)},re.prototype.readDoubleBE=function(e,t){return t||ut(e,8,this.length),nl(this,e,!1,52,8)},re.prototype.writeUIntLE=function(e,t,n,r){e=+e,t|=0,n|=0,r||Wt(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o=0&&(o*=256);)this[t+i]=e/o&255;return t+n},re.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,1,255,0),re.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},re.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,2,65535,0),re.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):rl(this,e,t,!0),t+2},re.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,2,65535,0),re.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):rl(this,e,t,!1),t+2},re.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,4,4294967295,0),re.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):il(this,e,t,!0),t+4},re.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,4,4294967295,0),re.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):il(this,e,t,!1),t+4},re.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);Wt(this,e,t,n,i-1,-i)}var o=0,s=1,a=0;for(this[t]=255&e;++o>0)-a&255;return t+n},re.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var i=Math.pow(2,8*n-1);Wt(this,e,t,n,i-1,-i)}var o=n-1,s=1,a=0;for(this[t+o]=255&e;--o>=0&&(s*=256);)e<0&&a===0&&this[t+o+1]!==0&&(a=1),this[t+o]=(e/s>>0)-a&255;return t+n},re.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,1,127,-128),re.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},re.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,2,32767,-32768),re.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):rl(this,e,t,!0),t+2},re.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,2,32767,-32768),re.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):rl(this,e,t,!1),t+2},re.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,4,2147483647,-2147483648),re.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):il(this,e,t,!0),t+4},re.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||Wt(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),re.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):il(this,e,t,!1),t+4},re.prototype.writeFloatLE=function(e,t,n){return U1(this,e,t,!0,n)},re.prototype.writeFloatBE=function(e,t,n){return U1(this,e,t,!1,n)},re.prototype.writeDoubleLE=function(e,t,n){return K1(this,e,t,!0,n)},re.prototype.writeDoubleBE=function(e,t,n){return K1(this,e,t,!1,n)},re.prototype.copy=function(e,t,n,r){if(n||(n=0),r||r===0||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--i)e[i+t]=this[i+n];else if(o<1e3||!re.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=n===void 0?this.length:n>>>0,e||(e=0),typeof e=="number")for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function Gv(e){return function(t){var n,r,i,o,s,a;A0||Fv();var l=t.length;if(l%4>0)throw new Error("Invalid string. Length must be a multiple of 4");s=t[l-2]==="="?2:t[l-1]==="="?1:0,a=new XE(3*l/4-s),i=s>0?l-4:l;var c=0;for(n=0,r=0;n>16&255,a[c++]=o>>8&255,a[c++]=255&o;return s===2?(o=En[t.charCodeAt(n)]<<2|En[t.charCodeAt(n+1)]>>4,a[c++]=255&o):s===1&&(o=En[t.charCodeAt(n)]<<10|En[t.charCodeAt(n+1)]<<4|En[t.charCodeAt(n+2)]>>2,a[c++]=o>>8&255,a[c++]=255&o),a}(function(t){if((t=function(n){return n.trim?n.trim():n.replace(/^\s+|\s+$/g,"")}(t).replace(p6,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(e))}function vu(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function Yv(e){return e!=null&&(!!e._isBuffer||H1(e)||function(t){return typeof t.readFloatLE=="function"&&typeof t.slice=="function"&&H1(t.slice(0,0))}(e))}function H1(e){return!!e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}var g6=Object.freeze({__proto__:null,Buffer:re,INSPECT_MAX_BYTES:50,SlowBuffer:function(e){return+e!=e&&(e=0),re.alloc(+e)},isBuffer:Yv,kMaxLength:n6}),Tn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:Qi!==void 0?Qi:typeof self<"u"?self:{};function wu(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Ra(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}),n}var vo={},mn={},Lt={};function Tc(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function Zv(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function Qv(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function T0(e,...t){if(!Qv(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function Jv(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("hash must be wrapped by utils.wrapConstructor");Tc(e.outputLen),Tc(e.blockLen)}function Xv(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function e3(e,t){T0(e);const n=t.outputLen;if(e.length=0&&Snew Uint8Array(d.buffer,d.byteOffset,d.byteLength),e.u16=d=>new Uint16Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/2)),e.u32=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4)),e.createView=d=>new DataView(d.buffer,d.byteOffset,d.byteLength),e.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,!e.isLE)throw new Error("Non little-endian hardware is not supported");const n=Array.from({length:256},(d,f)=>f.toString(16).padStart(2,"0"));function r(d){(0,t.bytes)(d);let f="";for(let p=0;p=i._0&&d<=i._9?d-i._0:d>=i._A&&d<=i._F?d-(i._A-10):d>=i._a&&d<=i._f?d-(i._a-10):void 0}function s(d){if(typeof d!="string")throw new Error("hex string expected, got "+typeof d);const f=d.length,p=f/2;if(f%2)throw new Error("padded hex string expected, got unpadded hex of length "+f);const g=new Uint8Array(p);for(let y=0,S=0;y>y&S),v=Number(p&S),w=g?4:0,T=g?0:4;d.setUint32(f+w,h,g),d.setUint32(f+T,v,g)}function u(d){return Uint8Array.from(d)}e.nextTick=async()=>{},e.Hash=class{},e.wrapCipher=(d,f)=>(Object.assign(f,d),f)}(mn);var ga={},dt={};Object.defineProperty(dt,"__esModule",{value:!0}),dt.AEAD_TAG_LENGTH=dt.XCHACHA20_NONCE_LENGTH=dt.CURVE25519_PUBLIC_KEY_SIZE=dt.ETH_PUBLIC_KEY_SIZE=dt.UNCOMPRESSED_PUBLIC_KEY_SIZE=dt.COMPRESSED_PUBLIC_KEY_SIZE=dt.SECRET_KEY_LENGTH=void 0,dt.SECRET_KEY_LENGTH=32,dt.COMPRESSED_PUBLIC_KEY_SIZE=33,dt.UNCOMPRESSED_PUBLIC_KEY_SIZE=65,dt.ETH_PUBLIC_KEY_SIZE=64,dt.CURVE25519_PUBLIC_KEY_SIZE=32,dt.XCHACHA20_NONCE_LENGTH=24,dt.AEAD_TAG_LENGTH=16,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ephemeralKeySize=e.symmetricNonceLength=e.symmetricAlgorithm=e.isHkdfKeyCompressed=e.isEphemeralKeyCompressed=e.ellipticCurve=e.ECIES_CONFIG=void 0;var t=dt;e.ECIES_CONFIG=new function(){this.ellipticCurve="secp256k1",this.isEphemeralKeyCompressed=!1,this.isHkdfKeyCompressed=!1,this.symmetricAlgorithm="aes-256-gcm",this.symmetricNonceLength=16},e.ellipticCurve=function(){return e.ECIES_CONFIG.ellipticCurve},e.isEphemeralKeyCompressed=function(){return e.ECIES_CONFIG.isEphemeralKeyCompressed},e.isHkdfKeyCompressed=function(){return e.ECIES_CONFIG.isHkdfKeyCompressed},e.symmetricAlgorithm=function(){return e.ECIES_CONFIG.symmetricAlgorithm},e.symmetricNonceLength=function(){return e.ECIES_CONFIG.symmetricNonceLength},e.ephemeralKeySize=function(){var n={secp256k1:e.ECIES_CONFIG.isEphemeralKeyCompressed?t.COMPRESSED_PUBLIC_KEY_SIZE:t.UNCOMPRESSED_PUBLIC_KEY_SIZE,x25519:t.CURVE25519_PUBLIC_KEY_SIZE,ed25519:t.CURVE25519_PUBLIC_KEY_SIZE};if(e.ECIES_CONFIG.ellipticCurve in n)return n[e.ECIES_CONFIG.ellipticCurve];throw new Error("Not implemented")}}(ga);var ld={},Pc={},Eu={},t3={},P0={},ol={};Object.defineProperty(ol,"__esModule",{value:!0}),ol.crypto=void 0,ol.crypto=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.gcm=e.ctr=e.cbc=e.utils=void 0,e.randomBytes=i,e.getWebcryptoSubtle=o,e.managedNonce=function(u){return(0,n.number)(u.nonceLength),(d,...f)=>({encrypt(p,...g){const{nonceLength:y}=u,S=i(y),h=u(d,S,...f).encrypt(p,...g),v=(0,r.concatBytes)(S,h);return h.fill(0),v},decrypt(p,...g){const{nonceLength:y}=u,S=p.subarray(0,y),h=p.subarray(y);return u(d,S,...f).decrypt(h,...g)}})};const t=ol,n=Lt,r=mn;function i(u=32){if(t.crypto&&typeof t.crypto.getRandomValues=="function")return t.crypto.getRandomValues(new Uint8Array(u));if(t.crypto&&typeof t.crypto.randomBytes=="function")return t.crypto.randomBytes(u);throw new Error("crypto.getRandomValues must be defined")}function o(){if(t.crypto&&typeof t.crypto.subtle=="object"&&t.crypto.subtle!=null)return t.crypto.subtle;throw new Error("crypto.subtle must be defined")}e.utils={async encrypt(u,d,f,p){const g=o(),y=await g.importKey("raw",u,d,!0,["encrypt"]),S=await g.encrypt(f,y,p);return new Uint8Array(S)},async decrypt(u,d,f,p){const g=o(),y=await g.importKey("raw",u,d,!0,["decrypt"]),S=await g.decrypt(f,y,p);return new Uint8Array(S)}};const s="AES-CBC",a="AES-CTR",l="AES-GCM";function c(u){return(d,f,p)=>{(0,n.bytes)(d),(0,n.bytes)(f);const g={name:u,length:8*d.length},y=function(S,h,v){if(S===s)return{name:s,iv:h};if(S===a)return{name:a,counter:h,length:64};if(S===l)return v?{name:l,iv:h,additionalData:v}:{name:l,iv:h};throw new Error("unknown aes block mode")}(u,f,p);return{encrypt:S=>((0,n.bytes)(S),e.utils.encrypt(d,g,y,S)),decrypt:S=>((0,n.bytes)(S),e.utils.decrypt(d,g,y,S))}}}e.cbc=c(s),e.ctr=c(a),e.gcm=c(l)}(P0);var n3={},ft={},xr={},an={};function Lc(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function r3(e){if(typeof e!="boolean")throw new Error(`boolean expected, not ${e}`)}function i3(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function L0(e,...t){if(!i3(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function o3(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Lc(e.outputLen),Lc(e.blockLen)}function s3(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function a3(e,t){L0(e);const n=t.outputLen;if(e.length=0&&gc().update(a(f)).digest(),d=c();return u.outputLen=d.outputLen,u.blockLen=d.blockLen,u.create=()=>c(),u},e.wrapConstructorWithOpts=function(c){const u=(f,p)=>c(p).update(a(f)).digest(),d=c({});return u.outputLen=d.outputLen,u.blockLen=d.blockLen,u.create=f=>c(f),u},e.wrapXOFConstructorWithOpts=function(c){const u=(f,p)=>c(p).update(a(f)).digest(),d=c({});return u.outputLen=d.outputLen,u.blockLen=d.blockLen,u.create=f=>c(f),u},e.randomBytes=function(c=32){if(t.crypto&&typeof t.crypto.getRandomValues=="function")return t.crypto.getRandomValues(new Uint8Array(c));if(t.crypto&&typeof t.crypto.randomBytes=="function")return t.crypto.randomBytes(c);throw new Error("crypto.getRandomValues must be defined")};const t=sl,n=an;e.u8=c=>new Uint8Array(c.buffer,c.byteOffset,c.byteLength),e.u32=c=>new Uint32Array(c.buffer,c.byteOffset,Math.floor(c.byteLength/4)),e.createView=c=>new DataView(c.buffer,c.byteOffset,c.byteLength),e.rotr=(c,u)=>c<<32-u|c>>>u,e.rotl=(c,u)=>c<>>32-u>>>0,e.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,e.byteSwap=c=>c<<24&4278190080|c<<8&16711680|c>>>8&65280|c>>>24&255,e.byteSwapIfBE=e.isLE?c=>c:c=>(0,e.byteSwap)(c);const r=Array.from({length:256},(c,u)=>u.toString(16).padStart(2,"0")),i={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function o(c){return c>=i._0&&c<=i._9?c-i._0:c>=i._A&&c<=i._F?c-(i._A-10):c>=i._a&&c<=i._f?c-(i._a-10):void 0}function s(c){if(typeof c!="string")throw new Error("utf8ToBytes expected string, got "+typeof c);return new Uint8Array(new TextEncoder().encode(c))}function a(c){return typeof c=="string"&&(c=s(c)),(0,n.bytes)(c),c}e.nextTick=async()=>{},e.Hash=class{clone(){return this._cloneInto()}};const l={}.toString}(Br),Object.defineProperty(xr,"__esModule",{value:!0}),xr.HashMD=xr.Maj=xr.Chi=void 0;const cd=an,Es=Br;xr.Chi=(e,t,n)=>e&t^~e&n,xr.Maj=(e,t,n)=>e&t^e&n^t&n,xr.HashMD=class extends Es.Hash{constructor(e,t,n,r){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,Es.createView)(this.buffer)}update(e){(0,cd.exists)(this);const{view:t,buffer:n,blockLen:r}=this,i=(e=(0,Es.toBytes)(e)).length;for(let o=0;or-o&&(this.process(n,0),o=0);for(let u=o;u>g&y),h=Number(f&y),v=p?4:0,w=p?0:4;u.setUint32(d+v,S,p),u.setUint32(d+w,h,p)})(n,r-8,BigInt(8*this.length),i),this.process(n,0);const s=(0,Es.createView)(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const l=a/4,c=this.get();if(l>c.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u>eh&al)}:{h:0|Number(e>>eh&al),l:0|Number(e&al)}}function l3(e,t=!1){let n=new Uint32Array(e.length),r=new Uint32Array(e.length);for(let i=0;iBigInt(e>>>0)<>>0);xe.toBig=c3;const u3=(e,t,n)=>e>>>n;xe.shrSH=u3;const d3=(e,t,n)=>e<<32-n|t>>>n;xe.shrSL=d3;const f3=(e,t,n)=>e>>>n|t<<32-n;xe.rotrSH=f3;const h3=(e,t,n)=>e<<32-n|t>>>n;xe.rotrSL=h3;const p3=(e,t,n)=>e<<64-n|t>>>n-32;xe.rotrBH=p3;const m3=(e,t,n)=>e>>>n-32|t<<64-n;xe.rotrBL=m3;const g3=(e,t)=>t;xe.rotr32H=g3;const y3=(e,t)=>e;xe.rotr32L=y3;const v3=(e,t,n)=>e<>>32-n;xe.rotlSH=v3;const w3=(e,t,n)=>t<>>32-n;xe.rotlSL=w3;const E3=(e,t,n)=>t<>>64-n;xe.rotlBH=E3;const b3=(e,t,n)=>e<>>64-n;function C3(e,t,n,r){const i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:0|i}}xe.rotlBL=b3;const S3=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0);xe.add3L=S3;const _3=(e,t,n,r)=>t+n+r+(e/2**32|0)|0;xe.add3H=_3;const k3=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0);xe.add4L=k3;const x3=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0;xe.add4H=x3;const A3=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0);xe.add5L=A3;const M3=(e,t,n,r,i,o)=>t+n+r+i+o+(e/2**32|0)|0;xe.add5H=M3;const w6={fromBig:I0,split:l3,toBig:c3,shrSH:u3,shrSL:d3,rotrSH:f3,rotrSL:h3,rotrBH:p3,rotrBL:m3,rotr32H:g3,rotr32L:y3,rotlSH:v3,rotlSL:w3,rotlBH:E3,rotlBL:b3,add:C3,add3L:S3,add3H:_3,add4L:k3,add4H:x3,add5H:M3,add5L:A3};xe.default=w6,Object.defineProperty(ft,"__esModule",{value:!0}),ft.sha384=ft.sha512_256=ft.sha512_224=ft.sha512=ft.SHA384=ft.SHA512_256=ft.SHA512_224=ft.SHA512=void 0;const E6=xr,Ae=xe,ll=Br,[b6,C6]=Ae.default.split(["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","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))),Fr=new Uint32Array(80),jr=new Uint32Array(80);class Oa extends E6.HashMD{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:t,Al:n,Bh:r,Bl:i,Ch:o,Cl:s,Dh:a,Dl:l,Eh:c,El:u,Fh:d,Fl:f,Gh:p,Gl:g,Hh:y,Hl:S}=this;return[t,n,r,i,o,s,a,l,c,u,d,f,p,g,y,S]}set(t,n,r,i,o,s,a,l,c,u,d,f,p,g,y,S){this.Ah=0|t,this.Al=0|n,this.Bh=0|r,this.Bl=0|i,this.Ch=0|o,this.Cl=0|s,this.Dh=0|a,this.Dl=0|l,this.Eh=0|c,this.El=0|u,this.Fh=0|d,this.Fl=0|f,this.Gh=0|p,this.Gl=0|g,this.Hh=0|y,this.Hl=0|S}process(t,n){for(let w=0;w<16;w++,n+=4)Fr[w]=t.getUint32(n),jr[w]=t.getUint32(n+=4);for(let w=16;w<80;w++){const T=0|Fr[w-15],I=0|jr[w-15],j=Ae.default.rotrSH(T,I,1)^Ae.default.rotrSH(T,I,8)^Ae.default.shrSH(T,I,7),D=Ae.default.rotrSL(T,I,1)^Ae.default.rotrSL(T,I,8)^Ae.default.shrSL(T,I,7),H=0|Fr[w-2],G=0|jr[w-2],K=Ae.default.rotrSH(H,G,19)^Ae.default.rotrBH(H,G,61)^Ae.default.shrSH(H,G,6),q=Ae.default.rotrSL(H,G,19)^Ae.default.rotrBL(H,G,61)^Ae.default.shrSL(H,G,6),W=Ae.default.add4L(D,q,jr[w-7],jr[w-16]),C=Ae.default.add4H(W,j,K,Fr[w-7],Fr[w-16]);Fr[w]=0|C,jr[w]=0|W}let{Ah:r,Al:i,Bh:o,Bl:s,Ch:a,Cl:l,Dh:c,Dl:u,Eh:d,El:f,Fh:p,Fl:g,Gh:y,Gl:S,Hh:h,Hl:v}=this;for(let w=0;w<80;w++){const T=Ae.default.rotrSH(d,f,14)^Ae.default.rotrSH(d,f,18)^Ae.default.rotrBH(d,f,41),I=Ae.default.rotrSL(d,f,14)^Ae.default.rotrSL(d,f,18)^Ae.default.rotrBL(d,f,41),j=d&p^~d&y,D=f&g^~f&S,H=Ae.default.add5L(v,I,D,C6[w],jr[w]),G=Ae.default.add5H(H,h,T,j,b6[w],Fr[w]),K=0|H,q=Ae.default.rotrSH(r,i,28)^Ae.default.rotrBH(r,i,34)^Ae.default.rotrBH(r,i,39),W=Ae.default.rotrSL(r,i,28)^Ae.default.rotrBL(r,i,34)^Ae.default.rotrBL(r,i,39),C=r&o^r&a^o&a,m=i&s^i&l^s&l;h=0|y,v=0|S,y=0|p,S=0|g,p=0|d,g=0|f,{h:d,l:f}=Ae.default.add(0|c,0|u,0|G,0|K),c=0|a,u=0|l,a=0|o,l=0|s,o=0|r,s=0|i;const _=Ae.default.add3L(K,W,m);r=Ae.default.add3H(_,G,q,C),i=0|_}({h:r,l:i}=Ae.default.add(0|this.Ah,0|this.Al,0|r,0|i)),{h:o,l:s}=Ae.default.add(0|this.Bh,0|this.Bl,0|o,0|s),{h:a,l}=Ae.default.add(0|this.Ch,0|this.Cl,0|a,0|l),{h:c,l:u}=Ae.default.add(0|this.Dh,0|this.Dl,0|c,0|u),{h:d,l:f}=Ae.default.add(0|this.Eh,0|this.El,0|d,0|f),{h:p,l:g}=Ae.default.add(0|this.Fh,0|this.Fl,0|p,0|g),{h:y,l:S}=Ae.default.add(0|this.Gh,0|this.Gl,0|y,0|S),{h,l:v}=Ae.default.add(0|this.Hh,0|this.Hl,0|h,0|v),this.set(r,i,o,s,a,l,c,u,d,f,p,g,y,S,h,v)}roundClean(){Fr.fill(0),jr.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)}}ft.SHA512=Oa;class T3 extends Oa{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}ft.SHA512_224=T3;class P3 extends Oa{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}ft.SHA512_256=P3;class z1 extends Oa{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}ft.SHA384=z1,ft.sha512=(0,ll.wrapConstructor)(()=>new Oa),ft.sha512_224=(0,ll.wrapConstructor)(()=>new T3),ft.sha512_256=(0,ll.wrapConstructor)(()=>new P3),ft.sha384=(0,ll.wrapConstructor)(()=>new z1);var th={},Io={},je={},Te={};Object.defineProperty(Te,"__esModule",{value:!0}),Te.notImplemented=Te.bitMask=void 0,Te.isBytes=Ic,Te.abytes=Rc,Te.abool=function(e,t){if(typeof t!="boolean")throw new Error(`${e} must be valid boolean, got "${t}".`)},Te.bytesToHex=ud,Te.numberToHexUnpadded=V1,Te.hexToNumber=dd,Te.hexToBytes=jl,Te.bytesToNumberBE=function(e){return dd(ud(e))},Te.bytesToNumberLE=function(e){return Rc(e),dd(ud(Uint8Array.from(e).reverse()))},Te.numberToBytesBE=q1,Te.numberToBytesLE=function(e,t){return q1(e,t).reverse()},Te.numberToVarBytesBE=function(e){return jl(V1(e))},Te.ensureBytes=function(e,t,n){let r;if(typeof t=="string")try{r=jl(t)}catch(o){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${o}`)}else{if(!Ic(t))throw new Error(`${e} must be hex string or Uint8Array`);r=Uint8Array.from(t)}const i=r.length;if(typeof n=="number"&&i!==n)throw new Error(`${e} expected ${n} bytes, got ${i}`);return r},Te.concatBytes=G1,Te.equalBytes=function(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;rnh;e>>=Fl,t+=1);return t},Te.bitGet=function(e,t){return e>>BigInt(t)&Fl},Te.bitSet=function(e,t,n){return e|(n?Fl:nh)<{r.fill(1),i.fill(0),o=0},a=(...u)=>n(i,r,...u),l=(u=hd())=>{i=a(Z1([0]),u),r=a(),u.length!==0&&(i=a(Z1([1]),u),r=a())},c=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let u=0;const d=[];for(;u{let f;for(s(),l(u);!(f=d(c()));)l();return s(),f}},Te.validateObject=function(e,t,n={}){const r=(i,o,s)=>{const a=k6[o];if(typeof a!="function")throw new Error(`Invalid validator "${o}", expected function`);const l=e[i];if(!(s&&l===void 0||a(l,e)))throw new Error(`Invalid param ${String(i)}=${l} (${typeof l}), expected ${o}`)};for(const[i,o]of Object.entries(t))r(i,o,!1);for(const[i,o]of Object.entries(n))r(i,o,!0);return e},Te.memoized=function(e){const t=new WeakMap;return(n,...r)=>{const i=t.get(n);if(i!==void 0)return i;const o=e(n,...r);return t.set(n,o),o}};const nh=BigInt(0),Fl=BigInt(1),S6=BigInt(2);function Ic(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function Rc(e){if(!Ic(e))throw new Error("Uint8Array expected")}const _6=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function ud(e){Rc(e);let t="";for(let n=0;n=hr._0&&e<=hr._9?e-hr._0:e>=hr._A&&e<=hr._F?e-(hr._A-10):e>=hr._a&&e<=hr._f?e-(hr._a-10):void 0}function jl(e){if(typeof e!="string")throw new Error("hex string expected, got "+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const r=new Uint8Array(n);for(let i=0,o=0;itypeof e=="bigint"&&nh<=e;function Y1(e,t,n){return fd(e)&&fd(t)&&fd(n)&&t<=e&&e(S6<new Uint8Array(e),Z1=e=>Uint8Array.from(e),k6={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||Ic(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};Te.notImplemented=()=>{throw new Error("not implemented")},Object.defineProperty(je,"__esModule",{value:!0}),je.isNegativeLE=void 0,je.mod=rn,je.pow=L3,je.pow2=function(e,t,n){let r=e;for(;t-- >pt;)r*=r,r%=n;return r},je.invert=cl,je.tonelliShanks=I3,je.FpSqrt=X1,je.validateField=function(e){const t=A6.reduce((n,r)=>(n[r]="function",n),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"});return(0,tn.validateObject)(e,t)},je.FpPow=em,je.FpInvertBatch=tm,je.FpDiv=function(e,t,n){return e.mul(t,typeof n=="bigint"?cl(n,e.ORDER):e.inv(n))},je.FpLegendre=nm,je.FpIsSquare=function(e){const t=nm(e.ORDER);return n=>{const r=t(e,n);return e.eql(r,e.ZERO)||e.eql(r,e.ONE)}},je.nLength=pd,je.Field=function(e,t,n=!1,r={}){if(e<=pt)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:i,nByteLength:o}=pd(e,t);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=X1(e),a=Object.freeze({ORDER:e,BITS:i,BYTES:o,MASK:(0,tn.bitMask)(i),ZERO:pt,ONE:He,create:l=>rn(l,e),isValid:l=>{if(typeof l!="bigint")throw new Error("Invalid field element: expected bigint, got "+typeof l);return pt<=l&&ll===pt,isOdd:l=>(l&He)===He,neg:l=>rn(-l,e),eql:(l,c)=>l===c,sqr:l=>rn(l*l,e),add:(l,c)=>rn(l+c,e),sub:(l,c)=>rn(l-c,e),mul:(l,c)=>rn(l*c,e),pow:(l,c)=>em(a,l,c),div:(l,c)=>rn(l*cl(c,e),e),sqrN:l=>l*l,addN:(l,c)=>l+c,subN:(l,c)=>l-c,mulN:(l,c)=>l*c,inv:l=>cl(l,e),sqrt:r.sqrt||(l=>s(a,l)),invertBatch:l=>tm(a,l),cmov:(l,c,u)=>u?c:l,toBytes:l=>n?(0,tn.numberToBytesLE)(l,o):(0,tn.numberToBytesBE)(l,o),fromBytes:l=>{if(l.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${l.length}`);return n?(0,tn.bytesToNumberLE)(l):(0,tn.bytesToNumberBE)(l)}});return Object.freeze(a)},je.FpSqrtOdd=function(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const n=e.sqrt(t);return e.isOdd(n)?n:e.neg(n)},je.FpSqrtEven=function(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const n=e.sqrt(t);return e.isOdd(n)?e.neg(n):n},je.hashToPrivateScalar=function(e,t,n=!1){const r=(e=(0,tn.ensureBytes)("privateHash",e)).length,i=pd(t).nByteLength+8;if(i<24||r1024)throw new Error(`hashToPrivateScalar: expected ${i}-1024 bytes of input, got ${r}`);return rn(n?(0,tn.bytesToNumberLE)(e):(0,tn.bytesToNumberBE)(e),t-He)+He},je.getFieldBytesLength=ih,je.getMinHashLength=rm,je.mapHashToField=function(e,t,n=!1){const r=e.length,i=ih(t),o=rm(t);if(r<16||r1024)throw new Error(`expected ${o}-1024 bytes of input, got ${r}`);const s=rn(n?(0,tn.bytesToNumberBE)(e):(0,tn.bytesToNumberLE)(e),t-He)+He;return n?(0,tn.numberToBytesLE)(s,i):(0,tn.numberToBytesBE)(s,i)};const tn=Te,pt=BigInt(0),He=BigInt(1),ii=BigInt(2),x6=BigInt(3),rh=BigInt(4),Q1=BigInt(5),J1=BigInt(8);function rn(e,t){const n=e%t;return n>=pt?n:t+n}function L3(e,t,n){if(n<=pt||t 0");if(n===He)return pt;let r=He;for(;t>pt;)t&He&&(r=r*e%n),e=e*e%n,t>>=He;return r}function cl(e,t){if(e===pt||t<=pt)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=rn(e,t),r=t,i=pt,o=He;for(;n!==pt;){const s=r%n,a=i-o*(r/n);r=n,n=s,i=o,o=a}if(r!==He)throw new Error("invert: does not exist");return rn(i,t)}function I3(e){const t=(e-He)/ii;let n,r,i;for(n=e-He,r=0;n%ii===pt;n/=ii,r++);for(i=ii;i(rn(e,t)&He)===He;const A6=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function em(e,t,n){if(n 0");if(n===pt)return e.ONE;if(n===He)return t;let r=e.ONE,i=t;for(;n>pt;)n&He&&(r=e.mul(r,i)),i=e.sqr(i),n>>=He;return r}function tm(e,t){const n=new Array(t.length),r=t.reduce((o,s,a)=>e.is0(s)?o:(n[a]=o,e.mul(o,s)),e.ONE),i=e.inv(r);return t.reduceRight((o,s,a)=>e.is0(s)?o:(n[a]=e.mul(o,n[a]),e.mul(o,s)),i),n}function nm(e){const t=(e-He)/ii;return(n,r)=>n.pow(r,t)}function pd(e,t){const n=t!==void 0?t:e.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function ih(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function rm(e){const t=ih(e);return t+Math.ceil(t/2)}Object.defineProperty(Io,"__esModule",{value:!0}),Io.wNAF=function(e,t){const n=(o,s)=>{const a=s.negate();return o?a:s},r=o=>{if(!Number.isSafeInteger(o)||o<=0||o>t)throw new Error(`Wrong window size=${o}, should be [1..${t}]`)},i=o=>(r(o),{windows:Math.ceil(t/o)+1,windowSize:2**(o-1)});return{constTimeNegate:n,unsafeLadder(o,s){let a=e.ZERO,l=o;for(;s>M6;)s&md&&(a=a.add(l)),l=l.double(),s>>=md;return a},precomputeWindow(o,s){const{windows:a,windowSize:l}=i(s),c=[];let u=o,d=u;for(let f=0;f>=g,h>c&&(h-=p,a+=md);const v=S,w=S+Math.abs(h)-1,T=y%2!=0,I=h<0;h===0?d=d.add(n(T,s[v])):u=u.add(n(I,s[w]))}return{p:u,f:d}},wNAFCached(o,s,a){const l=sm.get(o)||1;let c=gd.get(o);return c||(c=this.precomputeWindow(o,l),l!==1&&gd.set(o,a(c))),this.wNAF(l,c,s)},setWindowSize(o,s){r(s),sm.set(o,s),gd.delete(o)}}},Io.pippenger=function(e,t,n,r){if(!Array.isArray(n)||!Array.isArray(r)||r.length!==n.length)throw new Error("arrays of points and scalars must have equal length");r.forEach((u,d)=>{if(!t.isValid(u))throw new Error(`wrong scalar at index ${d}`)}),n.forEach((u,d)=>{if(!(u instanceof e))throw new Error(`wrong point at index ${d}`)});const i=(0,om.bitLen)(BigInt(n.length)),o=i>12?i-3:i>4?i-2:i?2:1,s=(1<=0;u-=o){a.fill(e.ZERO);for(let f=0;f>BigInt(u)&BigInt(s));a[g]=a[g].add(n[f])}let d=e.ZERO;for(let f=a.length-1,p=e.ZERO;f>0;f--)p=p.add(a[f]),d=d.add(p);if(c=c.add(d),u!==0)for(let f=0;f{try{return{isValid:!0,value:n.sqrt(C*n.inv(m))}}catch{return{isValid:!1,value:On}}}),p=t.adjustScalarBytes||(C=>C),g=t.domain||((C,m,_)=>{if((0,nn.abool)("phflag",_),m.length||_)throw new Error("Contexts/pre-hash are not supported");return C});function y(C,m){qt.aInRange("coordinate "+C,m,On,c)}function S(C){if(!(C instanceof w))throw new Error("ExtendedPoint expected")}const h=(0,nn.memoized)((C,m)=>{const{ex:_,ey:M,ez:A}=C,P=C.is0();m==null&&(m=P?T6:n.inv(A));const L=u(_*m),B=u(M*m),$=u(A*m);if(P)return{x:On,y:Gt};if($!==Gt)throw new Error("invZ was invalid");return{x:L,y:B}}),v=(0,nn.memoized)(C=>{const{a:m,d:_}=t;if(C.is0())throw new Error("bad point: ZERO");const{ex:M,ey:A,ez:P,et:L}=C,B=u(M*M),$=u(A*A),k=u(P*P),x=u(k*k),N=u(B*m);if(u(k*u(N+$))!==u(x+u(_*u(B*$))))throw new Error("bad point: equation left != right (1)");if(u(M*A)!==u(P*L))throw new Error("bad point: equation left != right (2)");return!0});class w{constructor(m,_,M,A){this.ex=m,this.ey=_,this.ez=M,this.et=A,y("x",m),y("y",_),y("z",M),y("t",A),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(m){if(m instanceof w)throw new Error("extended point not allowed");const{x:_,y:M}=m||{};return y("x",_),y("y",M),new w(_,M,Gt,u(_*M))}static normalizeZ(m){const _=n.invertBatch(m.map(M=>M.ez));return m.map((M,A)=>M.toAffine(_[A])).map(w.fromAffine)}static msm(m,_){return(0,yd.pippenger)(w,d,m,_)}_setWindowSize(m){j.setWindowSize(this,m)}assertValidity(){v(this)}equals(m){S(m);const{ex:_,ey:M,ez:A}=this,{ex:P,ey:L,ez:B}=m,$=u(_*B),k=u(P*A),x=u(M*B),N=u(L*A);return $===k&&x===N}is0(){return this.equals(w.ZERO)}negate(){return new w(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){const{a:m}=t,{ex:_,ey:M,ez:A}=this,P=u(_*_),L=u(M*M),B=u(ul*u(A*A)),$=u(m*P),k=_+M,x=u(u(k*k)-P-L),N=$+L,O=N-B,z=$-L,Y=u(x*O),V=u(N*z),Q=u(x*z),te=u(O*N);return new w(Y,V,te,Q)}add(m){S(m);const{a:_,d:M}=t,{ex:A,ey:P,ez:L,et:B}=this,{ex:$,ey:k,ez:x,et:N}=m;if(_===BigInt(-1)){const ae=u((P-A)*(k+$)),he=u((P+A)*(k-$)),me=u(he-ae);if(me===On)return this.double();const be=u(L*ul*N),Ee=u(B*ul*x),ye=Ee+be,Se=he+ae,_e=Ee-be,Le=u(ye*me),gt=u(Se*_e),R=u(ye*_e),E=u(me*Se);return new w(Le,gt,E,R)}const O=u(A*$),z=u(P*k),Y=u(B*M*N),V=u(L*x),Q=u((A+P)*($+k)-O-z),te=V-Y,ie=V+Y,ne=u(z-_*O),ge=u(Q*te),oe=u(ie*ne),le=u(Q*ne),de=u(te*ie);return new w(ge,oe,de,le)}subtract(m){return this.add(m.negate())}wNAF(m){return j.wNAFCached(this,m,w.normalizeZ)}multiply(m){const _=m;qt.aInRange("scalar",_,Gt,r);const{p:M,f:A}=this.wNAF(_);return w.normalizeZ([M,A])[0]}multiplyUnsafe(m){const _=m;return qt.aInRange("scalar",_,On,r),_===On?I:this.equals(I)||_===Gt?this:this.equals(T)?this.wNAF(_).p:j.unsafeLadder(this,_)}isSmallOrder(){return this.multiplyUnsafe(l).is0()}isTorsionFree(){return j.unsafeLadder(this,r).is0()}toAffine(m){return h(this,m)}clearCofactor(){const{h:m}=t;return m===Gt?this:this.multiplyUnsafe(m)}static fromHex(m,_=!1){const{d:M,a:A}=t,P=n.BYTES;m=(0,nn.ensureBytes)("pointHex",m,P),(0,nn.abool)("zip215",_);const L=m.slice(),B=m[P-1];L[P-1]=-129&B;const $=qt.bytesToNumberLE(L),k=_?c:n.ORDER;qt.aInRange("pointHex.y",$,On,k);const x=u($*$),N=u(x-Gt),O=u(M*x-A);let{isValid:z,value:Y}=f(N,O);if(!z)throw new Error("Point.fromHex: invalid y coordinate");const V=(Y&Gt)===Gt,Q=(128&B)!=0;if(!_&&Y===On&&Q)throw new Error("Point.fromHex: x=0 and x_0=1");return Q!==V&&(Y=u(-Y)),w.fromAffine({x:Y,y:$})}static fromPrivateKey(m){return G(m).point}toRawBytes(){const{x:m,y:_}=this.toAffine(),M=qt.numberToBytesLE(_,n.BYTES);return M[M.length-1]|=m&Gt?128:0,M}toHex(){return qt.bytesToHex(this.toRawBytes())}}w.BASE=new w(t.Gx,t.Gy,Gt,u(t.Gx*t.Gy)),w.ZERO=new w(On,Gt,Gt,On);const{BASE:T,ZERO:I}=w,j=(0,yd.wNAF)(w,8*a);function D(C){return(0,am.mod)(C,r)}function H(C){return D(qt.bytesToNumberLE(C))}function G(C){const m=a;C=(0,nn.ensureBytes)("private key",C,m);const _=(0,nn.ensureBytes)("hashed private key",o(C),2*m),M=p(_.slice(0,m)),A=_.slice(m,2*m),P=H(M),L=T.multiply(P),B=L.toRawBytes();return{head:M,prefix:A,scalar:P,point:L,pointBytes:B}}function K(C=new Uint8Array,...m){const _=qt.concatBytes(...m);return H(o(g(_,(0,nn.ensureBytes)("context",C),!!i)))}const q=P6;return T._setWindowSize(8),{CURVE:t,getPublicKey:function(C){return G(C).pointBytes},sign:function(C,m,_={}){C=(0,nn.ensureBytes)("message",C),i&&(C=i(C));const{prefix:M,scalar:A,pointBytes:P}=G(m),L=K(_.context,M,C),B=T.multiply(L).toRawBytes(),$=D(L+K(_.context,B,P,C)*A);qt.aInRange("signature.s",$,On,r);const k=qt.concatBytes(B,qt.numberToBytesLE($,n.BYTES));return(0,nn.ensureBytes)("result",k,2*a)},verify:function(C,m,_,M=q){const{context:A,zip215:P}=M,L=n.BYTES;C=(0,nn.ensureBytes)("signature",C,2*L),m=(0,nn.ensureBytes)("message",m),P!==void 0&&(0,nn.abool)("zip215",P),i&&(m=i(m));const B=qt.bytesToNumberLE(C.slice(L,2*L));let $,k,x;try{$=w.fromHex(_,P),k=w.fromHex(C.slice(0,L),P),x=T.multiplyUnsafe(B)}catch{return!1}if(!P&&$.isSmallOrder())return!1;const N=K(A,k.toRawBytes(),$.toRawBytes(),m);return k.add($.multiplyUnsafe(N)).subtract(x).clearCofactor().equals(w.ZERO)},ExtendedPoint:w,utils:{getExtendedPublicKey:G,randomPrivateKey:()=>s(n.BYTES),precompute:(C=8,m=w.BASE)=>(m._setWindowSize(C),m.multiply(BigInt(3)),m)}}};const yd=Io,am=je,qt=Te,nn=Te,On=BigInt(0),Gt=BigInt(1),ul=BigInt(2),T6=BigInt(8),P6={zip215:!0};var Jr={};Object.defineProperty(Jr,"__esModule",{value:!0}),Jr.expand_message_xmd=R3,Jr.expand_message_xof=O3,Jr.hash_to_field=vd,Jr.isogenyMap=function(e,t){const n=t.map(r=>Array.from(r).reverse());return(r,i)=>{const[o,s,a,l]=n.map(c=>c.reduce((u,d)=>e.add(e.mul(u,r),d)));return r=e.div(o,s),i=e.mul(i,e.div(a,l)),{x:r,y:i}}},Jr.createHasher=function(e,t,n){if(typeof t!="function")throw new Error("mapToCurve() must be defined");return{hashToCurve(r,i){const o=vd(r,2,{...n,DST:n.DST,...i}),s=e.fromAffine(t(o[0])),a=e.fromAffine(t(o[1])),l=s.add(a).clearCofactor();return l.assertValidity(),l},encodeToCurve(r,i){const o=vd(r,1,{...n,DST:n.encodeDST,...i}),s=e.fromAffine(t(o[0])).clearCofactor();return s.assertValidity(),s},mapToCurve(r){if(!Array.isArray(r))throw new Error("mapToCurve: expected array of bigints");for(const o of r)if(typeof o!="bigint")throw new Error(`mapToCurve: expected array of bigints, got ${o} in array`);const i=e.fromAffine(t(r)).clearCofactor();return i.assertValidity(),i}}};const L6=je,Pt=Te,I6=Pt.bytesToNumberBE;function Xr(e,t){if(ya(e),ya(t),e<0||e>=1<<8*t)throw new Error(`bad I2OSP call: value=${e} length=${t}`);const n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=255&e,e>>>=8;return new Uint8Array(n)}function R6(e,t){const n=new Uint8Array(e.length);for(let r=0;r255&&(t=r((0,Pt.concatBytes)((0,Pt.utf8ToBytes)("H2C-OVERSIZE-DST-"),t)));const{outputLen:i,blockLen:o}=r,s=Math.ceil(n/i);if(n>65535||s>255)throw new Error("expand_message_xmd: invalid lenInBytes");const a=(0,Pt.concatBytes)(t,Xr(t.length,1)),l=Xr(0,o),c=Xr(n,2),u=new Array(s),d=r((0,Pt.concatBytes)(l,e,c,Xr(0,1),a));u[0]=r((0,Pt.concatBytes)(d,Xr(1,1),a));for(let f=1;f<=s;f++){const p=[R6(d,u[f-1]),Xr(f+1,1),a];u[f]=r((0,Pt.concatBytes)(...p))}return(0,Pt.concatBytes)(...u).slice(0,n)}function O3(e,t,n,r,i){if((0,Pt.abytes)(e),(0,Pt.abytes)(t),ya(n),t.length>255){const o=Math.ceil(2*r/8);t=i.create({dkLen:o}).update((0,Pt.utf8ToBytes)("H2C-OVERSIZE-DST-")).update(t).digest()}if(n>65535||t.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return i.create({dkLen:n}).update(e).update(Xr(n,2)).update(t).update(Xr(t.length,1)).digest()}function vd(e,t,n){(0,Pt.validateObject)(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});const{p:r,k:i,m:o,hash:s,expand:a,DST:l}=n;(0,Pt.abytes)(e),ya(t);const c=typeof l=="string"?(0,Pt.utf8ToBytes)(l):l,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*o*d;let p;if(a==="xmd")p=R3(e,c,f,s);else if(a==="xof")p=O3(e,c,f,i,s);else{if(a!=="_internal_pass")throw new Error('expand must be "xmd" or "xof"');p=e}const g=new Array(t);for(let y=0;y(0,lm.mod)(y,n),i=t.montgomeryBits,o=Math.ceil(i/8),s=t.nByteLength,a=t.adjustScalarBytes||(y=>y),l=t.powPminus2||(y=>(0,lm.pow)(y,n-BigInt(2),n));function c(y,S,h){const v=r(y*(S-h));return[S=r(S-v),h=r(h+v)]}const u=(t.a-BigInt(2))/BigInt(4);function d(y){return(0,Ur.numberToBytesLE)(r(y),o)}function f(y,S){const h=function(T){const I=(0,Ur.ensureBytes)("u coordinate",T,o);return s===32&&(I[31]&=127),(0,Ur.bytesToNumberLE)(I)}(S),v=function(T){const I=(0,Ur.ensureBytes)("scalar",T),j=I.length;if(j!==o&&j!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${j}`);return(0,Ur.bytesToNumberLE)(a(I))}(y),w=function(T,I){(0,Ur.aInRange)("u",T,lo,n),(0,Ur.aInRange)("scalar",I,lo,n);const j=I,D=T;let H,G=wd,K=lo,q=T,W=wd,C=lo;for(let _=BigInt(i-1);_>=lo;_--){const M=j>>_&wd;C^=M,H=c(C,G,q),G=H[0],q=H[1],H=c(C,K,W),K=H[0],W=H[1],C=M;const A=G+K,P=r(A*A),L=G-K,B=r(L*L),$=P-B,k=q+W,x=r((q-W)*A),N=r(k*L),O=x+N,z=x-N;q=r(O*O),W=r(D*r(z*z)),G=r(P*B),K=r($*(P+r(u*$)))}H=c(C,G,q),G=H[0],q=H[1],H=c(C,K,W),K=H[0],W=H[1];const m=l(K);return r(G*m)}(h,v);if(w===lo)throw new Error("Invalid private or public key received");return d(w)}const p=d(t.Gu);function g(y){return f(y,p)}return{scalarMult:f,scalarMultBase:g,getSharedSecret:(y,S)=>f(y,S),getPublicKey:y=>g(y),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:p}};const lm=je,Ur=Te,lo=BigInt(0),wd=BigInt(1);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hash_to_ristretto255=e.hashToRistretto255=e.RistrettoPoint=e.encodeToCurve=e.hashToCurve=e.edwardsToMontgomery=e.x25519=e.ed25519ph=e.ed25519ctx=e.ed25519=e.ED25519_TORSION_SUBGROUP=void 0,e.edwardsToMontgomeryPub=j,e.edwardsToMontgomeryPriv=function(x){const N=T.hash(x.subarray(0,32));return T.adjustScalarBytes(N).subarray(0,32)};const t=ft,n=Br,r=th,i=Jr,o=je,s=oh,a=Te,l=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),c=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),u=BigInt(0),d=BigInt(1),f=BigInt(2),p=BigInt(3),g=BigInt(5),y=BigInt(8);function S(x){const N=BigInt(10),O=BigInt(20),z=BigInt(40),Y=BigInt(80),V=l,Q=x*x%V*x%V,te=(0,o.pow2)(Q,f,V)*Q%V,ie=(0,o.pow2)(te,d,V)*x%V,ne=(0,o.pow2)(ie,g,V)*ie%V,ge=(0,o.pow2)(ne,N,V)*ne%V,oe=(0,o.pow2)(ge,O,V)*ge%V,le=(0,o.pow2)(oe,z,V)*oe%V,de=(0,o.pow2)(le,Y,V)*le%V,ae=(0,o.pow2)(de,Y,V)*le%V,he=(0,o.pow2)(ae,N,V)*ne%V;return{pow_p_5_8:(0,o.pow2)(he,f,V)*x%V,b2:Q}}function h(x){return x[0]&=248,x[31]&=127,x[31]|=64,x}function v(x,N){const O=l,z=(0,o.mod)(N*N*N,O),Y=S(x*(0,o.mod)(z*z*N,O)).pow_p_5_8;let V=(0,o.mod)(x*z*Y,O);const Q=(0,o.mod)(N*V*V,O),te=V,ie=(0,o.mod)(V*c,O),ne=Q===x,ge=Q===(0,o.mod)(-x,O),oe=Q===(0,o.mod)(-x*c,O);return ne&&(V=te),(ge||oe)&&(V=ie),(0,o.isNegativeLE)(V,O)&&(V=(0,o.mod)(-V,O)),{isValid:ne||ge,value:V}}e.ED25519_TORSION_SUBGROUP=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"];const w=(0,o.Field)(l,void 0,!0),T={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:w,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:y,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:t.sha512,randomBytes:n.randomBytes,adjustScalarBytes:h,uvRatio:v};function I(x,N,O){if(N.length>255)throw new Error("Context is too big");return(0,n.concatBytes)((0,n.utf8ToBytes)("SigEd25519 no Ed25519 collisions"),new Uint8Array([O?1:0,N.length]),N,x)}function j(x){const{y:N}=e.ed25519.ExtendedPoint.fromHex(x),O=BigInt(1);return w.toBytes(w.create((O+N)*w.inv(O-N)))}e.ed25519=(0,r.twistedEdwards)(T),e.ed25519ctx=(0,r.twistedEdwards)({...T,domain:I}),e.ed25519ph=(0,r.twistedEdwards)(Object.assign({},T,{domain:I,prehash:t.sha512})),e.x25519=(0,s.montgomery)({P:l,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:x=>{const N=l,{pow_p_5_8:O,b2:z}=S(x);return(0,o.mod)((0,o.pow2)(O,p,N)*z,N)},adjustScalarBytes:h,randomBytes:n.randomBytes}),e.edwardsToMontgomery=j;const D=(w.ORDER+p)/y,H=w.pow(f,D),G=w.sqrt(w.neg(w.ONE)),K=(0,o.FpSqrtEven)(w,w.neg(BigInt(486664))),q=(0,i.createHasher)(e.ed25519.ExtendedPoint,x=>function(N){const{xMn:O,xMd:z,yMn:Y,yMd:V}=function(de){const ae=(w.ORDER-g)/y,he=BigInt(486662);let me=w.sqr(de);me=w.mul(me,f);let be=w.add(me,w.ONE),Ee=w.neg(he),ye=w.sqr(be),Se=w.mul(ye,be),_e=w.mul(me,he);_e=w.mul(_e,Ee),_e=w.add(_e,ye),_e=w.mul(_e,Ee);let Le=w.sqr(Se);ye=w.sqr(Le),Le=w.mul(Le,Se),Le=w.mul(Le,_e),ye=w.mul(ye,Le);let gt=w.pow(ye,ae);gt=w.mul(gt,Le);let R=w.mul(gt,G);ye=w.sqr(gt),ye=w.mul(ye,Se);let E=w.eql(ye,_e),b=w.cmov(R,gt,E),F=w.mul(Ee,me),Z=w.mul(gt,de);Z=w.mul(Z,H);let X=w.mul(Z,G),se=w.mul(_e,me);ye=w.sqr(Z),ye=w.mul(ye,Se);let Me=w.eql(ye,se),qe=w.cmov(X,Z,Me);ye=w.sqr(b),ye=w.mul(ye,Se);let Ke=w.eql(ye,_e),Ge=w.cmov(F,Ee,Ke),Oe=w.cmov(qe,b,Ke),R5=w.isOdd(Oe);return Oe=w.cmov(Oe,w.neg(Oe),Ke!==R5),{xMn:Ge,xMd:be,yMn:Oe,yMd:d}}(N);let Q=w.mul(O,V);Q=w.mul(Q,K);let te=w.mul(z,Y),ie=w.sub(O,z),ne=w.add(O,z),ge=w.mul(te,ne),oe=w.eql(ge,w.ZERO);Q=w.cmov(Q,w.ZERO,oe),te=w.cmov(te,w.ONE,oe),ie=w.cmov(ie,w.ONE,oe),ne=w.cmov(ne,w.ONE,oe);const le=w.invertBatch([te,ne]);return{x:w.mul(Q,le[0]),y:w.mul(ie,le[1])}}(x[0]),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:w.ORDER,m:1,k:128,expand:"xmd",hash:t.sha512});function W(x){if(!(x instanceof k))throw new Error("RistrettoPoint expected")}e.hashToCurve=q.hashToCurve,e.encodeToCurve=q.encodeToCurve;const C=c,m=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),_=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),M=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),A=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),P=x=>v(d,x),L=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),B=x=>e.ed25519.CURVE.Fp.create((0,a.bytesToNumberLE)(x)&L);function $(x){const{d:N}=e.ed25519.CURVE,O=e.ed25519.CURVE.Fp.ORDER,z=e.ed25519.CURVE.Fp.create,Y=z(C*x*x),V=z((Y+d)*M);let Q=BigInt(-1);const te=z((Q-N*Y)*z(Y+N));let{isValid:ie,value:ne}=v(V,te),ge=z(ne*x);(0,o.isNegativeLE)(ge,O)||(ge=z(-ge)),ie||(ne=ge),ie||(Q=Y);const oe=z(Q*(Y-d)*A-te),le=ne*ne,de=z((ne+ne)*te),ae=z(oe*m),he=z(d-le),me=z(d+le);return new e.ed25519.ExtendedPoint(z(de*me),z(he*ae),z(ae*me),z(de*he))}class k{constructor(N){this.ep=N}static fromAffine(N){return new k(e.ed25519.ExtendedPoint.fromAffine(N))}static hashToCurve(N){N=(0,a.ensureBytes)("ristrettoHash",N,64);const O=$(B(N.slice(0,32))),z=$(B(N.slice(32,64)));return new k(O.add(z))}static fromHex(N){N=(0,a.ensureBytes)("ristrettoHex",N,32);const{a:O,d:z}=e.ed25519.CURVE,Y=e.ed25519.CURVE.Fp.ORDER,V=e.ed25519.CURVE.Fp.create,Q="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",te=B(N);if(!(0,a.equalBytes)((0,a.numberToBytesLE)(te,32),N)||(0,o.isNegativeLE)(te,Y))throw new Error(Q);const ie=V(te*te),ne=V(d+O*ie),ge=V(d-O*ie),oe=V(ne*ne),le=V(ge*ge),de=V(O*z*oe-le),{isValid:ae,value:he}=P(V(de*le)),me=V(he*ge),be=V(he*me*de);let Ee=V((te+te)*me);(0,o.isNegativeLE)(Ee,Y)&&(Ee=V(-Ee));const ye=V(ne*be),Se=V(Ee*ye);if(!ae||(0,o.isNegativeLE)(Se,Y)||ye===u)throw new Error(Q);return new k(new e.ed25519.ExtendedPoint(Ee,ye,d,Se))}toRawBytes(){let{ex:N,ey:O,ez:z,et:Y}=this.ep;const V=e.ed25519.CURVE.Fp.ORDER,Q=e.ed25519.CURVE.Fp.create,te=Q(Q(z+O)*Q(z-O)),ie=Q(N*O),ne=Q(ie*ie),{value:ge}=P(Q(te*ne)),oe=Q(ge*te),le=Q(ge*ie),de=Q(oe*le*Y);let ae;if((0,o.isNegativeLE)(Y*de,V)){let me=Q(O*C),be=Q(N*C);N=me,O=be,ae=Q(oe*_)}else ae=le;(0,o.isNegativeLE)(N*de,V)&&(O=Q(-O));let he=Q((z-O)*ae);return(0,o.isNegativeLE)(he,V)&&(he=Q(-he)),(0,a.numberToBytesLE)(he,32)}toHex(){return(0,a.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(N){W(N);const{ex:O,ey:z}=this.ep,{ex:Y,ey:V}=N.ep,Q=e.ed25519.CURVE.Fp.create,te=Q(O*V)===Q(z*Y),ie=Q(z*V)===Q(O*Y);return te||ie}add(N){return W(N),new k(this.ep.add(N.ep))}subtract(N){return W(N),new k(this.ep.subtract(N.ep))}multiply(N){return new k(this.ep.multiply(N))}multiplyUnsafe(N){return new k(this.ep.multiplyUnsafe(N))}double(){return new k(this.ep.double())}negate(){return new k(this.ep.negate())}}e.RistrettoPoint=(k.BASE||(k.BASE=new k(e.ed25519.ExtendedPoint.BASE)),k.ZERO||(k.ZERO=new k(e.ed25519.ExtendedPoint.ZERO)),k),e.hashToRistretto255=(x,N)=>{const O=N.DST,z=typeof O=="string"?(0,n.utf8ToBytes)(O):O,Y=(0,i.expand_message_xmd)(x,z,64,t.sha512);return k.hashToCurve(Y)},e.hash_to_ristretto255=e.hashToRistretto255})(n3);var $3={},Ar={};Object.defineProperty(Ar,"__esModule",{value:!0}),Ar.sha224=Ar.sha256=Ar.SHA256=void 0;const Ed=xr,vn=Br,O6=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Kr=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Hr=new Uint32Array(64);class R0 extends Ed.HashMD{constructor(){super(64,32,8,!1),this.A=0|Kr[0],this.B=0|Kr[1],this.C=0|Kr[2],this.D=0|Kr[3],this.E=0|Kr[4],this.F=0|Kr[5],this.G=0|Kr[6],this.H=0|Kr[7]}get(){const{A:t,B:n,C:r,D:i,E:o,F:s,G:a,H:l}=this;return[t,n,r,i,o,s,a,l]}set(t,n,r,i,o,s,a,l){this.A=0|t,this.B=0|n,this.C=0|r,this.D=0|i,this.E=0|o,this.F=0|s,this.G=0|a,this.H=0|l}process(t,n){for(let d=0;d<16;d++,n+=4)Hr[d]=t.getUint32(n,!1);for(let d=16;d<64;d++){const f=Hr[d-15],p=Hr[d-2],g=(0,vn.rotr)(f,7)^(0,vn.rotr)(f,18)^f>>>3,y=(0,vn.rotr)(p,17)^(0,vn.rotr)(p,19)^p>>>10;Hr[d]=y+Hr[d-7]+g+Hr[d-16]|0}let{A:r,B:i,C:o,D:s,E:a,F:l,G:c,H:u}=this;for(let d=0;d<64;d++){const f=u+((0,vn.rotr)(a,6)^(0,vn.rotr)(a,11)^(0,vn.rotr)(a,25))+(0,Ed.Chi)(a,l,c)+O6[d]+Hr[d]|0,p=((0,vn.rotr)(r,2)^(0,vn.rotr)(r,13)^(0,vn.rotr)(r,22))+(0,Ed.Maj)(r,i,o)|0;u=c,c=l,l=a,a=s+f|0,s=o,o=i,i=r,r=f+p|0}r=r+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,a=a+this.E|0,l=l+this.F|0,c=c+this.G|0,u=u+this.H|0,this.set(r,i,o,s,a,l,c,u)}roundClean(){Hr.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}Ar.SHA256=R0;class $6 extends R0{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}Ar.sha256=(0,vn.wrapConstructor)(()=>new R0),Ar.sha224=(0,vn.wrapConstructor)(()=>new $6);var Ul={},O0={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hmac=e.HMAC=void 0;const t=an,n=Br;class r extends n.Hash{constructor(o,s){super(),this.finished=!1,this.destroyed=!1,(0,t.hash)(o);const a=(0,n.toBytes)(s);if(this.iHash=o.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const l=this.blockLen,c=new Uint8Array(l);c.set(a.length>l?o.create().update(a).digest():a);for(let u=0;unew r(i,o).update(s).digest(),e.hmac.create=(i,o)=>new r(i,o)})(O0);var $0={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DER=void 0,e.weierstrassPoints=p,e.weierstrass=function(y){const S=function(N){const O=(0,t.validateBasic)(N);return r.validateObject(O,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...O})}(y),{Fp:h,n:v}=S,w=h.BYTES+1,T=2*h.BYTES+1;function I(N){return n.mod(N,v)}function j(N){return n.invert(N,v)}const{ProjectivePoint:D,normPrivateKeyToScalar:H,weierstrassEquation:G,isWithinCurveOrder:K}=p({...S,toBytes(N,O,z){const Y=O.toAffine(),V=h.toBytes(Y.x),Q=r.concatBytes;return(0,i.abool)("isCompressed",z),z?Q(Uint8Array.from([O.hasEvenY()?2:3]),V):Q(Uint8Array.from([4]),V,h.toBytes(Y.y))},fromBytes(N){const O=N.length,z=N[0],Y=N.subarray(1);if(O!==w||z!==2&&z!==3){if(O===T&&z===4)return{x:h.fromBytes(Y.subarray(0,h.BYTES)),y:h.fromBytes(Y.subarray(h.BYTES,2*h.BYTES))};throw new Error(`Point of length ${O} was invalid. Expected ${w} compressed bytes or ${T} uncompressed bytes`)}{const V=r.bytesToNumberBE(Y);if(!r.inRange(V,c,h.ORDER))throw new Error("Point is not on curve");const Q=G(V);let te;try{te=h.sqrt(Q)}catch(ie){const ne=ie instanceof Error?": "+ie.message:"";throw new Error("Point is not on curve"+ne)}return(1&z)==1!=((te&c)===c)&&(te=h.neg(te)),{x:V,y:te}}}}),q=N=>r.bytesToHex(r.numberToBytesBE(N,S.nByteLength));function W(N){return N>v>>c}const C=(N,O,z)=>r.bytesToNumberBE(N.slice(O,z));class m{constructor(O,z,Y){this.r=O,this.s=z,this.recovery=Y,this.assertValidity()}static fromCompact(O){const z=S.nByteLength;return O=(0,i.ensureBytes)("compactSignature",O,2*z),new m(C(O,0,z),C(O,z,2*z))}static fromDER(O){const{r:z,s:Y}=e.DER.toSig((0,i.ensureBytes)("DER",O));return new m(z,Y)}assertValidity(){r.aInRange("r",this.r,c,v),r.aInRange("s",this.s,c,v)}addRecoveryBit(O){return new m(this.r,this.s,O)}recoverPublicKey(O){const{r:z,s:Y,recovery:V}=this,Q=P((0,i.ensureBytes)("msgHash",O));if(V==null||![0,1,2,3].includes(V))throw new Error("recovery id invalid");const te=V===2||V===3?z+S.n:z;if(te>=h.ORDER)throw new Error("recovery id 2 or 3 invalid");const ie=1&V?"03":"02",ne=D.fromHex(ie+q(te)),ge=j(te),oe=I(-Q*ge),le=I(Y*ge),de=D.BASE.multiplyAndAddUnsafe(ne,oe,le);if(!de)throw new Error("point at infinify");return de.assertValidity(),de}hasHighS(){return W(this.s)}normalizeS(){return this.hasHighS()?new m(this.r,I(-this.s),this.recovery):this}toDERRawBytes(){return r.hexToBytes(this.toDERHex())}toDERHex(){return e.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return r.hexToBytes(this.toCompactHex())}toCompactHex(){return q(this.r)+q(this.s)}}const _={isValidPrivateKey(N){try{return H(N),!0}catch{return!1}},normPrivateKeyToScalar:H,randomPrivateKey:()=>{const N=n.getMinHashLength(S.n);return n.mapHashToField(S.randomBytes(N),S.n)},precompute:(N=8,O=D.BASE)=>(O._setWindowSize(N),O.multiply(BigInt(3)),O)};function M(N){const O=r.isBytes(N),z=typeof N=="string",Y=(O||z)&&N.length;return O?Y===w||Y===T:z?Y===2*w||Y===2*T:N instanceof D}const A=S.bits2int||function(N){const O=r.bytesToNumberBE(N),z=8*N.length-S.nBitLength;return z>0?O>>BigInt(z):O},P=S.bits2int_modN||function(N){return I(A(N))},L=r.bitMask(S.nBitLength);function B(N){return r.aInRange(`num < 2^${S.nBitLength}`,N,l,L),r.numberToBytesBE(N,S.nByteLength)}function $(N,O,z=k){if(["recovered","canonical"].some(ae=>ae in z))throw new Error("sign() legacy options not supported");const{hash:Y,randomBytes:V}=S;let{lowS:Q,prehash:te,extraEntropy:ie}=z;Q==null&&(Q=!0),N=(0,i.ensureBytes)("msgHash",N),o(z),te&&(N=(0,i.ensureBytes)("prehashed msgHash",Y(N)));const ne=P(N),ge=H(O),oe=[B(ge),B(ne)];if(ie!=null&&ie!==!1){const ae=ie===!0?V(h.BYTES):ie;oe.push((0,i.ensureBytes)("extraEntropy",ae))}const le=r.concatBytes(...oe),de=ne;return{seed:le,k2sig:function(ae){const he=A(ae);if(!K(he))return;const me=j(he),be=D.BASE.multiply(he).toAffine(),Ee=I(be.x);if(Ee===l)return;const ye=I(me*I(de+Ee*ge));if(ye===l)return;let Se=(be.x===Ee?0:2)|Number(be.y&c),_e=ye;return Q&&W(ye)&&(_e=function(Le){return W(Le)?I(-Le):Le}(ye),Se^=1),new m(Ee,_e,Se)}}}const k={lowS:S.lowS,prehash:!1},x={lowS:S.lowS,prehash:!1};return D.BASE._setWindowSize(8),{CURVE:S,getPublicKey:function(N,O=!0){return D.fromPrivateKey(N).toRawBytes(O)},getSharedSecret:function(N,O,z=!0){if(M(N))throw new Error("first arg must be private key");if(!M(O))throw new Error("second arg must be public key");return D.fromHex(O).multiply(H(N)).toRawBytes(z)},sign:function(N,O,z=k){const{seed:Y,k2sig:V}=$(N,O,z),Q=S;return r.createHmacDrbg(Q.hash.outputLen,Q.nByteLength,Q.hmac)(Y,V)},verify:function(N,O,z,Y=x){var be;const V=N;if(O=(0,i.ensureBytes)("msgHash",O),z=(0,i.ensureBytes)("publicKey",z),"strict"in Y)throw new Error("options.strict was renamed to lowS");o(Y);const{lowS:Q,prehash:te}=Y;let ie,ne;try{if(typeof V=="string"||r.isBytes(V))try{ie=m.fromDER(V)}catch(Ee){if(!(Ee instanceof e.DER.Err))throw Ee;ie=m.fromCompact(V)}else{if(typeof V!="object"||typeof V.r!="bigint"||typeof V.s!="bigint")throw new Error("PARSE");{const{r:Ee,s:ye}=V;ie=new m(Ee,ye)}}ne=D.fromHex(z)}catch(Ee){if(Ee.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(Q&&ie.hasHighS())return!1;te&&(O=S.hash(O));const{r:ge,s:oe}=ie,le=P(O),de=j(oe),ae=I(le*de),he=I(ge*de),me=(be=D.BASE.multiplyAndAddUnsafe(ne,ae,he))==null?void 0:be.toAffine();return me?I(me.x)===ge:!1},ProjectivePoint:D,Signature:m,utils:_}},e.SWUFpSqrtRatio=g,e.mapToCurveSimpleSWU=function(y,S){if(n.validateField(y),!y.isValid(S.A)||!y.isValid(S.B)||!y.isValid(S.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const h=g(y,S.Z);if(!y.isOdd)throw new Error("Fp.isOdd is not implemented!");return v=>{let w,T,I,j,D,H,G,K;w=y.sqr(v),w=y.mul(w,S.Z),T=y.sqr(w),T=y.add(T,w),I=y.add(T,y.ONE),I=y.mul(I,S.B),j=y.cmov(S.Z,y.neg(T),!y.eql(T,y.ZERO)),j=y.mul(j,S.A),T=y.sqr(I),H=y.sqr(j),D=y.mul(H,S.A),T=y.add(T,D),T=y.mul(T,I),H=y.mul(H,j),D=y.mul(H,S.B),T=y.add(T,D),G=y.mul(w,I);const{isValid:q,value:W}=h(T,H);K=y.mul(w,v),K=y.mul(K,W),G=y.cmov(G,I,q),K=y.cmov(K,W,q);const C=y.isOdd(v)===y.isOdd(K);return K=y.cmov(y.neg(K),K,C),G=y.div(G,j),{x:G,y:K}}};const t=Io,n=je,r=Te,i=Te;function o(y){y.lowS!==void 0&&(0,i.abool)("lowS",y.lowS),y.prehash!==void 0&&(0,i.abool)("prehash",y.prehash)}const{bytesToNumberBE:s,hexToBytes:a}=r;e.DER={Err:class extends Error{constructor(y=""){super(y)}},_tlv:{encode:(y,S)=>{const{Err:h}=e.DER;if(y<0||y>256)throw new h("tlv.encode: wrong tag");if(1&S.length)throw new h("tlv.encode: unpadded data");const v=S.length/2,w=r.numberToHexUnpadded(v);if(w.length/2&128)throw new h("tlv.encode: long form length too big");const T=v>127?r.numberToHexUnpadded(w.length/2|128):"";return`${r.numberToHexUnpadded(y)}${T}${w}${S}`},decode(y,S){const{Err:h}=e.DER;let v=0;if(y<0||y>256)throw new h("tlv.encode: wrong tag");if(S.length<2||S[v++]!==y)throw new h("tlv.decode: wrong tlv");const w=S[v++];let T=0;if(128&w){const j=127&w;if(!j)throw new h("tlv.decode(long): indefinite length not supported");if(j>4)throw new h("tlv.decode(long): byte length is too big");const D=S.subarray(v,v+j);if(D.length!==j)throw new h("tlv.decode: length bytes not complete");if(D[0]===0)throw new h("tlv.decode(long): zero leftmost byte");for(const H of D)T=T<<8|H;if(v+=j,T<128)throw new h("tlv.decode(long): not minimal encoding")}else T=w;const I=S.subarray(v,v+T);if(I.length!==T)throw new h("tlv.decode: wrong value length");return{v:I,l:S.subarray(v+T)}}},_int:{encode(y){const{Err:S}=e.DER;if(y{const M=m.toAffine();return r.concatBytes(Uint8Array.from([4]),h.toBytes(M.x),h.toBytes(M.y))}),T=S.fromBytes||(C=>{const m=C.subarray(1);return{x:h.fromBytes(m.subarray(0,h.BYTES)),y:h.fromBytes(m.subarray(h.BYTES,2*h.BYTES))}});function I(C){const{a:m,b:_}=S,M=h.sqr(C),A=h.mul(M,C);return h.add(h.add(A,h.mul(C,m)),_)}if(!h.eql(h.sqr(S.Gy),I(S.Gx)))throw new Error("bad generator point: equation left != right");function j(C){const{allowedPrivateKeyLengths:m,nByteLength:_,wrapPrivateKey:M,n:A}=S;if(m&&typeof C!="bigint"){if(r.isBytes(C)&&(C=r.bytesToHex(C)),typeof C!="string"||!m.includes(C.length))throw new Error("Invalid key");C=C.padStart(2*_,"0")}let P;try{P=typeof C=="bigint"?C:r.bytesToNumberBE((0,i.ensureBytes)("private key",C,_))}catch{throw new Error(`private key must be ${_} bytes, hex or bigint, not ${typeof C}`)}return M&&(P=n.mod(P,A)),r.aInRange("private key",P,c,A),P}function D(C){if(!(C instanceof K))throw new Error("ProjectivePoint expected")}const H=(0,i.memoized)((C,m)=>{const{px:_,py:M,pz:A}=C;if(h.eql(A,h.ONE))return{x:_,y:M};const P=C.is0();m==null&&(m=P?h.ONE:h.inv(A));const L=h.mul(_,m),B=h.mul(M,m),$=h.mul(A,m);if(P)return{x:h.ZERO,y:h.ZERO};if(!h.eql($,h.ONE))throw new Error("invZ was invalid");return{x:L,y:B}}),G=(0,i.memoized)(C=>{if(C.is0()){if(S.allowInfinityPoint&&!h.is0(C.py))return;throw new Error("bad point: ZERO")}const{x:m,y:_}=C.toAffine();if(!h.isValid(m)||!h.isValid(_))throw new Error("bad point: x or y not FE");const M=h.sqr(_),A=I(m);if(!h.eql(M,A))throw new Error("bad point: equation left != right");if(!C.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class K{constructor(m,_,M){if(this.px=m,this.py=_,this.pz=M,m==null||!h.isValid(m))throw new Error("x required");if(_==null||!h.isValid(_))throw new Error("y required");if(M==null||!h.isValid(M))throw new Error("z required");Object.freeze(this)}static fromAffine(m){const{x:_,y:M}=m||{};if(!m||!h.isValid(_)||!h.isValid(M))throw new Error("invalid affine point");if(m instanceof K)throw new Error("projective point not allowed");const A=P=>h.eql(P,h.ZERO);return A(_)&&A(M)?K.ZERO:new K(_,M,h.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(m){const _=h.invertBatch(m.map(M=>M.pz));return m.map((M,A)=>M.toAffine(_[A])).map(K.fromAffine)}static fromHex(m){const _=K.fromAffine(T((0,i.ensureBytes)("pointHex",m)));return _.assertValidity(),_}static fromPrivateKey(m){return K.BASE.multiply(j(m))}static msm(m,_){return(0,t.pippenger)(K,v,m,_)}_setWindowSize(m){W.setWindowSize(this,m)}assertValidity(){G(this)}hasEvenY(){const{y:m}=this.toAffine();if(h.isOdd)return!h.isOdd(m);throw new Error("Field doesn't support isOdd")}equals(m){D(m);const{px:_,py:M,pz:A}=this,{px:P,py:L,pz:B}=m,$=h.eql(h.mul(_,B),h.mul(P,A)),k=h.eql(h.mul(M,B),h.mul(L,A));return $&&k}negate(){return new K(this.px,h.neg(this.py),this.pz)}double(){const{a:m,b:_}=S,M=h.mul(_,d),{px:A,py:P,pz:L}=this;let B=h.ZERO,$=h.ZERO,k=h.ZERO,x=h.mul(A,A),N=h.mul(P,P),O=h.mul(L,L),z=h.mul(A,P);return z=h.add(z,z),k=h.mul(A,L),k=h.add(k,k),B=h.mul(m,k),$=h.mul(M,O),$=h.add(B,$),B=h.sub(N,$),$=h.add(N,$),$=h.mul(B,$),B=h.mul(z,B),k=h.mul(M,k),O=h.mul(m,O),z=h.sub(x,O),z=h.mul(m,z),z=h.add(z,k),k=h.add(x,x),x=h.add(k,x),x=h.add(x,O),x=h.mul(x,z),$=h.add($,x),O=h.mul(P,L),O=h.add(O,O),x=h.mul(O,z),B=h.sub(B,x),k=h.mul(O,N),k=h.add(k,k),k=h.add(k,k),new K(B,$,k)}add(m){D(m);const{px:_,py:M,pz:A}=this,{px:P,py:L,pz:B}=m;let $=h.ZERO,k=h.ZERO,x=h.ZERO;const N=S.a,O=h.mul(S.b,d);let z=h.mul(_,P),Y=h.mul(M,L),V=h.mul(A,B),Q=h.add(_,M),te=h.add(P,L);Q=h.mul(Q,te),te=h.add(z,Y),Q=h.sub(Q,te),te=h.add(_,A);let ie=h.add(P,B);return te=h.mul(te,ie),ie=h.add(z,V),te=h.sub(te,ie),ie=h.add(M,A),$=h.add(L,B),ie=h.mul(ie,$),$=h.add(Y,V),ie=h.sub(ie,$),x=h.mul(N,te),$=h.mul(O,V),x=h.add($,x),$=h.sub(Y,x),x=h.add(Y,x),k=h.mul($,x),Y=h.add(z,z),Y=h.add(Y,z),V=h.mul(N,V),te=h.mul(O,te),Y=h.add(Y,V),V=h.sub(z,V),V=h.mul(N,V),te=h.add(te,V),z=h.mul(Y,te),k=h.add(k,z),z=h.mul(ie,te),$=h.mul(Q,$),$=h.sub($,z),z=h.mul(Q,Y),x=h.mul(ie,x),x=h.add(x,z),new K($,k,x)}subtract(m){return this.add(m.negate())}is0(){return this.equals(K.ZERO)}wNAF(m){return W.wNAFCached(this,m,K.normalizeZ)}multiplyUnsafe(m){r.aInRange("scalar",m,l,S.n);const _=K.ZERO;if(m===l)return _;if(m===c)return this;const{endo:M}=S;if(!M)return W.unsafeLadder(this,m);let{k1neg:A,k1:P,k2neg:L,k2:B}=M.splitScalar(m),$=_,k=_,x=this;for(;P>l||B>l;)P&c&&($=$.add(x)),B&c&&(k=k.add(x)),x=x.double(),P>>=c,B>>=c;return A&&($=$.negate()),L&&(k=k.negate()),k=new K(h.mul(k.px,M.beta),k.py,k.pz),$.add(k)}multiply(m){const{endo:_,n:M}=S;let A,P;if(r.aInRange("scalar",m,c,M),_){const{k1neg:L,k1:B,k2neg:$,k2:k}=_.splitScalar(m);let{p:x,f:N}=this.wNAF(B),{p:O,f:z}=this.wNAF(k);x=W.constTimeNegate(L,x),O=W.constTimeNegate($,O),O=new K(h.mul(O.px,_.beta),O.py,O.pz),A=x.add(O),P=N.add(z)}else{const{p:L,f:B}=this.wNAF(m);A=L,P=B}return K.normalizeZ([A,P])[0]}multiplyAndAddUnsafe(m,_,M){const A=K.BASE,P=(B,$)=>$!==l&&$!==c&&B.equals(A)?B.multiply($):B.multiplyUnsafe($),L=P(this,_).add(P(m,M));return L.is0()?void 0:L}toAffine(m){return H(this,m)}isTorsionFree(){const{h:m,isTorsionFree:_}=S;if(m===c)return!0;if(_)return _(K,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:m,clearCofactor:_}=S;return m===c?this:_?_(K,this):this.multiplyUnsafe(S.h)}toRawBytes(m=!0){return(0,i.abool)("isCompressed",m),this.assertValidity(),w(K,this,m)}toHex(m=!0){return(0,i.abool)("isCompressed",m),r.bytesToHex(this.toRawBytes(m))}}K.BASE=new K(S.Gx,S.Gy,h.ONE),K.ZERO=new K(h.ZERO,h.ONE,h.ZERO);const q=S.nBitLength,W=(0,t.wNAF)(K,S.endo?Math.ceil(q/2):q);return{CURVE:S,ProjectivePoint:K,normPrivateKeyToScalar:j,weierstrassEquation:I,isWithinCurveOrder:function(C){return r.inRange(C,c,S.n)}}}function g(y,S){const h=y.ORDER;let v=l;for(let C=h-c;C%u===l;C/=u)v+=c;const w=v,T=u<{let _=K,M=y.pow(m,H),A=y.sqr(M);A=y.mul(A,m);let P=y.mul(C,A);P=y.pow(P,D),P=y.mul(P,M),M=y.mul(P,m),A=y.mul(P,C);let L=y.mul(A,M);P=y.pow(L,G);let B=y.eql(P,y.ONE);M=y.mul(A,q),P=y.mul(L,_),A=y.cmov(M,A,B),L=y.cmov(P,L,B);for(let $=w;$>c;$--){let k=$-u;k=u<{let A=y.sqr(M);const P=y.mul(_,M);A=y.mul(A,P);let L=y.pow(A,C);L=y.mul(L,P);const B=y.mul(L,m),$=y.mul(y.sqr(L),M),k=y.eql($,_);return{isValid:k,value:y.cmov(B,L,k)}}}return W}})($0),Object.defineProperty(Ul,"__esModule",{value:!0}),Ul.getHash=um,Ul.createCurve=function(e,t){const n=r=>(0,B6.weierstrass)({...e,...um(r)});return Object.freeze({...n(t),create:n})};const N6=O0,cm=Br,B6=$0;function um(e){return{hash:e,hmac:(t,...n)=>(0,N6.hmac)(e,t,(0,cm.concatBytes)(...n)),randomBytes:cm.randomBytes}}(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.encodeToCurve=e.hashToCurve=e.schnorr=e.secp256k1=void 0;const t=Ar,n=Br,r=Ul,i=Jr,o=je,s=Te,a=$0,l=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),c=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),u=BigInt(1),d=BigInt(2),f=(M,A)=>(M+A/d)/A;function p(M){const A=l,P=BigInt(3),L=BigInt(6),B=BigInt(11),$=BigInt(22),k=BigInt(23),x=BigInt(44),N=BigInt(88),O=M*M*M%A,z=O*O*M%A,Y=(0,o.pow2)(z,P,A)*z%A,V=(0,o.pow2)(Y,P,A)*z%A,Q=(0,o.pow2)(V,d,A)*O%A,te=(0,o.pow2)(Q,B,A)*Q%A,ie=(0,o.pow2)(te,$,A)*te%A,ne=(0,o.pow2)(ie,x,A)*ie%A,ge=(0,o.pow2)(ne,N,A)*ne%A,oe=(0,o.pow2)(ge,x,A)*ie%A,le=(0,o.pow2)(oe,P,A)*z%A,de=(0,o.pow2)(le,k,A)*te%A,ae=(0,o.pow2)(de,L,A)*O%A,he=(0,o.pow2)(ae,d,A);if(!g.eql(g.sqr(he),M))throw new Error("Cannot find square root");return he}const g=(0,o.Field)(l,void 0,void 0,{sqrt:p});e.secp256k1=(0,r.createCurve)({a:BigInt(0),b:BigInt(7),Fp:g,n:c,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:M=>{const A=c,P=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),L=-u*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),B=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),$=P,k=BigInt("0x100000000000000000000000000000000"),x=f($*M,A),N=f(-L*M,A);let O=(0,o.mod)(M-x*P-N*B,A),z=(0,o.mod)(-x*L-N*$,A);const Y=O>k,V=z>k;if(Y&&(O=A-O),V&&(z=A-z),O>k||z>k)throw new Error("splitScalar: Endomorphism failed, k="+M);return{k1neg:Y,k1:O,k2neg:V,k2:z}}}},t.sha256);const y=BigInt(0),S={};function h(M,...A){let P=S[M];if(P===void 0){const L=(0,t.sha256)(Uint8Array.from(M,B=>B.charCodeAt(0)));P=(0,s.concatBytes)(L,L),S[M]=P}return(0,t.sha256)((0,s.concatBytes)(P,...A))}const v=M=>M.toRawBytes(!0).slice(1),w=M=>(0,s.numberToBytesBE)(M,32),T=M=>(0,o.mod)(M,l),I=M=>(0,o.mod)(M,c),j=e.secp256k1.ProjectivePoint,D=(M,A,P)=>j.BASE.multiplyAndAddUnsafe(M,A,P);function H(M){let A=e.secp256k1.utils.normPrivateKeyToScalar(M),P=j.fromPrivateKey(A);return{scalar:P.hasEvenY()?A:I(-A),bytes:v(P)}}function G(M){(0,s.aInRange)("x",M,u,l);const A=T(M*M);let P=p(T(A*M+BigInt(7)));P%d!==y&&(P=T(-P));const L=new j(M,P,u);return L.assertValidity(),L}const K=s.bytesToNumberBE;function q(...M){return I(K(h("BIP0340/challenge",...M)))}function W(M,A,P){const L=(0,s.ensureBytes)("signature",M,64),B=(0,s.ensureBytes)("message",A),$=(0,s.ensureBytes)("publicKey",P,32);try{const k=G(K($)),x=K(L.subarray(0,32));if(!(0,s.inRange)(x,u,l))return!1;const N=K(L.subarray(32,64));if(!(0,s.inRange)(N,u,c))return!1;const O=q(w(x),v(k),B),z=D(k,N,I(-O));return!(!z||!z.hasEvenY()||z.toAffine().x!==x)}catch{return!1}}e.schnorr={getPublicKey:function(M){return H(M).bytes},sign:function(M,A,P=(0,n.randomBytes)(32)){const L=(0,s.ensureBytes)("message",M),{bytes:B,scalar:$}=H(A),k=(0,s.ensureBytes)("auxRand",P,32),x=w($^K(h("BIP0340/aux",k))),N=h("BIP0340/nonce",x,B,L),O=I(K(N));if(O===y)throw new Error("sign failed: k is zero");const{bytes:z,scalar:Y}=H(O),V=q(z,B,L),Q=new Uint8Array(64);if(Q.set(z,0),Q.set(w(I(Y+V*$)),32),!W(Q,L,B))throw new Error("sign: Invalid signature produced");return Q},verify:W,utils:{randomPrivateKey:e.secp256k1.utils.randomPrivateKey,lift_x:G,pointToBytes:v,numberToBytesBE:s.numberToBytesBE,bytesToNumberBE:s.bytesToNumberBE,taggedHash:h,mod:o.mod}};const C=(0,i.isogenyMap)(g,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(M=>M.map(A=>BigInt(A)))),m=(0,a.mapToCurveSimpleSWU)(g,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:g.create(BigInt("-11"))}),_=(0,i.createHasher)(e.secp256k1.ProjectivePoint,M=>{const{x:A,y:P}=m(g.create(M[0]));return C(A,P)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:g.ORDER,m:1,k:128,expand:"xmd",hash:t.sha256});e.hashToCurve=_.hashToCurve,e.encodeToCurve=_.encodeToCurve})($3);var sh={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.decodeHex=e.remove0x=void 0;var t=mn;e.remove0x=function(n){return n.startsWith("0x")||n.startsWith("0X")?n.slice(2):n},e.decodeHex=function(n){return(0,t.hexToBytes)((0,e.remove0x)(n))}})(sh),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hexToPublicKey=e.convertPublicKeyFormat=e.getSharedPoint=e.getPublicKey=e.isValidPrivateKey=e.getValidSecret=void 0;var t=P0,n=n3,r=$3,i=ga,o=dt,s=sh;function a(u,d,f,p){if(u==="secp256k1")return d(r.secp256k1);if(u==="x25519")return f(n.x25519);if(u==="ed25519")return p(n.ed25519);throw new Error("Not implemented")}e.getValidSecret=function(){var u;do u=(0,t.randomBytes)(o.SECRET_KEY_LENGTH);while(!(0,e.isValidPrivateKey)(u));return u},e.isValidPrivateKey=function(u){return a((0,i.ellipticCurve)(),function(d){return d.utils.isValidPrivateKey(u)},function(){return!0},function(){return!0})},e.getPublicKey=function(u){return a((0,i.ellipticCurve)(),function(d){return d.getPublicKey(u)},function(d){return d.getPublicKey(u)},function(d){return d.getPublicKey(u)})},e.getSharedPoint=function(u,d,f){return a((0,i.ellipticCurve)(),function(p){return p.getSharedSecret(u,d,f)},function(p){return p.getSharedSecret(u,d)},function(p){return c(p,u,d)})},e.convertPublicKeyFormat=function(u,d){return a((0,i.ellipticCurve)(),function(f){return f.getSharedSecret(BigInt(1),u,d)},function(){return u},function(){return u})},e.hexToPublicKey=function(u){var d=(0,s.decodeHex)(u);return a((0,i.ellipticCurve)(),function(){return l(d)},function(){return d},function(){return d})};var l=function(u){if(u.length===o.ETH_PUBLIC_KEY_SIZE){var d=new Uint8Array(1+u.length);return d.set([4]),d.set(u,1),d}return u},c=function(u,d,f){var p=u.utils.getExtendedPublicKey(d).scalar;return u.ExtendedPoint.fromHex(f).multiply(p).toRawBytes()}}(t3);var N3={},Ro={};Object.defineProperty(Ro,"__esModule",{value:!0}),Ro.hkdf=void 0,Ro.extract=D3,Ro.expand=F3;const ah=an,dm=Br,B3=O0;function D3(e,t,n){return(0,ah.hash)(e),n===void 0&&(n=new Uint8Array(e.outputLen)),(0,B3.hmac)(e,(0,dm.toBytes)(n),(0,dm.toBytes)(t))}const bd=new Uint8Array([0]),fm=new Uint8Array;function F3(e,t,n,r=32){if((0,ah.hash)(e),(0,ah.number)(r),r>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");const i=Math.ceil(r/e.outputLen);n===void 0&&(n=fm);const o=new Uint8Array(i*e.outputLen),s=B3.hmac.create(e,t),a=s._cloneInto(),l=new Uint8Array(s.outputLen);for(let c=0;cF3(e,D3(e,t,n),r,i),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getSharedKey=e.deriveKey=void 0;var t=mn,n=Ro,r=Ar;e.deriveKey=function(i,o,s){return(0,n.hkdf)(r.sha256,i,o,s,32)},e.getSharedKey=function(){for(var i=[],o=0;o(e>>>0&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255|0;function j3(e){e.reverse();const t=1&e[15];let n=0;for(let r=0;r>>1|n,n=(1&i)<<7}return e[0]^=225&-t,e}class U3{constructor(t,n){this.blockLen=yr,this.outputLen=yr,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,t=(0,Ft.toBytes)(t),(0,Fi.bytes)(t,16);const r=(0,Ft.createView)(t);let i=r.getUint32(0,!1),o=r.getUint32(4,!1),s=r.getUint32(8,!1),a=r.getUint32(12,!1);const l=[];for(let h=0;h<128;h++)l.push({s0:Cn(i),s1:Cn(o),s2:Cn(s),s3:Cn(a)}),{s0:i,s1:o,s2:s,s3:a}={s3:(d=s)<<31|(f=a)>>>1,s2:(u=o)<<31|d>>>1,s1:(c=i)<<31|u>>>1,s0:c>>>1^225<<24&-(1&f)};var c,u,d,f;const p=(h=>h>65536?8:h>1024?4:2)(n||1024);if(![1,2,4,8].includes(p))throw new Error(`ghash: wrong window size=${p}, should be 2, 4 or 8`);this.W=p;const g=128/p,y=this.windowSize=2**p,S=[];for(let h=0;h>>p-D-1&1))continue;const{s0:H,s1:G,s2:K,s3:q}=l[p*h+D];w^=H,T^=G,I^=K,j^=q}S.push({s0:w,s1:T,s2:I,s3:j})}this.t=S}_updateBlock(t,n,r,i){t^=this.s0,n^=this.s1,r^=this.s2,i^=this.s3;const{W:o,t:s,windowSize:a}=this;let l=0,c=0,u=0,d=0;const f=(1<>>8*y&255;for(let h=8/o-1;h>=0;h--){const v=S>>>o*h&f,{s0:w,s1:T,s2:I,s3:j}=s[p*a+v];l^=w,c^=T,u^=I,d^=j,p+=1}}this.s0=l,this.s1=c,this.s2=u,this.s3=d}update(t){t=(0,Ft.toBytes)(t),(0,Fi.exists)(this);const n=(0,Ft.u32)(t),r=Math.floor(t.length/yr),i=t.length%yr;for(let o=0;oe(i,r.length).update((0,Ft.toBytes)(r)).digest(),n=e(new Uint8Array(16),0);return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=(r,i)=>e(r,i),t}Di.ghash=pm((e,t)=>new U3(e,t)),Di.polyval=pm((e,t)=>new D6(e,t)),Object.defineProperty(et,"__esModule",{value:!0}),et.unsafe=et.aeskwp=et.aeskw=et.siv=et.gcm=et.cfb=et.cbc=et.ecb=et.ctr=void 0,et.expandKeyLE=Un,et.expandKeyDecLE=va;const Re=Lt,lh=Di,fe=mn,en=16,dl=new Uint8Array(en),F6=283;function B0(e){return e<<1^F6&-(e>>7)}function Oo(e,t){let n=0;for(;t>0;t>>=1)n^=e&-(1&t),e=B0(e);return n}const ch=(()=>{const e=new Uint8Array(256);for(let n=0,r=1;n<256;n++,r^=B0(r))e[n]=r;const t=new Uint8Array(256);t[0]=99;for(let n=0;n<255;n++){let r=e[255-n];r|=r<<8,t[e[n]]=255&(r^r>>4^r>>5^r>>6^r>>7^99)}return(0,fe.clean)(e),t})(),j6=ch.map((e,t)=>ch.indexOf(t)),U6=e=>e<<24|e>>>8,Cd=e=>e<<8|e>>>24,Oc=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;function K3(e,t){if(e.length!==256)throw new Error("Wrong sbox length");const n=new Uint32Array(256).map((c,u)=>t(e[u])),r=n.map(Cd),i=r.map(Cd),o=i.map(Cd),s=new Uint32Array(65536),a=new Uint32Array(65536),l=new Uint16Array(65536);for(let c=0;c<256;c++)for(let u=0;u<256;u++){const d=256*c+u;s[d]=n[c]^r[u],a[d]=i[c]^o[u],l[d]=e[c]<<8|e[u]}return{sbox:e,sbox2:l,T0:n,T1:r,T2:i,T3:o,T01:s,T23:a}}const D0=K3(ch,e=>Oo(e,3)<<24|e<<16|e<<8|Oo(e,2)),H3=K3(j6,e=>Oo(e,11)<<24|Oo(e,13)<<16|Oo(e,9)<<8|Oo(e,14)),K6=(()=>{const e=new Uint8Array(16);for(let t=0,n=1;t<16;t++,n=B0(n))e[t]=n;return e})();function Un(e){(0,Re.bytes)(e);const t=e.length;if(![16,24,32].includes(t))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${t}`);const{sbox2:n}=D0,r=[];(0,fe.isAligned32)(e)||r.push(e=(0,fe.copyBytes)(e));const i=(0,fe.u32)(e),o=i.length,s=l=>or(n,l,l,l,l),a=new Uint32Array(t+28);a.set(i);for(let l=o;l6&&l%o==4&&(c=s(c)),a[l]=a[l-o]^c}return(0,fe.clean)(...r),a}function va(e){const t=Un(e),n=t.slice(),r=t.length,{sbox2:i}=D0,{T0:o,T1:s,T2:a,T3:l}=H3;for(let c=0;c>>8&255]^a[d>>>16&255]^l[d>>>24]}return n}function ci(e,t,n,r,i,o){return e[n<<8&65280|r>>>8&255]^t[i>>>8&65280|o>>>24&255]}function or(e,t,n,r,i){return e[255&t|65280&n]|e[r>>>16&255|i>>>16&65280]<<16}function jt(e,t,n,r,i){const{sbox2:o,T01:s,T23:a}=D0;let l=0;t^=e[l++],n^=e[l++],r^=e[l++],i^=e[l++];const c=e.length/4-2;for(let u=0;u=0;S--)y=y+(255&o[S])|0,o[S]=255&y,y>>>=8;({s0:a,s1:l,s2:c,s3:u}=jt(e,s[0],s[1],s[2],s[3]))}const p=en*Math.floor(d.length/4);if(p>>0,a.setUint32(u,f,t),{s0:p,s1:g,s2:y,s3:S}=jt(e,s[0],s[1],s[2],s[3]);const h=en*Math.floor(l.length/4);if(h16)throw new Error("aes/pcks5: wrong padding");const i=e.subarray(0,-r);for(let o=0;on(r,i),decrypt:(r,i)=>n(r,i)}}),et.ecb=(0,fe.wrapCipher)({blockSize:16},function(e,t={}){(0,Re.bytes)(e);const n=!t.disablePadding;return{encrypt(r,i){const{b:o,o:s,out:a}=gm(r,n,i),l=Un(e);let c=0;for(;c+4<=o.length;){const{s0:u,s1:d,s2:f,s3:p}=jt(l,o[c+0],o[c+1],o[c+2],o[c+3]);s[c++]=u,s[c++]=d,s[c++]=f,s[c++]=p}if(n){const u=vm(r.subarray(4*c)),{s0:d,s1:f,s2:p,s3:g}=jt(l,u[0],u[1],u[2],u[3]);s[c++]=d,s[c++]=f,s[c++]=p,s[c++]=g}return(0,fe.clean)(l),a},decrypt(r,i){mm(r);const o=va(e),s=qo(r.length,i),a=[o];(0,fe.isAligned32)(r)||a.push(r=(0,fe.copyBytes)(r));const l=(0,fe.u32)(r),c=(0,fe.u32)(s);for(let u=0;u+4<=l.length;){const{s0:d,s1:f,s2:p,s3:g}=wa(o,l[u+0],l[u+1],l[u+2],l[u+3]);c[u++]=d,c[u++]=f,c[u++]=p,c[u++]=g}return(0,fe.clean)(...a),ym(s,n)}}}),et.cbc=(0,fe.wrapCipher)({blockSize:16,nonceLength:16},function(e,t,n={}){(0,Re.bytes)(e),(0,Re.bytes)(t,16);const r=!n.disablePadding;return{encrypt(i,o){const s=Un(e),{b:a,o:l,out:c}=gm(i,r,o);let u=t;const d=[s];(0,fe.isAligned32)(u)||d.push(u=(0,fe.copyBytes)(u));const f=(0,fe.u32)(u);let p=f[0],g=f[1],y=f[2],S=f[3],h=0;for(;h+4<=a.length;)p^=a[h+0],g^=a[h+1],y^=a[h+2],S^=a[h+3],{s0:p,s1:g,s2:y,s3:S}=jt(s,p,g,y,S),l[h++]=p,l[h++]=g,l[h++]=y,l[h++]=S;if(r){const v=vm(i.subarray(4*h));p^=v[0],g^=v[1],y^=v[2],S^=v[3],{s0:p,s1:g,s2:y,s3:S}=jt(s,p,g,y,S),l[h++]=p,l[h++]=g,l[h++]=y,l[h++]=S}return(0,fe.clean)(...d),c},decrypt(i,o){mm(i);const s=va(e);let a=t;const l=[s];(0,fe.isAligned32)(a)||l.push(a=(0,fe.copyBytes)(a));const c=(0,fe.u32)(a),u=qo(i.length,o);(0,fe.isAligned32)(i)||l.push(i=(0,fe.copyBytes)(i));const d=(0,fe.u32)(i),f=(0,fe.u32)(u);let p=c[0],g=c[1],y=c[2],S=c[3];for(let h=0;h+4<=d.length;){const v=p,w=g,T=y,I=S;p=d[h+0],g=d[h+1],y=d[h+2],S=d[h+3];const{s0:j,s1:D,s2:H,s3:G}=wa(s,p,g,y,S);f[h++]=j^v,f[h++]=D^w,f[h++]=H^T,f[h++]=G^I}return(0,fe.clean)(...l),ym(u,r)}}}),et.cfb=(0,fe.wrapCipher)({blockSize:16,nonceLength:16},function(e,t){function n(r,i,o){(0,Re.bytes)(r);const s=r.length;o=qo(s,o);const a=Un(e);let l=t;const c=[a];(0,fe.isAligned32)(l)||c.push(l=(0,fe.copyBytes)(l)),(0,fe.isAligned32)(r)||c.push(r=(0,fe.copyBytes)(r));const u=(0,fe.u32)(r),d=(0,fe.u32)(o),f=i?d:u,p=(0,fe.u32)(l);let g=p[0],y=p[1],S=p[2],h=p[3];for(let w=0;w+4<=u.length;){const{s0:T,s1:I,s2:j,s3:D}=jt(a,g,y,S,h);d[w+0]=u[w+0]^T,d[w+1]=u[w+1]^I,d[w+2]=u[w+2]^j,d[w+3]=u[w+3]^D,g=f[w++],y=f[w++],S=f[w++],h=f[w++]}const v=en*Math.floor(u.length/4);if(vn(r,!0,i),decrypt:(r,i)=>n(r,!1,i)}}),et.gcm=(0,fe.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},function(e,t,n){if((0,Re.bytes)(e),(0,Re.bytes)(t),n!==void 0&&(0,Re.bytes)(n),t.length<8)throw new Error("aes/gcm: invalid nonce length");function r(o,s,a){const l=V3(lh.ghash,!1,o,a,n);for(let c=0;cr=>{if(!Number.isSafeInteger(r)||t>r||r>n)throw new Error(`${e}: invalid value=${r}, must be [${t}..${n}]`)};function W3(e){return e!=null&&typeof e=="object"&&(e instanceof Uint32Array||e.constructor.name==="Uint32Array")}function q3(e,t){if((0,Re.bytes)(t,16),!W3(e))throw new Error("_encryptBlock accepts result of expandKeyLE");const n=(0,fe.u32)(t);let{s0:r,s1:i,s2:o,s3:s}=jt(e,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=i,n[2]=o,n[3]=s,t}function G3(e,t){if((0,Re.bytes)(t,16),!W3(e))throw new Error("_decryptBlock accepts result of expandKeyLE");const n=(0,fe.u32)(t);let{s0:r,s1:i,s2:o,s3:s}=wa(e,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=i,n[2]=o,n[3]=s,t}et.siv=(0,fe.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},function(e,t,n){const r=fl("AAD",0,68719476736),i=fl("plaintext",0,2**36),o=fl("nonce",12,12),s=fl("ciphertext",16,2**36+16);function a(){const u=Un(e),d=new Uint8Array(e.length),f=new Uint8Array(16),p=[u,d];let g=t;(0,fe.isAligned32)(g)||p.push(g=(0,fe.copyBytes)(g));const y=(0,fe.u32)(g);let S=0,h=y[0],v=y[1],w=y[2],T=0;for(const j of[f,d].map(fe.u32)){const D=(0,fe.u32)(j);for(let H=0;H=2**32)throw new Error("plaintext should be less than 4gb");const n=Un(e);if(t.length===16)q3(n,t);else{const r=(0,fe.u32)(t);let i=r[0],o=r[1];for(let s=0,a=1;s<6;s++)for(let l=2;l=2**32)throw new Error("ciphertext should be less than 4gb");const n=va(e),r=t.length/8-1;if(r===1)G3(n,t);else{const i=(0,fe.u32)(t);let o=i[0],s=i[1];for(let a=0,l=6*r;a<6;a++)for(let c=2*r;c>=1;c-=2,l--){s^=Oc(l);const{s0:u,s1:d,s2:f,s3:p}=wa(n,o,s,i[c],i[c+1]);o=u,s=d,i[c]=f,i[c+1]=p}i[0]=o,i[1]=s}n.fill(0)}},wm=new Uint8Array(8).fill(166);et.aeskw=(0,fe.wrapCipher)({blockSize:8},e=>({encrypt(t){if((0,Re.bytes)(t),!t.length||t.length%8!=0)throw new Error("invalid plaintext length");if(t.length===8)throw new Error("8-byte keys not allowed in AESKW, use AESKWP instead");const n=(0,fe.concatBytes)(wm,t);return $c.encrypt(e,n),n},decrypt(t){if((0,Re.bytes)(t),t.length%8!=0||t.length<24)throw new Error("invalid ciphertext length");const n=(0,fe.copyBytes)(t);if($c.decrypt(e,n),!(0,fe.equalBytes)(n.subarray(0,8),wm))throw new Error("integrity check failed");return n.subarray(0,8).fill(0),n.subarray(8)}}));const Em=2790873510;et.aeskwp=(0,fe.wrapCipher)({blockSize:8},e=>({encrypt(t){if((0,Re.bytes)(t),!t.length)throw new Error("invalid plaintext length");const n=8*Math.ceil(t.length/8),r=new Uint8Array(8+n);r.set(t,8);const i=(0,fe.u32)(r);return i[0]=Em,i[1]=Oc(t.length),$c.encrypt(e,r),r},decrypt(t){if((0,Re.bytes)(t),t.length<16)throw new Error("invalid ciphertext length");const n=(0,fe.copyBytes)(t),r=(0,fe.u32)(n);$c.decrypt(e,n);const i=Oc(r[1])>>>0,o=8*Math.ceil(i/8);if(r[0]!==Em||n.length-8!==o)throw new Error("integrity check failed");for(let s=i;s>>32-t},No.createCipher=function(e,t){const{allowShortKeys:n,extendNonceFn:r,counterLength:i,counterRight:o,rounds:s}=(0,wn.checkOpts)({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if(typeof e!="function")throw new Error("core must be a function");return(0,pr.number)(i),(0,pr.number)(s),(0,pr.bool)(o),(0,pr.bool)(n),(a,l,c,u,d=0)=>{(0,pr.bytes)(a),(0,pr.bytes)(l),(0,pr.bytes)(c);const f=c.length;if(u===void 0&&(u=new Uint8Array(f)),(0,pr.bytes)(u),(0,pr.number)(d),d<0||d>=Cm)throw new Error("arx: counter overflow");if(u.length=Cm)throw new Error("arx: counter overflow");const L=Math.min(hl,W-P);if(_&&L===hl){const B=P/4;if(P%4!=0)throw new Error("arx: invalid block position");for(let $,k=0;kUint8Array.from(e.split("").map(t=>t.charCodeAt(0))),H6=Z3("expand 16-byte k"),z6=Z3("expand 32-byte k"),V6=(0,wn.u32)(H6),Q3=(0,wn.u32)(z6);function Sd(e){return e.byteOffset%4==0}No.sigma=Q3.slice();const hl=64,W6=16,Cm=2**32-1,Sm=new Uint32Array;var Hs={};Object.defineProperty(Hs,"__esModule",{value:!0}),Hs.poly1305=void 0,Hs.wrapConstructorWithKey=J3;const pl=Lt,Ps=mn,yt=(e,t)=>255&e[t++]|(255&e[t++])<<8;class q6{constructor(t){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,t=(0,Ps.toBytes)(t),(0,pl.bytes)(t,32);const n=yt(t,0),r=yt(t,2),i=yt(t,4),o=yt(t,6),s=yt(t,8),a=yt(t,10),l=yt(t,12),c=yt(t,14);this.r[0]=8191&n,this.r[1]=8191&(n>>>13|r<<3),this.r[2]=7939&(r>>>10|i<<6),this.r[3]=8191&(i>>>7|o<<9),this.r[4]=255&(o>>>4|s<<12),this.r[5]=s>>>1&8190,this.r[6]=8191&(s>>>14|a<<2),this.r[7]=8065&(a>>>11|l<<5),this.r[8]=8191&(l>>>8|c<<8),this.r[9]=c>>>5&127;for(let u=0;u<8;u++)this.pad[u]=yt(t,16+2*u)}process(t,n,r=!1){const i=r?0:2048,{h:o,r:s}=this,a=s[0],l=s[1],c=s[2],u=s[3],d=s[4],f=s[5],p=s[6],g=s[7],y=s[8],S=s[9],h=yt(t,n+0),v=yt(t,n+2),w=yt(t,n+4),T=yt(t,n+6),I=yt(t,n+8),j=yt(t,n+10),D=yt(t,n+12),H=yt(t,n+14);let G=o[0]+(8191&h),K=o[1]+(8191&(h>>>13|v<<3)),q=o[2]+(8191&(v>>>10|w<<6)),W=o[3]+(8191&(w>>>7|T<<9)),C=o[4]+(8191&(T>>>4|I<<12)),m=o[5]+(I>>>1&8191),_=o[6]+(8191&(I>>>14|j<<2)),M=o[7]+(8191&(j>>>11|D<<5)),A=o[8]+(8191&(D>>>8|H<<8)),P=o[9]+(H>>>5|i),L=0,B=L+G*a+K*(5*S)+q*(5*y)+W*(5*g)+C*(5*p);L=B>>>13,B&=8191,B+=m*(5*f)+_*(5*d)+M*(5*u)+A*(5*c)+P*(5*l),L+=B>>>13,B&=8191;let $=L+G*l+K*a+q*(5*S)+W*(5*y)+C*(5*g);L=$>>>13,$&=8191,$+=m*(5*p)+_*(5*f)+M*(5*d)+A*(5*u)+P*(5*c),L+=$>>>13,$&=8191;let k=L+G*c+K*l+q*a+W*(5*S)+C*(5*y);L=k>>>13,k&=8191,k+=m*(5*g)+_*(5*p)+M*(5*f)+A*(5*d)+P*(5*u),L+=k>>>13,k&=8191;let x=L+G*u+K*c+q*l+W*a+C*(5*S);L=x>>>13,x&=8191,x+=m*(5*y)+_*(5*g)+M*(5*p)+A*(5*f)+P*(5*d),L+=x>>>13,x&=8191;let N=L+G*d+K*u+q*c+W*l+C*a;L=N>>>13,N&=8191,N+=m*(5*S)+_*(5*y)+M*(5*g)+A*(5*p)+P*(5*f),L+=N>>>13,N&=8191;let O=L+G*f+K*d+q*u+W*c+C*l;L=O>>>13,O&=8191,O+=m*a+_*(5*S)+M*(5*y)+A*(5*g)+P*(5*p),L+=O>>>13,O&=8191;let z=L+G*p+K*f+q*d+W*u+C*c;L=z>>>13,z&=8191,z+=m*l+_*a+M*(5*S)+A*(5*y)+P*(5*g),L+=z>>>13,z&=8191;let Y=L+G*g+K*p+q*f+W*d+C*u;L=Y>>>13,Y&=8191,Y+=m*c+_*l+M*a+A*(5*S)+P*(5*y),L+=Y>>>13,Y&=8191;let V=L+G*y+K*g+q*p+W*f+C*d;L=V>>>13,V&=8191,V+=m*u+_*c+M*l+A*a+P*(5*S),L+=V>>>13,V&=8191;let Q=L+G*S+K*y+q*g+W*p+C*f;L=Q>>>13,Q&=8191,Q+=m*d+_*u+M*c+A*l+P*a,L+=Q>>>13,Q&=8191,L=(L<<2)+L|0,L=L+B|0,B=8191&L,L>>>=13,$+=L,o[0]=B,o[1]=$,o[2]=k,o[3]=x,o[4]=N,o[5]=O,o[6]=z,o[7]=Y,o[8]=V,o[9]=Q}finalize(){const{h:t,pad:n}=this,r=new Uint16Array(10);let i=t[1]>>>13;t[1]&=8191;for(let a=2;a<10;a++)t[a]+=i,i=t[a]>>>13,t[a]&=8191;t[0]+=5*i,i=t[0]>>>13,t[0]&=8191,t[1]+=i,i=t[1]>>>13,t[1]&=8191,t[2]+=i,r[0]=t[0]+5,i=r[0]>>>13,r[0]&=8191;for(let a=1;a<10;a++)r[a]=t[a]+i,i=r[a]>>>13,r[a]&=8191;r[9]-=8192;let o=(1^i)-1;for(let a=0;a<10;a++)r[a]&=o;o=~o;for(let a=0;a<10;a++)t[a]=t[a]&o|r[a];t[0]=65535&(t[0]|t[1]<<13),t[1]=65535&(t[1]>>>3|t[2]<<10),t[2]=65535&(t[2]>>>6|t[3]<<7),t[3]=65535&(t[3]>>>9|t[4]<<4),t[4]=65535&(t[4]>>>12|t[5]<<1|t[6]<<14),t[5]=65535&(t[6]>>>2|t[7]<<11),t[6]=65535&(t[7]>>>5|t[8]<<8),t[7]=65535&(t[8]>>>8|t[9]<<5);let s=t[0]+n[0];t[0]=65535&s;for(let a=1;a<8;a++)s=(t[a]+n[a]|0)+(s>>>16)|0,t[a]=65535&s;(0,Ps.clean)(r)}update(t){(0,pl.exists)(this);const{buffer:n,blockLen:r}=this,i=(t=(0,Ps.toBytes)(t)).length;for(let o=0;o>>0,t[o++]=r[s]>>>8;return t}digest(){const{buffer:t,outputLen:n}=this;this.digestInto(t);const r=t.slice(0,n);return this.destroy(),r}}function J3(e){const t=(r,i)=>e(i).update((0,Ps.toBytes)(r)).digest(),n=e(new Uint8Array(32));return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=r=>e(r),t}Hs.poly1305=J3(e=>new q6(e)),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.xchacha20poly1305=e.chacha20poly1305=e._poly1305_aead=e.chacha12=e.chacha8=e.xchacha20=e.chacha20=e.chacha20orig=void 0,e.hchacha=s;const t=No,n=Lt,r=Hs,i=mn;function o(d,f,p,g,y,S=20){let h=d[0],v=d[1],w=d[2],T=d[3],I=f[0],j=f[1],D=f[2],H=f[3],G=f[4],K=f[5],q=f[6],W=f[7],C=y,m=p[0],_=p[1],M=p[2],A=h,P=v,L=w,B=T,$=I,k=j,x=D,N=H,O=G,z=K,Y=q,V=W,Q=C,te=m,ie=_,ne=M;for(let oe=0;oe{d.update(f);const p=f.length%16;p&&d.update(a.subarray(p))},c=new Uint8Array(32);function u(d,f,p,g,y){const S=d(f,p,c),h=r.poly1305.create(S);y&&l(h,y),l(h,g);const v=new Uint8Array(16),w=(0,i.createView)(v);(0,i.setBigUint64)(w,0,BigInt(y?y.length:0),!0),(0,i.setBigUint64)(w,8,BigInt(g.length),!0),h.update(v);const T=h.digest();return(0,i.clean)(S,v),T}e._poly1305_aead=d=>(f,p,g)=>((0,n.bytes)(f,32),(0,n.bytes)(p),{encrypt(y,S){const h=y.length,v=h+16;S?(0,n.bytes)(S,v):S=new Uint8Array(v),d(f,p,y,S,1);const w=u(d,f,p,S.subarray(0,-16),g);return S.set(w,h),(0,i.clean)(w),S},decrypt(y,S){const h=y.length,v=h-16;if(h<16)throw new Error("encrypted data must be at least 16 bytes");S?(0,n.bytes)(S,v):S=new Uint8Array(v);const w=y.subarray(0,-16),T=y.subarray(-16),I=u(d,f,p,w,g);if(!(0,i.equalBytes)(T,I))throw new Error("invalid tag");return d(f,p,w,S,1),(0,i.clean)(I),S}}),e.chacha20poly1305=(0,i.wrapCipher)({blockSize:64,nonceLength:12,tagLength:16},(0,e._poly1305_aead)(e.chacha20)),e.xchacha20poly1305=(0,i.wrapCipher)({blockSize:64,nonceLength:24,tagLength:16},(0,e._poly1305_aead)(e.xchacha20))}(Y3),Object.defineProperty(Nc,"__esModule",{value:!0}),Nc.xchacha20=void 0;var co,_m,bs,G6=Y3;Nc.xchacha20=function(e,t,n){return(0,G6.xchacha20poly1305)(e,t,n)},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.aesDecrypt=e.aesEncrypt=e.symDecrypt=e.symEncrypt=void 0;var t=mn,n=P0,r=Wo,i=Nc,o=ga,s=dt;function a(u,d,f,p){var g=(0,o.symmetricAlgorithm)();if(g==="aes-256-gcm")return u(r.aes256gcm,d,f,(0,o.symmetricNonceLength)(),s.AEAD_TAG_LENGTH,p);if(g==="xchacha20")return u(i.xchacha20,d,f,s.XCHACHA20_NONCE_LENGTH,s.AEAD_TAG_LENGTH,p);if(g==="aes-256-cbc")return u(r.aes256cbc,d,f,16,0);throw new Error("Not implemented")}function l(u,d,f,p,g,y){var S=(0,n.randomBytes)(p),h=u(d,S,y).encrypt(f);if(g===0)return(0,t.concatBytes)(S,h);var v=h.length-g,w=h.subarray(0,v),T=h.subarray(v);return(0,t.concatBytes)(S,T,w)}function c(u,d,f,p,g,y){var S=f.subarray(0,p),h=u(d,Uint8Array.from(S),y),v=f.subarray(p);if(g===0)return h.decrypt(v);var w=v.subarray(0,g),T=v.subarray(g);return h.decrypt((0,t.concatBytes)(T,w))}e.symEncrypt=function(u,d,f){return a(l,u,d,f)},e.symDecrypt=function(u,d,f){return a(c,u,d,f)},e.aesEncrypt=e.symEncrypt,e.aesDecrypt=e.symDecrypt}(hm),co=Eu,_m=Tn&&Tn.__createBinding||(Object.create?function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}:function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]}),bs=Tn&&Tn.__exportStar||function(e,t){for(var n in e)n==="default"||Object.prototype.hasOwnProperty.call(t,n)||_m(t,e,n)},Object.defineProperty(co,"__esModule",{value:!0}),bs(t3,co),bs(N3,co),bs(sh,co),bs(hm,co);var Ea={};Object.defineProperty(Ea,"__esModule",{value:!0}),Ea.PublicKey=void 0;var km=mn,ml=Eu,Y6=function(){function e(t){this.data=(0,ml.convertPublicKeyFormat)(t,!0)}return e.fromHex=function(t){return new e((0,ml.hexToPublicKey)(t))},Object.defineProperty(e.prototype,"uncompressed",{get:function(){return re.from((0,ml.convertPublicKeyFormat)(this.data,!1))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"compressed",{get:function(){return re.from(this.data)},enumerable:!1,configurable:!0}),e.prototype.toHex=function(t){return t===void 0&&(t=!0),(0,km.bytesToHex)(t?this.data:this.uncompressed)},e.prototype.decapsulate=function(t,n){n===void 0&&(n=!1);var r=n?this.data:this.uncompressed,i=t.multiply(this,n);return(0,ml.getSharedKey)(r,i)},e.prototype.equals=function(t){return(0,km.equalBytes)(this.data,t.data)},e}();Ea.PublicKey=Y6,Object.defineProperty(Pc,"__esModule",{value:!0}),Pc.PrivateKey=void 0;var xm=mn,uo=Eu,Z6=Ea,Q6=function(){function e(t){if(t===void 0)this.data=(0,uo.getValidSecret)();else{if(!(0,uo.isValidPrivateKey)(t))throw new Error("Invalid private key");this.data=t}this.publicKey=new Z6.PublicKey((0,uo.getPublicKey)(this.data))}return e.fromHex=function(t){return new e((0,uo.decodeHex)(t))},Object.defineProperty(e.prototype,"secret",{get:function(){return re.from(this.data)},enumerable:!1,configurable:!0}),e.prototype.toHex=function(){return(0,xm.bytesToHex)(this.data)},e.prototype.encapsulate=function(t,n){n===void 0&&(n=!1);var r=n?this.publicKey.compressed:this.publicKey.uncompressed,i=this.multiply(t,n);return(0,uo.getSharedKey)(r,i)},e.prototype.multiply=function(t,n){return n===void 0&&(n=!1),(0,uo.getSharedPoint)(this.data,t.compressed,n)},e.prototype.equals=function(t){return(0,xm.equalBytes)(this.data,t.data)},e}();Pc.PrivateKey=Q6,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.PublicKey=e.PrivateKey=void 0;var t=Pc;Object.defineProperty(e,"PrivateKey",{enumerable:!0,get:function(){return t.PrivateKey}});var n=Ea;Object.defineProperty(e,"PublicKey",{enumerable:!0,get:function(){return n.PublicKey}})}(ld),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.utils=e.PublicKey=e.PrivateKey=e.ECIES_CONFIG=void 0,e.encrypt=function(a,l){var c=new r.PrivateKey,u=a instanceof Uint8Array?new r.PublicKey(a):r.PublicKey.fromHex(a),d=c.encapsulate(u,(0,n.isHkdfKeyCompressed)()),f=(0,n.isEphemeralKeyCompressed)()?c.publicKey.compressed:c.publicKey.uncompressed,p=(0,i.symEncrypt)(d,l);return re.from((0,t.concatBytes)(f,p))},e.decrypt=function(a,l){var c=a instanceof Uint8Array?new r.PrivateKey(a):r.PrivateKey.fromHex(a),u=(0,n.ephemeralKeySize)(),d=new r.PublicKey(l.subarray(0,u)),f=l.subarray(u),p=d.decapsulate(c,(0,n.isHkdfKeyCompressed)());return re.from((0,i.symDecrypt)(p,f))};var t=mn,n=ga,r=ld,i=Eu,o=ga;Object.defineProperty(e,"ECIES_CONFIG",{enumerable:!0,get:function(){return o.ECIES_CONFIG}});var s=ld;Object.defineProperty(e,"PrivateKey",{enumerable:!0,get:function(){return s.PrivateKey}}),Object.defineProperty(e,"PublicKey",{enumerable:!0,get:function(){return s.PublicKey}}),e.utils={aesEncrypt:i.aesEncrypt,aesDecrypt:i.aesDecrypt,symEncrypt:i.symEncrypt,symDecrypt:i.symDecrypt,decodeHex:i.decodeHex,getValidSecret:i.getValidSecret,remove0x:i.remove0x}}(vo);const X3=Ut("KeyExchange:Layer"),ew=Ut("SocketService:Layer"),tw=Ut("Ecies:Layer"),nw=Ut("RemoteCommunication:Layer");X3.color="##95c44e",ew.color="#f638d7",tw.color="#465b9c",nw.color="#47a2be";const J={KeyExchange:X3,SocketService:ew,Ecies:tw,RemoteCommunication:nw};let Cs,gl=[],_d=[];const $r=(e,t)=>ce(void 0,void 0,void 0,function*(){Cs=t,_d.push(e),function(n){return ce(this,void 0,void 0,function*(){if(!Cs||!n)return;(function(){const s=_d;_d=gl,gl=s})();const r=Cs.endsWith("/")?`${Cs}evt`:`${Cs}/evt`,i=Object.assign({},n);if(delete i.params,n.params)for(const[s,a]of Object.entries(n.params))i[s]=a;const o=JSON.stringify(i);J.RemoteCommunication(`[sendBufferedEvents] Sending ${gl.length} analytics events to ${r}`);try{const s=yield bv(r,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:o}),a=yield s.text();J.RemoteCommunication(`[sendBufferedEvents] Response: ${a}`),gl.length=0}catch{}})}(e).catch(()=>{})});class kd{constructor(t){this.enabled=!0,t!=null&&t.debug&&Ut.enable("Ecies:Layer"),this.ecies=t!=null&&t.privateKey?vo.PrivateKey.fromHex(t.privateKey):new vo.PrivateKey,J.Ecies("[ECIES constructor()] initialized secret: ",this.ecies.toHex()),J.Ecies("[ECIES constructor()] initialized public: ",this.ecies.publicKey.toHex()),J.Ecies("[ECIES constructor()] init with",this)}generateECIES(){this.ecies=new vo.PrivateKey}getPublicKey(){return this.ecies.publicKey.toHex()}encrypt(t,n){let r=t;if(this.enabled)try{J.Ecies("[ECIES: encrypt()] using otherPublicKey",n);const i=re.from(t),o=vo.encrypt(n,i);r=re.from(o).toString("base64")}catch(i){throw J.Ecies("[ECIES: encrypt()] error encrypt:",i),J.Ecies("[ECIES: encrypt()] private: ",this.ecies.toHex()),J.Ecies("[ECIES: encrypt()] data: ",t),J.Ecies("[ECIES: encrypt()] otherkey: ",n),i}return r}decrypt(t){let n=t;if(this.enabled)try{J.Ecies("[ECIES: decrypt()] using privateKey",this.ecies.toHex());const r=re.from(t.toString(),"base64");n=vo.decrypt(this.ecies.toHex(),r).toString()}catch(r){throw J.Ecies("[ECIES: decrypt()] error decrypt",r),J.Ecies("[ECIES: decrypt()] private: ",this.ecies.toHex()),J.Ecies("[ECIES: decrypt()] encryptedData: ",t),r}return n}getKeyInfo(){return{private:this.ecies.toHex(),public:this.ecies.publicKey.toHex()}}toString(){J.Ecies("[ECIES: toString()]",this.getKeyInfo())}}var Ci={name:"@metamask/sdk-communication-layer",version:"0.31.0",description:"",homepage:"https://github.com/MetaMask/metamask-sdk#readme",bugs:{url:"https://github.com/MetaMask/metamask-sdk/issues"},repository:{type:"git",url:"https://github.com/MetaMask/metamask-sdk.git",directory:"packages/sdk-communication-layer"},main:"dist/node/cjs/metamask-sdk-communication-layer.js",unpkg:"dist/browser/umd/metamask-sdk-communication-layer.js",module:"dist/node/es/metamask-sdk-communication-layer.js",browser:"dist/browser/es/metamask-sdk-communication-layer.js","react-native":"dist/react-native/es/metamask-sdk-communication-layer.js",types:"dist/types/src/index.d.ts",files:["/dist"],scripts:{"build:types":"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types","build:clean":"yarn clean && yarn build",build:"yarn build:types && rollup -c --bundleConfigAsCjs","build:dev":"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs","build:post-tsc":"echo 'N/A'","build:pre-tsc":"echo 'N/A'",size:"size-limit",clean:"rimraf ./dist",lint:"yarn lint:eslint && yarn lint:misc --check","lint:changelog":"../../scripts/validate-changelog.sh @metamask/sdk-communication-layer","lint:eslint":"eslint . --cache --ext js,ts","lint:fix":"yarn lint:eslint --fix && yarn lint:misc --write","lint:misc":"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore","publish:preview":"yarn npm publish --tag preview",prepack:"../../scripts/prepack.sh",reset:"yarn clean && rimraf ./node_modules/",test:'jest --testPathIgnorePatterns "/e2e/"',"test:e2e":'jest --testPathPattern "/e2e/"',"test:coverage":"jest --coverage","test:ci":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns "/e2e/"',"test:dev":"jest",watch:"rollup -c --bundleConfigAsCjs -w"},dependencies:{bufferutil:"^4.0.8","date-fns":"^2.29.3",debug:"^4.3.4","utf-8-validate":"^5.0.2",uuid:"^8.3.2"},devDependencies:{"@jest/globals":"^29.3.1","@lavamoat/allow-scripts":"^2.3.1","@metamask/auto-changelog":"3.1.0","@metamask/eslint-config":"^6.0.0","@metamask/eslint-config-nodejs":"^6.0.0","@metamask/eslint-config-typescript":"^6.0.0","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-replace":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@size-limit/preset-big-lib":"^11.0.2","@types/jest":"^29.2.4","@types/node":"^20.1.3","@types/uuid":"^9.0.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","cross-fetch":"^4.0.0",eciesjs:"^0.4.11",eslint:"^7.30.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.23.4","eslint-plugin-jest":"^24.4.0","eslint-plugin-jsdoc":"^36.1.0","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0",eventemitter2:"^6.4.9",jest:"^29.3.1",prettier:"^2.3.0",rimraf:"^3.0.2",rollup:"^4.26.0","rollup-plugin-jscc":"^2.0.0","rollup-plugin-natives":"^0.7.5","rollup-plugin-node-builtins":"^2.1.2","rollup-plugin-node-globals":"^1.4.0","rollup-plugin-peer-deps-external":"^2.2.4","rollup-plugin-polyfill-node":"^0.13.0","rollup-plugin-sizes":"^1.0.6","rollup-plugin-typescript2":"^0.31.2","rollup-plugin-visualizer":"^5.12.0","size-limit":"^11.1.6","socket.io-client":"^4.5.1","stream-browserify":"^3.0.0","ts-jest":"^29.0.3","ts-node":"^10.9.1",typescript:"^5.6.3"},peerDependencies:{"cross-fetch":"^4.0.0",eciesjs:"*",eventemitter2:"^6.4.9","readable-stream":"^3.6.2","socket.io-client":"^4.5.1"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},lavamoat:{allowScripts:{"@lavamoat/preinstall-always-fail":!1,canvas:!0,"eciesjs>secp256k1":!1,"socket.io-client>engine.io-client>ws>bufferutil":!1,"socket.io-client>engine.io-client>ws>utf-8-validate":!1,bufferutil:!1,"utf-8-validate":!1}}};const Ji="https://metamask-sdk.api.cx.metamask.io/",J6=["websocket"],os=6048e5,X6=3e3,e7={METAMASK_GETPROVIDERSTATE:"metamask_getProviderState",ETH_REQUESTACCOUNTS:"eth_requestAccounts"};function rw(e){const{context:t}=e;J.RemoteCommunication(`[RemoteCommunication: clean()] context=${t}`),e.channelConfig=void 0,e.ready=!1,e.originatorConnectStarted=!1}var at,ue,Bc,Fe,Ze,it,fo;(fo=at||(at={})).DISCONNECTED="disconnected",fo.WAITING="waiting",fo.TIMEOUT="timeout",fo.LINKED="linked",fo.PAUSED="paused",fo.TERMINATED="terminated",function(e){e.KEY_INFO="key_info",e.SERVICE_STATUS="service_status",e.PROVIDER_UPDATE="provider_update",e.RPC_UPDATE="rpc_update",e.KEYS_EXCHANGED="keys_exchanged",e.JOIN_CHANNEL="join_channel",e.PUBLIC_KEY="public_key",e.CHANNEL_CREATED="channel_created",e.CLIENTS_CONNECTED="clients_connected",e.CLIENTS_DISCONNECTED="clients_disconnected",e.CLIENTS_WAITING="clients_waiting",e.CLIENTS_READY="clients_ready",e.REJECTED="rejected",e.WALLET_INIT="wallet_init",e.CHANNEL_PERSISTENCE="channel_persistence",e.CONFIG="config",e.MESSAGE_ACK="ack",e.SOCKET_DISCONNECTED="socket_disconnected",e.SOCKET_RECONNECT="socket_reconnect",e.OTP="otp",e.SDK_RPC_CALL="sdk_rpc_call",e.AUTHORIZED="authorized",e.CONNECTION_STATUS="connection_status",e.MESSAGE="message",e.TERMINATE="terminate"}(ue||(ue={})),(Bc||(Bc={})).KEY_EXCHANGE="key_exchange",function(e){e.KEY_HANDSHAKE_START="key_handshake_start",e.KEY_HANDSHAKE_CHECK="key_handshake_check",e.KEY_HANDSHAKE_SYN="key_handshake_SYN",e.KEY_HANDSHAKE_SYNACK="key_handshake_SYNACK",e.KEY_HANDSHAKE_ACK="key_handshake_ACK",e.KEY_HANDSHAKE_WALLET="key_handshake_wallet",e.KEY_HANDSHAKE_NONE="none"}(Fe||(Fe={}));class t7 extends Ia.exports.EventEmitter2{constructor({communicationLayer:t,otherPublicKey:n,context:r,ecies:i,logging:o}){super(),this.keysExchanged=!1,this.step=Fe.KEY_HANDSHAKE_NONE,this.debug=!1,this.context=r,this.communicationLayer=t,i!=null&&i.privateKey&&n&&(J.KeyExchange(`[KeyExchange: constructor()] otherPubKey=${n} set keysExchanged to true!`,i),this.keysExchanged=!0),this.myECIES=new kd(Object.assign(Object.assign({},i),{debug:o==null?void 0:o.eciesLayer})),this.communicationLayer.state.eciesInstance=this.myECIES,this.myPublicKey=this.myECIES.getPublicKey(),this.debug=(o==null?void 0:o.keyExchangeLayer)===!0,n&&this.setOtherPublicKey(n),this.communicationLayer.on(Bc.KEY_EXCHANGE,this.onKeyExchangeMessage.bind(this))}onKeyExchangeMessage(t){const{relayPersistence:n}=this.communicationLayer.remote.state;if(J.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} keysExchanged=${this.keysExchanged} relayPersistence=${n}`,t),n)return void J.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Ignoring key exchange message because relay persistence is activated");const{message:r}=t;this.keysExchanged&&J.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} received handshake while already exchanged. step=${this.step} otherPubKey=${this.otherPublicKey}`),this.emit(ue.KEY_INFO,r.type),r.type===Fe.KEY_HANDSHAKE_SYN?(this.checkStep([Fe.KEY_HANDSHAKE_NONE,Fe.KEY_HANDSHAKE_ACK]),J.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYN",r),r.pubkey&&this.setOtherPublicKey(r.pubkey),this.communicationLayer.sendMessage({type:Fe.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey}).catch(i=>{J.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_SYNACK",i)}),this.setStep(Fe.KEY_HANDSHAKE_ACK)):r.type===Fe.KEY_HANDSHAKE_SYNACK?(this.checkStep([Fe.KEY_HANDSHAKE_SYNACK,Fe.KEY_HANDSHAKE_ACK,Fe.KEY_HANDSHAKE_NONE]),J.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYNACK"),r.pubkey&&this.setOtherPublicKey(r.pubkey),this.communicationLayer.sendMessage({type:Fe.KEY_HANDSHAKE_ACK}).catch(i=>{J.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_ACK",i)}),this.keysExchanged=!0,this.setStep(Fe.KEY_HANDSHAKE_ACK),this.emit(ue.KEYS_EXCHANGED)):r.type===Fe.KEY_HANDSHAKE_ACK&&(J.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_ACK set keysExchanged to true!"),this.checkStep([Fe.KEY_HANDSHAKE_ACK,Fe.KEY_HANDSHAKE_NONE]),this.keysExchanged=!0,this.setStep(Fe.KEY_HANDSHAKE_ACK),this.emit(ue.KEYS_EXCHANGED))}resetKeys(t){this.clean(),this.myECIES=new kd(t)}clean(){J.KeyExchange(`[KeyExchange: clean()] context=${this.context} reset handshake state`),this.setStep(Fe.KEY_HANDSHAKE_NONE),this.emit(ue.KEY_INFO,this.step),this.keysExchanged=!1}start({isOriginator:t,force:n}){const{relayPersistence:r,protocolVersion:i}=this.communicationLayer.remote.state,o=i>=2;r?J.KeyExchange("[KeyExchange: start()] Ignoring key exchange message because relay persistence is activated"):(J.KeyExchange(`[KeyExchange: start()] context=${this.context} protocolVersion=${i} isOriginator=${t} step=${this.step} force=${n} relayPersistence=${r} keysExchanged=${this.keysExchanged}`),t?!(this.keysExchanged||this.step!==Fe.KEY_HANDSHAKE_NONE&&this.step!==Fe.KEY_HANDSHAKE_SYNACK)||n?(J.KeyExchange(`[KeyExchange: start()] context=${this.context} -- start key exchange (force=${n}) -- step=${this.step}`,this.step),this.clean(),this.setStep(Fe.KEY_HANDSHAKE_SYNACK),this.communicationLayer.sendMessage({type:Fe.KEY_HANDSHAKE_SYN,pubkey:this.myPublicKey,v:2}).catch(s=>{J.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYN",s)})):J.KeyExchange(`[KeyExchange: start()] context=${this.context} -- key exchange already ${this.keysExchanged?"done":"in progress"} -- aborted.`,this.step):this.keysExchanged&&n!==!0?J.KeyExchange("[KeyExchange: start()] don't send KEY_HANDSHAKE_START -- exchange already done."):o?this.communicationLayer.sendMessage({type:Fe.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey,v:2}).catch(s=>{J.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYNACK",s)}):(this.communicationLayer.sendMessage({type:Fe.KEY_HANDSHAKE_START}).catch(s=>{J.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_START",s)}),this.clean()))}setStep(t){this.step=t,this.emit(ue.KEY_INFO,t)}checkStep(t){t.length>0&&t.indexOf(this.step.toString())}setRelayPersistence({localKey:t,otherKey:n}){this.otherPublicKey=n,this.myECIES=new kd({privateKey:t,debug:this.debug}),this.keysExchanged=!0}setKeysExchanged(t){this.keysExchanged=t}areKeysExchanged(){return this.keysExchanged}getMyPublicKey(){return this.myPublicKey}getOtherPublicKey(){return this.otherPublicKey}setOtherPublicKey(t){J.KeyExchange("[KeyExchange: setOtherPubKey()]",t),this.otherPublicKey=t}encryptMessage(t){if(!this.otherPublicKey)throw new Error("encryptMessage: Keys not exchanged - missing otherPubKey");return this.myECIES.encrypt(t,this.otherPublicKey)}decryptMessage(t){if(!this.otherPublicKey)throw new Error("decryptMessage: Keys not exchanged - missing otherPubKey");return this.myECIES.decrypt(t)}getKeyInfo(){return{ecies:Object.assign(Object.assign({},this.myECIES.getKeyInfo()),{otherPubKey:this.otherPublicKey}),step:this.step,keysExchanged:this.areKeysExchanged()}}toString(){const t={keyInfo:this.getKeyInfo(),keysExchanged:this.keysExchanged,step:this.step};return JSON.stringify(t)}}(function(e){e.TERMINATE="terminate",e.ANSWER="answer",e.OFFER="offer",e.CANDIDATE="candidate",e.JSONRPC="jsonrpc",e.WALLET_INFO="wallet_info",e.WALLET_INIT="wallet_init",e.ORIGINATOR_INFO="originator_info",e.PAUSE="pause",e.OTP="otp",e.AUTHORIZED="authorized",e.PING="ping",e.READY="ready"})(Ze||(Ze={})),function(e){e.REQUEST="sdk_connect_request_started",e.REQUEST_MOBILE="sdk_connect_request_started_mobile",e.RECONNECT="sdk_reconnect_request_started",e.CONNECTED="sdk_connection_established",e.CONNECTED_MOBILE="sdk_connection_established_mobile",e.AUTHORIZED="sdk_connection_authorized",e.REJECTED="sdk_connection_rejected",e.TERMINATED="sdk_connection_terminated",e.DISCONNECTED="sdk_disconnected",e.SDK_USE_EXTENSION="sdk_use_extension",e.SDK_RPC_REQUEST="sdk_rpc_request",e.SDK_RPC_REQUEST_RECEIVED="sdk_rpc_request_received",e.SDK_RPC_REQUEST_DONE="sdk_rpc_request_done",e.SDK_EXTENSION_UTILIZED="sdk_extension_utilized",e.SDK_USE_INAPP_BROWSER="sdk_use_inapp_browser"}(it||(it={}));const Kl=(e,t,n)=>ce(void 0,void 0,void 0,function*(){var r,i,o,s,a,l;const{remote:c,state:u}=e,{channelId:d,isOriginator:f}=u;if(t==="error_terminated")return J.SocketService(`handleJoinChannelResults: Channel ${d} terminated`),void e.emit(ue.TERMINATE);if(!n)return void J.SocketService(`handleJoinChannelResults: No result for channel ${d}`);const{persistence:p,walletKey:g,rejected:y}=n;if(J.SocketService(`handleJoinChannelResults: Channel ${d} persistence=${p} walletKey=${g} rejected=${y}`),y)return J.SocketService(`handleJoinChannelResults: Channel ${d} rejected`),yield e.remote.disconnect({terminate:!0}),e.remote.emit(ue.REJECTED,{channelId:d}),void e.remote.emitServiceStatusEvent();if(g&&!(!((r=c.state.channelConfig)===null||r===void 0)&&r.otherKey)){e.getKeyExchange().setOtherPublicKey(g),(i=e.state.keyExchange)===null||i===void 0||i.setKeysExchanged(!0),c.state.ready=!0,c.state.authorized=!0,c.emit(ue.AUTHORIZED);const{communicationLayer:S,storageManager:h}=c.state,v=Object.assign(Object.assign({},c.state.channelConfig),{channelId:(o=c.state.channelId)!==null&&o!==void 0?o:"",validUntil:Date.now()+os,localKey:S==null?void 0:S.getKeyInfo().ecies.private,otherKey:g});e.sendMessage({type:Fe.KEY_HANDSHAKE_ACK}).catch(w=>{}),(s=e.state.socket)===null||s===void 0||s.emit(Ze.PING,{id:d,clientType:f?"dapp":"wallet",context:"on_channel_reconnect",message:""}),yield h==null?void 0:h.persistChannelConfig(v),c.emitServiceStatusEvent(),c.setConnectionStatus(at.LINKED)}p&&(e.emit(ue.CHANNEL_PERSISTENCE),(a=e.state.keyExchange)===null||a===void 0||a.setKeysExchanged(!0),c.state.ready=!0,c.state.authorized=!0,c.emit(ue.AUTHORIZED),$r(Object.assign(Object.assign({id:d??"",event:f?it.CONNECTED:it.CONNECTED_MOBILE},e.remote.state.originatorInfo),{sdkVersion:e.remote.state.sdkVersion,commLayer:e.state.communicationLayerPreference,commLayerVersion:Ci.version,walletVersion:(l=e.remote.state.walletInfo)===null||l===void 0?void 0:l.version}),u.communicationServerUrl).catch(S=>{}))}),Go=e=>new Promise(t=>{setTimeout(t,e)}),Am=(e,t,...n)=>ce(void 0,[e,t,...n],void 0,function*(r,i,o=200){let s;const a=Date.now();let l=!1;for(;!l;){if(l=Date.now()-a>3e5,s=i[r],s.elapsedTime!==void 0)return s;yield Go(o)}throw new Error(`RPC ${r} timed out`)}),uh=e=>ce(void 0,void 0,void 0,function*(){const{state:t}=e,{socket:n,channelId:r,context:i,isOriginator:o,isReconnecting:s}=t;if(s)return J.SocketService("[SocketService: reconnectSocket()] Reconnection already in progress, skipping",e),!1;if(!n)return J.SocketService("[SocketService: reconnectSocket()] socket is not defined",e),!1;if(!r)return!1;const{connected:a}=n;t.isReconnecting=!0,t.reconnectionAttempts=0,J.SocketService(`[SocketService: reconnectSocket()] connected=${a} trying to reconnect after socketio disconnection`,e);try{for(;3>t.reconnectionAttempts;){if(J.SocketService(`[SocketService: reconnectSocket()] Attempt ${t.reconnectionAttempts+1} of 3`,e),yield Go(200),n.connected)return J.SocketService("Socket already connected --- ping to retrieve messages"),n.emit(Ze.PING,{id:r,clientType:o?"dapp":"wallet",context:"on_channel_config",message:""}),!0;t.resumed=!0,n.connect(),e.emit(ue.SOCKET_RECONNECT);try{if(yield new Promise((l,c)=>{n.emit(ue.JOIN_CHANNEL,{channelId:r,context:`${i}connect_again`,clientType:o?"dapp":"wallet"},(u,d)=>ce(void 0,void 0,void 0,function*(){try{yield Kl(e,u,d),l()}catch(f){c(f)}}))}),yield Go(100),n.connected)return J.SocketService(`Reconnection successful on attempt ${t.reconnectionAttempts+1}`),!0}catch(l){J.SocketService(`Error during reconnection attempt ${t.reconnectionAttempts+1}:`,l)}t.reconnectionAttempts+=1,3>t.reconnectionAttempts&&(yield Go(200))}return J.SocketService("Failed to reconnect after 3 attempts"),!1}finally{t.isReconnecting=!1,t.reconnectionAttempts=0}});function iw(e,t){return ce(this,void 0,void 0,function*(){var n;const r=(n=e.state.keyExchange)===null||n===void 0?void 0:n.encryptMessage(JSON.stringify(t)),i={id:e.state.channelId,context:e.state.context,clientType:e.state.isOriginator?"dapp":"wallet",message:r,plaintext:e.state.hasPlaintext?JSON.stringify(t):void 0};return J.SocketService(`[SocketService: encryptAndSendMessage()] context=${e.state.context}`,i),t.type===Ze.TERMINATE&&(e.state.manualDisconnect=!0),new Promise((o,s)=>{var a;(a=e.state.socket)===null||a===void 0||a.emit(ue.MESSAGE,i,(l,c)=>{var u;l&&(J.SocketService(`[SocketService: encryptAndSendMessage()] error=${l}`),s(l)),J.SocketService("[encryptAndSendMessage] response",c),o((u=c==null?void 0:c.success)!==null&&u!==void 0&&u)})})})}var Bo;(function(e){e.RPC_CHECK="rpcCheck",e.SKIPPED_RPC="skippedRpc"})(Bo||(Bo={}));const ow=["eth_sendTransaction","eth_signTypedData","eth_signTransaction","personal_sign","wallet_requestPermissions","wallet_switchEthereumChain","eth_signTypedData_v3","eth_signTypedData_v4","metamask_connectSign","metamask_connectWith","metamask_batch"].map(e=>e.toLowerCase()),n7=[{event:ue.CLIENTS_CONNECTED,handler:function(e,t){return n=>ce(this,void 0,void 0,function*(){var r,i,o,s,a,l,c,u,d,f,p;const g=(i=(r=e.remote.state.channelConfig)===null||r===void 0?void 0:r.relayPersistence)!==null&&i!==void 0&&i;if(J.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected-${t}' relayPersistence=${g} resumed=${e.state.resumed} clientsPaused=${e.state.clientsPaused} keysExchanged=${(o=e.state.keyExchange)===null||o===void 0?void 0:o.areKeysExchanged()} isOriginator=${e.state.isOriginator}`),e.emit(ue.CLIENTS_CONNECTED,{isOriginator:e.state.isOriginator,keysExchanged:(s=e.state.keyExchange)===null||s===void 0?void 0:s.areKeysExchanged(),context:e.state.context}),e.state.resumed)e.state.isOriginator||(J.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} 'clients_connected' / keysExchanged=${(a=e.state.keyExchange)===null||a===void 0?void 0:a.areKeysExchanged()} -- backward compatibility`),(l=e.state.keyExchange)===null||l===void 0||l.start({isOriginator:(c=e.state.isOriginator)!==null&&c!==void 0&&c})),e.state.resumed=!1;else if(e.state.clientsPaused)J.SocketService("[SocketService: handleClientsConnected()] 'clients_connected' skip sending originatorInfo on pause");else if(!e.state.isOriginator){const y=!g;J.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected' / keysExchanged=${(u=e.state.keyExchange)===null||u===void 0?void 0:u.areKeysExchanged()} -- force=${y} -- backward compatibility`),J.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected' / keysExchanged=${(d=e.state.keyExchange)===null||d===void 0?void 0:d.areKeysExchanged()} -- force=${y} -- backward compatibility`),(f=e.state.keyExchange)===null||f===void 0||f.start({isOriginator:(p=e.state.isOriginator)!==null&&p!==void 0&&p,force:y})}e.state.clientsConnected=!0,e.state.clientsPaused=!1})}},{event:ue.CHANNEL_CREATED,handler:function(e,t){return n=>{J.SocketService(`[SocketService: handleChannelCreated()] context=${e.state.context} on 'channel_created-${t}'`,n),e.emit(ue.CHANNEL_CREATED,n)}}},{event:ue.CLIENTS_DISCONNECTED,handler:function(e,t){return()=>{var n;e.state.clientsConnected=!1,J.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}'`),e.remote.state.relayPersistence?J.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}' - relayPersistence enabled, skipping key exchange cleanup.`):(e.state.isOriginator&&!e.state.clientsPaused&&((n=e.state.keyExchange)===null||n===void 0||n.clean()),e.emit(ue.CLIENTS_DISCONNECTED,t))}}},{event:ue.CONFIG,handler:function(e,t){return n=>ce(this,void 0,void 0,function*(){var r,i,o;J.SocketService(`[SocketService: handleChannelConfig()] update relayPersistence on 'config-${t}'`,n);const{persistence:s,walletKey:a}=n;e.state.isOriginator&&e.remote.state.channelConfig?(n.walletKey&&!e.remote.state.channelConfig.otherKey&&(J.SocketService(`Setting wallet key ${a}`),e.remote.state.channelConfig.otherKey=a,e.getKeyExchange().setOtherPublicKey(n.walletKey),(r=e.state.keyExchange)===null||r===void 0||r.setKeysExchanged(!0),yield e.remote.sendMessage({type:Fe.KEY_HANDSHAKE_ACK}),yield e.remote.sendMessage({type:Ze.PING}),yield(i=e.remote.state.storageManager)===null||i===void 0?void 0:i.persistChannelConfig(e.remote.state.channelConfig)),s!==!0||e.remote.state.channelConfig.relayPersistence||(J.SocketService(`Setting relay persistence ${s}`),e.remote.state.channelConfig.relayPersistence=s,e.remote.state.relayPersistence=!0,e.remote.emit(ue.CHANNEL_PERSISTENCE),e.remote.state.authorized=!0,e.remote.state.ready=!0,e.remote.emit(ue.AUTHORIZED),yield(o=e.remote.state.storageManager)===null||o===void 0?void 0:o.persistChannelConfig(e.remote.state.channelConfig))):e.state.isOriginator||n.persistence&&(e.remote.state.relayPersistence=!0,e.remote.emit(ue.CHANNEL_PERSISTENCE))})}},{event:ue.MESSAGE,handler:function(e,t){return n=>{var r,i,o,s,a,l,c,u,d,f,p,g,y,S,h,v,w,T;const{ackId:I,message:j,error:D}=n,H=(r=e.remote.state.relayPersistence)!==null&&r!==void 0&&r;if(J.SocketService(`[SocketService handleMessage()] relayPersistence=${H} context=${e.state.context} on 'message' ${t} keysExchanged=${(i=e.state.keyExchange)===null||i===void 0?void 0:i.areKeysExchanged()}`,n),D)throw J.SocketService(` + [SocketService handleMessage()] context=${e.state.context}::on 'message' error=${D}`),new Error(D);const G=typeof j=="string";if(!G&&(j==null?void 0:j.type)===Fe.KEY_HANDSHAKE_START)return H?void 0:(J.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received HANDSHAKE_START isOriginator=${e.state.isOriginator}`,j),void((o=e.state.keyExchange)===null||o===void 0||o.start({isOriginator:(s=e.state.isOriginator)!==null&&s!==void 0&&s,force:!0})));if(!G&&(!((a=j==null?void 0:j.type)===null||a===void 0)&&a.startsWith("key_handshake")))return H?void 0:(J.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' emit KEY_EXCHANGE`,j),void e.emit(Bc.KEY_EXCHANGE,{message:j,context:e.state.context}));if(G&&!(!((l=e.state.keyExchange)===null||l===void 0)&&l.areKeysExchanged())){let W=!1;try{J.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' trying to decrypt message`),(c=e.state.keyExchange)===null||c===void 0||c.decryptMessage(j),W=!0}catch(C){J.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' error`,C)}if(!W)return e.state.isOriginator?(d=e.state.keyExchange)===null||d===void 0||d.start({isOriginator:(f=e.state.isOriginator)!==null&&f!==void 0&&f}):e.sendMessage({type:Fe.KEY_HANDSHAKE_START}).catch(C=>{}),void J.SocketService(`Message ignored because invalid key exchange status. step=${(p=e.state.keyExchange)===null||p===void 0?void 0:p.getKeyInfo().step}`,(g=e.state.keyExchange)===null||g===void 0?void 0:g.getKeyInfo(),j);J.SocketService("Invalid key exchange status detected --- updating it."),(u=e.state.keyExchange)===null||u===void 0||u.setKeysExchanged(!0)}else if(!G&&(j!=null&&j.type))return void e.emit(ue.MESSAGE,j);if(!G)return void e.emit(ue.MESSAGE,j);const K=(y=e.state.keyExchange)===null||y===void 0?void 0:y.decryptMessage(j),q=JSON.parse(K??"{}");if(I&&(I==null?void 0:I.length)>0&&(J.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' ackid=${I} channelId=${t}`),(S=e.state.socket)===null||S===void 0||S.emit(ue.MESSAGE_ACK,{ackId:I,channelId:t,clientType:e.state.isOriginator?"dapp":"wallet"})),e.state.clientsPaused=(q==null?void 0:q.type)===Ze.PAUSE,e.state.isOriginator&&q.data){const W=q.data,C=e.state.rpcMethodTracker[W.id];if(C){const m=Date.now()-C.timestamp;J.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received answer for id=${W.id} method=${C.method} responseTime=${m}`,q),e.remote.state.analytics&&ow.includes(C.method.toLowerCase())&&$r(Object.assign(Object.assign({id:(h=e.remote.state.channelId)!==null&&h!==void 0?h:"",event:it.SDK_RPC_REQUEST_DONE,sdkVersion:e.remote.state.sdkVersion,commLayerVersion:Ci.version},e.remote.state.originatorInfo),{walletVersion:(v=e.remote.state.walletInfo)===null||v===void 0?void 0:v.version,params:{method:C.method,from:"mobile"}}),e.remote.state.communicationServerUrl).catch(M=>{});const _=Object.assign(Object.assign({},C),{result:W.result,error:W.error?{code:(w=W.error)===null||w===void 0?void 0:w.code,message:(T=W.error)===null||T===void 0?void 0:T.message}:void 0,elapsedTime:m});e.state.rpcMethodTracker[W.id]=_,e.emit(ue.RPC_UPDATE,_)}}e.emit(ue.MESSAGE,{message:q})}}},{event:ue.REJECTED,handler:function(e,t){return n=>ce(this,void 0,void 0,function*(){var r;e.state.isOriginator&&!e.remote.state.ready?(J.SocketService(`[SocketService: handleChannelRejected()] context=${e.state.context} channelId=${t} isOriginator=${e.state.isOriginator} ready=${e.remote.state.ready}`,e.remote.state.originatorInfo),$r(Object.assign(Object.assign({id:t,event:it.REJECTED},e.remote.state.originatorInfo),{sdkVersion:e.remote.state.sdkVersion,commLayer:e.state.communicationLayerPreference,commLayerVersion:Ci.version,walletVersion:(r=e.remote.state.walletInfo)===null||r===void 0?void 0:r.version}),e.remote.state.communicationServerUrl).catch(i=>{}),yield e.remote.disconnect({terminate:!0}),e.remote.emit(ue.REJECTED,{channelId:t}),e.remote.setConnectionStatus(at.DISCONNECTED)):J.SocketService(`[SocketService: handleChannelRejected()] SKIP -- channelId=${t} isOriginator=${e.state.isOriginator} ready=${e.remote.state.ready}`)})}},{event:"clients_waiting_to_join",handler:function(e,t){return n=>{J.SocketService(`[SocketService: handleClientsWaitingToJoin()] context=${e.state.context} on 'clients_waiting_to_join-${t}'`,n),e.emit(ue.CLIENTS_WAITING,n)}}}],r7=[{event:ue.KEY_INFO,handler:function(e){return t=>{J.SocketService("[SocketService: handleKeyInfo()] on 'KEY_INFO'",t),e.emit(ue.KEY_INFO,t)}}},{event:ue.KEYS_EXCHANGED,handler:function(e){return()=>{var t,n,r;J.SocketService(`[SocketService: handleKeysExchanged()] on 'keys_exchanged' keyschanged=${(t=e.state.keyExchange)===null||t===void 0?void 0:t.areKeysExchanged()}`);const{channelConfig:i}=e.remote.state;if(i){const s=e.getKeyExchange().getKeyInfo().ecies;i.localKey=s.private,i.otherKey=s.otherPubKey,e.remote.state.channelConfig=i,(n=e.remote.state.storageManager)===null||n===void 0||n.persistChannelConfig(i).catch(a=>{})}e.emit(ue.KEYS_EXCHANGED,{keysExchanged:(r=e.state.keyExchange)===null||r===void 0?void 0:r.areKeysExchanged(),isOriginator:e.state.isOriginator});const o={keyInfo:e.getKeyInfo()};e.emit(ue.SERVICE_STATUS,o)}}}];function Mm(e,t){J.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} setting socket listeners for channel ${t}...`);const{socket:n}=e.state,{keyExchange:r}=e.state;n&&e.state.isOriginator&&(e.state.debug&&(n==null||n.io.on("error",i=>{J.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=error`,i)}),n==null||n.io.on("reconnect",i=>{J.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect`,i),uh(e).catch(o=>{})}),n==null||n.io.on("reconnect_error",i=>{J.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_error`,i)}),n==null||n.io.on("reconnect_failed",()=>{J.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_failed`)})),n==null||n.on("disconnect",i=>(J.SocketService(`[SocketService: setupChannelListener()] on 'disconnect' -- MetaMaskSDK socket disconnected '${i}' begin recovery...`),function(o){return s=>{J.SocketService(`[SocketService: handleDisconnect()] on 'disconnect' manualDisconnect=${o.state.manualDisconnect}`,s),o.state.manualDisconnect||(o.emit(ue.SOCKET_DISCONNECTED),uh(o).catch(a=>{}))}}(e)(i)))),n7.forEach(({event:i,handler:o})=>{n==null||n.on(`${i}-${t}`,o(e,t))}),r7.forEach(({event:i,handler:o})=>{r==null||r.on(i,o(e))}),e.state.setupChannelListeners=!0}class i7 extends Ia.exports.EventEmitter2{constructor(t){super(),this.state={clientsConnected:!1,clientsPaused:!1,manualDisconnect:!1,lastRpcId:void 0,rpcMethodTracker:{},hasPlaintext:!1,communicationServerUrl:"",focusListenerAdded:!1,removeFocusListener:void 0,isReconnecting:!1,reconnectionAttempts:0},this.options=t;const{reconnect:n,communicationLayerPreference:r,communicationServerUrl:i,context:o,remote:s,logging:a}=t;this.state.resumed=n,this.state.context=o,this.state.isOriginator=s.state.isOriginator,this.state.communicationLayerPreference=r,this.state.debug=(a==null?void 0:a.serviceLayer)===!0,this.remote=s,(a==null?void 0:a.serviceLayer)===!0&&Ut.enable("SocketService:Layer"),this.state.communicationServerUrl=i,this.state.hasPlaintext=this.state.communicationServerUrl!==Ji&&(a==null?void 0:a.plaintext)===!0,J.SocketService(`[SocketService: constructor()] Socket IO url: ${this.state.communicationServerUrl}`),this.initSocket()}initSocket(){var t;const{otherPublicKey:n,ecies:r,logging:i}=this.options,o={autoConnect:!1,transports:J6,withCredentials:!0},s=this.state.communicationServerUrl;J.SocketService(`[SocketService: initSocket()] Socket IO url: ${s}`),this.state.socket=Dl(s,o),function(l){if(typeof window<"u"&&typeof document<"u"&&(J.SocketService(`[SocketService: setupSocketFocusListener()] hasFocus=${document.hasFocus()}`,l),!l.state.focusListenerAdded)){const c=()=>{J.SocketService("Document has focus --- reconnecting socket"),uh(l).catch(u=>{})};window.addEventListener("focus",c),l.state.focusListenerAdded=!0,l.state.removeFocusListener=()=>{window.removeEventListener("focus",c),l.state.focusListenerAdded=!1}}}(this);const a={communicationLayer:this,otherPublicKey:n,sendPublicKey:!1,context:(t=this.state.context)!==null&&t!==void 0?t:"",ecies:r,logging:i};this.state.keyExchange=new t7(a)}resetKeys(){return J.SocketService("[SocketService: resetKeys()] Resetting keys."),void((t=this.state.keyExchange)===null||t===void 0||t.resetKeys());var t}createChannel(){return ce(this,void 0,void 0,function*(){return function(t){return ce(this,void 0,void 0,function*(){var n,r,i;if(J.SocketService(`[SocketService: createChannel()] context=${t.state.context}`),t.state.socket||t.initSocket(),(n=t.state.socket)===null||n===void 0?void 0:n.connected)throw new Error("socket already connected");(r=t.state.socket)===null||r===void 0||r.connect(),t.state.manualDisconnect=!1,t.state.isOriginator=!0;const o=_0();t.state.channelId=o,Mm(t,o),yield new Promise((a,l)=>{var c;(c=t.state.socket)===null||c===void 0||c.emit(ue.JOIN_CHANNEL,{channelId:o,context:`${t.state.context}createChannel`,clientType:"dapp"},(u,d)=>ce(this,void 0,void 0,function*(){try{yield Kl(t,u,d),a()}catch(f){l(f)}}))});const s=(i=t.state.keyExchange)===null||i===void 0?void 0:i.getKeyInfo();return{channelId:o,pubKey:(s==null?void 0:s.ecies.public)||"",privKey:(s==null?void 0:s.ecies.private)||""}})}(this)})}connectToChannel({channelId:t,withKeyExchange:n=!1,authorized:r}){return function(i){return ce(this,arguments,void 0,function*({options:o,instance:s}){const{channelId:a,authorized:l,withKeyExchange:c}=o,{state:u,remote:d}=s,{isOriginator:f=!1,socket:p,keyExchange:g}=u,{channelConfig:y}=d.state;if(p!=null&&p.connected)throw new Error("socket already connected");if(f&&(y!=null&&y.relayPersistence)){const{localKey:S,otherKey:h}=y;S&&h&&(g==null||g.setRelayPersistence({localKey:S,otherKey:h}))}return Object.assign(u,{manualDisconnect:!1,withKeyExchange:c,isOriginator:f,channelId:a}),p==null||p.connect(),Mm(s,a),!f&&l&&(g==null||g.setKeysExchanged(!0),Object.assign(d.state,{ready:!0,authorized:!0})),new Promise(S=>{var h;const v=(h=g==null?void 0:g.getKeyInfo())===null||h===void 0?void 0:h.ecies.public;p==null||p.emit(ue.JOIN_CHANNEL,{channelId:a,context:`${u.context}_connectToChannel`,clientType:f?"dapp":"wallet",publicKey:l&&!f?v:void 0},(w,T)=>ce(this,void 0,void 0,function*(){yield Kl(s,w,T),S()}))})})}({options:{channelId:t,withKeyExchange:n,authorized:r},instance:this})}getKeyInfo(){return this.state.keyExchange.getKeyInfo()}keyCheck(){var t,n;(n=(t=this).state.socket)===null||n===void 0||n.emit(ue.MESSAGE,{id:t.state.channelId,context:t.state.context,message:{type:Fe.KEY_HANDSHAKE_CHECK,pubkey:t.getKeyInfo().ecies.otherPubKey}})}getKeyExchange(){return this.state.keyExchange}sendMessage(t){return ce(this,void 0,void 0,function*(){return function(n,r){return ce(this,void 0,void 0,function*(){var i,o,s;if(!n.state.channelId)throw J.SocketService("handleSendMessage: no channelId - Create a channel first"),new Error("Create a channel first");if(J.SocketService(`[SocketService: handleSendMessage()] context=${n.state.context} areKeysExchanged=${(i=n.state.keyExchange)===null||i===void 0?void 0:i.areKeysExchanged()}`,r),(o=r==null?void 0:r.type)===null||o===void 0?void 0:o.startsWith("key_handshake"))return function(l,c){var u;J.SocketService(`[SocketService: handleKeyHandshake()] context=${l.state.context}`,c),(u=l.state.socket)===null||u===void 0||u.emit(ue.MESSAGE,{id:l.state.channelId,context:l.state.context,clientType:l.state.isOriginator?"dapp":"wallet",message:c})}(n,r),!0;(function(l,c){var u;if(!(!((u=l.state.keyExchange)===null||u===void 0)&&u.areKeysExchanged())&&!l.remote.state.relayPersistence)throw J.SocketService(`[SocketService: validateKeyExchange()] context=${l.state.context} ERROR keys not exchanged`,c),new Error("Keys not exchanged BBB")})(n,r),function(l,c){var u;const d=(u=c==null?void 0:c.method)!==null&&u!==void 0?u:"",f=c==null?void 0:c.id;l.state.isOriginator&&f&&(l.state.rpcMethodTracker[f]={id:f,timestamp:Date.now(),method:d},l.emit(ue.RPC_UPDATE,l.state.rpcMethodTracker[f]))}(n,r);const a=yield iw(n,r);return n.remote.state.analytics&&n.remote.state.isOriginator&&r.method&&ow.includes(r.method.toLowerCase())&&$r({id:(s=n.remote.state.channelId)!==null&&s!==void 0?s:"",event:it.SDK_RPC_REQUEST,params:{method:r.method,from:"mobile"}},n.remote.state.communicationServerUrl).catch(l=>{}),function(l,c){return ce(this,void 0,void 0,function*(){var u;const d=c==null?void 0:c.id,f=(u=c==null?void 0:c.method)!==null&&u!==void 0?u:"";if(l.state.isOriginator&&d)try{const p=Am(d,l.state.rpcMethodTracker,200).then(S=>({type:Bo.RPC_CHECK,result:S})),g=ce(this,void 0,void 0,function*(){const S=yield(v=>ce(void 0,[v],void 0,function*({rpcId:w,instance:T}){for(;T.state.lastRpcId===w||T.state.lastRpcId===void 0;)yield Go(200);return T.state.lastRpcId}))({instance:l,rpcId:d}),h=yield Am(S,l.state.rpcMethodTracker,200);return{type:Bo.SKIPPED_RPC,result:h}}),y=yield Promise.race([p,g]);if(y.type===Bo.RPC_CHECK){const S=y.result;J.SocketService(`[SocketService:handleRpcReplies()] id=${c.id} ${f} ( ${S.elapsedTime} ms)`,S.result)}else{if(y.type!==Bo.SKIPPED_RPC)throw new Error(`Error handling RPC replies for ${d}`);{const S=Object.assign(Object.assign({},l.state.rpcMethodTracker[d]),{error:new Error("SDK_CONNECTION_ISSUE")});l.emit(ue.RPC_UPDATE,S);const h={data:Object.assign(Object.assign({},S),{jsonrpc:"2.0"}),name:"metamask-provider"};l.emit(ue.MESSAGE,{message:h})}}}catch(p){throw p}})}(n,r).catch(l=>{}),a})}(this,t)})}ping(){return function(t){return ce(this,void 0,void 0,function*(){var n,r;J.SocketService(`[SocketService: ping()] context=${t.state.context} originator=${t.state.isOriginator} keysExchanged=${(n=t.state.keyExchange)===null||n===void 0?void 0:n.areKeysExchanged()}`),(r=t.state.socket)===null||r===void 0||r.emit(Ze.PING,{id:t.state.channelId,context:"ping",clientType:t.remote.state.isOriginator?"dapp":"wallet",message:""})})}(this)}pause(){return function(t){return ce(this,void 0,void 0,function*(){var n,r;J.SocketService(`[SocketService: pause()] context=${t.state.context}`),t.state.manualDisconnect=!0,!((n=t.state.keyExchange)===null||n===void 0)&&n.areKeysExchanged()&&(yield t.sendMessage({type:Ze.PAUSE})),(r=t.state.socket)===null||r===void 0||r.disconnect()})}(this)}isConnected(){var t;return(t=this.state.socket)===null||t===void 0?void 0:t.connected}resume(){return function(t){return ce(this,void 0,void 0,function*(){const{state:n,remote:r}=t,{socket:i,channelId:o,context:s,keyExchange:a,isOriginator:l}=n,{isOriginator:c}=r.state;if(J.SocketService(`[SocketService: resume()] channelId=${o} context=${s} connected=${i==null?void 0:i.connected} manualDisconnect=${n.manualDisconnect} resumed=${n.resumed} keysExchanged=${a==null?void 0:a.areKeysExchanged()}`),!o)throw J.SocketService("[SocketService: resume()] channelId is not defined"),new Error("ChannelId is not defined");i!=null&&i.connected?(J.SocketService("[SocketService: resume()] already connected."),i.emit(Ze.PING,{id:o,clientType:c?"dapp":"wallet",context:"on_channel_config",message:""}),r.hasRelayPersistence()||a!=null&&a.areKeysExchanged()||(l?yield t.sendMessage({type:Ze.READY}):a==null||a.start({isOriginator:!1}))):(i==null||i.connect(),J.SocketService(`[SocketService: resume()] after connecting socket --> connected=${i==null?void 0:i.connected}`),i==null||i.emit(ue.JOIN_CHANNEL,{channelId:o,context:`${s}_resume`,clientType:c?"dapp":"wallet"},(u,d)=>ce(this,void 0,void 0,function*(){try{yield Kl(t,u,d)}catch{}}))),n.manualDisconnect=!1,n.resumed=!0})}(this)}getRPCMethodTracker(){return this.state.rpcMethodTracker}disconnect(t){return function(n,r){var i,o,s,a,l;J.SocketService(`[SocketService: disconnect()] context=${n.state.context}`,r),r!=null&&r.terminate&&((o=(i=n.state).removeFocusListener)===null||o===void 0||o.call(i),n.state.channelId=r.channelId,(s=n.state.socket)===null||s===void 0||s.removeAllListeners(),(a=n.state.keyExchange)===null||a===void 0||a.clean(),n.remote.state.ready=!1,n.state.socket=void 0,n.state.rpcMethodTracker={}),n.state.manualDisconnect=!0,(l=n.state.socket)===null||l===void 0||l.disconnect()}(this,t)}}var zi,Rt,Tm;function o7(e){return()=>ce(this,void 0,void 0,function*(){var t,n,r;const{state:i}=e;if(i.authorized)return;yield ce(this,void 0,void 0,function*(){for(;!i.walletInfo;)yield Go(500)});const o="7.3".localeCompare(((t=i.walletInfo)===null||t===void 0?void 0:t.version)||"");if(J.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' version=${(n=i.walletInfo)===null||n===void 0?void 0:n.version} compareValue=${o}`),o!==1)return;const s=i.platformType===Rt.MobileWeb||i.platformType===Rt.ReactNative||i.platformType===Rt.MetaMaskMobileWebview;J.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' platform=${i.platformType} secure=${s} channel=${i.channelId} walletVersion=${(r=i.walletInfo)===null||r===void 0?void 0:r.version}`),s&&(i.authorized=!0,e.emit(ue.AUTHORIZED))})}function s7(e){return t=>{const{state:n}=e;J.RemoteCommunication(`[RemoteCommunication: handleChannelCreatedEvent()] context=${n.context} on 'channel_created' channelId=${t}`),e.emit(ue.CHANNEL_CREATED,t)}}function a7(e,t){return()=>{var n,r,i,o;const{state:s}=e;J.RemoteCommunication(`[RemoteCommunication: handleClientsConnectedEvent()] on 'clients_connected' channel=${s.channelId} keysExchanged=${(r=(n=s.communicationLayer)===null||n===void 0?void 0:n.getKeyInfo())===null||r===void 0?void 0:r.keysExchanged}`),s.analytics&&$r(Object.assign(Object.assign({id:(i=s.channelId)!==null&&i!==void 0?i:"",event:s.reconnection?it.RECONNECT:s.isOriginator?it.REQUEST:it.REQUEST_MOBILE},s.originatorInfo),{commLayer:t,sdkVersion:s.sdkVersion,walletVersion:(o=s.walletInfo)===null||o===void 0?void 0:o.version,commLayerVersion:Ci.version}),s.communicationServerUrl).catch(a=>{}),s.clientsConnected=!0,s.originatorInfoSent=!1,e.emit(ue.CLIENTS_CONNECTED)}}function l7(e){return t=>{const{state:n}=e;J.RemoteCommunication(`[RemoteCommunication: handleClientsDisconnectedEvent()] context=${n.context} on 'clients_disconnected' channelId=${t}`),n.relayPersistence||(n.clientsConnected=!1,n.ready=!1,n.authorized=!1),e.emit(ue.CLIENTS_DISCONNECTED,n.channelId),e.setConnectionStatus(at.DISCONNECTED)}}function c7(e){return t=>{var n;const{state:r}=e;if(J.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] context=${r.context} on 'clients_waiting' numberUsers=${t} ready=${r.ready} autoStarted=${r.originatorConnectStarted}`),e.setConnectionStatus(at.WAITING),e.emit(ue.CLIENTS_WAITING,t),r.originatorConnectStarted){J.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] on 'clients_waiting' watch autoStarted=${r.originatorConnectStarted} timeout`,r.autoConnectOptions);const i=((n=r.autoConnectOptions)===null||n===void 0?void 0:n.timeout)||3e3,o=setTimeout(()=>{J.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] setTimeout(${i}) terminate channelConfig`,r.autoConnectOptions),r.originatorConnectStarted=!1,r.ready||e.setConnectionStatus(at.TIMEOUT),clearTimeout(o)},i)}}}function u7(e,t){return n=>{var r,i,o,s,a,l,c,u;const{state:d}=e;if(J.RemoteCommunication(`[RemoteCommunication: handleKeysExchangedEvent()] context=${d.context} on commLayer.'keys_exchanged' channel=${d.channelId}`,n),(i=(r=d.communicationLayer)===null||r===void 0?void 0:r.getKeyInfo())===null||i===void 0?void 0:i.keysExchanged){const f=Object.assign(Object.assign({},d.channelConfig),{channelId:(o=d.channelId)!==null&&o!==void 0?o:"",validUntil:((s=d.channelConfig)===null||s===void 0?void 0:s.validUntil)||os,localKey:d.communicationLayer.getKeyInfo().ecies.private,otherKey:d.communicationLayer.getKeyInfo().ecies.otherPubKey});(a=d.storageManager)===null||a===void 0||a.persistChannelConfig(f).catch(p=>{}),e.setConnectionStatus(at.LINKED)}(function(f,p){var g,y,S,h,v,w,T,I;const{state:j}=f;J.RemoteCommunication(`[RemoteCommunication: setLastActiveDate()] channel=${j.channelId}`,p);const D=Object.assign(Object.assign({},j.channelConfig),{channelId:(g=j.channelId)!==null&&g!==void 0?g:"",validUntil:(S=(y=j.channelConfig)===null||y===void 0?void 0:y.validUntil)!==null&&S!==void 0?S:0,relayPersistence:j.relayPersistence,localKey:(v=(h=j.communicationLayer)===null||h===void 0?void 0:h.state.keyExchange)===null||v===void 0?void 0:v.getKeyInfo().ecies.private,otherKey:(T=(w=j.communicationLayer)===null||w===void 0?void 0:w.state.keyExchange)===null||T===void 0?void 0:T.getKeyInfo().ecies.otherPubKey,lastActive:p.getTime()});(I=j.storageManager)===null||I===void 0||I.persistChannelConfig(D)})(e,new Date),d.analytics&&d.channelId&&$r(Object.assign(Object.assign({id:d.channelId,event:n.isOriginator?it.CONNECTED:it.CONNECTED_MOBILE},d.originatorInfo),{sdkVersion:d.sdkVersion,commLayer:t,commLayerVersion:Ci.version,walletVersion:(l=d.walletInfo)===null||l===void 0?void 0:l.version}),d.communicationServerUrl).catch(f=>{}),d.isOriginator=n.isOriginator,n.isOriginator||((c=d.communicationLayer)===null||c===void 0||c.sendMessage({type:Ze.READY}),d.ready=!0,d.paused=!1),n.isOriginator&&!d.originatorInfoSent&&((u=d.communicationLayer)===null||u===void 0||u.sendMessage({type:Ze.ORIGINATOR_INFO,originatorInfo:d.originatorInfo,originator:d.originatorInfo}),d.originatorInfoSent=!0)}}function d7(e){return t=>{let n=t;t.message&&(n=n.message),function(r,i){const{state:o}=i;if(J.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] context=${o.context} on 'message' typeof=${typeof r}`,r),i.state.ready=!0,o.isOriginator||r.type!==Ze.ORIGINATOR_INFO)if(o.isOriginator&&r.type===Ze.WALLET_INFO)(function(s,a){const{state:l}=s;l.walletInfo=a.walletInfo,l.paused=!1})(i,r);else{if(o.isOriginator&&r.type===Ze.WALLET_INIT)(function(s,a){return ce(this,void 0,void 0,function*(){var l,c,u;const{state:d}=s;if(d.isOriginator){const f=a.data||{};if(typeof f=="object"&&"accounts"in f&&"chainId"in f&&"walletKey"in f)try{const{channelConfig:p}=s.state;if(J.RemoteCommunication("WALLET_INIT: channelConfig",JSON.stringify(p,null,2)),p){const g=f.accounts,y=f.chainId,S=f.walletKey;let h,v=!1;"deeplinkProtocol"in f&&(v=!!f.deeplinkProtocol,s.state.deeplinkProtocolAvailable=v),"walletVersion"in f&&(h=f.walletVersion),yield(l=s.state.storageManager)===null||l===void 0?void 0:l.persistChannelConfig(Object.assign(Object.assign({},p),{otherKey:S,walletVersion:h,deeplinkProtocolAvailable:v,relayPersistence:!0})),yield(c=s.state.storageManager)===null||c===void 0?void 0:c.persistAccounts(g),yield(u=s.state.storageManager)===null||u===void 0?void 0:u.persistChainId(y)}s.emit(ue.WALLET_INIT,{accounts:f.accounts,chainId:f.chainId})}catch{}}})})(i,r).catch(s=>{J.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${s}`)});else if(r.type===Ze.TERMINATE)(function(s){return ce(this,void 0,void 0,function*(){const{state:a}=s;a.isOriginator&&(yield sw({options:{terminate:!0,sendMessage:!1},instance:s}),s.emit(ue.TERMINATE))})})(i).catch(s=>{J.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${s}`)});else if(r.type===Ze.PAUSE)(function(s){const{state:a}=s;a.paused=!0,s.setConnectionStatus(at.PAUSED)})(i);else if(r.type===Ze.READY&&o.isOriginator)(function(s){const{state:a}=s;s.setConnectionStatus(at.LINKED);const l=a.paused;a.paused=!1,s.emit(ue.CLIENTS_READY,{isOriginator:a.isOriginator,walletInfo:a.walletInfo}),l&&(a.authorized=!0,s.emit(ue.AUTHORIZED))})(i);else{if(r.type===Ze.OTP&&o.isOriginator)return void function(s,a){var l;const{state:c}=s;s.emit(ue.OTP,a.otpAnswer),"6.6".localeCompare(((l=c.walletInfo)===null||l===void 0?void 0:l.version)||"")===1&&s.emit(ue.SDK_RPC_CALL,{method:e7.ETH_REQUESTACCOUNTS,params:[]})}(i,r);r.type===Ze.AUTHORIZED&&o.isOriginator&&function(s){const{state:a}=s;a.authorized=!0,s.emit(ue.AUTHORIZED)}(i)}i.emit(ue.MESSAGE,r)}else(function(s,a){var l;const{state:c}=s;(l=c.communicationLayer)===null||l===void 0||l.sendMessage({type:Ze.WALLET_INFO,walletInfo:c.walletInfo}),c.originatorInfo=a.originatorInfo||a.originator,s.emit(ue.CLIENTS_READY,{isOriginator:c.isOriginator,originatorInfo:c.originatorInfo}),c.paused=!1})(i,r)}(n,e)}}function f7(e){return()=>{const{state:t}=e;J.RemoteCommunication("[RemoteCommunication: handleSocketReconnectEvent()] on 'socket_reconnect' -- reset key exchange status / set ready to false"),t.ready=!1,t.authorized=!1,rw(t),e.emitServiceStatusEvent({context:"socket_reconnect"})}}function h7(e){return()=>{const{state:t}=e;J.RemoteCommunication("[RemoteCommunication: handleSocketDisconnectedEvent()] on 'socket_Disconnected' set ready to false"),t.ready=!1}}function p7(e){return()=>ce(this,void 0,void 0,function*(){var t,n,r,i,o,s,a;const{state:l}=e;J.RemoteCommunication(`[RemoteCommunication: handleFullPersistenceEvent()] context=${l.context}`),e.state.ready=!0,e.state.clientsConnected=!0,e.state.authorized=!0,e.state.relayPersistence=!0,(t=e.state.communicationLayer)===null||t===void 0||t.getKeyExchange().setKeysExchanged(!0),e.emit(ue.KEYS_EXCHANGED,{keysExchanged:!0,isOriginator:!0}),e.emit(ue.AUTHORIZED),e.emit(ue.CLIENTS_READY),e.emit(ue.CHANNEL_PERSISTENCE);try{l.channelConfig=Object.assign(Object.assign({},l.channelConfig),{localKey:(n=l.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange().getKeyInfo().ecies.private,otherKey:(r=l.communicationLayer)===null||r===void 0?void 0:r.getKeyExchange().getOtherPublicKey(),channelId:(i=l.channelId)!==null&&i!==void 0?i:"",validUntil:(s=(o=l.channelConfig)===null||o===void 0?void 0:o.validUntil)!==null&&s!==void 0?s:os,relayPersistence:!0}),yield(a=l.storageManager)===null||a===void 0?void 0:a.persistChannelConfig(l.channelConfig)}catch{}})}function Pm({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,ecies:r,communicationServerUrl:i=Ji,instance:o}){var s,a,l,c,u,d,f,p,g,y,S;const{state:h}=o;if(J.RemoteCommunication("[initCommunicationLayer()] ",JSON.stringify(h,null,2)),e!==zi.SOCKET)throw new Error("Invalid communication protocol");h.communicationLayer=new i7({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,transports:h.transports,communicationServerUrl:i,context:h.context,ecies:r,logging:h.logging,remote:o});let v=typeof document<"u"&&document.URL||"",w=typeof document<"u"&&document.title||"";!((s=h.dappMetadata)===null||s===void 0)&&s.url&&(v=h.dappMetadata.url),!((a=h.dappMetadata)===null||a===void 0)&&a.name&&(w=h.dappMetadata.name);const T=(d=(c=(l=h.dappMetadata)===null||l===void 0?void 0:l.name)!==null&&c!==void 0?c:(u=h.dappMetadata)===null||u===void 0?void 0:u.url)!==null&&d!==void 0?d:"N/A",I=typeof window<"u"&&window.location!==void 0&&(f=window.location.hostname)!==null&&f!==void 0?f:T,j={url:v,title:w,source:(p=h.dappMetadata)===null||p===void 0?void 0:p.source,dappId:I,icon:((g=h.dappMetadata)===null||g===void 0?void 0:g.iconUrl)||((y=h.dappMetadata)===null||y===void 0?void 0:y.base64Icon),platform:h.platformType,apiVersion:Ci.version,connector:(S=h.dappMetadata)===null||S===void 0?void 0:S.connector};h.originatorInfo=j;const D={[ue.AUTHORIZED]:o7(o),[ue.MESSAGE]:d7(o),[ue.CHANNEL_PERSISTENCE]:p7(o),[ue.CLIENTS_CONNECTED]:a7(o,e),[ue.KEYS_EXCHANGED]:u7(o,e),[ue.SOCKET_DISCONNECTED]:h7(o),[ue.SOCKET_RECONNECT]:f7(o),[ue.CLIENTS_DISCONNECTED]:l7(o),[ue.KEY_INFO]:()=>{},[ue.CHANNEL_CREATED]:s7(o),[ue.CLIENTS_WAITING]:c7(o),[ue.RPC_UPDATE]:H=>{o.emit(ue.RPC_UPDATE,H)}};for(const[H,G]of Object.entries(D))try{h.communicationLayer.on(H,G)}catch{}}function sw(e){return ce(this,arguments,void 0,function*({options:t,instance:n}){const{state:r}=n;return J.RemoteCommunication(`[RemoteCommunication: disconnect()] channel=${r.channelId}`,t),new Promise((i,o)=>{var s,a,l,c,u,d;t!=null&&t.terminate?(n.state.ready&&$r({id:(s=n.state.channelId)!==null&&s!==void 0?s:"",event:it.TERMINATED},n.state.communicationServerUrl).catch(f=>{}),r.ready=!1,r.paused=!1,(a=r.storageManager)===null||a===void 0||a.terminate((l=r.channelId)!==null&&l!==void 0?l:""),n.state.terminated=!0,t.sendMessage?!((c=r.communicationLayer)===null||c===void 0)&&c.getKeyInfo().keysExchanged&&n.state.communicationLayer&&iw(n.state.communicationLayer,{type:Ze.TERMINATE}).then(()=>{i(!0)}).catch(f=>{o(f)}):i(!0),r.authorized=!1,r.relayPersistence=!1,r.channelId=_0(),t.channelId=r.channelId,r.channelConfig=void 0,r.originatorConnectStarted=!1,(u=r.communicationLayer)===null||u===void 0||u.disconnect(t),n.setConnectionStatus(at.TERMINATED)):((d=r.communicationLayer)===null||d===void 0||d.disconnect(t),n.setConnectionStatus(at.DISCONNECTED),i(!0))})})}(zi||(zi={})).SOCKET="socket",function(e){e.NonBrowser="nodejs",e.MetaMaskMobileWebview="in-app-browser",e.DesktopWeb="web-desktop",e.MobileWeb="web-mobile",e.ReactNative="react-native"}(Rt||(Rt={}));class m7 extends Ia.exports.EventEmitter2{constructor(t){super(),this.state={ready:!1,authorized:!1,isOriginator:!1,terminated:!1,protocolVersion:1,paused:!1,deeplinkProtocolAvailable:!1,platformType:"metamask-mobile",analytics:!1,reconnection:!1,originatorInfoSent:!1,communicationServerUrl:Ji,context:"",persist:!1,clientsConnected:!1,sessionDuration:os,originatorConnectStarted:!1,debug:!1,_connectionStatus:at.DISCONNECTED},this._options=t;const{platformType:n,communicationLayerPreference:r,otherPublicKey:i,reconnect:o,walletInfo:s,dappMetadata:a,protocolVersion:l,transports:c,context:u,relayPersistence:d,ecies:f,analytics:p=!1,storage:g,sdkVersion:y,communicationServerUrl:S=Ji,logging:h,autoConnect:v={timeout:X6}}=t;this.state.otherPublicKey=i,this.state.dappMetadata=a,this.state.walletInfo=s,this.state.transports=c,this.state.platformType=n,this.state.analytics=p,this.state.protocolVersion=l??1,this.state.isOriginator=!i,this.state.relayPersistence=d,this.state.communicationServerUrl=S,this.state.context=u,this.state.terminated=!1,this.state.sdkVersion=y,this.setMaxListeners(50),this.setConnectionStatus(at.DISCONNECTED),g!=null&&g.duration&&(this.state.sessionDuration=os),this.state.storageOptions=g,this.state.autoConnectOptions=v,this.state.debug=(h==null?void 0:h.remoteLayer)===!0,(h==null?void 0:h.remoteLayer)===!0&&Ut.enable("RemoteCommunication:Layer"),(h==null?void 0:h.serviceLayer)===!0&&Ut.enable("SocketService:Layer"),(h==null?void 0:h.eciesLayer)===!0&&Ut.enable("ECIES:Layer"),(h==null?void 0:h.keyExchangeLayer)===!0&&Ut.enable("KeyExchange:Layer"),this.state.logging=h,g!=null&&g.storageManager&&(this.state.storageManager=g.storageManager),J.RemoteCommunication(`[RemoteCommunication: constructor()] protocolVersion=${l} relayPersistence=${d} isOriginator=${this.state.isOriginator} communicationLayerPreference=${r} otherPublicKey=${i} reconnect=${o}`),this.state.isOriginator||Pm({communicationLayerPreference:r,otherPublicKey:i,reconnect:o,ecies:f,communicationServerUrl:S,instance:this}),this.emitServiceStatusEvent({context:"constructor"})}initFromDappStorage(){return ce(this,void 0,void 0,function*(){var t;if(this.state.storageManager){const n=yield this.state.storageManager.getPersistedChannelConfig({});n&&(this.state.channelConfig=n,this.state.channelId=n.channelId,this.state.deeplinkProtocolAvailable=(t=n.deeplinkProtocolAvailable)!==null&&t!==void 0&&t,n.relayPersistence&&(this.state.authorized=!0,this.state.ready=!0,this.setConnectionStatus(at.LINKED),yield this.connectToChannel({channelId:n.channelId})))}Pm({communicationLayerPreference:zi.SOCKET,otherPublicKey:this.state.otherPublicKey,reconnect:this._options.reconnect,ecies:this._options.ecies,communicationServerUrl:this.state.communicationServerUrl,instance:this})})}originatorSessionConnect(){return ce(this,void 0,void 0,function*(){return yield function(t){return ce(this,void 0,void 0,function*(){var n;const{state:r}=t;if(!r.storageManager)return void J.RemoteCommunication("[RemoteCommunication: originatorSessionConnect()] no storage manager defined - skip");const i=yield r.storageManager.getPersistedChannelConfig({});if(J.RemoteCommunication(`[RemoteCommunication: originatorSessionConnect()] autoStarted=${r.originatorConnectStarted} channelConfig`,i),(n=r.communicationLayer)===null||n===void 0?void 0:n.isConnected())return J.RemoteCommunication("[RemoteCommunication: originatorSessionConnect()] socket already connected - skip"),i;if(i){if(i.validUntil>Date.now())return r.channelConfig=i,r.originatorConnectStarted=!0,r.channelId=i==null?void 0:i.channelId,r.reconnection=!0,i;J.RemoteCommunication("[RemoteCommunication: autoConnect()] Session has expired")}r.originatorConnectStarted=!1})}(this)})}generateChannelIdConnect(){return ce(this,void 0,void 0,function*(){return function(t){return ce(this,void 0,void 0,function*(){var n,r,i,o,s,a;if(!t.communicationLayer)throw new Error("communication layer not initialized");if(t.ready)throw new Error("Channel already connected");if(t.channelId&&(!((n=t.communicationLayer)===null||n===void 0)&&n.isConnected()))return t.channelConfig=Object.assign(Object.assign({},t.channelConfig),{channelId:t.channelId,validUntil:Date.now()+t.sessionDuration}),(r=t.storageManager)===null||r===void 0||r.persistChannelConfig(t.channelConfig),{channelId:t.channelId,privKey:(o=(i=t.communicationLayer)===null||i===void 0?void 0:i.getKeyInfo())===null||o===void 0?void 0:o.ecies.private,pubKey:(a=(s=t.communicationLayer)===null||s===void 0?void 0:s.getKeyInfo())===null||a===void 0?void 0:a.ecies.public};J.RemoteCommunication("[RemoteCommunication: generateChannelId()]");const l=yield t.communicationLayer.createChannel();J.RemoteCommunication("[RemoteCommunication: generateChannelId()] channel created",l);const c=Object.assign(Object.assign({},t.channelConfig),{channelId:l.channelId,localKey:l.privKey,validUntil:Date.now()+t.sessionDuration});return t.channelId=l.channelId,t.channelConfig=c,{channelId:t.channelId,pubKey:l.pubKey,privKey:l.privKey}})}(this.state)})}clean(){return rw(this.state)}connectToChannel({channelId:t,withKeyExchange:n,authorized:r}){return function(i){return ce(this,arguments,void 0,function*({channelId:o,withKeyExchange:s,authorized:a,state:l}){var c,u,d;if(!xc(o))throw J.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${l.context} invalid channel channelId=${o}`),new Error(`Invalid channel ${o}`);if(J.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${l.context} channelId=${o} withKeyExchange=${s}`),(c=l.communicationLayer)===null||c===void 0?void 0:c.isConnected())return void J.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${l.context} already connected - interrupt connection.`);l.channelId=o,yield(u=l.communicationLayer)===null||u===void 0?void 0:u.connectToChannel({channelId:o,authorized:a,withKeyExchange:s});const f=Object.assign(Object.assign({},l.channelConfig),{channelId:o,validUntil:Date.now()+l.sessionDuration});l.channelConfig=f,(d=l.storageManager)===null||d===void 0||d.persistChannelConfig(f)})}({channelId:t,authorized:r,withKeyExchange:n,state:this.state})}sendMessage(t){return function(n,r){return ce(this,void 0,void 0,function*(){var i,o;const{state:s}=n;J.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${s.context} paused=${s.paused} ready=${s.ready} relayPersistence=${s.relayPersistence} authorized=${s.authorized} socket=${(i=s.communicationLayer)===null||i===void 0?void 0:i.isConnected()} clientsConnected=${s.clientsConnected} status=${s._connectionStatus}`,r),s.relayPersistence||s.ready&&(!((o=s.communicationLayer)===null||o===void 0)&&o.isConnected())&&s.clientsConnected||(J.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${s.context} SKIP message waiting for MM mobile readiness.`),yield new Promise(a=>{n.once(ue.CLIENTS_READY,a)}),J.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${s.context} AFTER SKIP / READY -- sending pending message`));try{return yield function(l,c){return ce(this,void 0,void 0,function*(){return new Promise(u=>{var d;const{state:f}=l;J.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${f.context} ready=${f.ready} authorized=${f.authorized} method=${c.method}`),!f.isOriginator||f.authorized||f.relayPersistence?(d=f.communicationLayer)===null||d===void 0||d.sendMessage(c).then(p=>{u(p)}).catch(p=>{u(!1)}):l.once(ue.AUTHORIZED,()=>{var p;J.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${f.context} AFTER SKIP / AUTHORIZED -- sending pending message`),(p=f.communicationLayer)===null||p===void 0||p.sendMessage(c).then(g=>{u(g)}).catch(g=>{u(!1)})})})})}(n,r)}catch(a){throw a}})}(this,t)}testStorage(){return ce(this,void 0,void 0,function*(){return function(t){return ce(this,void 0,void 0,function*(){var n;const r=yield(n=t.storageManager)===null||n===void 0?void 0:n.getPersistedChannelConfig();J.RemoteCommunication("[RemoteCommunication: testStorage()] res",r)})}(this.state)})}hasDeeplinkProtocol(){return this.state.deeplinkProtocolAvailable}getChannelConfig(){return this.state.channelConfig}isReady(){return this.state.ready}isConnected(){var t;return(t=this.state.communicationLayer)===null||t===void 0?void 0:t.isConnected()}isAuthorized(){return this.state.authorized}isPaused(){return this.state.paused}getCommunicationLayer(){return this.state.communicationLayer}ping(){return ce(this,void 0,void 0,function*(){var t;J.RemoteCommunication(`[RemoteCommunication: ping()] channel=${this.state.channelId}`),yield(t=this.state.communicationLayer)===null||t===void 0?void 0:t.ping()})}testLogger(){J.RemoteCommunication(`testLogger() channel=${this.state.channelId}`),J.SocketService(`testLogger() channel=${this.state.channelId}`),J.Ecies(`testLogger() channel=${this.state.channelId}`),J.KeyExchange(`testLogger() channel=${this.state.channelId}`)}keyCheck(){var t;J.RemoteCommunication(`[RemoteCommunication: keyCheck()] channel=${this.state.channelId}`),(t=this.state.communicationLayer)===null||t===void 0||t.keyCheck()}setConnectionStatus(t){this.state._connectionStatus!==t&&(this.state._connectionStatus=t,this.emit(ue.CONNECTION_STATUS,t),this.emitServiceStatusEvent({context:"setConnectionStatus"}))}emitServiceStatusEvent(t={}){this.emit(ue.SERVICE_STATUS,this.getServiceStatus())}getConnectionStatus(){return this.state._connectionStatus}getServiceStatus(){return{originatorInfo:this.state.originatorInfo,keyInfo:this.getKeyInfo(),connectionStatus:this.state._connectionStatus,channelConfig:this.state.channelConfig,channelId:this.state.channelId}}getKeyInfo(){var t;return(t=this.state.communicationLayer)===null||t===void 0?void 0:t.getKeyInfo()}resetKeys(){var t;(t=this.state.communicationLayer)===null||t===void 0||t.resetKeys()}setOtherPublicKey(t){var n;const r=(n=this.state.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange();if(!r)throw new Error("KeyExchange is not initialized.");r.getOtherPublicKey()!==t&&r.setOtherPublicKey(t)}pause(){return ce(this,void 0,void 0,function*(){var t;J.RemoteCommunication(`[RemoteCommunication: pause()] channel=${this.state.channelId}`),yield(t=this.state.communicationLayer)===null||t===void 0?void 0:t.pause(),this.setConnectionStatus(at.PAUSED)})}getVersion(){return Ci.version}hasRelayPersistence(){var t;return(t=this.state.relayPersistence)!==null&&t!==void 0&&t}resume(){return ce(this,void 0,void 0,function*(){return function(t){return ce(this,void 0,void 0,function*(){var n;const{state:r}=t;J.RemoteCommunication(`[RemoteCommunication: resume()] channel=${r.channelId}`),yield(n=r.communicationLayer)===null||n===void 0?void 0:n.resume(),t.setConnectionStatus(at.LINKED)})}(this)})}encrypt(t){var n,r,i;const o=(n=this.state.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange(),s=o==null?void 0:o.getOtherPublicKey();if(!s)throw new Error("KeyExchange not completed");return(i=(r=this.state.communicationLayer)===null||r===void 0?void 0:r.state.eciesInstance)===null||i===void 0?void 0:i.encrypt(t,s)}decrypt(t){var n,r,i;if(!(!((n=this.state.communicationLayer)===null||n===void 0)&&n.state.eciesInstance))throw new Error("ECIES instance is not initialized");return(i=(r=this.state.communicationLayer)===null||r===void 0?void 0:r.state.eciesInstance)===null||i===void 0?void 0:i.decrypt(t)}getChannelId(){return this.state.channelId}getRPCMethodTracker(){var t;return(t=this.state.communicationLayer)===null||t===void 0?void 0:t.getRPCMethodTracker()}reject({channelId:t}){return function(n){return ce(this,arguments,void 0,function*({channelId:r,state:i}){var o,s,a;if(!xc(r))throw J.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${i.context} invalid channel channelId=${r}`),new Error(`Invalid channel ${r}`);if(i.isOriginator)return void J.RemoteCommunication(`[RemoteCommunication: reject()] context=${i.context} isOriginator=${i.isOriginator} channelId=${r}`);const{socket:l}=(s=(o=i.communicationLayer)===null||o===void 0?void 0:o.state)!==null&&s!==void 0?s:{};l!=null&&l.connected||(J.RemoteCommunication(`[RemoteCommunication: reject()] context=${i.context} socket already connected`),l==null||l.connect()),$r(Object.assign(Object.assign({id:r,event:it.REJECTED},i.originatorInfo),{sdkVersion:i.sdkVersion,commLayerVersion:Ci.version,walletVersion:(a=i.walletInfo)===null||a===void 0?void 0:a.version}),i.communicationServerUrl).catch(c=>{}),yield new Promise((c,u)=>{l==null||l.emit(ue.REJECTED,{channelId:r},(d,f)=>{J.RemoteCommunication(`[RemoteCommunication: reject()] context=${i.context} socket=${l==null?void 0:l.id}`,{error:d,response:f}),d?u(d):c(f)})})})}({channelId:t,state:this.state})}disconnect(t){return ce(this,void 0,void 0,function*(){return sw({options:t,instance:this})})}}(function(e){e.RENEW="renew",e.LINK="link"})(Tm||(Tm={}));var g7="ERC721",y7="ERC1155",nt={errors:{disconnected:()=>"MetaMask: Disconnected from chain. Attempting to connect.",permanentlyDisconnected:()=>"MetaMask: Disconnected from MetaMask background. Page reload required.",sendSiteMetadata:()=>"MetaMask: Failed to send site metadata. This is an internal error, please report this bug.",unsupportedSync:e=>`MetaMask: The MetaMask Ethereum provider does not support synchronous methods like ${e} without a callback parameter.`,invalidDuplexStream:()=>"Must provide a Node.js-style duplex stream.",invalidNetworkParams:()=>"MetaMask: Received invalid network parameters. Please report this bug.",invalidRequestArgs:()=>"Expected a single, non-array, object argument.",invalidRequestMethod:()=>"'args.method' must be a non-empty string.",invalidRequestParams:()=>"'args.params' must be an object or array if provided.",invalidLoggerObject:()=>"'args.logger' must be an object if provided.",invalidLoggerMethod:e=>`'args.logger' must include required method '${e}'.`},info:{connected:e=>`MetaMask: Connected to chain with ID "${e}".`},warnings:{chainIdDeprecation:`MetaMask: 'ethereum.chainId' is deprecated and may be removed in the future. Please use the 'eth_chainId' RPC method instead. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,networkVersionDeprecation:`MetaMask: 'ethereum.networkVersion' is deprecated and may be removed in the future. Please use the 'net_version' RPC method instead. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,selectedAddressDeprecation:`MetaMask: 'ethereum.selectedAddress' is deprecated and may be removed in the future. Please use the 'eth_accounts' RPC method instead. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,enableDeprecation:`MetaMask: 'ethereum.enable()' is deprecated and may be removed in the future. Please use the 'eth_requestAccounts' RPC method instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1102`,sendDeprecation:`MetaMask: 'ethereum.send(...)' is deprecated and may be removed in the future. Please use 'ethereum.sendAsync(...)' or 'ethereum.request(...)' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193`,events:{close:`MetaMask: The event 'close' is deprecated and may be removed in the future. Please use 'disconnect' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#disconnect`,data:`MetaMask: The event 'data' is deprecated and will be removed in the future. Use 'message' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`,networkChanged:`MetaMask: The event 'networkChanged' is deprecated and may be removed in the future. Use 'chainChanged' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#chainchanged`,notification:`MetaMask: The event 'notification' is deprecated and may be removed in the future. Use 'message' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`},rpc:{ethDecryptDeprecation:`MetaMask: The RPC method 'eth_decrypt' is deprecated and may be removed in the future. +For more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,ethGetEncryptionPublicKeyDeprecation:`MetaMask: The RPC method 'eth_getEncryptionPublicKey' is deprecated and may be removed in the future. +For more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,walletWatchAssetNFTExperimental:`MetaMask: The RPC method 'wallet_watchAsset' is experimental for ERC721/ERC1155 assets and may change in the future. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-1.md and https://github.com/MetaMask/metamask-improvement-proposals/blob/main/PROCESS-GUIDE.md#proposal-lifecycle`},experimentalMethods:"MetaMask: 'ethereum._metamask' exposes non-standard, experimental methods. They may be removed or changed without warning."}};function v7(e){const t={ethDecryptDeprecation:!1,ethGetEncryptionPublicKeyDeprecation:!1,walletWatchAssetNFTExperimental:!1};return(n,r,i)=>{var o;t.ethDecryptDeprecation||n.method!=="eth_decrypt"?t.ethGetEncryptionPublicKeyDeprecation||n.method!=="eth_getEncryptionPublicKey"?!t.walletWatchAssetNFTExperimental&&n.method==="wallet_watchAsset"&&[g7,y7].includes(((o=n.params)==null?void 0:o.type)||"")&&(e.warn(nt.warnings.rpc.walletWatchAssetNFTExperimental),t.walletWatchAssetNFTExperimental=!0):(e.warn(nt.warnings.rpc.ethGetEncryptionPublicKeyDeprecation),t.ethGetEncryptionPublicKeyDeprecation=!0):(e.warn(nt.warnings.rpc.ethDecryptDeprecation),t.ethDecryptDeprecation=!0),i()}}var aw=4294967295,Lm=Math.floor(Math.random()*aw),F0=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},oi=(e,t,n)=>(F0(e,t,"read from private field"),n?n.call(e):t.get(e)),jn=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},yl=(e,t,n,r)=>(F0(e,t,"write to private field"),t.set(e,n),n),Bt=(e,t,n)=>(F0(e,t,"access private method"),n),Hl=-32600,zs=-32603,Im={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}};function Rm(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}var Dc=(e,t)=>Object.hasOwnProperty.call(e,t);class w7 extends TypeError{constructor(t,n){let r;const{message:i,explanation:o,...s}=t,{path:a}=t,l=a.length===0?i:`At path: ${a.join(".")} -- ${i}`;super(o??l),o!=null&&(this.cause=l),Object.assign(this,s),this.name=this.constructor.name,this.failures=()=>r??(r=[t,...n()])}}function Pr(e){return typeof e=="object"&&e!=null}function fr(e){return typeof e=="symbol"?e.toString():typeof e=="string"?JSON.stringify(e):`${e}`}function E7(e,t,n,r){if(e===!0)return;e===!1?e={}:typeof e=="string"&&(e={message:e});const{path:i,branch:o}=t,{type:s}=n,{refinement:a,message:l=`Expected a value of type \`${s}\`${a?` with refinement \`${a}\``:""}, but received: \`${fr(r)}\``}=e;return{value:r,type:s,refinement:a,key:i[i.length-1],path:i,branch:o,...e,message:l}}function*Om(e,t,n,r){(function(i){return Pr(i)&&typeof i[Symbol.iterator]=="function"})(e)||(e=[e]);for(const i of e){const o=E7(i,t,n,r);o&&(yield o)}}function*j0(e,t,n={}){const{path:r=[],branch:i=[e],coerce:o=!1,mask:s=!1}=n,a={path:r,branch:i};if(o&&(e=t.coercer(e,a),s&&t.type!=="type"&&Pr(t.schema)&&Pr(e)&&!Array.isArray(e)))for(const c in e)t.schema[c]===void 0&&delete e[c];let l="valid";for(const c of t.validator(e,a))c.explanation=n.message,l="not_valid",yield[c,void 0];for(let[c,u,d]of t.entries(e,a)){const f=j0(u,d,{path:c===void 0?r:[...r,c],branch:c===void 0?i:[...i,u],coerce:o,mask:s,message:n.message});for(const p of f)p[0]?(l=p[0].refinement!=null?"not_refined":"not_valid",yield[p[0],void 0]):o&&(u=p[1],c===void 0?e=u:e instanceof Map?e.set(c,u):e instanceof Set?e.add(u):Pr(e)&&(u!==void 0||c in e)&&(e[c]=u))}if(l!=="not_valid")for(const c of t.refiner(e,a))c.explanation=n.message,l="not_refined",yield[c,void 0];l==="valid"&&(yield[void 0,e])}class qn{constructor(t){const{type:n,schema:r,validator:i,refiner:o,coercer:s=l=>l,entries:a=function*(){}}=t;this.type=n,this.schema=r,this.entries=a,this.coercer=s,this.validator=i?(l,c)=>Om(i(l,c),c,this,l):()=>[],this.refiner=o?(l,c)=>Om(o(l,c),c,this,l):()=>[]}assert(t,n){return lw(t,this,n)}create(t,n){return cw(t,this,n)}is(t){return us(t,this)}mask(t,n){return function(r,i,o){const s=ba(r,i,{coerce:!0,mask:!0,message:o});if(s[0])throw s[0];return s[1]}(t,this,n)}validate(t,n={}){return ba(t,this,n)}}function lw(e,t,n){const r=ba(e,t,{message:n});if(r[0])throw r[0]}function cw(e,t,n){const r=ba(e,t,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function us(e,t){return!ba(e,t)[0]}function ba(e,t,n={}){const r=j0(e,t,n),i=function(o){const{done:s,value:a}=o.next();return s?void 0:a}(r);return i[0]?[new w7(i[0],function*(){for(const o of r)o[0]&&(yield o[0])}),void 0]:[void 0,i[1]]}function Si(e,t){return new qn({type:e,schema:null,validator:t})}function $m(e){let t;return new qn({type:"lazy",schema:null,*entries(n,r){t??(t=e()),yield*t.entries(n,r)},validator:(n,r)=>(t??(t=e()),t.validator(n,r)),coercer:(n,r)=>(t??(t=e()),t.coercer(n,r)),refiner:(n,r)=>(t??(t=e()),t.refiner(n,r))})}function uw(e){return new qn({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[n,r]of t.entries())yield[n,r,e]},coercer:t=>Array.isArray(t)?t.slice():t,validator:t=>Array.isArray(t)||`Expected an array value, but received: ${fr(t)}`})}function dw(e){const t=fr(e),n=typeof e;return new qn({type:"literal",schema:n==="string"||n==="number"||n==="boolean"?e:null,validator:r=>r===e||`Expected the literal \`${t}\`, but received: ${fr(r)}`})}function fw(){return Si("number",e=>typeof e=="number"&&!isNaN(e)||`Expected a number, but received: ${fr(e)}`)}function hw(e){const t=e?Object.keys(e):[],n=Si("never",()=>!1);return new qn({type:"object",schema:e||null,*entries(r){if(e&&Pr(r)){const i=new Set(Object.keys(r));for(const o of t)i.delete(o),yield[o,r[o],e[o]];for(const o of i)yield[o,r[o],n]}},validator:r=>Pr(r)||`Expected an object, but received: ${fr(r)}`,coercer:r=>Pr(r)?{...r}:r})}function Nm(e){return new qn({...e,validator:(t,n)=>t===void 0||e.validator(t,n),refiner:(t,n)=>t===void 0||e.refiner(t,n)})}function pw(e,t){return new qn({type:"record",schema:null,*entries(n){if(Pr(n))for(const r in n){const i=n[r];yield[r,r,e],yield[r,i,t]}},validator:n=>Pr(n)||`Expected an object, but received: ${fr(n)}`})}function _i(){return Si("string",e=>typeof e=="string"||`Expected a string, but received: ${fr(e)}`)}function bu(e){const t=e.map(n=>n.type).join(" | ");return new qn({type:"union",schema:null,coercer(n){for(const r of e){const[i,o]=r.validate(n,{coerce:!0});if(!i)return o}return n},validator(n,r){const i=[];for(const o of e){const[...s]=j0(n,o,r),[a]=s;if(!a[0])return[];for(const[l]of s)l&&i.push(l)}return[`Expected the value to satisfy a union of \`${t}\`, but received: ${fr(n)}`,...i]}})}var b7=class extends Error{constructor(e){super(e.message),this.code="ERR_ASSERTION"}};function mw(){throw new Error("setTimeout has not been defined")}function gw(){throw new Error("clearTimeout has not been defined")}var Wr=mw,qr=gw;function yw(e){if(Wr===setTimeout)return setTimeout(e,0);if((Wr===mw||!Wr)&&setTimeout)return Wr=setTimeout,setTimeout(e,0);try{return Wr(e,0)}catch{try{return Wr.call(null,e,0)}catch{return Wr.call(this,e,0)}}}typeof Ht.setTimeout=="function"&&(Wr=setTimeout),typeof Ht.clearTimeout=="function"&&(qr=clearTimeout);var ji,Mr=[],Yo=!1,zl=-1;function C7(){Yo&&ji&&(Yo=!1,ji.length?Mr=ji.concat(Mr):zl=-1,Mr.length&&vw())}function vw(){if(!Yo){var e=yw(C7);Yo=!0;for(var t=Mr.length;t;){for(ji=Mr,Mr=[];++zl1)for(var n=1;nhw(e);function Bm({path:e,branch:t}){const n=e[e.length-1];return Dc(t[t.length-2],n)}function Fc(e){return new qn({...e,type:`optional ${e.type}`,validator:(t,n)=>!Bm(n)||e.validator(t,n),refiner:(t,n)=>!Bm(n)||e.refiner(t,n)})}var vl,Dm,Fm,jc=bu([dw(null),Si("boolean",e=>typeof e=="boolean"),Si("finite number",e=>us(e,fw())&&Number.isFinite(e)),_i(),uw($m(()=>jc)),pw(_i(),$m(()=>jc))]),Sa=(vl=jc,Dm=Si("any",()=>!0),Fm=e=>(function(t,n,r="Assertion failed",i=b7){try{lw(t,n)}catch(o){throw function(s,a){var c,u;return l=s,typeof((u=(c=l==null?void 0:l.prototype)==null?void 0:c.constructor)==null?void 0:u.name)=="string"?new s({message:a}):s({message:a});var l}(i,`${r}: ${function(s){return function(a){return function(l){return typeof l=="object"&&l!==null&&"message"in l}(a)&&typeof a.message=="string"?a.message:a==null?"":String(a)}(s).replace(/\.$/u,"")}(o)}.`)}}(e,jc),JSON.parse(JSON.stringify(e,(t,n)=>{if(t!=="__proto__"&&t!=="constructor")return n}))),new qn({...vl,coercer:(e,t)=>us(e,Dm)?vl.coercer(Fm(e),t):vl.coercer(e,t)}));function dh(e){try{return function(t){cw(t,Sa)}(e),!0}catch{return!1}}var Vs=dw("2.0"),Vl=function(e){return new qn({...e,validator:(t,n)=>t===null||e.validator(t,n),refiner:(t,n)=>t===null||e.refiner(t,n)})}(bu([fw(),_i()])),fh=Ca({code:Si("integer",e=>typeof e=="number"&&!isNaN(e)&&Number.isInteger(e)||`Expected an integer, but received: ${fr(e)}`),message:_i(),data:Fc(Sa),stack:Fc(_i())}),Ew=bu([pw(_i(),Sa),uw(Sa)]),I7=Ca({id:Vl,jsonrpc:Vs,method:_i(),params:Fc(Ew)}),R7=Ca({jsonrpc:Vs,method:_i(),params:Fc(Ew)});function jm(e){return us(e,I7)}function Um(e){return us(e,fh)}hw({id:Vl,jsonrpc:Vs,result:Nm(Si("unknown",()=>!0)),error:Nm(fh)}),bu([Ca({id:Vl,jsonrpc:Vs,result:Sa}),Ca({id:Vl,jsonrpc:Vs,error:fh})]);var O7="Unspecified error message. This is a bug, please report it.",$7={code:zs,message:bw(zs)},N7="Unspecified server error.";function bw(e,t=O7){if(function(n){return Number.isInteger(n)}(e)){const n=e.toString();if(Dc(Im,n))return Im[n].message;if(function(r){return r>=-32099&&r<=-32e3}(e))return N7}return t}function Km(e,{fallbackError:t=$7,shouldIncludeStack:n=!0}={}){if(!Um(t))throw new Error("Must provide fallback error with integer number code and string message.");const r=function(i,o){return i&&typeof i=="object"&&"serialize"in i&&typeof i.serialize=="function"?i.serialize():Um(i)?i:{...o,data:{cause:Cw(i)}}}(e,t);return n||delete r.stack,r}function Cw(e){return Array.isArray(e)?e.map(t=>dh(t)?t:Rm(t)?Hm(t):null):Rm(e)?Hm(e):dh(e)?e:null}function Hm(e){return Object.getOwnPropertyNames(e).reduce((t,n)=>{const r=e[n];return dh(r)&&(t[n]=r),t},{})}var Sw=Ls;Ls.default=Ls,Ls.stable=zm,Ls.stableStringify=zm;var Uc="[...]",_w="[Circular]",Xi=[],Ui=[];function kw(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function Ls(e,t,n,r){var i;r===void 0&&(r=kw()),hh(e,"",0,[],void 0,0,r);try{i=Ui.length===0?JSON.stringify(e,t,n):JSON.stringify(e,xw(t),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Xi.length!==0;){var o=Xi.pop();o.length===4?Object.defineProperty(o[0],o[1],o[3]):o[0][o[1]]=o[2]}}return i}function Zo(e,t,n,r){var i=Object.getOwnPropertyDescriptor(r,n);i.get!==void 0?i.configurable?(Object.defineProperty(r,n,{value:e}),Xi.push([r,n,t,i])):Ui.push([t,n,e]):(r[n]=e,Xi.push([r,n,t]))}function hh(e,t,n,r,i,o,s){var a;if(o+=1,typeof e=="object"&&e!==null){for(a=0;as.depthLimit||s.edgesLimit!==void 0&&n+1>s.edgesLimit)return void Zo(Uc,e,t,i);if(r.push(e),Array.isArray(e))for(a=0;at?1:0}function zm(e,t,n,r){r===void 0&&(r=kw());var i,o=ph(e,"",0,[],void 0,0,r)||e;try{i=Ui.length===0?JSON.stringify(o,t,n):JSON.stringify(o,xw(t),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Xi.length!==0;){var s=Xi.pop();s.length===4?Object.defineProperty(s[0],s[1],s[3]):s[0][s[1]]=s[2]}}return i}function ph(e,t,n,r,i,o,s){var a;if(o+=1,typeof e=="object"&&e!==null){for(a=0;as.depthLimit||s.edgesLimit!==void 0&&n+1>s.edgesLimit)return void Zo(Uc,e,t,i);if(r.push(e),Array.isArray(e))for(a=0;a0)for(var r=0;rfunction(t,n){const[r,i]=function(o){if(o){if(typeof o=="string")return[o];if(typeof o=="object"&&!Array.isArray(o)){const{message:s,data:a}=o;if(s&&typeof s!="string")throw new Error("Must specify string message.");return[s??void 0,a]}}return[]}(n);return new vr(t,r??bw(t),i)}(Hl,e),Aw={};function Gr(){}function De(){De.init.call(this)}function Mw(e){return e._maxListeners===void 0?De.defaultMaxListeners:e._maxListeners}function Vm(e,t,n,r){var i,o,s;if(typeof n!="function")throw new TypeError('"listener" argument must be a function');if((o=e._events)?(o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),s=o[t]):(o=e._events=new Gr,e._eventsCount=0),s){if(typeof s=="function"?s=o[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),!s.warned&&(i=Mw(e))&&i>0&&s.length>i){s.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=e,a.type=t,a.count=s.length,function(l){typeof console.warn=="function"?console.warn(l):console.log(l)}(a)}}else s=o[t]=n,++e._eventsCount;return e}function Wm(e,t,n){var r=!1;function i(){e.removeListener(t,i),r||(r=!0,n.apply(e,arguments))}return i.listener=n,i}function qm(e){var t=this._events;if(t){var n=t[e];if(typeof n=="function")return 1;if(n)return n.length}return 0}function Ss(e,t){for(var n=new Array(t);t--;)n[t]=e[t];return n}Gr.prototype=Object.create(null),De.EventEmitter=De,De.usingDomains=!1,De.prototype.domain=void 0,De.prototype._events=void 0,De.prototype._maxListeners=void 0,De.defaultMaxListeners=10,De.init=function(){this.domain=null,De.usingDomains&&(void 0).active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new Gr,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},De.prototype.setMaxListeners=function(e){if(typeof e!="number"||e<0||isNaN(e))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},De.prototype.getMaxListeners=function(){return Mw(this)},De.prototype.emit=function(e){var t,n,r,i,o,s,a,l=e==="error";if(s=this._events)l=l&&s.error==null;else if(!l)return!1;if(a=this.domain,l){if(t=arguments[1],!a){if(t instanceof Error)throw t;var c=new Error('Uncaught, unspecified "error" event. ('+t+")");throw c.context=t,c}return t||(t=new Error('Uncaught, unspecified "error" event')),t.domainEmitter=this,t.domain=a,t.domainThrown=!1,a.emit("error",t),!1}if(!(n=s[e]))return!1;var u=typeof n=="function";switch(r=arguments.length){case 1:(function(d,f,p){if(f)d.call(p);else for(var g=d.length,y=Ss(d,g),S=0;S0;)if(n[o]===t||n[o].listener&&n[o].listener===t){s=n[o].listener,i=o;break}if(i<0)return this;if(n.length===1){if(n[0]=void 0,--this._eventsCount==0)return this._events=new Gr,this;delete r[e]}else(function(a,l){for(var c=l,u=c+1,d=a.length;u0?Reflect.ownKeys(this._events):[]};var U0=Ra(Object.freeze({__proto__:null,EventEmitter:De,default:De}));Object.defineProperty(Aw,"__esModule",{value:!0});const j7=U0;function Gm(e,t,n){try{Reflect.apply(e,t,n)}catch(r){setTimeout(()=>{throw r})}}let U7=class extends j7.EventEmitter{emit(e,...t){let n=e==="error";const r=this._events;if(r!==void 0)n=n&&r.error===void 0;else if(!n)return!1;if(n){let o;if(t.length>0&&([o]=t),o instanceof Error)throw o;const s=new Error("Unhandled error."+(o?` (${o.message})`:""));throw s.context=o,s}const i=r[e];if(i===void 0)return!1;if(typeof i=="function")Gm(i,this,t);else{const o=i.length,s=function(a){const l=a.length,c=new Array(l);for(let u=0;u{"destroy"in t&&typeof t.destroy=="function"&&t.destroy()}),yl(this,ei,[]),yl(this,Kc,!0)}push(t){Bt(this,Is,Wl).call(this),oi(this,ei).push(t)}handle(t,n){if(Bt(this,Is,Wl).call(this),n&&typeof n!="function")throw new Error('"callback" must be a function if provided.');return Array.isArray(t)?n?Bt(this,ql,mh).call(this,t,n):Bt(this,ql,mh).call(this,t):n?Bt(this,Gl,gh).call(this,t,n):this._promiseHandle(t)}asMiddleware(){return Bt(this,Is,Wl).call(this),async(t,n,r,i)=>{var o,s;try{const[a,l,c]=await Bt(o=Zl,Yl,yh).call(o,t,n,oi(this,ei));return l?(await Bt(s=Zl,qs,Hc).call(s,c),i(a)):r(async u=>{var d;try{await Bt(d=Zl,qs,Hc).call(d,c)}catch(f){return u(f)}return u()})}catch(a){return i(a)}}}async _promiseHandle(t){return new Promise((n,r)=>{Bt(this,Gl,gh).call(this,t,(i,o)=>{i&&o===void 0?r(i):n(o)}).catch(r)})}};Kc=new WeakMap,ei=new WeakMap,Do=new WeakMap,Is=new WeakSet,Wl=function(){if(oi(this,Kc))throw new Error("This engine is destroyed and can no longer be used.")},ql=new WeakSet,mh=async function(e,t){try{if(e.length===0){const r=[{id:null,jsonrpc:"2.0",error:new vr(Hl,"Request batch must contain plain objects. Received an empty array")}];return t?t(null,r):r}const n=(await Promise.all(e.map(this._promiseHandle.bind(this)))).filter(r=>r!==void 0);return t?t(null,n):n}catch(n){if(t)return t(n);throw n}},Gl=new WeakSet,gh=async function(e,t){var n;if(!e||Array.isArray(e)||typeof e!="object"){const s=new vr(Hl,"Requests must be plain objects. Received: "+typeof e,{request:e});return t(s,{id:null,jsonrpc:"2.0",error:s})}if(typeof e.method!="string"){const s=new vr(Hl,"Must specify a string method. Received: "+typeof e.method,{request:e});return oi(this,Do)&&!jm(e)?t(null):t(s,{id:e.id??null,jsonrpc:"2.0",error:s})}if(oi(this,Do)&&us(e,R7)&&!jm(e)){try{await oi(this,Do).call(this,e)}catch(s){return t(s)}return t(null)}let r=null;const i={...e},o={id:i.id,jsonrpc:i.jsonrpc};try{await Bt(n=$n,xd,Ym).call(n,i,o,oi(this,ei))}catch(s){r=s}return r&&(delete o.result,o.error||(o.error=Km(r))),t(r,o)},xd=new WeakSet,Ym=async function(e,t,n){var r,i,o;const[s,a,l]=await Bt(r=$n,Yl,yh).call(r,e,t,n);if(Bt(i=$n,Md,Qm).call(i,e,t,a),await Bt(o=$n,qs,Hc).call(o,l),s)throw s},Yl=new WeakSet,yh=async function(e,t,n){var r;const i=[];let o=null,s=!1;for(const a of n)if([o,s]=await Bt(r=$n,Ad,Zm).call(r,e,t,a,i),s)break;return[o,s,i.reverse()]},Ad=new WeakSet,Zm=async function(e,t,n,r){return new Promise(i=>{const o=a=>{const l=a||t.error;l&&(t.error=Km(l)),i([l,!0])},s=a=>{t.error?o(t.error):(a&&(typeof a!="function"&&o(new vr(zs,`JsonRpcEngine: "next" return handlers must be functions. Received "${typeof a}" for request: +${Td(e)}`,{request:e})),r.push(a)),i([null,!1]))};try{n(e,t,s,o)}catch(a){o(a)}})},qs=new WeakSet,Hc=async function(e){for(const t of e)await new Promise((n,r)=>{t(i=>i?r(i):n())})},Md=new WeakSet,Qm=function(e,t,n){if(!Dc(t,"result")&&!Dc(t,"error"))throw new vr(zs,`JsonRpcEngine: Response has no error or result for request: +${Td(e)}`,{request:e});if(!n)throw new vr(zs,`JsonRpcEngine: Nothing ended request: +${Td(e)}`,{request:e})},jn($n,xd),jn($n,Yl),jn($n,Ad),jn($n,qs),jn($n,Md);var K7=$n;function Td(e){return JSON.stringify(e,null,2)}var Pw=Object.freeze(["eth_subscription"]),H7=(e=console)=>[(t,n,r,i)=>{const o=t.id,s=Lm=(Lm+1)%aw;t.id=s,n.id=s,r(a=>{t.id=o,n.id=o,a()})},z7(e),v7(e)];function z7(e){return(t,n,r)=>{typeof t.method=="string"&&t.method||(n.error=Ws({message:"The request 'method' must be a non-empty string.",data:t})),r(i=>{const{error:o}=n;return o&&e.error(`MetaMask - RPC Error: ${o.message}`,o),i()})}}var Ql=(e,t,n=!0)=>(r,i)=>{r||i.error?t(r||i.error):!n||Array.isArray(i)?e(i):e(i.result)},Lw=e=>!!e&&typeof e=="string"&&e.startsWith("0x"),Iw=()=>{};async function Jm(e,t){try{const n=await async function(){return{name:V7(window),icon:await W7(window)}}();e.handle({jsonrpc:"2.0",id:1,method:"metamask_sendDomainMetadata",params:n},Iw)}catch(n){t.error({message:nt.errors.sendSiteMetadata(),originalError:n})}}function V7(e){const{document:t}=e,n=t.querySelector('head > meta[property="og:site_name"]');if(n)return n.content;const r=t.querySelector('head > meta[name="title"]');return r?r.content:t.title&&t.title.length>0?t.title:window.location.hostname}async function W7(e){const{document:t}=e,n=t.querySelectorAll('head > link[rel~="icon"]');for(const r of Array.from(n))if(r&&await q7(r.href))return r.href;return null}async function q7(e){return new Promise((t,n)=>{try{const r=document.createElement("img");r.onload=()=>t(!0),r.onerror=()=>t(!1),r.src=e}catch(r){n(r)}})}var Rw=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},rr=(e,t,n)=>(Rw(e,t,"read from private field"),n?n.call(e):t.get(e)),vh=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},wr=(e,t,n,r)=>(Rw(e,t,"write to private field"),t.set(e,n),n);function Xm(e,t,n){try{Reflect.apply(e,t,n)}catch(r){setTimeout(()=>{throw r})}}class G7 extends De{emit(t,...n){let r=t==="error";const i=this._events;if(i!==void 0)r=r&&i.error===void 0;else if(!r)return!1;if(r){let s;if(n.length>0&&([s]=n),s instanceof Error)throw s;const a=new Error("Unhandled error."+(s?` (${s.message})`:""));throw a.context=s,a}const o=i[t];if(o===void 0)return!1;if(typeof o=="function")Xm(o,this,n);else{const s=o.length,a=function(l){const c=l.length,u=new Array(c);for(let d=0;di.push(o)),this._rpcEngine=i}get chainId(){return rr(this,Yr)}get selectedAddress(){return rr(this,Ii)}isConnected(){return this._state.isConnected}async request(t){if(!t||typeof t!="object"||Array.isArray(t))throw Ws({message:nt.errors.invalidRequestArgs(),data:t});const{method:n,params:r}=t;if(typeof n!="string"||n.length===0)throw Ws({message:nt.errors.invalidRequestMethod(),data:t});if(r!==void 0&&!Array.isArray(r)&&(typeof r!="object"||r===null))throw Ws({message:nt.errors.invalidRequestParams(),data:t});const i=r==null?{method:n}:{method:n,params:r};return new Promise((o,s)=>{this._rpcRequest(i,Ql(o,s))})}_initializeState(t){if(this._state.initialized)throw new Error("Provider already initialized.");if(t){const{accounts:n,chainId:r,isUnlocked:i,networkVersion:o}=t;this._handleConnect(r),this._handleChainChanged({chainId:r,networkVersion:o}),this._handleUnlockStateChanged({accounts:n,isUnlocked:i}),this._handleAccountsChanged(n)}this._state.initialized=!0,this.emit("_initialized")}_rpcRequest(t,n){let r=n;return Array.isArray(t)||(t.jsonrpc||(t.jsonrpc="2.0"),t.method!=="eth_accounts"&&t.method!=="eth_requestAccounts"||(r=(i,o)=>{this._handleAccountsChanged(o.result??[],t.method==="eth_accounts"),n(i,o)})),this._rpcEngine.handle(t,r)}_handleConnect(t){this._state.isConnected||(this._state.isConnected=!0,this.emit("connect",{chainId:t}),this._log.debug(nt.info.connected(t)))}_handleDisconnect(t,n){if(this._state.isConnected||!this._state.isPermanentlyDisconnected&&!t){let r;this._state.isConnected=!1,t?(r=new vr(1013,n??nt.errors.disconnected()),this._log.debug(r)):(r=new vr(1011,n??nt.errors.permanentlyDisconnected()),this._log.error(r),wr(this,Yr,null),this._state.accounts=null,wr(this,Ii,null),this._state.isUnlocked=!1,this._state.isPermanentlyDisconnected=!0),this.emit("disconnect",r)}}_handleChainChanged({chainId:t}={}){Lw(t)?(this._handleConnect(t),t!==rr(this,Yr)&&(wr(this,Yr,t),this._state.initialized&&this.emit("chainChanged",rr(this,Yr)))):this._log.error(nt.errors.invalidNetworkParams(),{chainId:t})}_handleAccountsChanged(t,n=!1){let r=t;Array.isArray(t)||(this._log.error("MetaMask: Received invalid accounts parameter. Please report this bug.",t),r=[]);for(const i of t)if(typeof i!="string"){this._log.error("MetaMask: Received non-string account. Please report this bug.",t),r=[];break}if(!Y7(this._state.accounts,r)&&(n&&this._state.accounts!==null&&this._log.error("MetaMask: 'eth_accounts' unexpectedly updated accounts. Please report this bug.",r),this._state.accounts=r,rr(this,Ii)!==r[0]&&wr(this,Ii,r[0]||null),this._state.initialized)){const i=[...r];this.emit("accountsChanged",i)}}_handleUnlockStateChanged({accounts:t,isUnlocked:n}={}){typeof n=="boolean"?n!==this._state.isUnlocked&&(this._state.isUnlocked=n,this._handleAccountsChanged(t??[])):this._log.error("MetaMask: Received invalid isUnlocked parameter. Please report this bug.")}};Yr=new WeakMap,Ii=new WeakMap,Ow._defaultState={accounts:null,isConnected:!1,isUnlocked:!1,initialized:!1,isPermanentlyDisconnected:!1};var eg,tg,Z7=Ow,wh={exports:{}};function Nw(){return tg?eg:(tg=1,eg=U0.EventEmitter)}var K0,H0=Ra(g6);K0=typeof Object.create=="function"?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e};var Bw=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=i)return a;switch(a){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch{return"[Circular]"}default:return a}}),s=r[n];n=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),Su(t)?n.showHidden=t:t&&G0(n,t),sr(n.showHidden)&&(n.showHidden=!1),sr(n.depth)&&(n.depth=2),sr(n.colors)&&(n.colors=!1),sr(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=J7),zc(n,e,n.depth)}function J7(e,t){var n=dr.styles[t];return n?"\x1B["+dr.colors[n][0]+"m"+e+"\x1B["+dr.colors[n][1]+"m":e}function X7(e,t){return e}function zc(e,t,n){if(e.customInspect&&t&&Zs(t.inspect)&&t.inspect!==dr&&(!t.constructor||t.constructor.prototype!==t)){var r=t.inspect(n,e);return _a(r)||(r=zc(e,r,n)),r}var i=function(f,p){if(sr(p))return f.stylize("undefined","undefined");if(_a(p)){var g="'"+JSON.stringify(p).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return f.stylize(g,"string")}return W0(p)?f.stylize(""+p,"number"):Su(p)?f.stylize(""+p,"boolean"):$a(p)?f.stylize("null","null"):void 0}(e,t);if(i)return i;var o=Object.keys(t),s=function(f){var p={};return f.forEach(function(g,y){p[g]=!0}),p}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),Ys(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return Ld(t);if(o.length===0){if(Zs(t)){var a=t.name?": "+t.name:"";return e.stylize("[Function"+a+"]","special")}if(Gs(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(Vc(t))return e.stylize(Date.prototype.toString.call(t),"date");if(Ys(t))return Ld(t)}var l,c="",u=!1,d=["{","}"];return V0(t)&&(u=!0,d=["[","]"]),Zs(t)&&(c=" [Function"+(t.name?": "+t.name:"")+"]"),Gs(t)&&(c=" "+RegExp.prototype.toString.call(t)),Vc(t)&&(c=" "+Date.prototype.toUTCString.call(t)),Ys(t)&&(c=" "+Ld(t)),o.length!==0||u&&t.length!=0?n<0?Gs(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),l=u?function(f,p,g,y,S){for(var h=[],v=0,w=p.length;v60?g[0]+(p===""?"":p+` + `)+" "+f.join(`, + `)+" "+g[1]:g[0]+p+" "+f.join(", ")+" "+g[1]}(l,c,d)):d[0]+c+d[1]}function Ld(e){return"["+Error.prototype.toString.call(e)+"]"}function Id(e,t,n,r,i,o){var s,a,l;if((l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?a=l.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):l.set&&(a=e.stylize("[Setter]","special")),zw(r,i)||(s="["+i+"]"),a||(e.seen.indexOf(l.value)<0?(a=$a(n)?zc(e,l.value,null):zc(e,l.value,n-1)).indexOf(` +`)>-1&&(a=o?a.split(` +`).map(function(c){return" "+c}).join(` +`).substr(2):` +`+a.split(` +`).map(function(c){return" "+c}).join(` +`)):a=e.stylize("[Circular]","special")),sr(s)){if(o&&i.match(/^\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function V0(e){return Array.isArray(e)}function Su(e){return typeof e=="boolean"}function $a(e){return e===null}function Fw(e){return e==null}function W0(e){return typeof e=="number"}function _a(e){return typeof e=="string"}function jw(e){return typeof e=="symbol"}function sr(e){return e===void 0}function Gs(e){return io(e)&&q0(e)==="[object RegExp]"}function io(e){return typeof e=="object"&&e!==null}function Vc(e){return io(e)&&q0(e)==="[object Date]"}function Ys(e){return io(e)&&(q0(e)==="[object Error]"||e instanceof Error)}function Zs(e){return typeof e=="function"}function Uw(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||e===void 0}function Kw(e){return re.isBuffer(e)}function q0(e){return Object.prototype.toString.call(e)}function Rd(e){return e<10?"0"+e.toString(10):e.toString(10)}dr.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},dr.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};var eb=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Hw(){console.log("%s - %s",function(){var e=new Date,t=[Rd(e.getHours()),Rd(e.getMinutes()),Rd(e.getSeconds())].join(":");return[e.getDate(),eb[e.getMonth()],t].join(" ")}(),Cu.apply(null,arguments))}function G0(e,t){if(!t||!io(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}function zw(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var Ri=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function Y0(e){if(typeof e!="function")throw new TypeError('The "original" argument must be of type Function');if(Ri&&e[Ri]){var t;if(typeof(t=e[Ri])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,Ri,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var n,r,i=new Promise(function(a,l){n=a,r=l}),o=[],s=0;s0?this.tail.next=c:this.head=c,this.tail=c,++this.length}},{key:"unshift",value:function(l){var c={data:l,next:this.head};this.length===0&&(this.tail=c),this.head=c,++this.length}},{key:"shift",value:function(){if(this.length!==0){var l=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,l}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(l){if(this.length===0)return"";for(var c=this.head,u=""+c.data;c=c.next;)u+=l+c.data;return u}},{key:"concat",value:function(l){if(this.length===0)return i.alloc(0);for(var c,u,d,f=i.allocUnsafe(l>>>0),p=this.head,g=0;p;)c=p.data,u=f,d=g,i.prototype.copy.call(c,u,d),g+=p.data.length,p=p.next;return f}},{key:"consume",value:function(l,c){var u;return lf.length?f.length:l;if(p===f.length?d+=f:d+=f.slice(0,l),(l-=p)==0){p===f.length?(++u,c.next?this.head=c.next:this.head=this.tail=null):(this.head=c,c.data=f.slice(p));break}++u}return this.length-=u,d}},{key:"_getBuffer",value:function(l){var c=i.allocUnsafe(l),u=this.head,d=1;for(u.data.copy(c),l-=u.data.length;u=u.next;){var f=u.data,p=l>f.length?f.length:l;if(f.copy(c,c.length-l,0,p),(l-=p)==0){p===f.length?(++d,u.next?this.head=u.next:this.head=this.tail=null):(this.head=u,u.data=f.slice(p));break}++d}return this.length-=d,c}},{key:s,value:function(l,c){return o(this,t(t({},c),{},{depth:0,customInspect:!1}))}}]),a}(),Od}function qw(){if(rg)return $d;function e(r,i){n(r,i),t(r)}function t(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function n(r,i){r.emit("error",i)}return rg=1,$d={destroy:function(r,i){var o=this,s=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return s||a?(i?i(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,$e.nextTick(n,this,r)):$e.nextTick(n,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(l){!i&&l?o._writableState?o._writableState.errorEmitted?$e.nextTick(t,o):(o._writableState.errorEmitted=!0,$e.nextTick(e,o,l)):$e.nextTick(e,o,l):i?($e.nextTick(t,o),i(l)):$e.nextTick(t,o)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(r,i){var o=r._readableState,s=r._writableState;o&&o.autoDestroy||s&&s.autoDestroy?r.destroy(i):r.emit("error",i)}},$d}var ig,og,oo={},Gw={};function gn(e,t,n){n||(n=Error);var r=function(i){var o,s;function a(l,c,u){return i.call(this,function(d,f,p){return typeof t=="string"?t:t(d,f,p)}(l,c,u))||this}return s=i,(o=a).prototype=Object.create(s.prototype),o.prototype.constructor=o,o.__proto__=s,a}(n);r.prototype.name=n.name,r.prototype.code=e,Gw[e]=r}function sg(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map(function(r){return String(r)}),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:n===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}function Yw(){if(og)return ig;og=1;var e=oo.codes.ERR_INVALID_OPT_VALUE;return ig={getHighWaterMark:function(t,n,r,i){var o=function(s,a,l){return s.highWaterMark!=null?s.highWaterMark:a?s[l]:null}(n,i,r);if(o!=null){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new e(i?r:"highWaterMark",o);return Math.floor(o)}return t.objectMode?16:16384}}}gn("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError),gn("ERR_INVALID_ARG_TYPE",function(e,t,n){var r,i,o;if(typeof t=="string"&&(i="not ",t.substr(0,4)===i)?(r="must not be",t=t.replace(/^not /,"")):r="must be",function(a,l,c){return(c===void 0||c>a.length)&&(c=a.length),a.substring(c-9,c)===l}(e," argument"))o="The ".concat(e," ").concat(r," ").concat(sg(t,"type"));else{var s=function(a,l,c){return typeof c!="number"&&(c=0),!(c+1>a.length)&&a.indexOf(".",c)!==-1}(e)?"property":"argument";o='The "'.concat(e,'" ').concat(s," ").concat(r," ").concat(sg(t,"type"))}return o+". Received type ".concat(typeof n)},TypeError),gn("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),gn("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"}),gn("ERR_STREAM_PREMATURE_CLOSE","Premature close"),gn("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"}),gn("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),gn("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),gn("ERR_STREAM_WRITE_AFTER_END","write after end"),gn("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),gn("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError),gn("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),oo.codes=Gw;var Nd,ag,Bd,lg,Dd,cg,ib=typeof Object.create=="function"?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},Na=Ra(Object.freeze({__proto__:null,default:ib}));function ob(){if(ag)return Nd;function e(t){try{if(!Tn.localStorage)return!1}catch{return!1}var n=Tn.localStorage[t];return n!=null&&String(n).toLowerCase()==="true"}return ag=1,Nd=function(t,n){if(e("noDeprecation"))return t;var r=!1;return function(){if(!r){if(e("throwDeprecation"))throw new Error(n);e("traceDeprecation")?console.trace(n):console.warn(n),r=!0}return t.apply(this,arguments)}},Nd}function Zw(){if(lg)return Bd;function e(W){var C=this;this.next=null,this.entry=null,this.finish=function(){(function(m,_,M){var A=m.entry;for(m.entry=null;A;){var P=A.callback;_.pendingcb--,P(void 0),A=A.next}_.corkedRequestsFree.next=m})(C,W)}}var t;lg=1,Bd=I,I.WritableState=T;var n,r={deprecate:ob()},i=Nw(),o=H0.Buffer,s=(Tn!==void 0?Tn:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},a=qw(),l=Yw().getHighWaterMark,c=oo.codes,u=c.ERR_INVALID_ARG_TYPE,d=c.ERR_METHOD_NOT_IMPLEMENTED,f=c.ERR_MULTIPLE_CALLBACK,p=c.ERR_STREAM_CANNOT_PIPE,g=c.ERR_STREAM_DESTROYED,y=c.ERR_STREAM_NULL_VALUES,S=c.ERR_STREAM_WRITE_AFTER_END,h=c.ERR_UNKNOWN_ENCODING,v=a.errorOrDestroy;function w(){}function T(W,C,m){t=t||ss(),W=W||{},typeof m!="boolean"&&(m=C instanceof t),this.objectMode=!!W.objectMode,m&&(this.objectMode=this.objectMode||!!W.writableObjectMode),this.highWaterMark=l(this,W,"writableHighWaterMark",m),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var _=W.decodeStrings===!1;this.decodeStrings=!_,this.defaultEncoding=W.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(M){(function(A,P){var L=A._writableState,B=L.sync,$=L.writecb;if(typeof $!="function")throw new f;if(function(x){x.writing=!1,x.writecb=null,x.length-=x.writelen,x.writelen=0}(L),P)(function(x,N,O,z,Y){--N.pendingcb,O?($e.nextTick(Y,z),$e.nextTick(q,x,N),x._writableState.errorEmitted=!0,v(x,z)):(Y(z),x._writableState.errorEmitted=!0,v(x,z),q(x,N))})(A,L,B,P,$);else{var k=G(L)||A.destroyed;k||L.corked||L.bufferProcessing||!L.bufferedRequest||H(A,L),B?$e.nextTick(D,A,L,k,$):D(A,L,k,$)}})(C,M)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=W.emitClose!==!1,this.autoDestroy=!!W.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new e(this)}function I(W){var C=this instanceof(t=t||ss());if(!C&&!n.call(I,this))return new I(W);this._writableState=new T(W,this,C),this.writable=!0,W&&(typeof W.write=="function"&&(this._write=W.write),typeof W.writev=="function"&&(this._writev=W.writev),typeof W.destroy=="function"&&(this._destroy=W.destroy),typeof W.final=="function"&&(this._final=W.final)),i.call(this)}function j(W,C,m,_,M,A,P){C.writelen=_,C.writecb=P,C.writing=!0,C.sync=!0,C.destroyed?C.onwrite(new g("write")):m?W._writev(M,C.onwrite):W._write(M,A,C.onwrite),C.sync=!1}function D(W,C,m,_){m||function(M,A){A.length===0&&A.needDrain&&(A.needDrain=!1,M.emit("drain"))}(W,C),C.pendingcb--,_(),q(W,C)}function H(W,C){C.bufferProcessing=!0;var m=C.bufferedRequest;if(W._writev&&m&&m.next){var _=C.bufferedRequestCount,M=new Array(_),A=C.corkedRequestsFree;A.entry=m;for(var P=0,L=!0;m;)M[P]=m,m.isBuf||(L=!1),m=m.next,P+=1;M.allBuffers=L,j(W,C,!0,C.length,M,"",A.finish),C.pendingcb++,C.lastBufferedRequest=null,A.next?(C.corkedRequestsFree=A.next,A.next=null):C.corkedRequestsFree=new e(C),C.bufferedRequestCount=0}else{for(;m;){var B=m.chunk,$=m.encoding,k=m.callback;if(j(W,C,!1,C.objectMode?1:B.length,B,$,k),m=m.next,C.bufferedRequestCount--,C.writing)break}m===null&&(C.lastBufferedRequest=null)}C.bufferedRequest=m,C.bufferProcessing=!1}function G(W){return W.ending&&W.length===0&&W.bufferedRequest===null&&!W.finished&&!W.writing}function K(W,C){W._final(function(m){C.pendingcb--,m&&v(W,m),C.prefinished=!0,W.emit("prefinish"),q(W,C)})}function q(W,C){var m=G(C);if(m&&(function(M,A){A.prefinished||A.finalCalled||(typeof M._final!="function"||A.destroyed?(A.prefinished=!0,M.emit("prefinish")):(A.pendingcb++,A.finalCalled=!0,$e.nextTick(K,M,A)))}(W,C),C.pendingcb===0&&(C.finished=!0,W.emit("finish"),C.autoDestroy))){var _=W._readableState;(!_||_.autoDestroy&&_.endEmitted)&&W.destroy()}return m}return Na(I,i),T.prototype.getBuffer=function(){for(var W=this.bufferedRequest,C=[];W;)C.push(W),W=W.next;return C},function(){try{Object.defineProperty(T.prototype,"buffer",{get:r.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}(),typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(n=Function.prototype[Symbol.hasInstance],Object.defineProperty(I,Symbol.hasInstance,{value:function(W){return!!n.call(this,W)||this===I&&W&&W._writableState instanceof T}})):n=function(W){return W instanceof this},I.prototype.pipe=function(){v(this,new p)},I.prototype.write=function(W,C,m){var _,M=this._writableState,A=!1,P=!M.objectMode&&(_=W,o.isBuffer(_)||_ instanceof s);return P&&!o.isBuffer(W)&&(W=function(L){return o.from(L)}(W)),typeof C=="function"&&(m=C,C=null),P?C="buffer":C||(C=M.defaultEncoding),typeof m!="function"&&(m=w),M.ending?function(L,B){var $=new S;v(L,$),$e.nextTick(B,$)}(this,m):(P||function(L,B,$,k){var x;return $===null?x=new y:typeof $=="string"||B.objectMode||(x=new u("chunk",["string","Buffer"],$)),!x||(v(L,x),$e.nextTick(k,x),!1)}(this,M,W,m))&&(M.pendingcb++,A=function(L,B,$,k,x,N){if(!$){var O=function(Q,te,ie){return Q.objectMode||Q.decodeStrings===!1||typeof te!="string"||(te=o.from(te,ie)),te}(B,k,x);k!==O&&($=!0,x="buffer",k=O)}var z=B.objectMode?1:k.length;B.length+=z;var Y=B.length-1))throw new h(W);return this._writableState.defaultEncoding=W,this},Object.defineProperty(I.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(I.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),I.prototype._write=function(W,C,m){m(new d("_write()"))},I.prototype._writev=null,I.prototype.end=function(W,C,m){var _=this._writableState;return typeof W=="function"?(m=W,W=null,C=null):typeof C=="function"&&(m=C,C=null),W!=null&&this.write(W,C),_.corked&&(_.corked=1,this.uncork()),_.ending||function(M,A,P){A.ending=!0,q(M,A),P&&(A.finished?$e.nextTick(P):M.once("finish",P)),A.ended=!0,M.writable=!1}(this,_,m),this},Object.defineProperty(I.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(I.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(W){this._writableState&&(this._writableState.destroyed=W)}}),I.prototype.destroy=a.destroy,I.prototype._undestroy=a.undestroy,I.prototype._destroy=function(W,C){C(W)},Bd}function ss(){if(cg)return Dd;cg=1;var e=Object.keys||function(c){var u=[];for(var d in c)u.push(d);return u};Dd=s;var t=Qw(),n=Zw();Na(s,t);for(var r=e(n.prototype),i=0;i=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived=55296&&r<=56319)){if(this.charReceived=this.charLength=0,e.length===0)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var r,i=e.length;if(this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,i),i-=this.charReceived),i=(t+=e.toString(this.encoding,0,i)).length-1,(r=t.charCodeAt(i))>=55296&&r<=56319){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),e.copy(this.charBuffer,0,0,o),t.substring(0,i)}return t},Jl.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var n=e[e.length-t];if(t==1&&n>>5==6){this.charLength=2;break}if(t<=2&&n>>4==14){this.charLength=3;break}if(t<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=t},Jl.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.charReceived,r=this.charBuffer,i=this.encoding;t+=r.slice(0,n).toString(i)}return t};var ug=Ra(Object.freeze({__proto__:null,StringDecoder:Jl})),dg=oo.codes.ERR_STREAM_PREMATURE_CLOSE;function ub(){}var Fd,fg,hg,pg,jd,mg,Z0=function e(t,n,r){if(typeof n=="function")return e(t,null,n);n||(n={}),r=function(g){var y=!1;return function(){if(!y){y=!0;for(var S=arguments.length,h=new Array(S),v=0;v0)if(typeof x=="string"||V.objectMode||Object.getPrototypeOf(x)===i.prototype||(x=function(Q){return i.from(Q)}(x)),O)V.endEmitted?v(k,new h):D(k,V,x,!0);else if(V.ended)v(k,new y);else{if(V.destroyed)return!1;V.reading=!1,V.decoder&&!N?(x=V.decoder.write(x),V.objectMode||x.length!==0?D(k,V,x,!1):W(k,V)):D(k,V,x,!1)}else O||(V.reading=!1,W(k,V));return!V.ended&&(V.lengthx.highWaterMark&&(x.highWaterMark=function(N){return N>=H?N=H:(N--,N|=N>>>1,N|=N>>>2,N|=N>>>4,N|=N>>>8,N|=N>>>16,N++),N}(k)),k<=x.length?k:x.ended?x.length:(x.needReadable=!0,0))}function K(k){var x=k._readableState;t("emitReadable",x.needReadable,x.emittedReadable),x.needReadable=!1,x.emittedReadable||(t("emitReadable",x.flowing),x.emittedReadable=!0,$e.nextTick(q,k))}function q(k){var x=k._readableState;t("emitReadable_",x.destroyed,x.length,x.ended),x.destroyed||!x.length&&!x.ended||(k.emit("readable"),x.emittedReadable=!1),x.needReadable=!x.flowing&&!x.ended&&x.length<=x.highWaterMark,A(k)}function W(k,x){x.readingMore||(x.readingMore=!0,$e.nextTick(C,k,x))}function C(k,x){for(;!x.reading&&!x.ended&&(x.length0,x.resumeScheduled&&!x.paused?x.flowing=!0:k.listenerCount("data")>0&&k.resume()}function _(k){t("readable nexttick read 0"),k.read(0)}function M(k,x){t("resume",x.reading),x.reading||k.read(0),x.resumeScheduled=!1,k.emit("resume"),A(k),x.flowing&&!x.reading&&k.read(0)}function A(k){var x=k._readableState;for(t("flow",x.flowing);x.flowing&&k.read()!==null;);}function P(k,x){return x.length===0?null:(x.objectMode?N=x.buffer.shift():!k||k>=x.length?(N=x.decoder?x.buffer.join(""):x.buffer.length===1?x.buffer.first():x.buffer.concat(x.length),x.buffer.clear()):N=x.buffer.consume(k,x.decoder),N);var N}function L(k){var x=k._readableState;t("endReadable",x.endEmitted),x.endEmitted||(x.ended=!0,$e.nextTick(B,x,k))}function B(k,x){if(t("endReadableNT",k.endEmitted,k.length),!k.endEmitted&&k.length===0&&(k.endEmitted=!0,x.readable=!1,x.emit("end"),k.autoDestroy)){var N=x._writableState;(!N||N.autoDestroy&&N.finished)&&x.destroy()}}function $(k,x){for(var N=0,O=k.length;N=x.highWaterMark:x.length>0)||x.ended))return t("read: emitReadable",x.length,x.ended),x.length===0&&x.ended?L(this):K(this),null;if((k=G(k,x))===0&&x.ended)return x.length===0&&L(this),null;var O,z=x.needReadable;return t("need readable",z),(x.length===0||x.length-k0?P(k,x):null)===null?(x.needReadable=x.length<=x.highWaterMark,k=0):(x.length-=k,x.awaitDrain=0),x.length===0&&(x.ended||(x.needReadable=!0),N!==k&&x.ended&&L(this)),O!==null&&this.emit("data",O),O},I.prototype._read=function(k){v(this,new S("_read()"))},I.prototype.pipe=function(k,x){var N=this,O=this._readableState;switch(O.pipesCount){case 0:O.pipes=k;break;case 1:O.pipes=[O.pipes,k];break;default:O.pipes.push(k)}O.pipesCount+=1,t("pipe count=%d opts=%j",O.pipesCount,x);var z=x&&x.end===!1||k===$e.stdout||k===$e.stderr?oe:Y;function Y(){t("onend"),k.end()}O.endEmitted?$e.nextTick(z):N.once("end",z),k.on("unpipe",function le(de,ae){t("onunpipe"),de===N&&ae&&ae.hasUnpiped===!1&&(ae.hasUnpiped=!0,t("cleanup"),k.removeListener("close",ne),k.removeListener("finish",ge),k.removeListener("drain",V),k.removeListener("error",ie),k.removeListener("unpipe",le),N.removeListener("end",Y),N.removeListener("end",oe),N.removeListener("data",te),Q=!0,!O.awaitDrain||k._writableState&&!k._writableState.needDrain||V())});var V=function(le){return function(){var de=le._readableState;t("pipeOnDrain",de.awaitDrain),de.awaitDrain&&de.awaitDrain--,de.awaitDrain===0&&n(le,"data")&&(de.flowing=!0,A(le))}}(N);k.on("drain",V);var Q=!1;function te(le){t("ondata");var de=k.write(le);t("dest.write",de),de===!1&&((O.pipesCount===1&&O.pipes===k||O.pipesCount>1&&$(O.pipes,k)!==-1)&&!Q&&(t("false write response, pause",O.awaitDrain),O.awaitDrain++),N.pause())}function ie(le){t("onerror",le),oe(),k.removeListener("error",ie),n(k,"error")===0&&v(k,le)}function ne(){k.removeListener("finish",ge),oe()}function ge(){t("onfinish"),k.removeListener("close",ne),oe()}function oe(){t("unpipe"),N.unpipe(k)}return N.on("data",te),function(le,de,ae){if(typeof le.prependListener=="function")return le.prependListener(de,ae);le._events&&le._events[de]?Array.isArray(le._events[de])?le._events[de].unshift(ae):le._events[de]=[ae,le._events[de]]:le.on(de,ae)}(k,"error",ie),k.once("close",ne),k.once("finish",ge),k.emit("pipe",N),O.flowing||(t("pipe resume"),N.resume()),k},I.prototype.unpipe=function(k){var x=this._readableState,N={hasUnpiped:!1};if(x.pipesCount===0)return this;if(x.pipesCount===1)return k&&k!==x.pipes||(k||(k=x.pipes),x.pipes=null,x.pipesCount=0,x.flowing=!1,k&&k.emit("unpipe",this,N)),this;if(!k){var O=x.pipes,z=x.pipesCount;x.pipes=null,x.pipesCount=0,x.flowing=!1;for(var Y=0;Y0,O.flowing!==!1&&this.resume()):k==="readable"&&(O.endEmitted||O.readableListening||(O.readableListening=O.needReadable=!0,O.flowing=!1,O.emittedReadable=!1,t("on readable",O.length,O.reading),O.length?K(this):O.reading||$e.nextTick(_,this))),N},I.prototype.addListener=I.prototype.on,I.prototype.removeListener=function(k,x){var N=r.prototype.removeListener.call(this,k,x);return k==="readable"&&$e.nextTick(m,this),N},I.prototype.removeAllListeners=function(k){var x=r.prototype.removeAllListeners.apply(this,arguments);return k!=="readable"&&k!==void 0||$e.nextTick(m,this),x},I.prototype.resume=function(){var k=this._readableState;return k.flowing||(t("resume"),k.flowing=!k.readableListening,function(x,N){N.resumeScheduled||(N.resumeScheduled=!0,$e.nextTick(M,x,N))}(this,k)),k.paused=!1,this},I.prototype.pause=function(){return t("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(t("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},I.prototype.wrap=function(k){var x=this,N=this._readableState,O=!1;for(var z in k.on("end",function(){if(t("wrapped end"),N.decoder&&!N.ended){var V=N.decoder.end();V&&V.length&&x.push(V)}x.push(null)}),k.on("data",function(V){t("wrapped data"),N.decoder&&(V=N.decoder.write(V)),N.objectMode&&V==null||(N.objectMode||V&&V.length)&&(x.push(V)||(O=!0,k.pause()))}),k)this[z]===void 0&&typeof k[z]=="function"&&(this[z]=function(V){return function(){return k[V].apply(k,arguments)}}(z));for(var Y=0;Y0,function(c){r||(r=c),c&&o.forEach(vg),l||(o.forEach(vg),i(r))})});return t.reduce(Eb)};(function(e,t){(t=wh.exports=Qw()).Stream=t,t.Readable=t,t.Writable=Zw(),t.Duplex=ss(),t.Transform=Jw,t.PassThrough=yb,t.finished=Z0,t.pipeline=bb})(0,wh.exports);var Qo=wh.exports,Wc={},Eh={exports:{}},wg=function e(t,n){if(t&&n)return e(t)(n);if(typeof t!="function")throw new TypeError("need wrapper function");return Object.keys(t).forEach(function(i){r[i]=t[i]}),r;function r(){for(var i=new Array(arguments.length),o=0;ot.destroy(n||void 0)),t}ignoreStream(e){if(!e)throw new Error("ObjectMultiplex - name must not be empty");if(this._substreams[e])throw new Error(`ObjectMultiplex - Substream for name "${e}" already exists`);this._substreams[e]=bg}_read(){}_write(e,t,n){const{name:r,data:i}=e;if(!r)return console.warn(`ObjectMultiplex - malformed chunk without name "${e}"`),n();const o=this._substreams[r];return o?(o!==bg&&o.push(i),n()):(console.warn(`ObjectMultiplex - orphaned data for stream "${r}"`),n())}};Wc.ObjectMultiplex=Mb;var Tb=wu(Wc.ObjectMultiplex);const Yn=e=>e!==null&&typeof e=="object"&&typeof e.pipe=="function";Yn.writable=e=>Yn(e)&&e.writable!==!1&&typeof e._write=="function"&&typeof e._writableState=="object",Yn.readable=e=>Yn(e)&&e.readable!==!1&&typeof e._read=="function"&&typeof e._readableState=="object",Yn.duplex=e=>Yn.writable(e)&&Yn.readable(e),Yn.transform=e=>Yn.duplex(e)&&typeof e._transform=="function";var Zn,Pb=Yn,Lb=class extends Z7{constructor(e,{jsonRpcStreamName:t,logger:n=console,maxEventListeners:r=100,rpcMiddleware:i=[]}){if(super({logger:n,maxEventListeners:r,rpcMiddleware:i}),!Pb.duplex(e))throw new Error(nt.errors.invalidDuplexStream());this._handleStreamDisconnect=this._handleStreamDisconnect.bind(this);const o=new Tb;Qo.pipeline(e,o,e,this._handleStreamDisconnect.bind(this,"MetaMask")),this._jsonRpcConnection=function(s={}){const a={},l=new Qo.Duplex({objectMode:!0,read:()=>{},write:function(d,f,p){let g=null;try{d.id?function(y){const{id:S}=y;if(S===null)return;const h=a[S];h?(delete a[S],Object.assign(h.res,y),setTimeout(h.end)):console.warn(`StreamMiddleware - Unknown response id "${S}"`)}(d):function(y){s!=null&&s.retryOnMessage&&y.method===s.retryOnMessage&&Object.values(a).forEach(({req:S,retryCount:h=0})=>{if(!S.id)return;if(h>=3)throw new Error(`StreamMiddleware - Retry limit exceeded for request id "${S.id}"`);const v=a[S.id];v&&(v.retryCount=h+1),u(S)}),c.emit("notification",y)}(d)}catch(y){g=y}p(g)}}),c=new Tw;return{events:c,middleware:(d,f,p,g)=>{a[d.id]={req:d,res:f,next:p,end:g},u(d)},stream:l};function u(d){l.push(d)}}({retryOnMessage:"METAMASK_EXTENSION_CONNECT_CAN_RETRY"}),Qo.pipeline(this._jsonRpcConnection.stream,o.createStream(t),this._jsonRpcConnection.stream,this._handleStreamDisconnect.bind(this,"MetaMask RpcProvider")),this._rpcEngine.push(this._jsonRpcConnection.middleware),this._jsonRpcConnection.events.on("notification",s=>{const{method:a,params:l}=s;a==="metamask_accountsChanged"?this._handleAccountsChanged(l):a==="metamask_unlockStateChanged"?this._handleUnlockStateChanged(l):a==="metamask_chainChanged"?this._handleChainChanged(l):Pw.includes(a)?this.emit("message",{type:a,data:l}):a==="METAMASK_STREAM_FAILURE"&&e.destroy(new Error(nt.errors.permanentlyDisconnected()))})}async _initializeStateAsync(){let e;try{e=await this.request({method:"metamask_getProviderState"})}catch(t){this._log.error("MetaMask: Failed to get initial state. Please report this bug.",t)}this._initializeState(e)}_handleStreamDisconnect(e,t){let n=`MetaMask: Lost connection to "${e}".`;t!=null&&t.stack&&(n+=` +${t.stack}`),this._log.warn(n),this.listenerCount("error")>0&&this.emit("error",n),this._handleDisconnect(!1,t?t.message:void 0)}_handleChainChanged({chainId:e,networkVersion:t}={}){Lw(e)&&(n=>!!n&&typeof n=="string")(t)?t==="loading"?this._handleDisconnect(!0):super._handleChainChanged({chainId:e}):this._log.error(nt.errors.invalidNetworkParams(),{chainId:e,networkVersion:t})}},Ib=class extends Lb{constructor(e,{jsonRpcStreamName:t="metamask-provider",logger:n=console,maxEventListeners:r=100,shouldSendMetadata:i}={}){if(super(e,{jsonRpcStreamName:t,logger:n,maxEventListeners:r,rpcMiddleware:H7(n)}),this._sentWarnings={chainId:!1,networkVersion:!1,selectedAddress:!1,enable:!1,experimentalMethods:!1,send:!1,events:{close:!1,data:!1,networkChanged:!1,notification:!1}},vh(this,Zn,void 0),this._initializeStateAsync(),wr(this,Zn,null),this.isMetaMask=!0,this._sendSync=this._sendSync.bind(this),this.enable=this.enable.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this._warnOfDeprecation=this._warnOfDeprecation.bind(this),this._metamask=this._getExperimentalApi(),this._jsonRpcConnection.events.on("notification",o=>{const{method:s}=o;Pw.includes(s)&&(this.emit("data",o),this.emit("notification",o.params.result))}),i)if(document.readyState==="complete")Jm(this._rpcEngine,this._log);else{const o=()=>{Jm(this._rpcEngine,this._log),window.removeEventListener("DOMContentLoaded",o)};window.addEventListener("DOMContentLoaded",o)}}get chainId(){return this._sentWarnings.chainId||(this._log.warn(nt.warnings.chainIdDeprecation),this._sentWarnings.chainId=!0),super.chainId}get networkVersion(){return this._sentWarnings.networkVersion||(this._log.warn(nt.warnings.networkVersionDeprecation),this._sentWarnings.networkVersion=!0),rr(this,Zn)}get selectedAddress(){return this._sentWarnings.selectedAddress||(this._log.warn(nt.warnings.selectedAddressDeprecation),this._sentWarnings.selectedAddress=!0),super.selectedAddress}sendAsync(e,t){this._rpcRequest(e,t)}addListener(e,t){return this._warnOfDeprecation(e),super.addListener(e,t)}on(e,t){return this._warnOfDeprecation(e),super.on(e,t)}once(e,t){return this._warnOfDeprecation(e),super.once(e,t)}prependListener(e,t){return this._warnOfDeprecation(e),super.prependListener(e,t)}prependOnceListener(e,t){return this._warnOfDeprecation(e),super.prependOnceListener(e,t)}_handleDisconnect(e,t){super._handleDisconnect(e,t),rr(this,Zn)&&!e&&wr(this,Zn,null)}_warnOfDeprecation(e){var t;((t=this._sentWarnings)==null?void 0:t.events[e])===!1&&(this._log.warn(nt.warnings.events[e]),this._sentWarnings.events[e]=!0)}async enable(){return this._sentWarnings.enable||(this._log.warn(nt.warnings.enableDeprecation),this._sentWarnings.enable=!0),new Promise((e,t)=>{try{this._rpcRequest({method:"eth_requestAccounts",params:[]},Ql(e,t))}catch(n){t(n)}})}send(e,t){return this._sentWarnings.send||(this._log.warn(nt.warnings.sendDeprecation),this._sentWarnings.send=!0),typeof e!="string"||t&&!Array.isArray(t)?e&&typeof e=="object"&&typeof t=="function"?this._rpcRequest(e,t):this._sendSync(e):new Promise((n,r)=>{try{this._rpcRequest({method:e,params:t},Ql(n,r,!1))}catch(i){r(i)}})}_sendSync(e){let t;switch(e.method){case"eth_accounts":t=this.selectedAddress?[this.selectedAddress]:[];break;case"eth_coinbase":t=this.selectedAddress??null;break;case"eth_uninstallFilter":this._rpcRequest(e,Iw),t=!0;break;case"net_version":t=rr(this,Zn)??null;break;default:throw new Error(nt.errors.unsupportedSync(e.method))}return{id:e.id,jsonrpc:e.jsonrpc,result:t}}_getExperimentalApi(){return new Proxy({isUnlocked:async()=>(this._state.initialized||await new Promise(e=>{this.on("_initialized",()=>e())}),this._state.isUnlocked),requestBatch:async e=>{if(!Array.isArray(e))throw Ws({message:"Batch requests must be made with an array of request objects.",data:e});return new Promise((t,n)=>{this._rpcRequest(e,Ql(t,n))})}},{get:(e,t,...n)=>(this._sentWarnings.experimentalMethods||(this._log.warn(nt.warnings.experimentalMethods),this._sentWarnings.experimentalMethods=!0),Reflect.get(e,t,...n))})}_handleChainChanged({chainId:e,networkVersion:t}={}){super._handleChainChanged({chainId:e,networkVersion:t}),this._state.isConnected&&t!==rr(this,Zn)&&(wr(this,Zn,t),this._state.initialized&&this.emit("networkChanged",rr(this,Zn)))}};Zn=new WeakMap;const ee=Ut("MM_SDK");ee.color="#FFAC1C";var t5={},wi={};Object.defineProperty(wi,"__esModule",{value:!0}),wi.EthereumProviderError=wi.EthereumRpcError=void 0;const Rb=Sw;class Cg extends Error{constructor(t,n,r){if(!Number.isInteger(t))throw new Error('"code" must be an integer.');if(!n||typeof n!="string")throw new Error('"message" must be a nonempty string.');super(n),this.code=t,r!==void 0&&(this.data=r)}serialize(){const t={code:this.code,message:this.message};return this.data!==void 0&&(t.data=this.data),this.stack&&(t.stack=this.stack),t}toString(){return Rb.default(this.serialize(),Ob,2)}}function Ob(e,t){if(t!=="[Circular]")return t}wi.EthereumRpcError=Cg,wi.EthereumProviderError=class extends Cg{constructor(e,t,n){if(!function(r){return Number.isInteger(r)&&r>=1e3&&r<=4999}(e))throw new Error('"code" must be an integer such that: 1000 <= code <= 4999');super(e,t,n)}};var Q0={},ti={};Object.defineProperty(ti,"__esModule",{value:!0}),ti.errorValues=ti.errorCodes=void 0,ti.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}},ti.errorValues={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.serializeError=e.isValidCode=e.getMessageFromCode=e.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;const t=ti,n=wi,r=t.errorCodes.rpc.internal,i={code:r,message:o(r)};function o(u,d="Unspecified error message. This is a bug, please report it."){if(Number.isInteger(u)){const f=u.toString();if(c(t.errorValues,f))return t.errorValues[f].message;if(a(u))return e.JSON_RPC_SERVER_ERROR_MESSAGE}return d}function s(u){if(!Number.isInteger(u))return!1;const d=u.toString();return!!t.errorValues[d]||!!a(u)}function a(u){return u>=-32099&&u<=-32e3}function l(u){return u&&typeof u=="object"&&!Array.isArray(u)?Object.assign({},u):u}function c(u,d){return Object.prototype.hasOwnProperty.call(u,d)}e.JSON_RPC_SERVER_ERROR_MESSAGE="Unspecified server error.",e.getMessageFromCode=o,e.isValidCode=s,e.serializeError=function(u,{fallbackError:d=i,shouldIncludeStack:f=!1}={}){var p,g;if(!d||!Number.isInteger(d.code)||typeof d.message!="string")throw new Error("Must provide fallback error with integer number code and string message.");if(u instanceof n.EthereumRpcError)return u.serialize();const y={};if(u&&typeof u=="object"&&!Array.isArray(u)&&c(u,"code")&&s(u.code)){const h=u;y.code=h.code,h.message&&typeof h.message=="string"?(y.message=h.message,c(h,"data")&&(y.data=h.data)):(y.message=o(y.code),y.data={originalError:l(u)})}else{y.code=d.code;const h=(p=u)===null||p===void 0?void 0:p.message;y.message=h&&typeof h=="string"?h:d.message,y.data={originalError:l(u)}}const S=(g=u)===null||g===void 0?void 0:g.stack;return f&&u&&S&&typeof S=="string"&&(y.stack=S),y}}(Q0);var Gc={};Object.defineProperty(Gc,"__esModule",{value:!0}),Gc.ethErrors=void 0;const J0=wi,n5=Q0,Tt=ti;function yn(e,t){const[n,r]=r5(t);return new J0.EthereumRpcError(e,n||n5.getMessageFromCode(e),r)}function _s(e,t){const[n,r]=r5(t);return new J0.EthereumProviderError(e,n||n5.getMessageFromCode(e),r)}function r5(e){if(e){if(typeof e=="string")return[e];if(typeof e=="object"&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&typeof t!="string")throw new Error("Must specify string message.");return[t||void 0,n]}}return[]}Gc.ethErrors={rpc:{parse:e=>yn(Tt.errorCodes.rpc.parse,e),invalidRequest:e=>yn(Tt.errorCodes.rpc.invalidRequest,e),invalidParams:e=>yn(Tt.errorCodes.rpc.invalidParams,e),methodNotFound:e=>yn(Tt.errorCodes.rpc.methodNotFound,e),internal:e=>yn(Tt.errorCodes.rpc.internal,e),server:e=>{if(!e||typeof e!="object"||Array.isArray(e))throw new Error("Ethereum RPC Server errors must provide single object argument.");const{code:t}=e;if(!Number.isInteger(t)||t>-32005||t<-32099)throw new Error('"code" must be an integer such that: -32099 <= code <= -32005');return yn(t,e)},invalidInput:e=>yn(Tt.errorCodes.rpc.invalidInput,e),resourceNotFound:e=>yn(Tt.errorCodes.rpc.resourceNotFound,e),resourceUnavailable:e=>yn(Tt.errorCodes.rpc.resourceUnavailable,e),transactionRejected:e=>yn(Tt.errorCodes.rpc.transactionRejected,e),methodNotSupported:e=>yn(Tt.errorCodes.rpc.methodNotSupported,e),limitExceeded:e=>yn(Tt.errorCodes.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>_s(Tt.errorCodes.provider.userRejectedRequest,e),unauthorized:e=>_s(Tt.errorCodes.provider.unauthorized,e),unsupportedMethod:e=>_s(Tt.errorCodes.provider.unsupportedMethod,e),disconnected:e=>_s(Tt.errorCodes.provider.disconnected,e),chainDisconnected:e=>_s(Tt.errorCodes.provider.chainDisconnected,e),custom:e=>{if(!e||typeof e!="object"||Array.isArray(e))throw new Error("Ethereum Provider custom errors must provide single object argument.");const{code:t,message:n,data:r}=e;if(!n||typeof n!="string")throw new Error('"message" must be a nonempty string');return new J0.EthereumProviderError(t,n,r)}}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getMessageFromCode=e.serializeError=e.EthereumProviderError=e.EthereumRpcError=e.ethErrors=e.errorCodes=void 0;const t=wi;Object.defineProperty(e,"EthereumRpcError",{enumerable:!0,get:function(){return t.EthereumRpcError}}),Object.defineProperty(e,"EthereumProviderError",{enumerable:!0,get:function(){return t.EthereumProviderError}});const n=Q0;Object.defineProperty(e,"serializeError",{enumerable:!0,get:function(){return n.serializeError}}),Object.defineProperty(e,"getMessageFromCode",{enumerable:!0,get:function(){return n.getMessageFromCode}});const r=Gc;Object.defineProperty(e,"ethErrors",{enumerable:!0,get:function(){return r.ethErrors}});const i=ti;Object.defineProperty(e,"errorCodes",{enumerable:!0,get:function(){return i.errorCodes}})}(t5);const Ce={METAMASK_GETPROVIDERSTATE:"metamask_getProviderState",METAMASK_CONNECTSIGN:"metamask_connectSign",METAMASK_CONNECTWITH:"metamask_connectWith",METAMASK_OPEN:"metamask_open",METAMASK_BATCH:"metamask_batch",PERSONAL_SIGN:"personal_sign",WALLET_REQUESTPERMISSIONS:"wallet_requestPermissions",WALLET_REVOKEPERMISSIONS:"wallet_revokePermissions",WALLET_GETPERMISSIONS:"wallet_getPermissions",WALLET_WATCHASSET:"wallet_watchAsset",WALLET_ADDETHEREUMCHAIN:"wallet_addEthereumChain",WALLET_SWITCHETHETHEREUMCHAIN:"wallet_switchEthereumChain",ETH_REQUESTACCOUNTS:"eth_requestAccounts",ETH_ACCOUNTS:"eth_accounts",ETH_CHAINID:"eth_chainId",ETH_SENDTRANSACTION:"eth_sendTransaction",ETH_SIGNTYPEDDATA:"eth_signTypedData",ETH_SIGNTYPEDDATA_V3:"eth_signTypedData_v3",ETH_SIGNTYPEDDATA_V4:"eth_signTypedData_v4",ETH_SIGNTRANSACTION:"eth_signTransaction",ETH_SIGN:"eth_sign",PERSONAL_EC_RECOVER:"personal_ecRecover"},Yc={[Ce.ETH_REQUESTACCOUNTS]:!0,[Ce.ETH_SENDTRANSACTION]:!0,[Ce.ETH_SIGNTRANSACTION]:!0,[Ce.ETH_SIGN]:!0,[Ce.PERSONAL_SIGN]:!0,[Ce.ETH_ACCOUNTS]:!1,[Ce.ETH_CHAINID]:!1,[Ce.PERSONAL_SIGN]:!0,[Ce.ETH_SIGNTYPEDDATA]:!0,[Ce.ETH_SIGNTYPEDDATA_V3]:!0,[Ce.ETH_SIGNTYPEDDATA_V4]:!0,[Ce.WALLET_REQUESTPERMISSIONS]:!0,[Ce.WALLET_GETPERMISSIONS]:!0,[Ce.WALLET_WATCHASSET]:!0,[Ce.WALLET_ADDETHEREUMCHAIN]:!0,[Ce.WALLET_SWITCHETHETHEREUMCHAIN]:!0,[Ce.METAMASK_CONNECTSIGN]:!0,[Ce.METAMASK_CONNECTWITH]:!0,[Ce.PERSONAL_EC_RECOVER]:!0,[Ce.METAMASK_BATCH]:!0,[Ce.METAMASK_OPEN]:!0},$b=Object.keys(Yc).map(e=>e.toLowerCase()),i5=["eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sign"].map(e=>e.toLowerCase()),Hd=".sdk-comm",Zc="providerType",bh=".MMSDK_cached_address",Ch=".MMSDK_cached_chainId",Sg="chainChanged",_g="accountsChanged",kg="disconnect",xg="connect",Ag="connected";class Nb{constructor({enabled:t}={enabled:!1}){this.enabled=!1,this.enabled=t}persistChannelConfig(t){return ce(this,void 0,void 0,function*(){const n=JSON.stringify(t);ee(`[StorageManagerWeb: persistChannelConfig()] enabled=${this.enabled}`,t),localStorage.setItem(Hd,n)})}getPersistedChannelConfig(){return ce(this,void 0,void 0,function*(){let t;try{if(ee(`[StorageManagerWeb: getPersistedChannelConfig()] enabled=${this.enabled}`),t=localStorage.getItem(Hd),ee("[StorageManagerWeb: getPersistedChannelConfig()]",t),!t)return;const n=JSON.parse(t);return ee("[StorageManagerWeb: getPersistedChannelConfig()] channelConfig",n),n}catch(n){return void console.error("[StorageManagerWeb: getPersistedChannelConfig()] Can't find existing channel config",n)}})}persistAccounts(t){return ce(this,void 0,void 0,function*(){ee(`[StorageManagerWeb: persistAccounts()] enabled=${this.enabled}`,t);const n=JSON.stringify(t);localStorage.setItem(bh,n)})}getCachedAccounts(){return ce(this,void 0,void 0,function*(){try{const t=localStorage.getItem(bh);return t?JSON.parse(t):[]}catch(t){throw console.error("[StorageManagerWeb: getCachedAccounts()] Error reading cached accounts",t),t}})}persistChainId(t){return ce(this,void 0,void 0,function*(){ee(`[StorageManagerWeb: persistChainId()] enabled=${this.enabled}`,t),localStorage.setItem(Ch,t)})}getCachedChainId(){return ce(this,void 0,void 0,function*(){try{const t=localStorage.getItem(Ch);return t??void 0}catch(t){throw console.error("[StorageManagerWeb: getCachedChainId()] Error reading cached chainId",t),t}})}terminate(){return ce(this,void 0,void 0,function*(){ee(`[StorageManagerWeb: terminate()] enabled=${this.enabled}`),localStorage.removeItem(Hd)})}}const o5=e=>new Nb(e);class Bb extends Ib{constructor({connectionStream:t,shouldSendMetadata:n,autoRequestAccounts:r=!1}){super(t,{logger:console,maxEventListeners:100,shouldSendMetadata:n}),this.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:"",networkVersion:""},ee(`[SDKProvider: constructor()] autoRequestAccounts=${r}`),this.state.autoRequestAccounts=r}forceInitializeState(){return ce(this,void 0,void 0,function*(){return ee(`[SDKProvider: forceInitializeState()] autoRequestAccounts=${this.state.autoRequestAccounts}`),this._initializeStateAsync()})}_setConnected(){ee("[SDKProvider: _setConnected()] Setting connected state"),this._state.isConnected=!0}getState(){return this._state}getSDKProviderState(){return this.state}getSelectedAddress(){var t;const{accounts:n}=this._state;return n&&n.length!==0?((t=n[0])===null||t===void 0?void 0:t.toLowerCase())||"":(ee("[SDKProvider: getSelectedAddress] No accounts found"),null)}getChainId(){return this.state.chainId}getNetworkVersion(){return this.state.networkVersion}setSDKProviderState(t){this.state=Object.assign(Object.assign({},this.state),t)}handleAccountsChanged(t,n){return this._handleAccountsChanged(t,n)}handleDisconnect({terminate:t=!1}){(function({terminate:n=!1,instance:r}){const{state:i}=r;ee(`[SDKProvider: handleDisconnect()] cleaning up provider state terminate=${n}`,r),n&&(r._state.accounts=null,r._state.isUnlocked=!1,r._state.isPermanentlyDisconnected=!0,r._state.initialized=!1),r._handleAccountsChanged([]),r._state.isConnected=!1,r.emit("disconnect",t5.ethErrors.provider.disconnected()),i.providerStateRequested=!1})({terminate:t,instance:this})}_initializeStateAsync(){return ce(this,void 0,void 0,function*(){return function(t){var n,r;return ce(this,void 0,void 0,function*(){t.state===void 0&&(t.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:""});const{state:i}=t;let o;if(i.providerStateRequested)ee("[SDKProvider: initializeStateAsync()] initialization already in progress");else{let s;i.providerStateRequested=!0;let a=null,l=!1,c=!1;const u=o5({enabled:!0});if(u){const d=yield u.getPersistedChannelConfig({});l=(n=d==null?void 0:d.relayPersistence)!==null&&n!==void 0&&n,s=yield u.getCachedChainId();const f=yield u.getCachedAccounts();f.length>0&&(a=f[0])}if(ee(`[SDKProvider: initializeStateAsync()] relayPersistence=${l}`,{relayPersistence:l,cachedChainId:s,cachedSelectedAddress:a}),l)if(s&&a)o={accounts:[a],chainId:s,isUnlocked:!1},c=!0;else try{o=yield t.request({method:"metamask_getProviderState"})}catch(d){return t._log.error("MetaMask: Failed to get initial state. Please report this bug.",d),void(i.providerStateRequested=!1)}if(((r=o==null?void 0:o.accounts)===null||r===void 0?void 0:r.length)===0)if(t.getSelectedAddress())o.accounts=[t.getSelectedAddress()];else{ee("[SDKProvider: initializeStateAsync()] Fetch accounts remotely.");const d=yield t.request({method:"eth_requestAccounts",params:[]});o.accounts=d}t._initializeState(o),i.providerStateRequested=!1,c&&(t._state.isConnected=!0,t.emit("connect",{chainId:o==null?void 0:o.chainId}))}})}(this)})}_initializeState(t){return ee("[SDKProvider: _initializeState()]",t),function(n,r,i){return ee("[SDKProvider: initializeState()] set state._initialized to false"),n._state.initialized=!1,r(i)}(this,super._initializeState.bind(this),t)}_handleChainChanged({chainId:t,networkVersion:n}={}){this.state.chainId=t,this.state.networkVersion=n,function({instance:r,chainId:i,networkVersion:o,superHandleChainChanged:s}){ee(`[SDKProvider: handleChainChanged()] chainId=${i} networkVersion=${o}`);let a=o;o||(ee("[SDKProvider: handleChainChanged()] forced network version to prevent provider error"),a="1"),r._state.isConnected=!0,r.emit("connect",{chainId:i}),s({chainId:i,networkVersion:a})}({instance:this,chainId:t,networkVersion:n,superHandleChainChanged:super._handleChainChanged.bind(this)})}}var xa,so={name:"@metamask/sdk",version:"0.31.4",description:"",homepage:"https://github.com/MetaMask/metamask-sdk#readme",bugs:{url:"https://github.com/MetaMask/metamask-sdk/issues"},repository:{type:"git",url:"https://github.com/MetaMask/metamask-sdk",directory:"packages/sdk"},main:"dist/node/cjs/metamask-sdk.js",module:"dist/browser/es/metamask-sdk.js",browser:"dist/browser/es/metamask-sdk.js",unpkg:"dist/browser/umd/metamask-sdk.js","react-native":"dist/react-native/es/metamask-sdk.js",types:"dist/types/src/index.d.ts",sideEffects:!1,files:["/dist"],scripts:{"build:types":"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types",build:"yarn build:types && rollup -c --bundleConfigAsCjs","build:clean":"yarn clean && yarn build","build:dev":"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs","build:post-tsc":"echo 'N/A'","build:pre-tsc":"echo 'N/A'",typecheck:"tsc --noEmit",clean:"rimraf ./dist",size:"node bundle-size && size-limit",lint:"yarn lint:eslint && yarn lint:misc --check","lint:changelog":"../../scripts/validate-changelog.sh @metamask/sdk","lint:eslint":"eslint . --cache --ext js,ts","lint:fix":"yarn lint:eslint --fix && yarn lint:misc --write","lint:misc":"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore",prepack:"../../scripts/prepack.sh","publish:preview":"yarn npm publish --tag preview",reset:"yarn clean && rimraf ./node_modules/",test:'jest --testPathIgnorePatterns "/e2e/"',"test:coverage":'jest --coverage --testPathIgnorePatterns "/e2e/"',"test:e2e":'jest --testPathPattern "/e2e/"',"test:ci":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns "/e2e/"',"test:dev":'jest -c ./jest.config.ts --detectOpenHandles --testPathIgnorePatterns "/e2e/"',watch:"rollup -c -w"},dependencies:{"@babel/runtime":"^7.26.0","@metamask/onboarding":"^1.0.1","@metamask/providers":"16.1.0","@metamask/sdk-communication-layer":"workspace:*","@metamask/sdk-install-modal-web":"workspace:*","@paulmillr/qr":"^0.2.1",bowser:"^2.9.0","cross-fetch":"^4.0.0",debug:"^4.3.4",eciesjs:"^0.4.11","eth-rpc-errors":"^4.0.3",eventemitter2:"^6.4.9","obj-multiplex":"^1.0.0",pump:"^3.0.0","readable-stream":"^3.6.2","socket.io-client":"^4.5.1",tslib:"^2.6.0",util:"^0.12.4",uuid:"^8.3.2"},devDependencies:{"@jest/globals":"^29.3.1","@lavamoat/allow-scripts":"^2.3.1","@metamask/auto-changelog":"3.1.0","@metamask/eslint-config":"^6.0.0","@metamask/eslint-config-nodejs":"^6.0.0","@metamask/eslint-config-typescript":"^6.0.0","@react-native-async-storage/async-storage":"^1.19.6","@rollup/plugin-alias":"^5.1.1","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-replace":"^6.0.1","@rollup/plugin-terser":"^0.4.1","@size-limit/preset-big-lib":"^11.0.2","@types/dom-screen-wake-lock":"^1.0.2","@types/node":"^20.1.3","@types/pump":"^1.1.1","@types/qrcode-terminal":"^0.12.0","@types/uuid":"^10.0.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","browserify-zlib":"^0.2.0",buffer:"^6.0.3","crypto-browserify":"^3.12.0",eslint:"^7.30.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.23.4","eslint-plugin-jest":"^24.4.0","eslint-plugin-jsdoc":"^36.1.0","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","https-browserify":"^1.0.0",jest:"^29.3.1","jest-environment-jsdom":"^29.3.1",prettier:"^2.3.0",process:"^0.11.10",rimraf:"^4.4.0",rollup:"^4.26.0","rollup-plugin-analyzer":"^4.0.0","rollup-plugin-jscc":"^2.0.0","rollup-plugin-natives":"^0.7.5","rollup-plugin-node-builtins":"^2.1.2","rollup-plugin-polyfill-node":"^0.13.0","rollup-plugin-sizes":"^1.0.6","rollup-plugin-typescript2":"^0.31.2","rollup-plugin-visualizer":"^5.12.0","size-limit":"^11.0.2","stream-browserify":"^3.0.0","stream-http":"^3.2.0","ts-jest":"^29.0.3","ts-node":"^10.9.1",typescript:"^4.3.2",url:"^0.11.0",webpack:"^5.0.0"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},lavamoat:{allowScripts:{"eciesjs>secp256k1":!1,"socket.io-client>engine.io-client>ws>bufferutil":!1,"socket.io-client>engine.io-client>ws>utf-8-validate":!1,"@metamask/sdk-communication-layer>bufferutil":!1,"@metamask/sdk-communication-layer>eciesjs>secp256k1":!1,"@metamask/sdk-communication-layer>utf-8-validate":!1}}};(function(e){e.INPAGE="metamask-inpage",e.CONTENT_SCRIPT="metamask-contentscript",e.PROVIDER="metamask-provider"})(xa||(xa={}));const Mg="direct",Qs="https://metamask.app.link/connect",Js="metamask://connect",Tg={NAME:"MetaMask",RDNS:"io.metamask"},Db=/(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u,cn={Initialized:"initialized",DisplayURI:"display_uri",ProviderUpdate:"provider_update",ConnectWithResponse:"connectWithResponse",ConnectionStatus:"connection_status",ServiceStatus:"service_status"};var Wn;(function(e){e.TERMINATE="terminate",e.EXTENSION="extension",e.INITIALIZED="initialized"})(Wn||(Wn={}));const Fb=typeof window<"u"&&window.localStorage;function Pg(e){var t,n;return ce(this,void 0,void 0,function*(){ee("[MetaMaskSDK: connectWithExtensionProvider()] ",e),e.sdkProvider=e.activeProvider,e.activeProvider=window.extension,window.ethereum=window.extension;try{const r=yield(t=window.extension)===null||t===void 0?void 0:t.request({method:"eth_requestAccounts"});ee(`[MetaMaskSDK: connectWithExtensionProvider()] accounts=${r}`)}catch(r){return void console.warn("[MetaMaskSDK: connectWithExtensionProvider()] can't request accounts error",r)}localStorage.setItem(Zc,"extension"),e.extensionActive=!0,e.emit(cn.ProviderUpdate,Wn.EXTENSION),e.options.enableAnalytics&&((n=e.analytics)===null||n===void 0||n.send({event:it.SDK_USE_EXTENSION}))})}function Qc(e){let t;if(re!==void 0)t=re.from(e,"utf8").toString("base64");else if(typeof btoa=="function")t=btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/gu,(n,r)=>String.fromCharCode(parseInt(r,16))));else{if(typeof Ht!="object"||!("Buffer"in Ht))throw new Error("Unable to base64 encode: No available method.");t=Ht.Buffer.from(e,"utf8").toString("base64")}return t}class zn{constructor({shouldSetOnWindow:t,connectionStream:n,shouldSendMetadata:r=!1,shouldShimWeb3:i,sdkInstance:o}){const s=new Bb({connectionStream:n,shouldSendMetadata:r,shouldSetOnWindow:t,shouldShimWeb3:i,autoRequestAccounts:!1}),a=new Proxy(s,{deleteProperty:()=>!0});if(this.provider=a,this.sdkInstance=o,t&&typeof window<"u")try{l=s,window.ethereum=l,window.dispatchEvent(new Event("ethereum#initialized"))}catch(c){ee("[Ethereum] Unable to set global provider - window.ethereum may be read-only",c)}var l;if(i&&typeof window<"u")try{(function(c,u=console){let d=!1,f=!1;if(!window.web3){const p="__isMetaMaskShim__";let g={currentProvider:c};Object.defineProperty(g,p,{value:!0,enumerable:!0,configurable:!1,writable:!1}),g=new Proxy(g,{get:(y,S,...h)=>(S!=="currentProvider"||d?S==="currentProvider"||S===p||f||(f=!0,u.error("MetaMask no longer injects web3. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3"),c.request({method:"metamask_logWeb3ShimUsage"}).catch(v=>{u.debug("MetaMask: Failed to log web3 shim usage.",v)})):(d=!0,u.warn("You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3")),Reflect.get(y,S,...h)),set:(...y)=>(u.warn("You are accessing the MetaMask window.web3 shim. This object is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3"),Reflect.set(...y))}),Object.defineProperty(window,"web3",{value:g,enumerable:!1,configurable:!0,writable:!0})}})(this.provider)}catch(c){ee("[Ethereum] Unable to shim web3 - window.web3 may be read-only",c)}this.provider.on("display_uri",c=>{this.sdkInstance.emit(cn.DisplayURI,c)}),this.provider.on("_initialized",()=>{const c={chainId:this.provider.getChainId(),isConnected:this.provider.isConnected(),isMetaMask:this.provider.isMetaMask,selectedAddress:this.provider.getSelectedAddress(),networkVersion:this.provider.getNetworkVersion()};this.sdkInstance.emit(cn.Initialized,c),ee("[Ethereum: constructor()] provider initialized",c)})}static init(t){var n;return ee("[Ethereum: init()] Initializing Ethereum service"),this.instance=new zn(t),(n=this.instance)===null||n===void 0?void 0:n.provider}static destroy(){}static getInstance(){var t;if(!(!((t=this.instance)===null||t===void 0)&&t.provider))throw new Error("Ethereum instance not intiialized - call Ethereum.factory first.");return this.instance}static getProvider(){var t;if(!(!((t=this.instance)===null||t===void 0)&&t.provider))throw new Error("Ethereum instance not intiialized - call Ethereum.factory first.");return this.instance.provider}}class jb extends Qo.Duplex{constructor({name:t,remote:n,deeplinkProtocol:r,platformManager:i}){super({objectMode:!0}),this.state={_name:null,remote:null,deeplinkProtocol:!1,platformManager:null},this.state._name=t,this.state.remote=n,this.state.deeplinkProtocol=r,this.state.platformManager=i,this._onMessage=this._onMessage.bind(this),this.state.remote.on(ue.MESSAGE,this._onMessage)}_write(t,n,r){return ce(this,void 0,void 0,function*(){return function(i,o,s,a){var l,c,u,d,f,p,g,y,S,h,v,w,T,I,j,D,H,G,K,q;return ce(this,void 0,void 0,function*(){const W=(l=i.state.remote)===null||l===void 0?void 0:l.isReady(),C=(c=i.state.remote)===null||c===void 0?void 0:c.isConnected(),m=(u=i.state.remote)===null||u===void 0?void 0:u.isPaused(),_=zn.getProvider(),M=(d=i.state.remote)===null||d===void 0?void 0:d.getChannelId(),A=(f=i.state.remote)===null||f===void 0?void 0:f.isAuthorized(),{deeplinkProtocol:P}=i.state,{method:L,data:B,triggeredInstaller:$}=(O=>{var z,Y,V,Q;let te;re.isBuffer(O)?(te=O.toJSON(),te._isBuffer=!0):te=O;const ie=(z=te==null?void 0:te.data)===null||z===void 0?void 0:z.method;let ne=!1;return typeof((Y=te==null?void 0:te.data)===null||Y===void 0?void 0:Y.params)=="object"&&((Q=(V=te==null?void 0:te.data)===null||V===void 0?void 0:V.params)===null||Q===void 0?void 0:Q.__triggeredInstaller)===!0&&(ne=!0,te.data.params=te.data.params.wrappedParams),{method:ie,data:te,triggeredInstaller:ne}})(o);if(ee(`[RCPMS: write()] method='${L}' isRemoteReady=${W} channelId=${M} isSocketConnected=${C} isRemotePaused=${m} providerConnected=${_.isConnected()}`,o),!M)return L!==Ce.METAMASK_GETPROVIDERSTATE&&ee(`[RCPMS: write()] ${L} --> channelId is undefined`),a(new Error("disconnected"));ee(`[RCPMS: write()] remote.isPaused()=${(p=i.state.remote)===null||p===void 0?void 0:p.isPaused()} authorized=${A} ready=${W} socketConnected=${C}`,o);const k=(g=i.state.platformManager)===null||g===void 0?void 0:g.isSecure(),x=(S=(y=i.state.platformManager)===null||y===void 0?void 0:y.isMobileWeb())!==null&&S!==void 0&&S,N=(v=(h=i.state.remote)===null||h===void 0?void 0:h.hasDeeplinkProtocol())!==null&&v!==void 0&&v&&x&&A;try{if(console.warn(`[RCPMS: _write()] triggeredInstaller=${$} activeDeeplinkProtocol=${N}`),$||(w=i.state.remote)===null||w===void 0||w.sendMessage(B==null?void 0:B.data).then(()=>{ee(`[RCPMS: _write()] ${L} sent successfully`)}).catch(Y=>{ee("[RCPMS: _write()] error sending message",Y)}),!k)return ee(`[RCPMS: _write()] unsecure platform for method ${L} -- return callback`),a();if($)return ee("[RCPMS: _write()] prevent deeplink -- installation completed separately."),a();const O=(j=(I=(T=i.state.remote)===null||T===void 0?void 0:T.getKeyInfo())===null||I===void 0?void 0:I.ecies.public)!==null&&j!==void 0?j:"";let z=encodeURI(`channelId=${M}&pubkey=${O}&comm=socket&t=d&v=2`);if(N){const Y=JSON.stringify(B==null?void 0:B.data),V=(D=i.state.remote)===null||D===void 0?void 0:D.encrypt(Y);if(!V)return ee("[RCPMS: _write()] error encrypting message"),a(new Error("RemoteCommunicationPostMessageStream - disconnected"));z+=`&scheme=${P}&rpc=${Qc(V)}`}if(!(!((H=i.state.platformManager)===null||H===void 0)&&H.isMetaMaskInstalled()))return ee("[RCPMS: _write()] prevent deeplink until installation is completed."),a();Yc[L]?(ee(`[RCPMS: _write()] redirect link for '${L}' socketConnected=${C} connect?${z}`),(G=i.state.platformManager)===null||G===void 0||G.openDeeplink(`${Qs}?${z}`,`${Js}?${z}`,"_self")):!((K=i.state.remote)===null||K===void 0)&&K.isPaused()?(ee(`[RCPMS: _write()] MM is PAUSED! deeplink with connect! targetMethod=${L}`),(q=i.state.platformManager)===null||q===void 0||q.openDeeplink(`${Qs}?redirect=true&${z}`,`${Js}?redirect=true&${z}`,"_self")):ee(`[RCPMS: _write()] method ${L} doesn't need redirect.`)}catch(O){return ee("[RCPMS: _write()] error sending message",O),a(new Error("RemoteCommunicationPostMessageStream - disconnected"))}return a()})}(this,t,0,r)})}_read(){}_onMessage(t){return function(n,r){try{if(ee("[RCPMS: onMessage()] message",r),!r||typeof r!="object"||typeof(r==null?void 0:r.data)!="object")return;if(!(r!=null&&r.name))return void ee("[RCPMS: onMessage()] ignore message without name",r);if((r==null?void 0:r.name)!==xa.PROVIDER)return void ee(`[RCPMS: onMessage()] ignore message with wrong name message=${r}`);if(re.isBuffer(r)){const i=re.from(r);n.push(i)}else n.push(r)}catch(i){ee(`[RCPMS: onMessage()] ignore message error err=${i}`)}}(this,t)}start(){}}let Lg=1;const s5=e=>new Promise(t=>{setTimeout(()=>{t(!0)},e)}),Ub=({checkInstallationOnAllCalls:e=!1,communicationLayerPreference:t,injectProvider:n,shouldShimWeb3:r,platformManager:i,installer:o,sdk:s,remoteConnection:a,debug:l})=>ce(void 0,void 0,void 0,function*(){var c,u;const d=(({name:K,remoteConnection:q})=>{if(!q||!(q!=null&&q.getConnector()))throw new Error("Missing remote connection parameter");return new jb({name:K,remote:q==null?void 0:q.getConnector(),deeplinkProtocol:q==null?void 0:q.state.deeplinkProtocol,platformManager:q==null?void 0:q.getPlatformManager()})})({name:xa.INPAGE,target:xa.CONTENT_SCRIPT,platformManager:i,communicationLayerPreference:t,remoteConnection:a}),f=i.getPlatformType(),p=s.options.dappMetadata,g=`Sdk/Javascript SdkVersion/${so.version} Platform/${f} dApp/${(c=p.url)!==null&&c!==void 0?c:p.name} dAppTitle/${p.name}`;let y=null,S=null;const h=(u=s.options.storage)===null||u===void 0?void 0:u.storageManager;if(h){try{const K=yield h.getCachedAccounts();K.length>0&&(y=K[0])}catch(K){console.error(`[initializeMobileProvider] failed to get cached addresses: ${K}`)}try{const K=yield h.getCachedChainId();K&&(S=K)}catch(K){console.error(`[initializeMobileProvider] failed to parse cached chainId: ${K}`)}}ee(`[initializeMobileProvider] cachedAccountAddress: ${y}, cachedChainId: ${S}`);const v=!(!n||f===Rt.NonBrowser||f===Rt.ReactNative),w=zn.init({shouldSetOnWindow:v,connectionStream:d,shouldShimWeb3:r,sdkInstance:s});let T=!1;const I=K=>{T=K},j=()=>T,D=(K,q,W,C)=>ce(void 0,void 0,void 0,function*(){var m,_,M,A,P,L,B,$,k;const x=zn.getProvider();if(T){x.emit("display_uri",(a==null?void 0:a.state.qrcodeLink)||""),a==null||a.showActiveModal();let ne=j();for(;ne;){const ge=j(),oe=a==null?void 0:a.isAuthorized();ne=ge&&!oe,ee(`[initializeMobileProvider: sendRequest()] waiting for initialization to complete - initializing: ${ge} authorized: ${oe}`),yield s5(1e3)}return ee("[initializeMobileProvider: sendRequest()] initial method completed -- prevent installation and call provider"),W(...q)}const N=i.isMetaMaskInstalled(),O=a==null?void 0:a.isConnected();let z=null,Y=null,V=null;if(z=(m=x.getSelectedAddress())!==null&&m!==void 0?m:y,V=x.getChainId()||S,z&&h&&z!==y&&h.persistAccounts([z]).catch(ne=>{console.error(`[initializeMobileProvider] failed to persist account: ${ne}`)}),V&&(S=V,h&&h.persistChainId(V).catch(ne=>{console.error(`[initializeMobileProvider] failed to persist chainId: ${ne}`)})),ee("[initializeMobileProvider: sendRequest()]",{selectedAddress:z,chainId:V}),C&&ee(`[initializeMobileProvider: sendRequest()] method=${K} ongoing=${T} selectedAddress=${z} isInstalled=${N} checkInstallationOnAllCalls=${e} socketConnected=${O}`),z&&K.toLowerCase()===Ce.ETH_ACCOUNTS.toLowerCase())return[z];if(V&&K.toLowerCase()===Ce.ETH_CHAINID.toLowerCase())return V;const Q=[Ce.ETH_REQUESTACCOUNTS,Ce.WALLET_REQUESTPERMISSIONS,Ce.METAMASK_CONNECTSIGN,Ce.METAMASK_CONNECTWITH],te=!Yc[K],ie=(_=s.options.readonlyRPCMap)===null||_===void 0?void 0:_[V];if(ie&&te)try{const ne=(M=q==null?void 0:q[0])===null||M===void 0?void 0:M.params,ge=yield(({rpcEndpoint:oe,method:le,sdkInfo:de,params:ae})=>ce(void 0,void 0,void 0,function*(){const he=JSON.stringify({jsonrpc:"2.0",method:le,params:ae,id:(Lg+=1,Lg)}),me={Accept:"application/json","Content-Type":"application/json"};let be;oe.includes("infura")&&(me["Metamask-Sdk-Info"]=de);try{be=yield bv(oe,{method:"POST",headers:me,body:he})}catch(Ee){throw Ee instanceof Error?new Error(`Failed to fetch from RPC: ${Ee.message}`):new Error(`Failed to fetch from RPC: ${Ee}`)}if(!be.ok)throw new Error(`Server responded with a status of ${be.status}`);return(yield be.json()).result}))({rpcEndpoint:ie,sdkInfo:g,method:K,params:ne||[]});return C&&ee(`initializeProvider::ReadOnlyRPCResponse ${ge}`),ge}catch(ne){console.warn(`[initializeMobileProvider: sendRequest()] method=${K} readOnlyRPCRequest failed:`,ne)}if((!N||N&&!O)&&K!==Ce.METAMASK_GETPROVIDERSTATE){const ne=((A=q==null?void 0:q[0])===null||A===void 0?void 0:A.params)||[];if(Q.indexOf(K)!==-1||e){I(!0);const ge=K===Ce.METAMASK_CONNECTWITH,oe=`${Date.now()}`;try{yield o.start({wait:!1,connectWith:ge?{method:K,id:oe,params:ne}:void 0}),yield new Promise((le,de)=>{a!=null&&a.isAuthorized()&&(ee("[initializeMobileProvider: sendRequest()] already authorized"),le(!0)),a==null||a.getConnector().once(ue.AUTHORIZED,()=>{le(!0)}),s.once(ue.PROVIDER_UPDATE,ae=>{ee(`[initializeMobileProvider: sendRequest()] PROVIDER_UPDATE --- remote provider request interupted type=${ae}`),ae===Wn.EXTENSION?de(ue.PROVIDER_UPDATE):de(new Error("Connection Terminated"))})})}catch(le){if(Wn.EXTENSION===le){if(ee(`[initializeMobileProvider: sendRequest()] extension provider detect: re-create ${K} on the active provider`),K.toLowerCase()===Ce.METAMASK_CONNECTSIGN.toLowerCase()){const de=yield(P=s.getProvider())===null||P===void 0?void 0:P.request({method:Ce.ETH_REQUESTACCOUNTS,params:[]});if(!de.length)throw new Error("SDK state invalid -- undefined accounts");const ae=yield(L=s.getProvider())===null||L===void 0?void 0:L.request({method:Ce.PERSONAL_SIGN,params:[ne[0],de[0]]});return s.emit(cn.ConnectWithResponse,ae),ae}if(K.toLowerCase()===Ce.METAMASK_CONNECTWITH.toLowerCase()){const[de]=ne,ae=yield(({method:he,sdk:me,params:be})=>ce(void 0,void 0,void 0,function*(){var Ee,ye,Se,_e;if(!me.isExtensionActive())throw new Error("SDK state invalid -- extension is not active");ee("[MetaMaskProvider: extensionConnectWithOverwrite()] Overwriting request method",he,be);const Le=yield(Ee=me.getProvider())===null||Ee===void 0?void 0:Ee.request({method:Ce.ETH_REQUESTACCOUNTS,params:[]});if(!Le.length)throw new Error("SDK state invalid -- undefined accounts");if((he==null?void 0:he.toLowerCase())===Ce.PERSONAL_SIGN.toLowerCase()){const gt={method:he,params:[be[0],Le[0]]};return yield(ye=me.getProvider())===null||ye===void 0?void 0:ye.request(gt)}if((he==null?void 0:he.toLowerCase())===Ce.ETH_SENDTRANSACTION.toLowerCase()){const gt={method:he,params:[Object.assign(Object.assign({},be[0]),{from:Le[0]})]};return yield(Se=me.getProvider())===null||Se===void 0?void 0:Se.request(gt)}return i5.includes(he.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${he} -- not handled by the extension -- call separately`),Le):yield(_e=me.getProvider())===null||_e===void 0?void 0:_e.request({method:he,params:be})}))({method:de.method,sdk:s,params:de.params});return s.emit(cn.ConnectWithResponse,ae),ae}return ee(`[initializeMobileProvider: sendRequest()] sending '${K}' on active provider`,ne),yield(B=s.getProvider())===null||B===void 0?void 0:B.request({method:K,params:ne})}throw le===ue.REJECTED?(a==null||a.closeModal(),($=s.getProvider())===null||$===void 0||$.handleDisconnect({terminate:!1}),Object.assign(new Error("User rejected connection"),{code:4001})):(ee(`[initializeMobileProvider: sendRequest()] failed to start installer: ${le}`),le)}finally{I(!1)}if(K===Ce.ETH_REQUESTACCOUNTS)return Y=yield new Promise(le=>{const de=setInterval(()=>{const{accounts:ae}=x.getState();ae&&(clearInterval(de),le(ae))},100)}),ee(`[initializeMobileProvider: sendRequest()] selectedAddress: ${z} --- SKIP rpc call`),Y;if(K===Ce.METAMASK_CONNECTWITH)try{let le=0;const de=5,ae=({resolve:Ee,reject:ye})=>{le+=1;const Se=a==null?void 0:a.getConnector().getRPCMethodTracker(),_e=Se==null?void 0:Se[oe];return ee(`TRACKER: update method ${oe}`,_e),_e!=null&&_e.result?(ee("[initializeMobileProvider: sendRequest()] found result",_e.result),s.emit(cn.ConnectWithResponse,_e.result),void Ee(_e.result)):_e!=null&&_e.error?(ee("[initializeMobileProvider: sendRequest()] found error",_e.error),void ye(_e.error)):le>=de?(ee("[initializeMobileProvider: sendRequest()] max message count reached without result"),void ye(new Error("Max message count reached without result"))):void ee("[initializeMobileProvider: sendRequest()] not found yet, need to wait for next update")};let he,me;const be=yield new Promise((Ee,ye)=>{const Se=a==null?void 0:a.getConnector().getRPCMethodTracker();ee(`TRACKER: method ${oe}`,Se),Se!=null&&Se[oe].result?(ee("[initializeMobileProvider: sendRequest()] found result",Se==null?void 0:Se[oe].result),Ee(Se==null?void 0:Se[oe].result)):Se!=null&&Se[oe].error&&(ee("[initializeMobileProvider: sendRequest()] found error",Se==null?void 0:Se[oe].error),ye(Se==null?void 0:Se[oe].error)),me=()=>ae({resolve:Ee,reject:ye}),he=a==null?void 0:a.getConnector().on(ue.RPC_UPDATE,me)});return me&&(he==null||he.off(ue.RPC_UPDATE,me)),ee("TRACKER: result",be),be}catch(le){throw ee("[initializeMobileProvider: sendRequest()] error:",le),le}return q[0]&&typeof q[0]=="object"&&(q[0].params={__triggeredInstaller:!0,wrappedParams:q[0].params}),W(...q)}if(i.isSecure()&&Yc[K])return W(...q);if(s.isExtensionActive())return ee(`[initializeMobileProvider: sendRequest()] EXTENSION active - redirect request '${K}' to it`,q,ne),yield(k=s.getProvider())===null||k===void 0?void 0:k.request({method:K,params:ne});throw ee(`[initializeMobileProvider: sendRequest()] method=${K} --- skip --- not connected/installed`),new Error("MetaMask is not connected/installed, please call eth_requestAccounts to connect first.")}try{const ne=yield W(...q);if(ee(`[initializeMobileProvider: sendRequest()] method=${K} rpcResponse`,ne),K===Ce.WALLET_REQUESTPERMISSIONS){const ge=ne.reduce((oe,le)=>{var de;if(le.parentCapability==="eth_accounts"){const ae=(de=le.caveats.find(he=>he.type==="restrictReturnedAccounts"))===null||de===void 0?void 0:de.value;ae&&oe.push(...ae)}return oe},[]);ee("[initializeMobileProvider: sendRequest()] accountsToPersist:",ge),ge.length>0&&(x.handleAccountsChanged(ge,!1),h==null||h.persistAccounts(ge))}return ne}catch(ne){throw console.error("[initializeMobileProvider: sendRequest()] error:",ne),ne}}),{request:H}=w;w.request=(...K)=>ce(void 0,void 0,void 0,function*(){return D(K==null?void 0:K[0].method,K,H,l)});const{send:G}=w;return w.send=(...K)=>ce(void 0,void 0,void 0,function*(){return D(K==null?void 0:K[0],K,G,l)}),ee("[initializeMobileProvider: sendRequest()] metamaskStream.start()"),d.start(),w});class Kb{constructor({serverUrl:t,enabled:n,originatorInfo:r}){this.serverURL=Ji,this.serverURL=t,this.originatorInfo=r,this.enabled=n==null||n}send({event:t,params:n}){if(!this.enabled)return;const r=Object.assign(Object.assign({id:"sdk",event:t,sdkVersion:so.version},this.originatorInfo),{params:n});ee(`[Analytics: send()] event: ${t}`,r),$r(r,this.serverURL).catch(i=>{ee(`[Analytics: send()] error: ${i}`)})}}function Ig(e){var t,n,r;const{dappMetadata:i}=e,o=function({url:u,name:d}){var f;const p=Qc(u+d);if(!localStorage)return"";let g=(f=localStorage.getItem(p))!==null&&f!==void 0?f:"";if(!g){g=_0();try{localStorage.setItem(p,g)}catch{return""}}return g}({url:(t=i==null?void 0:i.url)!==null&&t!==void 0?t:"no_url",name:(n=i==null?void 0:i.name)!==null&&n!==void 0?n:"no_name"}),s=(r=e.platformManager)===null||r===void 0?void 0:r.getPlatformType(),a=s===Rt.DesktopWeb,l=s===Rt.MetaMaskMobileWebview;let c="N/A";return a?c="extension":l&&(c="mobile"),{id:o,from:c}}const Sh=({provider:e,sdkInstance:t})=>{if("state"in e)throw new Error("INVALID EXTENSION PROVIDER");return new Proxy(e,{get:(n,r)=>r==="request"?function(i){var o,s;return ce(this,void 0,void 0,function*(){ee("[wrapExtensionProvider()] Overwriting request method",i);const{method:a,params:l}=i,c=$b.includes(a.toLowerCase()),{id:u,from:d}=Ig(t);if(c&&((o=t.analytics)===null||o===void 0||o.send({event:it.SDK_RPC_REQUEST,params:{method:a,from:d,id:u}})),a===Ce.METAMASK_BATCH&&Array.isArray(l))return(({target:p,args:g,trackEvent:y,sdkInstance:S})=>ce(void 0,void 0,void 0,function*(){var h,v;if(g.method!=="metamask_batch")throw new Error("Invalid usage");const w=[],T=(h=g==null?void 0:g.params)!==null&&h!==void 0?h:[];for(const D of T){const H=yield p==null?void 0:p.request({method:D.method,params:D.params});w.push(H)}const{id:I,from:j}=Ig(S);return y&&((v=S.analytics)===null||v===void 0||v.send({event:it.SDK_RPC_REQUEST_DONE,params:{method:g.method,from:j,id:I}})),w}))({target:n,args:i,trackEvent:c,sdkInstance:t});if(a.toLowerCase()===Ce.METAMASK_CONNECTSIGN.toLowerCase()&&Array.isArray(l))return(({target:p,params:g})=>ce(void 0,void 0,void 0,function*(){const y=yield p.request({method:Ce.ETH_REQUESTACCOUNTS,params:[]});if(!y.length)throw new Error("SDK state invalid -- undefined accounts");return yield p.request({method:Ce.PERSONAL_SIGN,params:[g[0],y[0]]})}))({target:n,params:l});if(a.toLowerCase()===Ce.METAMASK_CONNECTWITH.toLowerCase()&&Array.isArray(l))return(({target:p,params:g})=>ce(void 0,void 0,void 0,function*(){const[y]=g,S=y.method,h=y.params,v=yield p.request({method:Ce.ETH_REQUESTACCOUNTS,params:[]});if(!v.length)throw new Error("SDK state invalid -- undefined accounts");return(S==null?void 0:S.toLowerCase())===Ce.PERSONAL_SIGN.toLowerCase()?yield p.request({method:S,params:[h[0],v[0]]}):(S==null?void 0:S.toLowerCase())===Ce.ETH_SENDTRANSACTION.toLowerCase()?yield p.request({method:S,params:[Object.assign(Object.assign({},h[0]),{from:v[0]})]}):i5.includes(S.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${S} -- not handled by the extension -- call separately`),v):yield p.request({method:S,params:h})}))({target:n,params:l});let f;try{return f=yield n.request(i),f}finally{c&&((s=t.analytics)===null||s===void 0||s.send({event:it.SDK_RPC_REQUEST_DONE,params:{method:a,from:d,id:u}}))}})}:r==="getChainId"?function(){return e.chainId}:r==="getNetworkVersion"?function(){return e.networkVersion}:r==="getSelectedAddress"?function(){return e.selectedAddress}:r==="isConnected"?function(){return e._state.isConnected}:n[r]})};var Jc;function Hb({mustBeMetaMask:e,sdkInstance:t}){return ce(this,void 0,void 0,function*(){if(typeof window>"u")throw new Error("window not available");try{const n=yield new Promise((r,i)=>{const o=setTimeout(()=>{i(new Error("eip6963RequestProvider timed out"))},500);window.addEventListener(Jc.Announce,s=>{const a=s,{detail:{info:l,provider:c}={}}=a,{name:u,rdns:d,uuid:f}=l??{};Db.test(f)&&u.startsWith(Tg.NAME)&&d===Tg.RDNS&&(clearTimeout(o),r(c))}),window.dispatchEvent(new Event(Jc.Request))});return Sh({provider:n,sdkInstance:t})}catch{if(!e&&window.ethereum)return Sh({provider:window.ethereum,sdkInstance:t});throw new Error("Provider not found")}})}(function(e){e.Announce="eip6963:announceProvider",e.Request="eip6963:requestProvider"})(Jc||(Jc={}));var a5={exports:{}};a5.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(r,i,o){n.o(r,i)||Object.defineProperty(r,i,{enumerable:!0,get:o})},n.r=function(r){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},n.t=function(r,i){if(1&i&&(r=n(r)),8&i||4&i&&typeof r=="object"&&r&&r.__esModule)return r;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:r}),2&i&&typeof r!="string")for(var s in r)n.d(o,s,(function(a){return r[a]}).bind(null,s));return o},n.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(i,"a",i),i},n.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},n.p="",n(n.s=90)}({17:function(e,t,n){t.__esModule=!0,t.default=void 0;var r=n(18),i=function(){function o(){}return o.getFirstMatch=function(s,a){var l=a.match(s);return l&&l.length>0&&l[1]||""},o.getSecondMatch=function(s,a){var l=a.match(s);return l&&l.length>1&&l[2]||""},o.matchAndReturnConst=function(s,a,l){if(s.test(a))return l},o.getWindowsVersionName=function(s){switch(s){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},o.getMacOSVersionName=function(s){var a=s.split(".").splice(0,2).map(function(l){return parseInt(l,10)||0});if(a.push(0),a[0]===10)switch(a[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},o.getAndroidVersionName=function(s){var a=s.split(".").splice(0,2).map(function(l){return parseInt(l,10)||0});if(a.push(0),!(a[0]===1&&a[1]<5))return a[0]===1&&a[1]<6?"Cupcake":a[0]===1&&a[1]>=6?"Donut":a[0]===2&&a[1]<2?"Eclair":a[0]===2&&a[1]===2?"Froyo":a[0]===2&&a[1]>2?"Gingerbread":a[0]===3?"Honeycomb":a[0]===4&&a[1]<1?"Ice Cream Sandwich":a[0]===4&&a[1]<4?"Jelly Bean":a[0]===4&&a[1]>=4?"KitKat":a[0]===5?"Lollipop":a[0]===6?"Marshmallow":a[0]===7?"Nougat":a[0]===8?"Oreo":a[0]===9?"Pie":void 0},o.getVersionPrecision=function(s){return s.split(".").length},o.compareVersions=function(s,a,l){l===void 0&&(l=!1);var c=o.getVersionPrecision(s),u=o.getVersionPrecision(a),d=Math.max(c,u),f=0,p=o.map([s,a],function(g){var y=d-o.getVersionPrecision(g),S=g+new Array(y+1).join(".0");return o.map(S.split("."),function(h){return new Array(20-h.length).join("0")+h}).reverse()});for(l&&(f=d-Math.min(c,u)),d-=1;d>=f;){if(p[0][d]>p[1][d])return 1;if(p[0][d]===p[1][d]){if(d===f)return 0;d-=1}else if(p[0][d]1?u-1:0),f=1;f0){var v=Object.keys(g),w=a.default.find(v,function(G){return p.isOS(G)});if(w){var T=this.satisfies(g[w]);if(T!==void 0)return T}var I=a.default.find(v,function(G){return p.isPlatform(G)});if(I){var j=this.satisfies(g[I]);if(j!==void 0)return j}}if(h>0){var D=Object.keys(S),H=a.default.find(D,function(G){return p.isBrowser(G,!0)});if(H!==void 0)return this.compareVersion(S[H])}},d.isBrowser=function(f,p){p===void 0&&(p=!1);var g=this.getBrowserName().toLowerCase(),y=f.toLowerCase(),S=a.default.getBrowserTypeByAlias(y);return p&&S&&(y=S.toLowerCase()),y===g},d.compareVersion=function(f){var p=[0],g=f,y=!1,S=this.getBrowserVersion();if(typeof S=="string")return f[0]===">"||f[0]==="<"?(g=f.substr(1),f[1]==="="?(y=!0,g=f.substr(2)):p=[],f[0]===">"?p.push(1):p.push(-1)):f[0]==="="?g=f.substr(1):f[0]==="~"&&(y=!0,g=f.substr(1)),p.indexOf(a.default.compareVersions(S,g,y))>-1},d.isOS=function(f){return this.getOSName(!0)===String(f).toLowerCase()},d.isPlatform=function(f){return this.getPlatformType(!0)===String(f).toLowerCase()},d.isEngine=function(f){return this.getEngineName(!0)===String(f).toLowerCase()},d.is=function(f,p){return p===void 0&&(p=!1),this.isBrowser(f,p)||this.isOS(f)||this.isPlatform(f)},d.some=function(f){var p=this;return f===void 0&&(f=[]),f.some(function(g){return p.is(g)})},u}();t.default=c,e.exports=t.default},92:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=/version\/(\d+(\.?_?\d+)+)/i,s=[{test:[/googlebot/i],describe:function(a){var l={name:"Googlebot"},c=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/opera/i],describe:function(a){var l={name:"Opera"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/opr\/|opios/i],describe:function(a){var l={name:"Opera"},c=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/SamsungBrowser/i],describe:function(a){var l={name:"Samsung Internet for Android"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/Whale/i],describe:function(a){var l={name:"NAVER Whale Browser"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/MZBrowser/i],describe:function(a){var l={name:"MZ Browser"},c=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/focus/i],describe:function(a){var l={name:"Focus"},c=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/swing/i],describe:function(a){var l={name:"Swing"},c=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/coast/i],describe:function(a){var l={name:"Opera Coast"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(a){var l={name:"Opera Touch"},c=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/yabrowser/i],describe:function(a){var l={name:"Yandex Browser"},c=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/ucbrowser/i],describe:function(a){var l={name:"UC Browser"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/Maxthon|mxios/i],describe:function(a){var l={name:"Maxthon"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/epiphany/i],describe:function(a){var l={name:"Epiphany"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/puffin/i],describe:function(a){var l={name:"Puffin"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/sleipnir/i],describe:function(a){var l={name:"Sleipnir"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/k-meleon/i],describe:function(a){var l={name:"K-Meleon"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/micromessenger/i],describe:function(a){var l={name:"WeChat"},c=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/qqbrowser/i],describe:function(a){var l={name:/qqbrowserlite/i.test(a)?"QQ Browser Lite":"QQ Browser"},c=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/msie|trident/i],describe:function(a){var l={name:"Internet Explorer"},c=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/\sedg\//i],describe:function(a){var l={name:"Microsoft Edge"},c=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/edg([ea]|ios)/i],describe:function(a){var l={name:"Microsoft Edge"},c=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/vivaldi/i],describe:function(a){var l={name:"Vivaldi"},c=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/seamonkey/i],describe:function(a){var l={name:"SeaMonkey"},c=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/sailfish/i],describe:function(a){var l={name:"Sailfish"},c=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,a);return c&&(l.version=c),l}},{test:[/silk/i],describe:function(a){var l={name:"Amazon Silk"},c=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/phantom/i],describe:function(a){var l={name:"PhantomJS"},c=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/slimerjs/i],describe:function(a){var l={name:"SlimerJS"},c=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(a){var l={name:"BlackBerry"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/(web|hpw)[o0]s/i],describe:function(a){var l={name:"WebOS Browser"},c=i.default.getFirstMatch(o,a)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/bada/i],describe:function(a){var l={name:"Bada"},c=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/tizen/i],describe:function(a){var l={name:"Tizen"},c=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/qupzilla/i],describe:function(a){var l={name:"QupZilla"},c=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/firefox|iceweasel|fxios/i],describe:function(a){var l={name:"Firefox"},c=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/electron/i],describe:function(a){var l={name:"Electron"},c=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/MiuiBrowser/i],describe:function(a){var l={name:"Miui"},c=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/chromium/i],describe:function(a){var l={name:"Chromium"},c=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,a)||i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/chrome|crios|crmo/i],describe:function(a){var l={name:"Chrome"},c=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/GSA/i],describe:function(a){var l={name:"Google Search"},c=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:function(a){var l=!a.test(/like android/i),c=a.test(/android/i);return l&&c},describe:function(a){var l={name:"Android Browser"},c=i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/playstation 4/i],describe:function(a){var l={name:"PlayStation 4"},c=i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/safari|applewebkit/i],describe:function(a){var l={name:"Safari"},c=i.default.getFirstMatch(o,a);return c&&(l.version=c),l}},{test:[/.*/i],describe:function(a){var l=a.search("\\(")!==-1?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(l,a),version:i.default.getSecondMatch(l,a)}}}];t.default=s,e.exports=t.default},93:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:[/Roku\/DVP/],describe:function(a){var l=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,a);return{name:o.OS_MAP.Roku,version:l}}},{test:[/windows phone/i],describe:function(a){var l=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.WindowsPhone,version:l}}},{test:[/windows /i],describe:function(a){var l=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,a),c=i.default.getWindowsVersionName(l);return{name:o.OS_MAP.Windows,version:l,versionName:c}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(a){var l={name:o.OS_MAP.iOS},c=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,a);return c&&(l.version=c),l}},{test:[/macintosh/i],describe:function(a){var l=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,a).replace(/[_\s]/g,"."),c=i.default.getMacOSVersionName(l),u={name:o.OS_MAP.MacOS,version:l};return c&&(u.versionName=c),u}},{test:[/(ipod|iphone|ipad)/i],describe:function(a){var l=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,a).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:l}}},{test:function(a){var l=!a.test(/like android/i),c=a.test(/android/i);return l&&c},describe:function(a){var l=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,a),c=i.default.getAndroidVersionName(l),u={name:o.OS_MAP.Android,version:l};return c&&(u.versionName=c),u}},{test:[/(web|hpw)[o0]s/i],describe:function(a){var l=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,a),c={name:o.OS_MAP.WebOS};return l&&l.length&&(c.version=l),c}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(a){var l=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,a)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,a)||i.default.getFirstMatch(/\bbb(\d+)/i,a);return{name:o.OS_MAP.BlackBerry,version:l}}},{test:[/bada/i],describe:function(a){var l=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.Bada,version:l}}},{test:[/tizen/i],describe:function(a){var l=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.Tizen,version:l}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(a){var l=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.PlayStation4,version:l}}}];t.default=s,e.exports=t.default},94:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(a){var l=i.default.getFirstMatch(/(can-l01)/i,a)&&"Nova",c={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return l&&(c.model=l),c}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(a){var l=a.test(/ipod|iphone/i),c=a.test(/like (ipod|iphone)/i);return l&&!c},describe:function(a){var l=i.default.getFirstMatch(/(ipod|iphone)/i,a);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:l}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(a){return a.getBrowserName(!0)==="blackberry"},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(a){return a.getBrowserName(!0)==="bada"},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(a){return a.getBrowserName()==="windows phone"},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(a){var l=Number(String(a.getOSVersion()).split(".")[0]);return a.getOSName(!0)==="android"&&l>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(a){return a.getOSName(!0)==="android"},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(a){return a.getOSName(!0)==="macos"},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(a){return a.getOSName(!0)==="windows"},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(a){return a.getOSName(!0)==="linux"},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(a){return a.getOSName(!0)==="playstation 4"},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(a){return a.getOSName(!0)==="roku"},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];t.default=s,e.exports=t.default},95:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:function(a){return a.getBrowserName(!0)==="microsoft edge"},describe:function(a){if(/\sedg\//i.test(a))return{name:o.ENGINE_MAP.Blink};var l=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,a);return{name:o.ENGINE_MAP.EdgeHTML,version:l}}},{test:[/trident/i],describe:function(a){var l={name:o.ENGINE_MAP.Trident},c=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:function(a){return a.test(/presto/i)},describe:function(a){var l={name:o.ENGINE_MAP.Presto},c=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:function(a){var l=a.test(/gecko/i),c=a.test(/like gecko/i);return l&&!c},describe:function(a){var l={name:o.ENGINE_MAP.Gecko},c=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(a){var l={name:o.ENGINE_MAP.WebKit},c=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,a);return c&&(l.version=c),l}}];t.default=s,e.exports=t.default}});var l5=wu(a5.exports);class zb{constructor({useDeepLink:t,preferredOpenLink:n,debug:r=!1}){this.state={platformType:void 0,useDeeplink:!1,preferredOpenLink:void 0,debug:!1},this.state.platformType=this.getPlatformType(),this.state.useDeeplink=t,this.state.preferredOpenLink=n,this.state.debug=r}openDeeplink(t,n,r){return function(i,o,s,a){const{state:l}=i;ee(`[PlatfformManager: openDeeplink()] universalLink --> ${o}`),ee(`[PlatfformManager: openDeeplink()] deepLink --> ${s}`);try{if(l.preferredOpenLink)return void l.preferredOpenLink(l.useDeeplink?s:o,a);if(ee(`[PlatfformManager: openDeeplink()] open link now useDeepLink=${l.useDeeplink} link=${l.useDeeplink?s:o}`),l.useDeeplink)typeof window<"u"&&(window.location.href=s);else if(typeof document<"u"){const c=document.createElement("a");c.href=o,c.target="_self",c.rel="noreferrer noopener",c.click()}}catch(c){console.log("[PlatfformManager: openDeeplink()] can't open link",c)}}(this,t,n,r)}isReactNative(){var t;return this.isNotBrowser()&&typeof window<"u"&&(window==null?void 0:window.navigator)&&((t=window.navigator)===null||t===void 0?void 0:t.product)==="ReactNative"}isMetaMaskInstalled(){return function(){const t=zn.getProvider()||(window==null?void 0:window.ethereum);return ee(`[PlatfformManager: isMetaMaskInstalled()] isMetaMask=${t==null?void 0:t.isMetaMask} isConnected=${t==null?void 0:t.isConnected()}`),(t==null?void 0:t.isMetaMask)&&(t==null?void 0:t.isConnected())}()}isDesktopWeb(){return this.isBrowser()&&!this.isMobileWeb()}isMobile(){var t,n;const r=l5.parse(window.navigator.userAgent);return((t=r==null?void 0:r.platform)===null||t===void 0?void 0:t.type)==="mobile"||((n=r==null?void 0:r.platform)===null||n===void 0?void 0:n.type)==="tablet"}isSecure(){return this.isReactNative()||this.isMobileWeb()}isMetaMaskMobileWebView(){return typeof window<"u"&&!!window.ReactNativeWebView&&!!navigator.userAgent.endsWith("MetaMaskMobile")}isMobileWeb(){return this.state.platformType===Rt.MobileWeb}isNotBrowser(){var t;return typeof window>"u"||!(window!=null&&window.navigator)||Ht!==void 0&&((t=Ht==null?void 0:Ht.navigator)===null||t===void 0?void 0:t.product)==="ReactNative"||(navigator==null?void 0:navigator.product)==="ReactNative"}isNodeJS(){return this.isNotBrowser()&&!this.isReactNative()}isBrowser(){return!this.isNotBrowser()}isUseDeepLink(){return this.state.useDeeplink}getPlatformType(){return function(t){const{state:n}=t;return n.platformType?n.platformType:t.isReactNative()?Rt.ReactNative:t.isNotBrowser()?Rt.NonBrowser:t.isMetaMaskMobileWebView()?Rt.MetaMaskMobileWebview:t.isMobile()?Rt.MobileWeb:Rt.DesktopWeb}(this)}}var Rg="INSTALLED",Og="NOT_INSTALLED",$g="REGISTERED",Ng="REGISTERING",Bg="RELOADING",Dg={CHROME:"https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn",FIREFOX:"https://addons.mozilla.org/firefox/addon/ether-metamask/",DEFAULT:"https://metamask.io"},bl="REGISTRATION_IN_PROGRESS",Fg="FORWARDER_ID",Vb=function(){function e(t){var n=t===void 0?{}:t,r=n.forwarderOrigin,i=r===void 0?"https://fwd.metamask.io":r,o=n.forwarderMode,s=o===void 0?e.FORWARDER_MODE.INJECT:o;this.forwarderOrigin=i,this.forwarderMode=s,this.state=e.isMetaMaskInstalled()?Rg:Og;var a=e._detectBrowser();this.downloadUrl=a?Dg[a]:Dg.DEFAULT,this._onMessage=this._onMessage.bind(this),this._onMessageFromForwarder=this._onMessageFromForwarder.bind(this),this._openForwarder=this._openForwarder.bind(this),this._openDownloadPage=this._openDownloadPage.bind(this),this.startOnboarding=this.startOnboarding.bind(this),this.stopOnboarding=this.stopOnboarding.bind(this),window.addEventListener("message",this._onMessage),s===e.FORWARDER_MODE.INJECT&&sessionStorage.getItem(bl)==="true"&&e._injectForwarder(this.forwarderOrigin)}return e.prototype._onMessage=function(t){if(t.origin===this.forwarderOrigin)return t.data.type==="metamask:reload"?this._onMessageFromForwarder(t):void console.debug("Unknown message from '"+t.origin+"' with data "+JSON.stringify(t.data))},e.prototype._onMessageUnknownStateError=function(t){throw new Error("Unknown state: '"+t+"'")},e.prototype._onMessageFromForwarder=function(t){return function(n,r,i,o){return new(i||(i=Promise))(function(s,a){function l(d){try{u(o.next(d))}catch(f){a(f)}}function c(d){try{u(o.throw(d))}catch(f){a(f)}}function u(d){var f;d.done?s(d.value):(f=d.value,f instanceof i?f:new i(function(p){p(f)})).then(l,c)}u((o=o.apply(n,[])).next())})}(this,0,void 0,function(){return function(n,r){var i,o,s,a,l={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return a={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(u){return function(d){return function(f){if(i)throw new TypeError("Generator is already executing.");for(;l;)try{if(i=1,o&&(s=2&f[0]?o.return:f[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,f[1])).done)return s;switch(o=0,s&&(f=[2&f[0],s.value]),f[0]){case 0:case 1:s=f;break;case 4:return l.label++,{value:f[1],done:!1};case 5:l.label++,o=f[1],f=[0];continue;case 7:f=l.ops.pop(),l.trys.pop();continue;default:if(!((s=(s=l.trys).length>0&&s[s.length-1])||f[0]!==6&&f[0]!==2)){l=0;continue}if(f[0]===3&&(!s||f[1]>s[0]&&f[1]t.onClose(i)),r.addEventListener("connectWithExtension",t.connectWithExtension),t.parentElement.appendChild(r),setTimeout(()=>this.updateQRCode(t.link),100)})}renderPendingModal(t){var n;return ce(this,void 0,void 0,function*(){this.containers.pending=t.parentElement,yield this.loadComponent("pending");const r=document.createElement("mm-pending-modal");r.sdkVersion=(n=t.sdkVersion)!==null&&n!==void 0?n:this.sdkVersion,r.displayOTP=t.displayOTP,r.addEventListener("close",t.onClose),r.addEventListener("updateOTPValue",({detail:{otpValue:i}})=>t.updateOTPValue(i)),t.onDisconnect&&r.addEventListener("disconnect",t.onDisconnect),t.parentElement.appendChild(r)})}updateOTPValue(t){const n=()=>{var r;const i=(r=this.containers.pending)===null||r===void 0?void 0:r.querySelector("mm-pending-modal");return!!i&&(i.otpCode=t,!0)};setTimeout(()=>{n()},800)}updateQRCode(t){var n,r;const i=(n=this.containers.install)===null||n===void 0?void 0:n.querySelector("mm-install-modal");if(i)i.link=t;else{const o=(r=this.containers.select)===null||r===void 0?void 0:r.querySelector("mm-select-modal");o&&(o.link=t)}}unmount(){Object.entries(this.containers).forEach(([t,n])=>{var r;(r=n==null?void 0:n.parentNode)===null||r===void 0||r.removeChild(n),this.containers[t]=void 0})}}const qb=({link:e,debug:t,installer:n,terminate:r,connectWithExtension:i,preferDesktop:o})=>{let s=null,a=null;ee("[UI: InstallModal-web: sdkWebInstallModal()] ################## Installing Modal #################"),ee(`[UI: InstallModal-web: sdkWebInstallModal()] link=${e}`),ee(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open "${e}" --ios`),ee(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open "${e}" --android`),ee(`[UI: InstallModal-web: sdkWebInstallModal()] adb shell am start -a android.intent.action.VIEW -d "${e}"`);const l=c=>{var u;ee("[UI: InstallModal-web: sdkWebInstallModal()] installModal-web unmounting install modal -- shouldTerminate:",c,a),a!=null&&a.parentNode&&((u=a.parentNode)===null||u===void 0||u.removeChild(a)),a=null,s=null,c===!0&&(r==null||r())};return{mount:c=>{if(ee("[UI: InstallModal-web: sdkWebInstallModal()] installModal-web mounting install modal",a),a)return a.style.display="block",void(s==null||s.updateQRCode(c));s=new c5({debug:t,sdkVersion:so.version}),a=document.createElement("div"),document.body.appendChild(a),window.extension?s.renderSelectModal({parentElement:a,connectWithExtension:()=>{l(),i==null||i()},onClose:l,link:e,preferDesktop:o!=null&&o}).catch(u=>{console.error(u)}):s.renderInstallModal({parentElement:a,preferDesktop:o!=null&&o,link:e,metaMaskInstaller:n,onClose:l}).catch(u=>{console.error("[UI: InstallModal-web: sdkWebInstallModal()]",u)})},unmount:l}},Gb=({onDisconnect:e,debug:t})=>{let n=null,r=null;const i=()=>{ee("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web unmount",n),n!=null&&n.parentNode&&n.parentNode.removeChild(n),n=null,r=null},o=a=>{ee("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web updateOTPValue",a),r&&r.updateOTPValue(a)},s=({displayOTP:a}={displayOTP:!0})=>{ee("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web mount",n),n?n.style.display="block":(r=new c5({debug:t,sdkVersion:so.version}),n=document.createElement("div"),document.body.appendChild(n),r.renderPendingModal({parentElement:n,onClose:i,onDisconnect:e,updateOTPValue:o,displayOTP:a}).catch(l=>{console.error("[UI: pendingModal-web: sdkWebPendingModal()]",l)}))};return s(),{mount:s,unmount:i,updateOTPValue:o}};function u5(e,t){var n,r,i,o;e.connector||(ee("[RemoteConnection: initializeConnector()] initialize connector"),e.connector=new m7({platformType:t.platformManager.getPlatformType(),communicationLayerPreference:t.communicationLayerPreference,transports:t.transports,dappMetadata:Object.assign(Object.assign({},t.dappMetadata),{source:t._source}),analytics:t.enableAnalytics,communicationServerUrl:t.communicationServerUrl,sdkVersion:so.version,context:"dapp",ecies:t.ecies,storage:t.storage,logging:t.logging}),t.timer&&(ee("[RemoteConnection: initializeConnector()] reset background timer",t.timer),(r=(n=t.timer)===null||n===void 0?void 0:n.stopBackgroundTimer)===null||r===void 0||r.call(n),(o=(i=t.timer)===null||i===void 0?void 0:i.runBackgroundTimer)===null||o===void 0||o.call(i,()=>!1,1e4)))}function _h(e){e.listeners.forEach(({event:t,handler:n})=>{var r;(r=e.connector)===null||r===void 0||r.off(t,n)}),e.listeners=[]}function d5(e,t){function n(r,i){var o;(o=e.connector)===null||o===void 0||o.on(r,i),e.listeners.push({event:r,handler:i})}e.connector&&(_h(e),n(ue.WALLET_INIT,({accounts:r,chainId:i})=>ce(this,void 0,void 0,function*(){ee(`[RemoteConnection: setupListeners() => EventType.WALLET_INIT] 'wallet_init' accounts=${r} chainId=${i}`);const o=zn.getProvider();o._setConnected();const s={accounts:r,chainId:i,isUnlocked:!1};o._initializeState(s),o.emit("chainChanged",i),o.emit("accountsChanged",r)})),n(ue.AUTHORIZED,()=>ce(this,void 0,void 0,function*(){var r,i,o,s;try{ee("[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' closing modals",e.pendingModal,e.installModal);const a=zn.getProvider();a._setConnected(),(i=(r=e.pendingModal)===null||r===void 0?void 0:r.unmount)===null||i===void 0||i.call(r),(s=(o=e.installModal)===null||o===void 0?void 0:o.unmount)===null||s===void 0||s.call(o,!1),e.otpAnswer=void 0,e.authorized=!0,ee("[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' provider.state",a.getState()),yield a.forceInitializeState()}catch{}})),n(ue.TERMINATE,()=>{var r,i,o,s,a;(i=(r=e.pendingModal)===null||r===void 0?void 0:r.unmount)===null||i===void 0||i.call(r),(s=(o=e.installModal)===null||o===void 0?void 0:o.unmount)===null||s===void 0||s.call(o,!0),e.pendingModal=void 0,e.installModal=void 0,e.otpAnswer=void 0,(a=e.connector)===null||a===void 0||a.disconnect({terminate:!0}),e.authorized=!1,zn.getProvider().handleDisconnect({terminate:!0}),_h(e),ee("[RemoteConnection: setupListeners()] All listeners cleaned up")}))}function Yb(e,t,{initialCheck:n,connectWith:r}={}){var i,o,s,a,l,c,u,d,f,p,g,y,S,h,v,w,T,I,j;return ce(this,void 0,void 0,function*(){try{if(u5(e,t),!e.connector)throw new Error("no connector defined");d5(e);const D=zn.getProvider();e.authorized=!1,D.emit("connecting");const H=yield(i=e.connector)===null||i===void 0?void 0:i.originatorSessionConnect();ee(`[RemoteConnection: startConnection()] after originatorSessionConnect initialCheck=${n}`,H);let G=(o=H==null?void 0:H.channelId)!==null&&o!==void 0?o:"",K=(a=(s=e.connector.getKeyInfo())===null||s===void 0?void 0:s.ecies.public)!==null&&a!==void 0?a:"",q=(c=(l=e.connector.getKeyInfo())===null||l===void 0?void 0:l.ecies.private)!==null&&c!==void 0?c:"";if(n&&!H)return Promise.resolve();if(!H&&!n){const O=yield e.connector.generateChannelIdConnect();G=(u=O.channelId)!==null&&u!==void 0?u:"",K=(d=O.pubKey)!==null&&d!==void 0?d:"",q=(f=O.privKey)!==null&&f!==void 0?f:"";const z=Date.now();(p=e.connector.state.storageManager)===null||p===void 0||p.persistChannelConfig({channelId:G,localKey:q,lastActive:z,validUntil:z+os})}if(n&&(H!=null&&H.channelId))return!((g=e.connector)===null||g===void 0)&&g.isConnected()||(ee(`[RemoteConnection: startConnection()] reconnecting to channel initialCheck=${n}`,H),yield(y=e.connector)===null||y===void 0?void 0:y.connectToChannel({channelId:G})),Promise.resolve();H&&!(!((S=e.connector)===null||S===void 0)&&S.isConnected())&&(ee("[RemoteConnection: startConnection()] reconnecting to channel",H),yield(h=e.connector)===null||h===void 0?void 0:h.connectToChannel({channelId:G}));const W=!((v=e.platformManager)===null||v===void 0)&&v.isSecure()?"":"&t=q",C=so.version,{iconUrl:m,name:_,url:M,scheme:A}=t.dappMetadata||{},P=(w=e.platformManager)===null||w===void 0?void 0:w.getPlatformType();let L="N/A";typeof window<"u"&&window.location&&window.location.hostname?L=window.location.hostname:_!==void 0?L=_:M!==void 0&&(L=M);const B={url:M??"",title:_??"",icon:m,scheme:A??"",apiVersion:C,dappId:L||M||"N/A",platform:P??"",source:(T=t._source)!==null&&T!==void 0?T:""},$=Qc(JSON.stringify(B));let k=`channelId=${G}&v=2&comm=${(I=e.communicationLayerPreference)!==null&&I!==void 0?I:""}&pubkey=${K}${W}&originatorInfo=${$}`;if(r){k+=`&rpc=${Qc(JSON.stringify(r))}`;const O=e.connector.getRPCMethodTracker();O&&(O[`${r.id}`]=Object.assign(Object.assign({},r),{id:`${r.id}`,timestamp:Date.now()}))}const x=encodeURI(k),N=`${e.useDeeplink?Js:Qs}?${k}`;return e.qrcodeLink=N,e.developerMode&&ee(`[RemoteConnection: startConnection()] qrcodeLink=${x}`),D.emit("display_uri",N),!((j=e.platformManager)===null||j===void 0)&&j.isSecure()?(yield function(O,z){var Y,V;return ce(this,void 0,void 0,function*(){const Q=`${Qs}?${z}`,te=`${Js}?${z}`;(V=(Y=O.platformManager)===null||Y===void 0?void 0:Y.openDeeplink)===null||V===void 0||V.call(Y,Q,te,"_self")})}(e,x),new Promise((O,z)=>{var Y,V,Q;!((Y=e.connector)===null||Y===void 0)&&Y.isAuthorized()?O():((V=e.connector)===null||V===void 0||V.once(ue.AUTHORIZED,()=>{O()}),(Q=e.connector)===null||Q===void 0||Q.once(ue.REJECTED,()=>{z(ue.REJECTED)}))})):function(O,z,Y){return ce(this,void 0,void 0,function*(){return new Promise((V,Q)=>{if(!O.connector)return void Q(new Error("No connector available"));ee("[RemoteConnection: connectWithModalInstaller()]",{state:O,options:z,linkParams:Y});const te=`${O.useDeeplink?Js:Qs}?${Y}`;(function(ie,ne,ge){var oe,le,de,ae;ie.installModal=(le=(oe=ne.modals).install)===null||le===void 0?void 0:le.call(oe,{link:ge,preferDesktop:ie.preferDesktop,installer:ne.getMetaMaskInstaller(),terminate:()=>{ee("[RemoteConnection: showInstallModal() => terminate()] terminate connection"),ne.sdk.terminate().catch(he=>{console.warn("[MMSDK] failed to terminate connection",he)})},debug:ie.developerMode,connectWithExtension:()=>{var he;return(he=ne.connectWithExtensionProvider)===null||he===void 0||he.call(ne),!1}}),(ae=(de=ie.installModal)===null||de===void 0?void 0:de.mount)===null||ae===void 0||ae.call(de,ge)})(O,z,te),z.sdk.once(ue.PROVIDER_UPDATE,ie=>ce(this,void 0,void 0,function*(){ee("[RemoteConnection: connectWithModalInstaller()] once provider_update -- resolving startConnection promise"),ie!==Wn.TERMINATE?Q(ie):Q({code:4001,message:"User rejected the request."})})),O.connector.once(ue.AUTHORIZED,()=>{V()}),O.connector.once(ue.REJECTED,()=>{Q(ue.REJECTED)}),O.connector.once(ue.CLIENTS_READY,()=>ce(this,void 0,void 0,function*(){ee("[RemoteConnection: connectWithModalInstaller()] once clients_ready -- resolving startConnection promise"),V()}))})})}(e,t,x)}catch(D){throw console.error("[startConnection] error",D),D}})}class Zb{constructor(t){var n,r,i;this.state={connector:void 0,qrcodeLink:void 0,analytics:void 0,developerMode:!1,authorized:!1,reconnection:!1,preferDesktop:!1,deeplinkProtocol:!1,listeners:[],communicationLayerPreference:void 0,platformManager:void 0,pendingModal:void 0,installModal:void 0,otpAnswer:void 0},this.options=t;const o=((n=t.logging)===null||n===void 0?void 0:n.developerMode)===!0||((r=t.logging)===null||r===void 0?void 0:r.sdk)===!0;this.state.developerMode=o,this.state.analytics=t.analytics,this.state.preferDesktop=(i=t.preferDesktop)!==null&&i!==void 0&&i,this.state.useDeeplink=t.sdk.options.useDeeplink,this.state.communicationLayerPreference=t.communicationLayerPreference,this.state.platformManager=t.platformManager,t.modals.install||(t.modals.install=qb),t.modals.otp||(t.modals.otp=Gb)}startConnection(t){return ce(this,void 0,void 0,function*(){return Yb(this.state,this.options,t)})}initRemoteCommunication({sdkInstance:t}){var n,r,i;return ce(this,void 0,void 0,function*(){const o=yield(r=(n=t.options.storage)===null||n===void 0?void 0:n.storageManager)===null||r===void 0?void 0:r.getPersistedChannelConfig();if(!this.options.ecies){const s={privateKey:o==null?void 0:o.localKey};this.options.ecies=s}u5(this.state,this.options),yield(i=this.getConnector())===null||i===void 0?void 0:i.initFromDappStorage(),d5(this.state,this.options)})}showActiveModal(){return function(t){var n,r,i,o;t.authorized?ee("[RemoteConnection: showActiveModal()] already authorized"):t.pendingModal?(r=(n=t.pendingModal).mount)===null||r===void 0||r.call(n):t.installModal&&((o=(i=t.installModal).mount)===null||o===void 0||o.call(i,t.qrcodeLink||""))}(this.state)}closeModal(){var t,n,r,i;(n=(t=this.state.pendingModal)===null||t===void 0?void 0:t.unmount)===null||n===void 0||n.call(t),(i=(r=this.state.installModal)===null||r===void 0?void 0:r.unmount)===null||i===void 0||i.call(r,!1)}getUniversalLink(){if(!this.state.qrcodeLink)throw new Error("connection not started. run startConnection() first.");return this.state.qrcodeLink}getChannelConfig(){var t;return(t=this.state.connector)===null||t===void 0?void 0:t.getChannelConfig()}getKeyInfo(){var t;return(t=this.state.connector)===null||t===void 0?void 0:t.getKeyInfo()}getConnector(){if(!this.state.connector)throw new Error("invalid remote connector");return this.state.connector}getPlatformManager(){if(!this.state.platformManager)throw new Error("PlatformManager not available");return this.state.platformManager}isConnected(){var t;return((t=this.state.connector)===null||t===void 0?void 0:t.isReady())||!1}isAuthorized(){var t;return((t=this.state.connector)===null||t===void 0?void 0:t.isAuthorized())||!1}isPaused(){var t;return(t=this.state.connector)===null||t===void 0?void 0:t.isPaused()}disconnect(t){var n,r,i;ee("[RemoteConnection: disconnect()]",t),t!=null&&t.terminate&&(zn.getProvider().handleDisconnect({terminate:!0}),(r=(n=this.state.pendingModal)===null||n===void 0?void 0:n.unmount)===null||r===void 0||r.call(n),this.state.otpAnswer=void 0),(i=this.state.connector)===null||i===void 0||i.disconnect(t),function(o){ee("[RemoteConnection: cleanupConnector()] cleaning up connector"),o.connector&&(_h(o),o.connector.disconnect({terminate:!0}).catch(s=>{ee("[RemoteConnection: cleanupConnector()] error disconnecting connector",s)}))}(this.state)}}function Qb(e){var t,n,r,i,o,s,a,l,c,u,d;return ce(this,void 0,void 0,function*(){const{options:f}=e;if(f.logging=(t=f.logging)!==null&&t!==void 0?t:{},f.communicationLayerPreference=(n=f.communicationLayerPreference)!==null&&n!==void 0?n:zi.SOCKET,f.enableDebug!==void 0&&(Ut.enable("MM_SDK"),console.warn("enableDebug is removed. Please use enableAnalytics instead.")),f.enableAnalytics=(r=f.enableAnalytics)===null||r===void 0||r,f.injectProvider=(i=f.injectProvider)===null||i===void 0||i,f.shouldShimWeb3=(o=f.shouldShimWeb3)===null||o===void 0||o,f.extensionOnly=(s=f.extensionOnly)===null||s===void 0||s,f.useDeeplink=(a=f.useDeeplink)===null||a===void 0||a,f.storage=(l=f.storage)!==null&&l!==void 0?l:{enabled:!0},f.headless){Ut("[MetaMaskSDK: performSDKInitialization()] headless mode enabled");const v=()=>{},w={install:()=>({mount:v,unmount:v})},T={installer:v};f.modals=w,f.ui=T}const p=((c=f.logging)===null||c===void 0?void 0:c.developerMode)===!0;e.debug=((u=f.logging)===null||u===void 0?void 0:u.sdk)||p,ee("[MetaMaskSDK: performSDKInitialization()] options",e.options);const g=Object.assign({},f.logging);p&&(g.sdk=!0,g.eciesLayer=!0,g.keyExchangeLayer=!0,g.remoteLayer=!0,g.serviceLayer=!0,g.plaintext=!0),yield function(v){var w;return ce(this,void 0,void 0,function*(){const{options:T}=v;v.platformManager=new zb({useDeepLink:(w=T.useDeeplink)!==null&&w!==void 0&&w,preferredOpenLink:T.openDeeplink,debug:v.debug})})}(e),yield function(v){var w,T,I,j,D,H,G,K,q;return ce(this,void 0,void 0,function*(){const{options:W}=v,C=(w=v.platformManager)===null||w===void 0?void 0:w.getPlatformType();v.analytics=new Kb({serverUrl:(T=W.communicationServerUrl)!==null&&T!==void 0?T:Ji,enabled:W.enableAnalytics,originatorInfo:{url:(I=W.dappMetadata.url)!==null&&I!==void 0?I:"",title:(j=W.dappMetadata.name)!==null&&j!==void 0?j:"",dappId:typeof window>"u"||window.location===void 0?(K=(H=(D=W.dappMetadata)===null||D===void 0?void 0:D.name)!==null&&H!==void 0?H:(G=W.dappMetadata)===null||G===void 0?void 0:G.url)!==null&&K!==void 0?K:"N/A":window.location.hostname,platform:C??"",source:(q=W._source)!==null&&q!==void 0?q:""}})})}(e),yield function(v){var w;return ce(this,void 0,void 0,function*(){const{options:T}=v;((w=T.storage)===null||w===void 0?void 0:w.enabled)!==!0||T.storage.storageManager||(T.storage.storageManager=o5(T.storage))})}(e),yield function(v){return ce(this,void 0,void 0,function*(){const{options:w}=v,T=/^(http|https):\/\/[^\s]*$/;if(w.dappMetadata){w.dappMetadata.iconUrl&&!T.test(w.dappMetadata.iconUrl)&&(console.warn("Invalid dappMetadata.iconUrl: URL must start with http:// or https://"),w.dappMetadata.iconUrl=void 0),w.dappMetadata.base64Icon&&w.dappMetadata.base64Icon.length>163400&&(console.warn("Invalid dappMetadata.base64Icon: Base64-encoded icon string length must be less than 163400 characters"),w.dappMetadata.base64Icon=void 0),w.dappMetadata.url&&!T.test(w.dappMetadata.url)&&console.warn("Invalid dappMetadata.url: URL must start with http:// or https://");const I=(()=>{if(typeof document>"u")return;let j;const D=document.getElementsByTagName("link");for(let H=0;Hce(void 0,void 0,void 0,function*(){const{options:w}=v,{infuraAPIKey:T}=w;if(!T)return;const I={"0x1":`https://mainnet.infura.io/v3/${T}`,"0x5":`https://goerli.infura.io/v3/${T}`,"0xaa36a7":`https://sepolia.infura.io/v3/${T}`,"0xe708":`https://linea-mainnet.infura.io/v3/${T}`,"0xe704":`https://linea-goerli.infura.io/v3/${T}`,"0x89":`https://polygon-mainnet.infura.io/v3/${T}`,"0x13881":`https://polygon-mumbai.infura.io/v3/${T}`,"0x45":`https://optimism-mainnet.infura.io/v3/${T}`,"0x1a4":`https://optimism-goerli.infura.io/v3/${T}`,"0xa4b1":`https://arbitrum-mainnet.infura.io/v3/${T}`,"0x66eed":`https://arbitrum-goerli.infura.io/v3/${T}`,"0x2a15c308d":`https://palm-mainnet.infura.io/v3/${T}`,"0x2a15c3083":`https://palm-testnet.infura.io/v3/${T}`,"0xa86a":`https://avalanche-mainnet.infura.io/v3/${T}`,"0xa869":`https://avalanche-fuji.infura.io/v3/${T}`,"0x4e454152":`https://aurora-mainnet.infura.io/v3/${T}`,"0x4e454153":`https://aurora-testnet.infura.io/v3/${T}`,"0x534e5f4d41494e":`https://starknet-mainnet.infura.io/v3/${T}`,"0x534e5f474f45524c49":`https://starknet-goerli.infura.io/v3/${T}`,"0x534e5f474f45524c4932":`https://starknet-goerli2.infura.io/v3/${T}`,"0xa4ec":`https://celo-mainnet.infura.io/v3/${T}`,"0xaef3":`https://celo-alfajores.infura.io/v3/${T}`};v.options.readonlyRPCMap?v.options.readonlyRPCMap=Object.assign(Object.assign({},v.options.readonlyRPCMap),I):v.options.readonlyRPCMap=I}))(e),yield(v=>ce(void 0,void 0,void 0,function*(){const{options:w}=v,{readonlyRPCMap:T}=w;if(T)try{ee("[MetaMaskSDK: setupReadOnlyRPCProviders()] Setting up Readonly RPC Providers",T),v.setReadOnlyRPCCalls(!0)}catch{throw new Error("Invalid Infura Settings")}}))(e);const{metamaskBrowserExtension:y,preferExtension:S,shouldReturn:h}=yield function(v){var w,T,I,j;return ce(this,void 0,void 0,function*(){const{options:D}=v;let H,G=!1,K=!1;if(typeof window<"u"&&window.ethereum&&!(!((w=v.platformManager)===null||w===void 0)&&w.isMetaMaskMobileWebView())){G=localStorage.getItem(Zc)==="extension";try{H=yield Hb({mustBeMetaMask:!0,sdkInstance:v}),window.extension=H,H.on(Sg,q=>{ee(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE chainChanged chainId=${q}`),v.sdkProvider&&v.getMobileProvider().emit(Sg,q)}),H.on(_g,q=>{ee(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE accountsChanged accounts=${q}`);const W=!!v.sdkProvider,C=!!v.extensionActive;W&&v.getMobileProvider().emit(_g,q),C&&(q==null?void 0:q.length)===0&&ee("[MetaMaskSDK: setupExtensionPreferences()] permissions were revoked on extension or extension was locked")}),H.on(kg,q=>{ee(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE disconnect error=${q}`),v.sdkProvider&&v.getMobileProvider().emit(kg,q)}),H.on(xg,q=>{ee(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connect args=${q}`),v.sdkProvider&&v.getMobileProvider().emit(xg,q)}),H.on(Ag,q=>{ee("[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connected",q),v.sdkProvider&&v.getMobileProvider().emit(Ag,q)})}catch{window.extension=void 0}}else!((T=v.platformManager)===null||T===void 0)&&T.isMetaMaskMobileWebView()&&((I=v.analytics)===null||I===void 0||I.send({event:it.SDK_USE_INAPP_BROWSER}),v.activeProvider=Sh({provider:window.ethereum,sdkInstance:v}),v._initialized=!0,K=!0);return H&&D.extensionOnly&&(ee("[MetaMaskSDK: setupExtensionPreferences()] EXTENSION ONLY --- prevent sdk initialization"),(j=v.analytics)===null||j===void 0||j.send({event:it.SDK_USE_EXTENSION}),v.activeProvider=H,v.extensionActive=!0,v.extension=H,v._initialized=!0,K=!0),{preferExtension:G,shouldReturn:K,metamaskBrowserExtension:H}})}(e);if(h)ee("[MetaMaskSDK: performSDKInitialization()] shouldReturn=true --- prevent sdk initialization");else{yield function(v,w){var T,I,j,D,H;return ce(this,void 0,void 0,function*(){const{options:G}=v,K=Object.assign({},G.logging);v.remoteConnection=new Zb({preferDesktop:(T=G.preferDesktop)!==null&&T!==void 0&&T,communicationLayerPreference:(I=G.communicationLayerPreference)!==null&&I!==void 0?I:zi.SOCKET,analytics:v.analytics,dappMetadata:G.dappMetadata,_source:G._source,enableAnalytics:(j=G.enableAnalytics)===null||j===void 0||j,timer:G.timer,sdk:v,platformManager:v.platformManager,transports:G.transports,communicationServerUrl:G.communicationServerUrl,storage:(D=G.storage)!==null&&D!==void 0?D:{enabled:!0},getMetaMaskInstaller:()=>{if(!v.installer)throw new Error("Invalid SDK status -- installer not initialized");return v.installer},logging:K,connectWithExtensionProvider:w===void 0?void 0:()=>Pg(v),modals:Object.assign(Object.assign({},G.modals),{onPendingModalDisconnect:v.terminate.bind(v)})}),yield v.remoteConnection.initRemoteCommunication({sdkInstance:v}),v.installer=new Wb({remote:v.remoteConnection,preferDesktop:(H=G.preferDesktop)!==null&&H!==void 0&&H,platformManager:v.platformManager,debug:v.debug})})}(e,y),yield function(v){var w,T,I,j;return ce(this,void 0,void 0,function*(){const{options:D}=v,H={communicationLayerPreference:(w=D.communicationLayerPreference)!==null&&w!==void 0?w:zi.SOCKET,platformManager:v.platformManager,sdk:v,checkInstallationOnAllCalls:D.checkInstallationOnAllCalls,injectProvider:(T=D.injectProvider)===null||T===void 0||T,shouldShimWeb3:(I=D.shouldShimWeb3)===null||I===void 0||I,extensionOnly:(j=D.extensionOnly)===null||j===void 0||j,installer:v.installer,remoteConnection:v.remoteConnection,debug:v.debug},G=yield Ub(H);v.activeProvider=G,function(K){var q,W,C,m;(W=(q=K.remoteConnection)===null||q===void 0?void 0:q.getConnector())===null||W===void 0||W.on(cn.ConnectionStatus,_=>{K.emit(cn.ConnectionStatus,_)}),(m=(C=K.remoteConnection)===null||C===void 0?void 0:C.getConnector())===null||m===void 0||m.on(cn.ServiceStatus,_=>{K.emit(cn.ServiceStatus,_)})}(v)})}(e),yield function(v,w){var T,I;return ce(this,void 0,void 0,function*(){const{options:j}=v;w?(ee("[MetaMaskSDK: handleAutoAndExtensionConnections()] preferExtension is detected -- connect with it."),(T=v.analytics)===null||T===void 0||T.send({event:it.SDK_EXTENSION_UTILIZED}),Pg(v).catch(D=>{console.warn("Can't connect with MetaMask extension...",D),localStorage.removeItem(Zc)})):j.checkInstallationImmediately&&(!((I=v.platformManager)===null||I===void 0)&&I.isDesktopWeb()?(ee("[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately"),v.connect().catch(D=>{ee(`[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- error on autoconnect _err=${D}`)})):console.warn("[handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- only for web desktop")),v._initialized=!0})}(e,S);try{yield(d=e.remoteConnection)===null||d===void 0?void 0:d.startConnection({initialCheck:!0})}catch(v){console.error("[MetaMaskSDK: setupRemoteConnectionAndInstaller()] Error while checking installation",v)}e.emit(cn.ProviderUpdate,Wn.INITIALIZED)}})}class Jb extends CE{constructor(t={storage:{enabled:!0},injectProvider:!0,forceInjectProvider:!1,enableAnalytics:!0,shouldShimWeb3:!0,useDeeplink:!0,extensionOnly:!0,headless:!1,dappMetadata:{name:"",url:"",iconUrl:""},_source:Mg,i18nOptions:{enabled:!1}}){var n,r,i;super(),this.extensionActive=!1,this._initialized=!1,this.sdkInitPromise=void 0,this.debug=!1,this.readonlyRPCCalls=!1,this.availableLanguages=["en"],Ut.disable();const o=((n=t.logging)===null||n===void 0?void 0:n.developerMode)===!0;if((!((r=t.logging)===null||r===void 0)&&r.sdk||o)&&Ut.enable("MM_SDK"),ee("[MetaMaskSDK: constructor()]: begin."),this.setMaxListeners(50),!(!((i=t.dappMetadata)===null||i===void 0)&&i.url)){if(typeof window>"u"||typeof document>"u")throw new Error("You must provide dAppMetadata url");t.dappMetadata=Object.assign(Object.assign({},t.dappMetadata),{url:`${window.location.protocol}//${window.location.host}`})}this.options=t,this.options._source||(t._source=Mg),this.init().then(()=>{ee("[MetaMaskSDK: constructor()]: initialized successfully."),typeof window<"u"&&(window.mmsdk=this)}).catch(s=>{console.error("[MetaMaskSDK: constructor()] error during initialization",s)})}init(){return ce(this,void 0,void 0,function*(){return function(t){var n;return ce(this,void 0,void 0,function*(){if(typeof window<"u"&&(!((n=window.mmsdk)===null||n===void 0)&&n.isInitialized()))return ee("[MetaMaskSDK: initializeMetaMaskSDK()] already initialized"),Promise.resolve(window.mmsdk);if(t._initialized)return ee("[MetaMaskSDK: initializeMetaMaskSDK()] already initialized"),t.sdkInitPromise;if(t.sdkInitPromise)return ee("[MetaMaskSDK: initializeMetaMaskSDK()] already initializing"),t.sdkInitPromise;try{t.sdkInitPromise=Qb(t),yield t.sdkInitPromise}catch(r){throw console.error(r),r}return t.sdkInitPromise})}(this)})}isExtensionActive(){return this.extensionActive}checkExtensionAvailability(){var t;return typeof window<"u"&&!!(!((t=window.ethereum)===null||t===void 0)&&t.isMetaMask)}connect(){return ce(this,void 0,void 0,function*(){return function(t){return ce(this,void 0,void 0,function*(){if(t._initialized||(ee("[MetaMaskSDK: connect()] provider not ready -- wait for init()"),yield t.init()),ee(`[MetaMaskSDK: connect()] isExtensionActive=${t.isExtensionActive()} activeProvider`,t.activeProvider),!t.activeProvider)throw new Error("SDK state invalid -- undefined provider");const n=t.activeProvider.getSelectedAddress();return n?[n]:t.activeProvider.request({method:Ce.ETH_REQUESTACCOUNTS,params:[]})})}(this)})}connectAndSign({msg:t}){return ce(this,void 0,void 0,function*(){return function({instance:n,msg:r}){return ce(this,void 0,void 0,function*(){if(n._initialized||(ee("[MetaMaskSDK: connectAndSign()] provider not ready -- wait for init()"),yield n.init()),ee(`[MetaMaskSDK: connectAndSign()] activeProvider=${n.activeProvider}`),!n.activeProvider)throw new Error("SDK state invalid -- undefined provider");const i=/^0x([0-9A-Fa-f]{2})*$/u.test(r)?r:function(o){let s;if(re!==void 0)s=re.from(o,"utf8").toString("hex");else if(typeof TextEncoder<"u"){const a=new TextEncoder().encode(o);s=Array.from(a).map(l=>l.toString(16).padStart(2,"0")).join("")}else{if(typeof Ht!="object"||!("Buffer"in Ht))throw new Error("Unable to convert string to hex: No available method.");s=Ht.Buffer.from(o,"utf8").toString("hex")}return`0x${s}`}(r);return n.activeProvider.request({method:Ce.METAMASK_CONNECTWITH,params:[{method:Ce.PERSONAL_SIGN,params:[i]}]})})}({instance:this,msg:t})})}connectWith(t){return ce(this,void 0,void 0,function*(){return function({instance:n,rpc:r}){return ce(this,void 0,void 0,function*(){if(n._initialized||(ee("[MetaMaskSDK: connectWith()] provider not ready -- wait for init()"),yield n.init()),ee(`[MetaMaskSDK: connectWith()] method: ${r.method} rpc=${r}`),!n.activeProvider)throw new Error("SDK state invalid -- undefined provider");return n.activeProvider.request({method:Ce.METAMASK_CONNECTWITH,params:[r]})})}({instance:this,rpc:t})})}resume(){return function(t){var n,r,i;return ce(this,void 0,void 0,function*(){if(!(!((r=(n=t.remoteConnection)===null||n===void 0?void 0:n.getConnector())===null||r===void 0)&&r.isReady()))return ee("[MetaMaskSDK: resume()] channel is not ready -- starting connection"),void((i=t.remoteConnection)===null||i===void 0||i.startConnection());ee("[MetaMaskSDK: resume()] channel is ready")})}(this)}disconnect(){return console.warn("MetaMaskSDK.disconnect() is deprecated, use terminate()"),this.terminate()}isAuthorized(){var t;(t=this.remoteConnection)===null||t===void 0||t.isAuthorized()}terminate(){return function(t){var n,r,i;return ce(this,void 0,void 0,function*(){if(!(!((n=t.platformManager)===null||n===void 0)&&n.isMetaMaskMobileWebView())){if(Fb&&(window.localStorage.removeItem(Zc),window.localStorage.removeItem(Ch),window.localStorage.removeItem(bh)),t.extensionActive){try{yield(r=t.activeProvider)===null||r===void 0?void 0:r.request({method:Ce.WALLET_REVOKEPERMISSIONS,params:[{eth_accounts:{}}]})}catch(o){ee("[MetaMaskSDK: terminate()] error revoking permissions",o)}return t.options.extensionOnly?void ee("[MetaMaskSDK: terminate()] extensionOnly --- prevent switching providers"):(t.activeProvider=t.sdkProvider,window.ethereum=t.activeProvider,t.extensionActive=!1,void t.emit(cn.ProviderUpdate,Wn.TERMINATE))}t.emit(cn.ProviderUpdate,Wn.TERMINATE),ee(`[MetaMaskSDK: terminate()] remoteConnection=${t.remoteConnection}`),(i=t.remoteConnection)===null||i===void 0||i.disconnect({terminate:!0,sendMessage:!0})}})}(this)}isInitialized(){return this._initialized}setReadOnlyRPCCalls(t){this.readonlyRPCCalls=t}hasReadOnlyRPCCalls(){return this.readonlyRPCCalls}getProvider(){if(this.activeProvider)return this.activeProvider;console.warn("MetaMaskSDK: No active provider found")}getMobileProvider(){if(!this.sdkProvider)throw new Error("SDK state invalid -- undefined mobile provider");return this.sdkProvider}getUniversalLink(){var t;const n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getUniversalLink();if(!n)throw new Error("No Universal Link available, please call eth_requestAccounts first.");return n}getChannelId(){var t,n;return(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getChannelConfig())===null||n===void 0?void 0:n.channelId}getRPCHistory(){var t,n;return(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getConnector())===null||n===void 0?void 0:n.getRPCMethodTracker()}getVersion(){return so.version}getWalletStatus(){var t,n;return(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getConnector())===null||n===void 0?void 0:n.getConnectionStatus()}_getChannelConfig(){var t;return(t=this.remoteConnection)===null||t===void 0?void 0:t.getChannelConfig()}_ping(){var t,n;(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getConnector())===null||n===void 0||n.ping()}_keyCheck(){var t,n;(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getConnector())===null||n===void 0||n.keyCheck()}_getServiceStatus(){var t,n;return(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getConnector())===null||n===void 0?void 0:n.getServiceStatus()}_getRemoteConnection(){return this.remoteConnection}_getDappMetadata(){return this.dappMetadata}_getKeyInfo(){var t;return(t=this.remoteConnection)===null||t===void 0?void 0:t.getKeyInfo()}_resetKeys(){var t,n;(n=(t=this.remoteConnection)===null||t===void 0?void 0:t.getConnector())===null||n===void 0||n.resetKeys()}_getConnection(){return this.remoteConnection}emit(t,n){return super.emit(t,n)}on(t,n){return super.on(t,n)}}var Xb=Object.defineProperty,X0=new WeakMap,ui=e=>X0.get(e),ep=(e,t)=>X0.set(t.$lazyInstance$=e,t),jg=(e,t)=>t in e,br=(e,t)=>(0,console.error)(e,t),zd=new Map,ec=new Map,f5="slot-fb{display:contents}slot-fb[hidden]{display:none}",ku=typeof window<"u"?window:{},ar=ku.document||{head:{}},Et={$flags$:0,$resourcesUrl$:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,r)=>e.addEventListener(t,n,r),rel:(e,t,n,r)=>e.removeEventListener(t,n,r),ce:(e,t)=>new CustomEvent(e,t)},h5=(()=>{try{return new CSSStyleSheet,typeof new CSSStyleSheet().replaceSync=="function"}catch{}return!1})(),kh=!1,Ug=[],p5=[],Kg=e=>{for(let t=0;t{Kg(Ug),Kg(p5),(kh=Ug.length>0)&&Et.raf(xh)},tp=e=>Promise.resolve(void 0).then(e),e9=((e,t)=>n=>{e.push(n),kh||(kh=!0,4&Et.$flags$?tp(xh):Et.raf(xh))})(p5),Hg={},np=e=>(e=typeof e)=="object"||e==="function";function m5(e){var t,n,r;return(r=(n=(t=e.head)==null?void 0:t.querySelector('meta[name="csp-nonce"]'))==null?void 0:n.getAttribute("content"))!=null?r:void 0}((e,t)=>{for(var n in t)Xb(e,n,{get:t[n],enumerable:!0})})({},{err:()=>g5,map:()=>t9,ok:()=>Ah,unwrap:()=>n9,unwrapErr:()=>r9});var Ah=e=>({isOk:!0,isErr:!1,value:e}),g5=e=>({isOk:!1,isErr:!0,value:e});function t9(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then(r=>Ah(r)):Ah(n)}if(e.isErr){const n=e.value;return g5(n)}throw"should never get here"}var rp,n9=e=>{if(e.isOk)return e.value;throw e.value},r9=e=>{if(e.isErr)return e.value;throw e.value},U=(e,t,...n)=>{let r=null,i=!1,o=!1;const s=[],a=c=>{for(let u=0;uc[u]).join(" "))}if(typeof e=="function")return e(t===null?{}:t,s,o9);const l=Xc(e,null);return l.$attrs$=t,s.length>0&&(l.$children$=s),l},Xc=(e,t)=>({$flags$:0,$tag$:e,$text$:t,$elm$:null,$children$:null,$attrs$:null}),i9={},o9={forEach:(e,t)=>e.map(zg).forEach(t),map:(e,t)=>e.map(zg).map(t).map(s9)},zg=e=>({vattrs:e.$attrs$,vchildren:e.$children$,vkey:e.$key$,vname:e.$name$,vtag:e.$tag$,vtext:e.$text$}),s9=e=>{if(typeof e.vtag=="function"){const n={...e.vattrs};return e.vkey&&(n.key=e.vkey),e.vname&&(n.name=e.vname),U(e.vtag,n,...e.vchildren||[])}const t=Xc(e.vtag,e.vtext);return t.$attrs$=e.vattrs,t.$children$=e.vchildren,t.$key$=e.vkey,t.$name$=e.vname,t},xu=e=>ui(e).$hostElement$,Vi=(e,t,n)=>{const r=xu(e);return{emit:i=>y5(r,t,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:i})}},y5=(e,t,n)=>{const r=Et.ce(t,n);return e.dispatchEvent(r),r},Vg=new WeakMap,v5=(e,t)=>"sc-"+e.$tagName$,Wg=(e,t,n,r,i,o)=>{if(n!==r){let s=jg(e,t),a=t.toLowerCase();if(t==="class"){const l=e.classList,c=qg(n),u=qg(r);l.remove(...c.filter(d=>d&&!u.includes(d))),l.add(...u.filter(d=>d&&!c.includes(d)))}else if(t==="style"){for(const l in n)r&&r[l]!=null||(l.includes("-")?e.style.removeProperty(l):e.style[l]="");for(const l in r)n&&r[l]===n[l]||(l.includes("-")?e.style.setProperty(l,r[l]):e.style[l]=r[l])}else if(s||t[0]!=="o"||t[1]!=="n"){const l=np(r);if((s||l&&r!==null)&&!i)try{if(e.tagName.includes("-"))e[t]=r;else{const c=r??"";t==="list"?s=!1:n!=null&&e[t]==c||(typeof e.__lookupSetter__(t)=="function"?e[t]=c:e.setAttribute(t,c))}}catch{}r==null||r===!1?r===!1&&e.getAttribute(t)!==""||e.removeAttribute(t):(!s||4&o||i)&&!l&&(r=r===!0?"":r,e.setAttribute(t,r))}else if(t=t[2]==="-"?t.slice(3):jg(ku,a)?a.slice(2):a[2]+t.slice(3),n||r){const l=t.endsWith(w5);t=t.replace(l9,""),n&&Et.rel(e,t,n,l),r&&Et.ael(e,t,r,l)}}},a9=/\s/,qg=e=>e?e.split(a9):[],w5="Capture",l9=new RegExp(w5+"$"),E5=(e,t,n)=>{const r=t.$elm$.nodeType===11&&t.$elm$.host?t.$elm$.host:t.$elm$,i=e&&e.$attrs$||Hg,o=t.$attrs$||Hg;for(const s of Gg(Object.keys(i)))s in o||Wg(r,s,i[s],void 0,n,t.$flags$);for(const s of Gg(Object.keys(o)))Wg(r,s,i[s],o[s],n,t.$flags$)};function Gg(e){return e.includes("ref")?[...e.filter(t=>t!=="ref"),"ref"]:e}var Sn=!1,ip=(e,t,n,r)=>{const i=t.$children$[n];let o,s,a=0;if(i.$text$!==null)o=i.$elm$=ar.createTextNode(i.$text$);else{if(Sn||(Sn=i.$tag$==="svg"),o=i.$elm$=ar.createElementNS(Sn?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",i.$tag$),Sn&&i.$tag$==="foreignObject"&&(Sn=!1),E5(null,i,Sn),o.getRootNode().querySelector("body"),i.$children$)for(a=0;a{let s,a=e;for(a.shadowRoot&&a.tagName===rp&&(a=a.shadowRoot);i<=o;++i)r[i]&&(s=ip(null,n,i),s&&(r[i].$elm$=s,tc(a,s,t)))},Zg=(e,t,n)=>{for(let r=t;r<=n;++r){const i=e[r];if(i){const o=i.$elm$;o&&o.remove()}}},Cl=(e,t,n=!1)=>e.$tag$===t.$tag$,Rs=(e,t,n=!1)=>{const r=t.$elm$=e.$elm$,i=e.$children$,o=t.$children$,s=t.$tag$,a=t.$text$;a===null?(E5(e,t,Sn=s==="svg"||s!=="foreignObject"&&Sn),i!==null&&o!==null?((l,c,u,d,f=!1)=>{let p,g=0,y=0,S=c.length-1,h=c[0],v=c[S],w=d.length-1,T=d[0],I=d[w];for(;g<=S&&y<=w;)h==null?h=c[++g]:v==null?v=c[--S]:T==null?T=d[++y]:I==null?I=d[--w]:Cl(h,T,f)?(Rs(h,T,f),h=c[++g],T=d[++y]):Cl(v,I,f)?(Rs(v,I,f),v=c[--S],I=d[--w]):Cl(h,I,f)?(Rs(h,I,f),tc(l,h.$elm$,v.$elm$.nextSibling),h=c[++g],I=d[--w]):Cl(v,T,f)?(Rs(v,T,f),tc(l,v.$elm$,h.$elm$),v=c[--S],T=d[++y]):(p=ip(c&&c[y],u,y),T=d[++y],p&&tc(h.$elm$.parentNode,p,h.$elm$));g>S?Yg(l,d[w+1]==null?null:d[w+1].$elm$,u,d,y,w):y>w&&Zg(c,g,S)})(r,i,t,o,n):o!==null?(e.$text$!==null&&(r.textContent=""),Yg(r,null,t,o,0,o.length-1)):!n&&i!==null&&Zg(i,0,i.length-1),Sn&&s==="svg"&&(Sn=!1)):e.$text$!==a&&(r.data=a)},tc=(e,t,n)=>e==null?void 0:e.insertBefore(t,n),b5=(e,t)=>{t&&!e.$onRenderResolve$&&t["s-p"]&&t["s-p"].push(new Promise(n=>e.$onRenderResolve$=n))},op=(e,t)=>{if(e.$flags$|=16,!(4&e.$flags$))return b5(e,e.$ancestorComponent$),e9(()=>c9(e,t));e.$flags$|=512},c9=(e,t)=>{const n=e.$hostElement$;e.$cmpMeta$.$tagName$;const r=e.$lazyInstance$;if(!r)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);return u9(void 0,()=>f9(e,r,t))},u9=(e,t)=>d9(e)?e.then(t).catch(n=>{console.error(n),t()}):t(),d9=e=>e instanceof Promise||e&&e.then&&typeof e.then=="function",f9=async(e,t,n)=>{var r;const i=e.$hostElement$;e.$cmpMeta$.$tagName$;const o=i["s-rc"];n&&(s=>{const a=s.$cmpMeta$,l=s.$hostElement$,c=a.$flags$;a.$tagName$;const u=((d,f,p)=>{var g;const y=v5(f),S=ec.get(y);if(d=d.nodeType===11?d:ar,S)if(typeof S=="string"){d=d.head||d;let h,v=Vg.get(d);if(v||Vg.set(d,v=new Set),!v.has(y)){{h=ar.createElement("style"),h.innerHTML=S;const w=(g=Et.$nonce$)!=null?g:m5(ar);if(w!=null&&h.setAttribute("nonce",w),!(1&f.$flags$))if(d.nodeName==="HEAD"){const T=d.querySelectorAll("link[rel=preconnect]"),I=T.length>0?T[T.length-1].nextSibling:d.querySelector("style");d.insertBefore(h,I)}else if("host"in d)if(h5){const T=new CSSStyleSheet;T.replaceSync(S),d.adoptedStyleSheets=[T,...d.adoptedStyleSheets]}else{const T=d.querySelector("style");T?T.innerHTML=S+T.innerHTML:d.prepend(h)}else d.append(h);1&f.$flags$&&d.nodeName!=="HEAD"&&d.insertBefore(h,null)}4&f.$flags$&&(h.innerHTML+=f5),v&&v.add(y)}}else d.adoptedStyleSheets.includes(S)||(d.adoptedStyleSheets=[...d.adoptedStyleSheets,S]);return y})(l.shadowRoot?l.shadowRoot:l.getRootNode(),a);10&c&&2&c&&(l["s-sc"]=u,l.classList.add(u+"-h"))})(e),e.$cmpMeta$.$tagName$,h9(e,t,i,n),o&&(o.map(s=>s()),i["s-rc"]=void 0);{const s=(r=i["s-p"])!=null?r:[],a=()=>p9(e);s.length===0?a():(Promise.all(s).then(a),e.$flags$|=4,s.length=0)}},h9=(e,t,n,r)=>{try{t=t.render(),e.$flags$&=-17,e.$flags$|=2,((i,o,s=!1)=>{const a=i.$hostElement$,l=i.$cmpMeta$,c=i.$vnode$||Xc(null,null),u=(d=o)&&d.$tag$===i9?o:U(null,null,o);var d;if(rp=a.tagName,s&&u.$attrs$)for(const f of Object.keys(u.$attrs$))a.hasAttribute(f)&&!["key","ref","style","class"].includes(f)&&(u.$attrs$[f]=a[f]);u.$tag$=null,u.$flags$|=4,i.$vnode$=u,u.$elm$=c.$elm$=a.shadowRoot||a,a["s-sc"],1&l.$flags$,Rs(c,u,s)})(e,t,r)}catch(i){br(i,e.$hostElement$)}return null},p9=e=>{e.$cmpMeta$.$tagName$;const t=e.$hostElement$,n=e.$ancestorComponent$;64&e.$flags$||(e.$flags$|=64,_5(t),e.$onReadyResolve$(t),n||C5()),e.$onRenderResolve$&&(e.$onRenderResolve$(),e.$onRenderResolve$=void 0),512&e.$flags$&&tp(()=>op(e,!1)),e.$flags$&=-517},C5=e=>{_5(ar.documentElement),tp(()=>y5(ku,"appload",{detail:{namespace:"sdk-install-modal-web"}}))},S5=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(r){br(r)}},_5=e=>e.classList.add("hydrated"),Qg=(e,t,n)=>{var r,i;const o=e.prototype;if(t.$members$||t.$watchers$||e.watchers){e.watchers&&!t.$watchers$&&(t.$watchers$=e.watchers);const s=Object.entries((r=t.$members$)!=null?r:{});if(s.map(([a,[l]])=>{(31&l||2&n&&32&l)&&Object.defineProperty(o,a,{get(){return c=a,ui(this).$instanceValues$.get(c);var c},set(c){((u,d,f,p)=>{const g=ui(u);if(!g)throw new Error(`Couldn't find host element for "${p.$tagName$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const y=g.$hostElement$,S=g.$instanceValues$.get(d),h=g.$flags$,v=g.$lazyInstance$;var w,T;w=f,T=p.$members$[d][0],f=w==null||np(w)?w:4&T?w!=="false"&&(w===""||!!w):1&T?String(w):w;const I=Number.isNaN(S)&&Number.isNaN(f);if((!(8&h)||S===void 0)&&f!==S&&!I&&(g.$instanceValues$.set(d,f),v)){if(p.$watchers$&&128&h){const j=p.$watchers$[d];j&&j.map(D=>{try{v[D](f,S,d)}catch(H){br(H,y)}})}(18&h)==2&&op(g,!1)}})(this,a,c,t)},configurable:!0,enumerable:!0})}),1&n){const a=new Map;o.attributeChangedCallback=function(l,c,u){Et.jmp(()=>{var d;const f=a.get(l);if(this.hasOwnProperty(f))u=this[f],delete this[f];else{if(o.hasOwnProperty(f)&&typeof this[f]=="number"&&this[f]==u)return;if(f==null){const p=ui(this),g=p==null?void 0:p.$flags$;if(g&&!(8&g)&&128&g&&u!==c){const y=p.$lazyInstance$,S=(d=t.$watchers$)==null?void 0:d[l];S==null||S.forEach(h=>{y[h]!=null&&y[h].call(y,u,c,l)})}return}}this[f]=(u!==null||typeof this[f]!="boolean")&&u})},e.observedAttributes=Array.from(new Set([...Object.keys((i=t.$watchers$)!=null?i:{}),...s.filter(([l,c])=>15&c[0]).map(([l,c])=>{const u=c[1]||l;return a.set(u,l),u})]))}}return e},Vd=e=>{S5(e,"connectedCallback")},Jg=e=>{S5(e,"disconnectedCallback")},m9=(e,t={})=>{var n;const r=[],i=t.exclude||[],o=ku.customElements,s=ar.head,a=s.querySelector("meta[charset]"),l=ar.createElement("style"),c=[];let u,d=!0;Object.assign(Et,t),Et.$resourcesUrl$=new URL(t.resourcesUrl||"./",ar.baseURI).href;let f=!1;if(e.map(p=>{p[1].map(g=>{var y;const S={$flags$:g[0],$tagName$:g[1],$members$:g[2],$listeners$:g[3]};4&S.$flags$&&(f=!0),S.$members$=g[2],S.$watchers$=(y=g[4])!=null?y:{};const h=S.$tagName$,v=class extends HTMLElement{constructor(w){if(super(w),this.hasRegisteredEventListeners=!1,((T,I)=>{const j={$flags$:0,$hostElement$:T,$cmpMeta$:I,$instanceValues$:new Map};j.$onReadyPromise$=new Promise(D=>j.$onReadyResolve$=D),T["s-p"]=[],T["s-rc"]=[],X0.set(T,j)})(w=this,S),1&S.$flags$)if(w.shadowRoot){if(w.shadowRoot.mode!=="open")throw new Error(`Unable to re-use existing shadow root for ${S.$tagName$}! Mode is set to ${w.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else w.attachShadow({mode:"open"})}connectedCallback(){ui(this),this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),u&&(clearTimeout(u),u=null),d?c.push(this):Et.jmp(()=>(w=>{if(!(1&Et.$flags$)){const T=ui(w),I=T.$cmpMeta$;if(I.$tagName$,1&T.$flags$)T!=null&&T.$lazyInstance$?Vd(T.$lazyInstance$):T!=null&&T.$onReadyPromise$&&T.$onReadyPromise$.then(()=>Vd(T.$lazyInstance$));else{T.$flags$|=1;{let j=w;for(;j=j.parentNode||j.host;)if(j["s-p"]){b5(T,T.$ancestorComponent$=j);break}}I.$members$&&Object.entries(I.$members$).map(([j,[D]])=>{if(31&D&&w.hasOwnProperty(j)){const H=w[j];delete w[j],w[j]=H}}),(async(j,D,H,G)=>{let K;if(!(32&D.$flags$)){if(D.$flags$|=32,H.$lazyBundleId$){const C=((m,_,M)=>{const A=m.$tagName$.replace(/-/g,"_"),P=m.$lazyBundleId$;if(!P)return;const L=zd.get(P);if(L)return L[A];{const B=$=>(zd.set(P,$),$[A]);switch(P){case"mm-install-modal":return Promise.resolve().then(function(){return x9}).then(B,br);case"mm-pending-modal":return Promise.resolve().then(function(){return A9}).then(B,br);case"mm-select-modal":return Promise.resolve().then(function(){return P9}).then(B,br)}}return cE(()=>import(`./${P}.entry.js`),[],import.meta.url).then(B=>(zd.set(P,B),B[A]),br)})(H);if(K=C&&"then"in C?await C:C,!K)throw new Error(`Constructor for "${H.$tagName$}#${D.$modeName$}" was not found`);K.isProxied||(H.$watchers$=K.watchers,Qg(K,H,2),K.isProxied=!0),H.$tagName$,D.$flags$|=8;try{new K(D)}catch(m){br(m)}D.$flags$&=-9,D.$flags$|=128,Vd(D.$lazyInstance$)}else{K=j.constructor;const C=j.localName;customElements.whenDefined(C).then(()=>D.$flags$|=128)}if(K&&K.style){let C;typeof K.style=="string"&&(C=K.style);const m=v5(H);ec.has(m)||(H.$tagName$,((_,M,A)=>{let P=ec.get(_);h5&&A?(P=P||new CSSStyleSheet,typeof P=="string"?P=M:P.replaceSync(M)):P=M,ec.set(_,P)})(m,C,!!(1&H.$flags$)))}}const q=D.$ancestorComponent$,W=()=>op(D,!0);q&&q["s-rc"]?q["s-rc"].push(W):W()})(w,T,I)}}})(this))}disconnectedCallback(){Et.jmp(()=>(async w=>{if(!(1&Et.$flags$)){const T=ui(w);T!=null&&T.$lazyInstance$?Jg(T.$lazyInstance$):T!=null&&T.$onReadyPromise$&&T.$onReadyPromise$.then(()=>Jg(T.$lazyInstance$))}})(this))}componentOnReady(){return ui(this).$onReadyPromise$}};S.$lazyBundleId$=p[0],i.includes(h)||o.get(h)||(r.push(h),o.define(h,Qg(v,S,1)))})}),r.length>0&&(f&&(l.textContent+=f5),l.textContent+=r.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",l.innerHTML.length)){l.setAttribute("data-styles","");const p=(n=Et.$nonce$)!=null?n:m5(ar);p!=null&&l.setAttribute("nonce",p),s.insertBefore(l,a?a.nextSibling:s.firstChild)}d=!1,c.length?c.map(p=>p.connectedCallback()):Et.jmp(()=>u=setTimeout(C5,30))};(function(){if(typeof window<"u"&&window.Reflect!==void 0&&window.customElements!==void 0){var e=HTMLElement;window.HTMLElement=function(){return Reflect.construct(e,[],this.constructor)},HTMLElement.prototype=e.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,e)}})();var g9=Object.freeze({__proto__:null,defineCustomElements:async(e,t)=>{if(typeof window<"u")return await void 0,m9([["mm-install-modal",[[1,"mm-install-modal",{link:[1],sdkVersion:[1,"sdk-version"],preferDesktop:[4,"prefer-desktop"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:["updatePreferDesktop"]}]]],["mm-pending-modal",[[1,"mm-pending-modal",{displayOTP:[4,"display-o-t-p"],sdkVersion:[1,"sdk-version"],otpCode:[1,"otp-code"],translationsLoaded:[32]}]]],["mm-select-modal",[[1,"mm-select-modal",{link:[1],sdkVersion:[1,"sdk-version"],preferDesktop:[4,"prefer-desktop"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:["updatePreferDesktop"]}]]]],t)},setNonce:e=>Et.$nonce$=e});const y9={fontFamily:"Roboto, sans-serif"},sp=({className:e},t)=>U("div",{style:y9,class:e},t);function ap({version:e}){return U("div",{style:{textAlign:"center",color:"#BBC0C5",fontSize:"12"}},"SDK Version ",e?`v${e}`:"unknown")}const lp=()=>U("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("rect",{width:"16",height:"16",fill:"white"}),U("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M2.40554 2.40554C2.94627 1.86482 3.82296 1.86482 4.36369 2.40554L8 6.04186L11.6363 2.40554C12.177 1.86482 13.0537 1.86482 13.5945 2.40554C14.1352 2.94627 14.1352 3.82296 13.5945 4.36369L9.95814 8L13.5945 11.6363C14.1352 12.177 14.1352 13.0537 13.5945 13.5945C13.0537 14.1352 12.177 14.1352 11.6363 13.5945L8 9.95814L4.36369 13.5945C3.82296 14.1352 2.94627 14.1352 2.40554 13.5945C1.86482 13.0537 1.86482 12.177 2.40554 11.6363L6.04186 8L2.40554 4.36369C1.86482 3.82296 1.86482 2.94627 2.40554 2.40554Z",fill:"#BBC0C5"})),cp=()=>U("svg",{width:"273",height:"51",viewBox:"0 0 273 51",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M240.882 25.9263C239.472 24.997 237.916 24.3361 236.443 23.5101C235.489 22.9731 234.473 22.4982 233.643 21.8167C232.233 20.6602 232.524 18.3885 233.996 17.3973C236.112 15.993 239.617 16.7777 239.99 19.6483C239.99 19.7102 240.052 19.7515 240.114 19.7515H243.308C243.391 19.7515 243.454 19.6896 243.433 19.607C243.267 17.6244 242.5 15.9723 241.089 14.9191C239.741 13.9072 238.206 13.3702 236.568 13.3702C228.127 13.3702 227.359 22.271 231.901 25.0796C232.42 25.41 236.879 27.6404 238.455 28.611C240.032 29.5816 240.529 31.3576 239.845 32.7619C239.223 34.0423 237.605 34.9303 235.987 34.8271C234.224 34.7238 232.855 33.7738 232.378 32.2869C232.295 32.0185 232.254 31.5022 232.254 31.275C232.254 31.2131 232.192 31.1511 232.129 31.1511H228.666C228.604 31.1511 228.541 31.2131 228.541 31.275C228.541 33.7738 229.164 35.1575 230.864 36.4172C232.461 37.615 234.203 38.1106 236.008 38.1106C240.737 38.1106 243.184 35.4466 243.682 32.6793C244.117 29.974 243.308 27.5371 240.882 25.9263Z",fill:"#24292E"}),U("path",{d:"M90.4943 13.8246H88.9595H87.2795C87.2173 13.8246 87.1758 13.8659 87.1551 13.9072L84.3137 23.2416C84.2722 23.3655 84.1063 23.3655 84.0648 23.2416L81.2234 13.9072C81.2026 13.8452 81.1612 13.8246 81.0989 13.8246H79.419H77.8842H75.8102C75.748 13.8246 75.6857 13.8865 75.6857 13.9485V37.7802C75.6857 37.8422 75.748 37.9041 75.8102 37.9041H79.2738C79.336 37.9041 79.3982 37.8422 79.3982 37.7802V19.6689C79.3982 19.5244 79.6056 19.5037 79.6471 19.6276L82.5093 29.024L82.7167 29.6849C82.7374 29.7468 82.7789 29.7675 82.8411 29.7675H85.4959C85.5581 29.7675 85.5996 29.7262 85.6203 29.6849L85.8277 29.024L88.6899 19.6276C88.7313 19.4831 88.9387 19.5244 88.9387 19.6689V37.7802C88.9387 37.8422 89.001 37.9041 89.0632 37.9041H92.5268C92.589 37.9041 92.6513 37.8422 92.6513 37.7802V13.9485C92.6513 13.8865 92.589 13.8246 92.5268 13.8246H90.4943Z",fill:"#24292E"}),U("path",{d:"M187.849 13.8246C187.787 13.8246 187.745 13.8659 187.725 13.9072L184.883 23.2416C184.842 23.3655 184.676 23.3655 184.634 23.2416L181.793 13.9072C181.772 13.8452 181.731 13.8246 181.668 13.8246H176.4C176.338 13.8246 176.276 13.8865 176.276 13.9485V37.7802C176.276 37.8422 176.338 37.9041 176.4 37.9041H179.864C179.926 37.9041 179.988 37.8422 179.988 37.7802V19.6689C179.988 19.5244 180.196 19.5037 180.237 19.6276L183.099 29.024L183.307 29.6849C183.328 29.7468 183.369 29.7675 183.431 29.7675H186.086C186.148 29.7675 186.19 29.7262 186.211 29.6849L186.418 29.024L189.28 19.6276C189.322 19.4831 189.529 19.5244 189.529 19.6689V37.7802C189.529 37.8422 189.591 37.9041 189.653 37.9041H193.117C193.179 37.9041 193.241 37.8422 193.241 37.7802V13.9485C193.241 13.8865 193.179 13.8246 193.117 13.8246H187.849Z",fill:"#24292E"}),U("path",{d:"M143.174 13.8246H136.724H133.261H126.81C126.748 13.8246 126.686 13.8865 126.686 13.9485V16.9223C126.686 16.9843 126.748 17.0462 126.81 17.0462H133.136V37.7802C133.136 37.8422 133.198 37.9041 133.261 37.9041H136.724C136.786 37.9041 136.849 37.8422 136.849 37.7802V17.0462H143.174C143.237 17.0462 143.299 16.9843 143.299 16.9223V13.9485C143.299 13.8865 143.257 13.8246 143.174 13.8246Z",fill:"#24292E"}),U("path",{d:"M163.604 37.9041H166.756C166.839 37.9041 166.901 37.8215 166.881 37.7389L160.368 13.8245C160.347 13.7626 160.306 13.7419 160.244 13.7419H159.041H156.925H155.722C155.66 13.7419 155.619 13.7832 155.598 13.8245L149.085 37.7389C149.065 37.8215 149.127 37.9041 149.21 37.9041H152.362C152.425 37.9041 152.466 37.8628 152.487 37.8215L154.374 30.862C154.395 30.8 154.436 30.7794 154.499 30.7794H161.467C161.53 30.7794 161.571 30.8207 161.592 30.862L163.479 37.8215C163.5 37.8628 163.562 37.9041 163.604 37.9041ZM155.328 27.3719L157.859 18.0581C157.9 17.9342 158.066 17.9342 158.107 18.0581L160.638 27.3719C160.659 27.4545 160.596 27.5371 160.513 27.5371H155.453C155.37 27.5371 155.308 27.4545 155.328 27.3719Z",fill:"#24292E"}),U("path",{d:"M217.362 37.9041H220.515C220.598 37.9041 220.66 37.8215 220.639 37.7389L214.127 13.8245C214.106 13.7626 214.065 13.7419 214.002 13.7419H212.8H210.684H209.481C209.419 13.7419 209.377 13.7832 209.357 13.8245L202.844 37.7389C202.823 37.8215 202.886 37.9041 202.969 37.9041H206.121C206.183 37.9041 206.225 37.8628 206.246 37.8215L208.133 30.862C208.154 30.8 208.195 30.7794 208.257 30.7794H215.226C215.288 30.7794 215.33 30.8207 215.351 30.862L217.238 37.8215C217.259 37.8628 217.3 37.9041 217.362 37.9041ZM209.087 27.3719L211.617 18.0581C211.659 17.9342 211.825 17.9342 211.866 18.0581L214.397 27.3719C214.417 27.4545 214.355 27.5371 214.272 27.5371H209.211C209.129 27.5371 209.066 27.4545 209.087 27.3719Z",fill:"#24292E"}),U("path",{d:"M106.713 34.3727V26.9795C106.713 26.9176 106.775 26.8556 106.837 26.8556H116.067C116.129 26.8556 116.191 26.7936 116.191 26.7317V23.7579C116.191 23.6959 116.129 23.634 116.067 23.634H106.837C106.775 23.634 106.713 23.572 106.713 23.5101V17.1907C106.713 17.1288 106.775 17.0668 106.837 17.0668H117.332C117.394 17.0668 117.457 17.0049 117.457 16.9429V13.9691C117.457 13.9072 117.394 13.8452 117.332 13.8452H106.713H103.125C103.063 13.8452 103.001 13.9072 103.001 13.9691V17.0668V23.6546V26.8763V34.5173V37.7802C103.001 37.8422 103.063 37.9041 103.125 37.9041H106.713H117.768C117.83 37.9041 117.892 37.8422 117.892 37.7802V34.6412C117.892 34.5792 117.83 34.5173 117.768 34.5173H106.817C106.755 34.4966 106.713 34.4553 106.713 34.3727Z",fill:"#24292E"}),U("path",{d:"M272.532 37.6976L260.544 25.3687C260.502 25.3274 260.502 25.2448 260.544 25.2035L271.329 14.0517C271.412 13.9691 271.349 13.8452 271.246 13.8452H266.828C266.787 13.8452 266.766 13.8659 266.745 13.8865L257.599 23.3449C257.516 23.4275 257.391 23.3655 257.391 23.2623V13.9691C257.391 13.9072 257.329 13.8452 257.267 13.8452H253.803C253.741 13.8452 253.679 13.9072 253.679 13.9691V37.8009C253.679 37.8628 253.741 37.9248 253.803 37.9248H257.267C257.329 37.9248 257.391 37.8628 257.391 37.8009V27.3099C257.391 27.2067 257.536 27.1447 257.599 27.2273L267.969 37.8835C267.989 37.9041 268.031 37.9248 268.052 37.9248H272.469C272.552 37.9041 272.615 37.7596 272.532 37.6976Z",fill:"#24292E"}),U("path",{d:"M52.021 1L31.0526 16.4886L34.9517 7.36063L52.021 1Z",fill:"#E17726",stroke:"#E17726","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M3.65491 1L24.4366 16.6331L20.7241 7.36063L3.65491 1Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M44.4716 36.9127L38.8925 45.4211L50.8389 48.7047L54.261 37.0986L44.4716 36.9127Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M1.43555 37.0986L4.83695 48.7047L16.7626 45.4211L11.2042 36.9127L1.43555 37.0986Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M16.1197 22.5395L12.8013 27.5371L24.6232 28.074L24.2292 15.3734L16.1197 22.5395Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M39.5561 22.5394L31.3222 15.2288L31.0526 28.0739L42.8746 27.537L39.5561 22.5394Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M16.7626 45.4212L23.918 41.9724L17.7582 37.1813L16.7626 45.4212Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M31.7578 41.9724L38.8925 45.4212L37.9177 37.1813L31.7578 41.9724Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M38.8923 45.4212L31.7577 41.9724L32.3384 46.5983L32.2762 48.5602L38.8923 45.4212Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M16.7625 45.4212L23.3994 48.5602L23.3579 46.5983L23.9179 41.9724L16.7625 45.4212Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M23.5239 34.1249L17.5922 32.3902L21.7818 30.4696L23.5239 34.1249Z",fill:"#233447",stroke:"#233447","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M32.1517 34.1249L33.8939 30.4696L38.1042 32.3902L32.1517 34.1249Z",fill:"#233447",stroke:"#233447","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M16.7626 45.4212L17.7996 36.9128L11.2042 37.0987L16.7626 45.4212Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M37.8761 36.9128L38.8924 45.4212L44.4715 37.0987L37.8761 36.9128Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M42.8745 27.5371L31.0526 28.074L32.1518 34.1249L33.894 30.4696L38.1042 32.3902L42.8745 27.5371Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M17.5922 32.3902L21.7817 30.4696L23.5239 34.1249L24.6232 28.074L12.8012 27.5371L17.5922 32.3902Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M12.8013 27.5371L17.7582 37.1813L17.5923 32.3902L12.8013 27.5371Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M38.1044 32.3902L37.9177 37.1813L42.8746 27.5371L38.1044 32.3902Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M24.6232 28.0741L23.524 34.125L24.9136 41.2703L25.2247 31.8533L24.6232 28.0741Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M31.0526 28.0741L30.4719 31.8327L30.7623 41.2703L32.1519 34.125L31.0526 28.0741Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M32.1519 34.1249L30.7623 41.2702L31.7578 41.9724L37.9177 37.1813L38.1043 32.3901L32.1519 34.1249Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M17.5922 32.3901L17.7581 37.1813L23.918 41.9724L24.9135 41.2702L23.5239 34.1249L17.5922 32.3901Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M32.2763 48.5602L32.3385 46.5983L31.7993 46.1439H23.8765L23.358 46.5983L23.3995 48.5602L16.7626 45.4211L19.0855 47.3211L23.7935 50.5633H31.8615L36.5903 47.3211L38.8924 45.4211L32.2763 48.5602Z",fill:"#C0AC9D",stroke:"#C0AC9D","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M31.7578 41.9724L30.7622 41.2703H24.9135L23.918 41.9724L23.358 46.5983L23.8765 46.144H31.7993L32.3385 46.5983L31.7578 41.9724Z",fill:"#24292E",stroke:"#24292E","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M52.9128 17.5005L54.6757 8.95079L52.021 1L31.7578 15.9723L39.5561 22.5394L50.5692 25.7404L52.9958 22.9111L51.938 22.147L53.618 20.6188L52.3321 19.6276L54.0121 18.3472L52.9128 17.5005Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M1 8.95079L2.78366 17.5005L1.64295 18.3472L3.34365 19.6276L2.05775 20.6188L3.73771 22.147L2.67996 22.9111L5.10657 25.7404L16.1196 22.5394L23.918 15.9723L3.65475 1L1 8.95079Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M50.5692 25.7404L39.5561 22.5394L42.8746 27.5371L37.9177 37.1813L44.4716 37.0987H54.261L50.5692 25.7404Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M16.1196 22.5394L5.10651 25.7404L1.43549 37.0987H11.2041L17.7581 37.1813L12.8011 27.5371L16.1196 22.5394Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M31.0526 28.0741L31.7578 15.9724L34.9518 7.36072H20.7239L23.9179 15.9724L24.6231 28.0741L24.8927 31.8739L24.9135 41.2703H30.7622L30.783 31.8739L31.0526 28.0741Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"})),Wd={DESKTOP:"Desktop",MOBILE:"Mobile",META_MASK_MOBILE_APP:"MetaMask mobile app",SCAN_TO_CONNECT:"Scan to connect and sign with",CONNECT_WITH_EXTENSION:"Connect With MetaMask Extension",INSTALL_MODAL:{TRUSTED_BY_USERS:"Trusted by over 30 million users to buy, store, send and swap crypto securely",LEADING_CRYPTO_WALLET:"The leading crypto wallet & gateway to blockchain apps built on Ethereum Mainnet, Polygon, Optimism, and many other networks",CONTROL_DIGITAL_INTERACTIONS:"Puts you in control of your digital interactions by making power of cryptography more accessible",INSTALL_META_MASK_EXTENSION:"Install MetaMask Extension"},PENDING_MODAL:{OPEN_META_MASK_SELECT_CODE:"Please open the MetaMask wallet app and select the code on the screen OR disconnect",OPEN_META_MASK_CONTINUE:"Open the MetaMask app to continue with your session.",NUMBER_AFTER_OPEN_NOTICE:"If a number doesn't appear after opening MetaMask, please click disconnect and re-scan the QRCode.",DISCONNECT:"Disconnect"},SELECT_MODAL:{CRYPTO_TAKE_CONTROL_TEXT:"Take control of your crypto and explore the blockchain with the wallet trusted by over 30 million people worldwide"},META_MASK_MODAL:{ADDRESS_COPIED:"Address copied to clipboard!",DISCONNECT:"Disconnect",ACTIVE_NETWORK:"Active Network"}};class up{constructor(t){var n;this.translations=Wd,this.supportedLocales=["es","fr","he","it","pt","tr"],this.baseUrl=(n=t==null?void 0:t.baseUrl)!==null&&n!==void 0?n:"https://raw.githubusercontent.com/MetaMask/metamask-sdk/refs/heads/gh-pages/locales"}getBrowserLanguage(){if((navigator.languages||[navigator.language]).some(n=>n.toLowerCase().startsWith("en")))return"en";const t=navigator.language.toLowerCase().split("-")[0];return this.supportedLocales.includes(t)?t:"en"}async init(t){const n=this.getBrowserLanguage()||t.fallbackLng;await this.loadTranslations(n)}async loadTranslations(t){const n=t.split("-")[0];if(n!=="en"&&this.supportedLocales.includes(n))try{const r=`${this.baseUrl}/${n}.json`,i=await fetch(r);if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);this.translations=await i.json()}catch(r){console.warn(`❌ Failed to load ${n} translations, falling back to English:`,r),this.translations=Wd}else this.translations=Wd}t(t){return this.getNestedTranslation(t,this.translations)||t}getNestedTranslation(t,n){const r=t.split(".");let i=n;for(const o of r){if(typeof i!="object")return"";i=i[o]}return typeof i=="string"?i:""}}function Ti(e,t){return e.toString(2).padStart(t,"0")}function Xg(e,t){const n=e%t;return n>=0?n:t+n}function ln(e,t){return new Array(e).fill(t)}function ey(...e){let t=0;for(const r of e)t=Math.max(t,r.length);const n=[];for(let r=0;r=i.length||n.push(i[r]);return new Uint8Array(n)}function ty(e,t,n){if(n<0||n+t.length>e.length)return!1;for(let r=0;re.includes(t),decode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="string")throw new Error("alphabet.decode input should be array of strings");return t.map(n=>{if(typeof n!="string")throw new Error(`alphabet.decode: not string element=${n}`);const r=e.indexOf(n);if(r===-1)throw new Error(`Unknown letter: "${n}". Allowed: ${e}`);return r})},encode:t=>{if(!Array.isArray(t)||t.length&&typeof t[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return t.map(n=>{if(function(r){if(!Number.isSafeInteger(r))throw new Error(`Wrong integer: ${r}`)}(n),n<0||n>=e.length)throw new Error(`Digit index outside alphabet: ${n} (alphabet: ${e.length})`);return e[n]})}}}class on{static size(t,n){if(typeof t=="number"&&(t={height:t,width:t}),!Number.isSafeInteger(t.height)&&t.height!==1/0)throw new Error(`Bitmap: wrong height=${t.height} (${typeof t.height})`);if(!Number.isSafeInteger(t.width)&&t.width!==1/0)throw new Error(`Bitmap: wrong width=${t.width} (${typeof t.width})`);return n!==void 0&&(t={width:Math.min(t.width,n.width),height:Math.min(t.height,n.height)}),t}static fromString(t){const n=(t=t.replace(/^\n+/g,"").replace(/\n+$/g,"")).split(` +`),r=n.length,i=new Array(r);let o;for(const s of n){const a=s.split("").map(l=>{if(l==="X")return!0;if(l===" ")return!1;if(l!=="?")throw new Error(`Bitmap.fromString: unknown symbol=${l}`)});if(o&&a.length!==o)throw new Error(`Bitmap.fromString different row sizes: width=${o} cur=${a.length}`);o=a.length,i.push(a)}return o||(o=0),new on({height:r,width:o},i)}constructor(t,n){const{height:r,width:i}=on.size(t);this.data=n||Array.from({length:r},()=>ln(i,void 0)),this.height=r,this.width=i}point(t){return this.data[t.y][t.x]}isInside(t){return 0<=t.x&&t.x(r(i,o),o))}hLine(t,n,r){return this.rect(t,{width:n,height:1},r)}vLine(t,n,r){return this.rect(t,{width:1,height:n},r)}border(t=2,n){const r=this.height+2*t,i=this.width+2*t,o=ln(t,n),s=Array.from({length:t},()=>ln(i,n));return new on({height:r,width:i},[...s,...this.data.map(a=>[...o,...a,...o]),...s])}embed(t,n){return this.rect(t,n.size(),({x:r,y:i})=>n.data[i][r])}rectSlice(t,n=this.size()){const r=new on(on.size(n,this.size(this.xy(t))));return this.rect(t,n,({x:i,y:o},s)=>r.data[o][i]=s),r}inverse(){const{height:t,width:n}=this;return new on({height:n,width:t}).rect({x:0,y:0},1/0,({x:r,y:i})=>this.data[r][i])}scale(t){if(!Number.isSafeInteger(t)||t>1024)throw new Error(`Wrong scale factor: ${t}`);const{height:n,width:r}=this;return new on({height:t*n,width:t*r}).rect({x:0,y:0},1/0,({x:i,y:o})=>this.data[Math.floor(o/t)][Math.floor(i/t)])}clone(){return new on(this.size()).rect({x:0,y:0},this.size(),({x:t,y:n})=>this.data[n][t])}assertDrawn(){this.rectRead(0,1/0,(t,n)=>{if(typeof n!="boolean")throw new Error("Invalid color type="+typeof n)})}toString(){return this.data.map(t=>t.map(n=>n===void 0?"?":n?"X":" ").join("")).join(` +`)}toASCII(){const{height:t,width:n,data:r}=this;let i="";for(let o=0;o=t||r[o+1][s];a||l?!a&&l?i+="▀":a&&!l?i+="▄":a&&l&&(i+=" "):i+="█"}i+=` +`}return i}toTerm(){const t="\x1B[0m",n=`\x1B[1;47m ${t}`,r=`\x1B[40m ${t}`;return this.data.map(i=>i.map(o=>o?r:n).join("")).join(` +`)}toSVG(){let t=``;return this.rectRead(0,1/0,({x:n,y:r},i)=>{i&&(t+=``)}),t+="",t}toGIF(){const t=a=>[255&a,a>>>8&255],n=[...t(this.width),...t(this.height)],r=[];this.rectRead(0,1/0,(a,l)=>r.push(+(l===!0)));const i=126,o=[71,73,70,56,55,97,...n,246,0,0,255,255,255,...ln(381,0),44,0,0,0,0,...n,0,7],s=Math.floor(r.length/i);for(let a=0;a+l));return o.push(r.length%i+1,128,...r.slice(s*i).map(a=>+a)),o.push(1,129,0,59),new Uint8Array(o)}toImage(t=!1){const{height:n,width:r}=this.size(),i=new Uint8Array(n*r*(t?3:4));let o=0;for(let s=0;s21+4*(e-1),decode:e=>(e-17)/4},sizeType:e=>Math.floor((e+7)/17),alignmentPatterns(e){if(e===1)return[];const t=Ot.size.encode(e)-6-1,n=t-6,r=Math.ceil(n/28);let i=Math.floor(n/r);i%2?i+=1:n%r*2>=r&&(i+=2);const o=[6];for(let s=1;s>9);return(n<<10|r)^Ot.formatMask},versionBits(e){let t=e;for(let n=0;n<12;n++)t=t<<1^7973*(t>>11);return e<<12|t},alphabet:{numeric:ny("0123456789"),alphanumerc:ny("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:")},lengthBits:(e,t)=>({numeric:[10,12,14],alphanumeric:[9,11,13],byte:[8,16,16],kanji:[8,10,12],eci:[0,0,0]})[t][Ot.sizeType(e)],modeBits:{numeric:"0001",alphanumeric:"0010",byte:"0100",kanji:"1000",eci:"0111"},capacity(e,t){const n=v9[e-1],r=w9[t][e-1],i=E9[t][e-1],o=Math.floor(n/i)-r,s=i-n%i;return{words:r,numBlocks:i,shortBlocks:s,blockLen:o,capacity:8*(n-r*i),total:(r+o)*i+i-s}}},Mh=[(e,t)=>(e+t)%2==0,(e,t)=>t%2==0,(e,t)=>e%3==0,(e,t)=>(e+t)%3==0,(e,t)=>(Math.floor(t/2)+Math.floor(e/3))%2==0,(e,t)=>e*t%2+e*t%3==0,(e,t)=>(e*t%2+e*t%3)%2==0,(e,t)=>((e+t)%2+e*t%3)%2==0],ve={tables:(e=>{const t=ln(256,0),n=ln(256,0);for(let r=0,i=1;r<256;r++)t[r]=i,n[i]=r,i<<=1,256&i&&(i^=285);return{exp:t,log:n}})(),exp:e=>ve.tables.exp[e],log(e){if(e===0)throw new Error(`GF.log: wrong arg=${e}`);return ve.tables.log[e]%255},mul:(e,t)=>e===0||t===0?0:ve.tables.exp[(ve.tables.log[e]+ve.tables.log[t])%255],add:(e,t)=>e^t,pow:(e,t)=>ve.tables.exp[ve.tables.log[e]*t%255],inv(e){if(e===0)throw new Error(`GF.inverse: wrong arg=${e}`);return ve.tables.exp[255-ve.tables.log[e]]},polynomial(e){if(e.length==0)throw new Error("GF.polymomial: wrong length");if(e[0]!==0)return e;let t=0;for(;te.length-1,coefficient:(e,t)=>e[ve.degree(e)-t],mulPoly(e,t){if(e[0]===0||t[0]===0)return[0];const n=ln(e.length+t.length-1,0);for(let r=0;rr.length&&([n,r]=[r,n]);let i=ln(r.length,0),o=r.length-n.length,s=r.slice(0,o);for(let a=0;a=n;){let c=r,u=o;if(r=i,o=s,r[0]===0)throw new Error("rLast[0] === 0");i=c;let d=[0];const f=ve.inv(r[0]);for(;ve.degree(i)>=ve.degree(r)&&i[0]!==0;){const p=ve.degree(i)-ve.degree(r),g=ve.mul(i[0],f);d=ve.addPoly(d,ve.monomial(p,g)),i=ve.addPoly(i,ve.mulPolyMonomial(r,p,g))}if(d=ve.mulPoly(d,o),s=ve.addPoly(d,u),ve.degree(i)>=ve.degree(r))throw new Error(`Division failed r: ${i}, rLast: ${r}`)}const a=ve.coefficient(s,0);if(a==0)throw new Error("sigmaTilde(0) was zero");const l=ve.inv(a);return[ve.mulPolyScalar(s,l),ve.mulPolyScalar(i,l)]}};function oy(e,t,n,r){let i="",o=n.length;if(r==="numeric"){const u=Ot.alphabet.numeric.decode(n.split("")),d=u.length;for(let f=0;fTi(d,8)).join("")}}const{capacity:s}=Ot.capacity(e,t),a=Ti(o,Ot.lengthBits(e,r));let l=Ot.modeBits[r]+a+i;if(l.length>s)throw new Error("Capacity overflow");l+="0".repeat(Math.min(4,Math.max(0,s-l.length))),l.length%8&&(l+="0".repeat(8-l.length%8));for(let u=0;l.length!==s;u++)l+="1110110000010001"[u%16];const c=Uint8Array.from(l.match(/(.{8})/g).map(u=>+`0b${u}`));return function(u,d){const{words:f,shortBlocks:p,numBlocks:g,blockLen:y,total:S}=Ot.capacity(u,d),h=(v=f,{encode(w){const T=ve.divisorPoly(v),I=Array.from(w);return I.push(...T.slice(0,-1).fill(0)),Uint8Array.from(ve.remainderPoly(I,T))},decode(w){const T=w.slice(),I=ve.polynomial(Array.from(w));let j=ln(v,0),D=!1;for(let C=0;Cv===void 0?h%2==0:v).vLine({x:6,y:0},1/0,({y:h},v)=>v===void 0?h%2==0:v);{const h=Ot.formatBits(c,u),v=w=>!d&&(h>>w&1)==1;for(let w=0;w<6;w++)p.data[w][8]=v(w);for(let w=6;w<8;w++)p.data[w+1][8]=v(w);for(let w=8;w<15;w++)p.data[f-15+w][8]=v(w);for(let w=0;w<8;w++)p.data[8][f-w-1]=v(w);for(let w=8;w<9;w++)p.data[8][15-w-1+1]=v(w);for(let w=9;w<15;w++)p.data[8][15-w-1]=v(w);p.data[f-8][8]=!d}if(l>=7){const h=Ot.versionBits(l);for(let v=0;v<18;v+=1){const w=!d&&(h>>v&1)==1,T=Math.floor(v/3),I=v%3+f-8-3;p.data[T][I]=w,p.data[I][T]=w}}return p}(e,t,r,i);let s=0;const a=8*n.length;if(function(l,c,u){const d=l.height,f=Mh[c];let p=-1,g=d-1;for(let y=d-1;y>0;y-=2){for(y==6&&(y=5);;g+=p){for(let S=0;S<2;S+=1){const h=y-S;l.data[g][h]===void 0&&u(h,g,f(h,g))}if(g+p<0||g+p>=d)break}p=-p}}(o,r,(l,c,u)=>{let d=!1;s>>3]>>(7-s&7)&1)!=0,s++),o.data[c][l]=d!==u}),s!==a)throw new Error("QR: bytes left after draw");return o}function b9(e){const t=e.inverse(),n=p=>{let g=0;for(let y,S=0,h=1;S=5&&(g+=h-5+3),y=p[S],h=1);return g};let r=0;e.data.forEach(p=>r+=n(p)),t.data.forEach(p=>r+=n(p));let i=0,o=e.data;const s=e.width-1,a=e.height-1;for(let p=0;p{const g=[!0,!1,!0,!0,!0,!1,!0],y=[!1,!1,!1,!1],S=[...g,...y],h=[...y,...g];let v=0;for(let w=0;wu+=g?1:0);const d=u/(e.height*e.width)*100,f=10*Math.floor(Math.abs(d-50)/5);return r+i+c+f}function k5(e,t="raw",n={}){const r=n.ecc!==void 0?n.ecc:"medium";(function(u){if(!ry.includes(u))throw new Error(`Invalid error correction mode=${u}. Expected: ${ry}`)})(r);const i=n.encoding!==void 0?n.encoding:function(u){let d="numeric";for(let f of u)if(!Ot.alphabet.numeric.has(f)&&(d="alphanumeric",!Ot.alphabet.alphanumerc.has(f)))return"byte";return d}(e);(function(u){if(!iy.includes(u))throw new Error(`Encoding: invalid mode=${u}. Expected: ${iy}`);if(u==="kanji"||u==="eci")throw new Error(`Encoding: ${u} is not supported (yet?).`)})(i),n.mask!==void 0&&function(u){if(![0,1,2,3,4,5,6,7].includes(u)||!Mh[u])throw new Error(`Invalid mask=${u}. Expected number [0..7]`)}(n.mask);let o,s=n.version,a=new Error("Unknown error");if(s!==void 0)(function(u){if(!Number.isSafeInteger(u)||u<1||u>40)throw new Error(`Invalid version=${u}. Expected number [1..40]`)})(s),o=oy(s,r,e,i);else for(let u=1;u<=40;u++)try{o=oy(u,r,e,i),s=u;break}catch(d){a=d}if(!s||!o)throw a;let l=function(u,d,f,p){if(p===void 0){const g=function(){let y,S=1/0;return{add(h,v){h>=S||(y=v,S=h)},get:()=>y,score:()=>S}}();for(let y=0;yU("div",{class:"flexContainer",style:{padding:"6",flexDirection:"row"}},U("div",{class:"flexItem1"},U(e,null)),U("div",{class:"flexItem11"},U("span",{style:{lineHeight:"2",color:"black"}},t))),C9=()=>U("svg",{width:"20",height:"18",viewBox:"0 0 20 18",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M20.0002 7.9702V10.0302C20.0002 10.5802 19.5602 11.0302 19.0002 11.0502H17.0402C15.9602 11.0502 14.9702 10.2602 14.8802 9.1802C14.8202 8.5502 15.0602 7.9602 15.4802 7.5502C15.8502 7.1702 16.3602 6.9502 16.9202 6.9502H19.0002C19.5602 6.9702 20.0002 7.4202 20.0002 7.9702Z",fill:"#037DD6"}),U("path",{d:"M18.47 12.55H17.04C15.14 12.55 13.54 11.12 13.38 9.3C13.29 8.26 13.67 7.22 14.43 6.48C15.07 5.82 15.96 5.45 16.92 5.45H18.47C18.76 5.45 19 5.21 18.97 4.92C18.75 2.49 17.14 0.83 14.75 0.55C14.51 0.51 14.26 0.5 14 0.5H5C4.72 0.5 4.45 0.52 4.19 0.56C1.64 0.88 0 2.78 0 5.5V12.5C0 15.26 2.24 17.5 5 17.5H14C16.8 17.5 18.73 15.75 18.97 13.08C19 12.79 18.76 12.55 18.47 12.55ZM11 6.75H5C4.59 6.75 4.25 6.41 4.25 6C4.25 5.59 4.59 5.25 5 5.25H11C11.41 5.25 11.75 5.59 11.75 6C11.75 6.41 11.41 6.75 11 6.75Z",fill:"#037DD6"})),S9=()=>U("svg",{width:"20",height:"18",viewBox:"0 0 20 18",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M14.44 0.0999756C12.63 0.0999756 11.01 0.979976 10 2.32998C8.99 0.979976 7.37 0.0999756 5.56 0.0999756C2.49 0.0999756 0 2.59998 0 5.68998C0 6.87998 0.19 7.97998 0.52 8.99998C2.1 14 6.97 16.99 9.38 17.81C9.72 17.93 10.28 17.93 10.62 17.81C13.03 16.99 17.9 14 19.48 8.99998C19.81 7.97998 20 6.87998 20 5.68998C20 2.59998 17.51 0.0999756 14.44 0.0999756Z",fill:"#037DD6"})),_9=()=>U("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M16.28 7.53V6.28C16.28 3.58 15.63 0 10 0C4.37 0 3.72 3.58 3.72 6.28V7.53C0.92 7.88 0 9.3 0 12.79V14.65C0 18.75 1.25 20 5.35 20H14.65C18.75 20 20 18.75 20 14.65V12.79C20 9.3 19.08 7.88 16.28 7.53ZM10 16.74C8.33 16.74 6.98 15.38 6.98 13.72C6.98 12.05 8.34 10.7 10 10.7C11.66 10.7 13.02 12.06 13.02 13.72C13.02 15.39 11.67 16.74 10 16.74ZM5.35 7.44C5.27 7.44 5.2 7.44 5.12 7.44V6.28C5.12 3.35 5.95 1.4 10 1.4C14.05 1.4 14.88 3.35 14.88 6.28V7.45C14.8 7.45 14.73 7.45 14.65 7.45H5.35V7.44Z",fill:"#037DD6"})),k9=()=>U("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M16.4405 8.8999C20.0405 9.2099 21.5105 11.0599 21.5105 15.1099V15.2399C21.5105 19.7099 19.7205 21.4999 15.2505 21.4999H8.74047C4.27047 21.4999 2.48047 19.7099 2.48047 15.2399V15.1099C2.48047 11.0899 3.93047 9.2399 7.47047 8.9099",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M12 2V14.88",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M15.3504 12.6499L12.0004 15.9999L8.65039 12.6499",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),x5=class{constructor(e){ep(this,e),this.close=Vi(this,"close",7),this.startDesktopOnboarding=Vi(this,"startDesktopOnboarding",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.onClose=this.onClose.bind(this),this.onStartDesktopOnboardingHandler=this.onStartDesktopOnboardingHandler.bind(this),this.setTab=this.setTab.bind(this),this.render=this.render.bind(this),this.setTab(this.preferDesktop?1:2),this.i18nInstance=new up}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}updatePreferDesktop(e){e?this.setTab(1):this.setTab(2)}onClose(){this.close.emit()}onStartDesktopOnboardingHandler(){this.startDesktopOnboarding.emit()}setTab(e){this.tab=e,this.isDefaultTab=!1}render(){if(!this.translationsLoaded)return null;const e=r=>this.i18nInstance.t(r),t=this.isDefaultTab?this.preferDesktop?1:2:this.tab,n=k5(this.link,"svg",{ecc:"medium",scale:2});return console.log(`Showing modal with link ${this.link} and SVG QRCode ${n}`),U(sp,{className:"install-model"},U("div",{class:"backdrop",onClick:this.onClose}),U("div",{class:"modal"},U("div",{class:"closeButtonContainer"},U("div",{class:"right"},U("span",{class:"closeButton",onClick:this.onClose},U(lp,null)))),U("div",{class:"logoContainer"},U(cp,null)),U("div",null,U("div",{class:"tabcontainer"},U("div",{class:"flexContainer"},U("div",{onClick:()=>this.setTab(1),class:"tab flexItem "+(t===1?"tabactive":"")},e("DESKTOP")),U("div",{onClick:()=>this.setTab(2),class:"tab flexItem "+(t===2?"tabactive":"")},e("MOBILE")))),U("div",{style:{display:t===1?"none":"block"}},U("div",{class:"flexContainer"},U("div",{class:"flexItem",style:{textAlign:"center",marginTop:"4"}},n&&U("div",{id:"sdk-mm-qrcode",class:"center",innerHTML:n}),U("div",{class:"connectMobileText"},e("SCAN_TO_CONNECT")," ",U("br",null),U("span",{class:"blue"},U("b",null,e("META_MASK_MOBILE_APP"))))))),U("div",{style:{display:t===2?"none":"block"}},U("div",{class:"item"},U(qd,{Icon:S9,text:e("INSTALL_MODAL.TRUSTED_BY_USERS")})),U("div",{class:"item"},U(qd,{Icon:C9,text:e("INSTALL_MODAL.LEADING_CRYPTO_WALLET")})),U("div",{class:"item"},U(qd,{Icon:_9,text:e("INSTALL_MODAL.CONTROL_DIGITAL_INTERACTIONS")})),U("button",{class:"button",onClick:this.onStartDesktopOnboardingHandler},U(k9,null),U("span",{class:"installExtensionText"},e("INSTALL_MODAL.INSTALL_META_MASK_EXTENSION"))))),U(ap,{version:this.sdkVersion})))}get el(){return xu(this)}static get watchers(){return{preferDesktop:["updatePreferDesktop"]}}};x5.style=`.flexContainer { + display: flex; + justify-content: center; + align-items: center; + flex-direction: row; +} + +.flexItem { + flex: 1; + justify-content: center; + align-items: center; +} + +.flexItem11 { + flex: 11; + justify-content: center; + align-items: center; +} + +.flexItem1 { + flex: 1; + justify-content: center; + align-items: center; +} + +.tab { + padding: 8px; + cursor: pointer; + background-color: #F2F4F6; + font-size: 12px; + text-align: center; + color: #24292E; +} + +.tabcontainer { + padding: 4px; + background-color: #F2F4F6; + border-radius: 8px; + margin-bottom: 30px; + margin-top: 30px; +} + +.tabactive { + background-color: white; + -webkit-transition: background-color 300ms linear; + -ms-transition: background-color 300ms linear; + transition: background-color 300ms linear; + border-radius: 8px; +} + +.item { + font-size: 12px; + margin-bottom: 16px; + border-radius: 8px; + padding: 10px; + border: 2px #F2F4F6 solid; + color: #24292E; +} + +.extensionLabel { + font-style: normal; + font-weight: bold; + font-size: 14px; + text-align: cetner; + color: #24272A; +} + +.notice { + font-size: 12px; + margin-left: 10px; + margin-right: 10px; + color: grey; +} + +.button { + margin-top: 41.5px; + margin-bottom: 20px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 12px 20px; + background: #037DD6; + border-radius: 32px; + color: white; + border: 0; + font-size: 14px; + cursor: pointer; +} + +.backdrop { + visibility: visible; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + z-index: 99998; + background: rgba(0, 0, 0, 0.87); + opacity: 0.3; +} + +.modal { + visibility: visible; + position: fixed; + left: 50%; + transform: translate(-50%, -50%); + z-index: 99999; + background: white; + padding: 20px; + border-radius: 8px; + top: 50%; + max-width: 100%; + width: 460px; + min-width: 300px; + box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px; + -webkit-font-smoothing: antialiased; +} + +.closeButton { + color: #BBC0C5; + cursor: pointer; +} + +.logoContainer { + margin-left: 24px; + margin-right: 24px; + margin-top: 24px; + display: flex; + align-items: center; + justify-content: center; +} + +.connectMobileText { + font-size: 14px; + color: black; + margin-top: 28px; + margin-bottom: 28px; + line-height: 2; +} + +.blue { + color: #037DD6; + font-weight: 700; +} + +.installExtensionText { + margin-left: 10px; +} + +.center { + display: flex; + justify-content: center; + align-items: center; +} + +.right { + display: flex; + align-items: center; + justify-content: right; +} + +#sdk-mm-qrcode { + svg { + width: 50%; + } +}`;var x9=Object.freeze({__proto__:null,mm_install_modal:x5});const A5=class{constructor(e){ep(this,e),this.close=Vi(this,"close",7),this.disconnect=Vi(this,"disconnect",7),this.updateOTPValue=Vi(this,"updateOTPValue",7),this.displayOTP=void 0,this.sdkVersion=void 0,this.otpCode=void 0,this.translationsLoaded=!1,this.i18nInstance=new up}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}onClose(){this.close.emit()}onDisconnect(){this.disconnect.emit()}onUpdateOTPValueHandler(e){this.updateOTPValue.emit({otpValue:e})}disconnectedCallback(){this.onClose()}render(){var e;if(!this.translationsLoaded)return null;const t=(e=this.displayOTP)===null||e===void 0||e,n=this.sdkVersion,r=i=>this.i18nInstance.t(i);return U(sp,{className:"pending-modal"},U("div",{class:"backdrop",onClick:()=>this.onClose()}),U("div",{class:"modal"},U("div",{class:"closeButtonContainer"},U("div",{class:"right"},U("span",{class:"closeButton",onClick:()=>this.onClose()},U(lp,null)))),U("div",{class:"logoContainer"},U(cp,null)),U("div",null,U("div",{class:"flexContainer",style:{flexDirection:"column",color:"black"}},U("div",{class:"flexItem",style:{textAlign:"center",marginTop:"30px",marginBottom:"30px",fontSize:"16px"}},r(t?"PENDING_MODAL.OPEN_META_MASK_SELECT_CODE":"PENDING_MODAL.OPEN_META_MASK_CONTINUE")),U("div",{id:"sdk-mm-otp-value",style:{padding:"10px",fontSize:"32px",display:this.otpCode?"block":"none"}},this.otpCode),t&&U("div",{class:"notice"},"* ",r("PENDING_MODAL.NUMBER_AFTER_OPEN_NOTICE"))),U("div",{style:{marginTop:"20px"}},U("button",{class:"button blue",style:{marginTop:"5px",color:"#0376C9",borderColor:"#0376C9",borderWidth:"1px",borderStyle:"solid",backgroundColor:"white"},onClick:()=>this.onDisconnect()},r("PENDING_MODAL.DISCONNECT")))),U(ap,{version:n})))}get el(){return xu(this)}};A5.style=`.flexContainer { + display: flex; + justify-content: center; + align-items: center; + flex-direction: row; +} + +.flexItem { + flex: 1; + justify-content: center; + align-items: center; +} + +.flexItem11 { + flex: 11; + justify-content: center; + align-items: center; +} + +.flexItem1 { + flex: 1; + justify-content: center; + align-items: center; +} + +.tab { + padding: 8px; + cursor: pointer; + background-color: #F2F4F6; + font-size: 12px; + text-align: center; + color: #24292E; +} + +.tabcontainer { + padding: 4px; + background-color: #F2F4F6; + border-radius: 8px; + margin-bottom: 30px; + margin-top: 30px; +} + +.tabactive { + background-color: white; + -webkit-transition: background-color 300ms linear; + -ms-transition: background-color 300ms linear; + transition: background-color 300ms linear; + border-radius: 8px; +} + +.item { + font-size: 12px; + margin-bottom: 16px; + border-radius: 8px; + padding: 10px; + border: 2px #F2F4F6 solid; + color: #24292E; +} + +.extensionLabel { + font-style: normal; + font-weight: bold; + font-size: 14px; + text-align: cetner; + color: #24272A; +} + +.notice { + font-size: 12px; + margin-left: 10px; + margin-right: 10px; + color: grey; +} + +.button { + margin-top: 41.5px; + margin-bottom: 20px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 12px 20px; + background: #037DD6; + border-radius: 32px; + color: white; + border: 0; + font-size: 14px; + cursor: pointer; +} + +.backdrop { + visibility: visible; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + z-index: 99998; + background: rgba(0, 0, 0, 0.87); + opacity: 0.3; +} + +.modal { + visibility: visible; + position: fixed; + left: 50%; + transform: translate(-50%, -50%); + z-index: 99999; + background: white; + padding: 20px; + border-radius: 8px; + top: 50%; + max-width: 100%; + width: 460px; + min-width: 300px; + box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px; + -webkit-font-smoothing: antialiased; +} + +.closeButton { + color: #BBC0C5; + cursor: pointer; +} + +.logoContainer { + margin-left: 24px; + margin-right: 24px; + margin-top: 24px; + display: flex; + align-items: center; + justify-content: center; +} + +.connectMobileText { + font-size: 14px; + color: black; + margin-top: 28px; + margin-bottom: 28px; + line-height: 2; +} + +.blue { + color: #037DD6; + font-weight: 700; +} + +.installExtensionText { + margin-left: 10px; +} + +.center { + display: flex; + justify-content: center; + align-items: center; +} + +.right { + display: flex; + align-items: center; + justify-content: right; +} + +#sdk-mm-qrcode { + svg { + width: 50%; + } +}`;var A9=Object.freeze({__proto__:null,mm_pending_modal:A5});const M9=()=>U("svg",{width:"21",height:"15",viewBox:"0 0 21 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M14.1364 14.9851C13.5909 14.9851 13.2273 14.5851 13.2273 13.9851C13.2273 13.3851 13.5909 12.9851 14.1364 12.9851C16.6818 12.9851 18.6818 10.7851 18.6818 7.98508C18.6818 5.18508 16.6818 2.98508 14.1364 2.98508C11.5909 2.98508 9.59091 5.18508 9.59091 7.98508C9.59091 8.58508 9.22727 8.98508 8.68182 8.98508C8.13636 8.98508 7.77273 8.58508 7.77273 7.98508C7.77273 4.08508 10.5909 0.985077 14.1364 0.985077C17.6818 0.985077 20.5 4.08508 20.5 7.98508C20.5 11.8851 17.6818 14.9851 14.1364 14.9851ZM6.68182 14.7851C3.22727 14.7851 0.5 11.6851 0.5 7.98508C0.5 4.28508 3.22727 1.18508 6.68182 1.18508C7.22727 1.18508 7.59091 1.58508 7.59091 2.18508C7.59091 2.78508 7.22727 3.18508 6.68182 3.18508C4.22727 3.18508 2.31818 5.38508 2.31818 7.98508C2.31818 10.5851 4.22727 12.7851 6.68182 12.7851C9.13636 12.7851 11.0455 10.6851 11.0455 7.98508C11.0455 7.38508 11.4091 6.98508 11.9545 6.98508C12.5 6.98508 12.8636 7.38508 12.8636 7.98508C12.7727 11.6851 10.0455 14.7851 6.68182 14.7851Z",fill:"white"})),T9=()=>U("svg",{width:"400",height:"300",viewBox:"0 0 467 300",fill:"none",xmlns:"http://www.w3.org/2000/svg"},U("path",{d:"M312.387 280.629C312.549 280.583 312.247 280.735 312.387 280.629L339.678 260.425C340.088 260.118 340.132 259.156 340.07 258.647C340.008 258.138 339.573 258.257 339.106 258.084L311.712 247.455C311.292 247.301 311.308 247.402 310.939 247.673C310.569 247.944 310.356 248.21 310.356 248.672L310.459 279.504C310.461 280.025 311.163 280.619 311.614 280.847C311.913 280.996 312.072 280.718 312.387 280.629ZM336.204 259.736L312.979 276.292L313.439 251.139L336.204 259.736Z",fill:"url(#paint0_linear_1356_14057)"}),U("path",{d:"M324.639 260.342C324.358 259.547 323.485 258.91 322.707 259.215C319.6 260.432 318.17 262.313 317.287 264.066C316.482 265.665 316.197 267.482 314.188 268.269C312.178 269.055 310.763 268.663 309.162 268.007C307.406 267.287 305.504 266.182 302.397 267.399C299.289 268.616 297.859 270.497 296.976 272.25C296.171 273.849 295.697 274.886 293.685 275.673C291.675 276.459 290.261 276.067 288.659 275.411C286.903 274.691 284.999 273.587 281.894 274.803C278.789 276.019 277.549 278.681 276.666 280.434C275.861 282.034 275.386 283.07 273.374 283.857C272.596 284.161 271.931 285.055 272.211 285.849C272.492 286.644 273.365 287.281 274.143 286.977C277.25 285.76 278.68 283.879 279.563 282.125C280.368 280.526 280.65 278.71 282.662 277.923C284.672 277.136 286.087 277.528 287.688 278.184C289.444 278.904 291.348 280.009 294.453 278.793C297.561 277.576 298.991 275.695 299.874 273.941C300.679 272.342 301.153 271.306 303.165 270.519C305.175 269.732 306.589 270.124 308.191 270.78C309.947 271.5 311.849 272.605 314.956 271.388C318.063 270.172 319.301 267.511 320.184 265.757C320.989 264.158 321.466 263.121 323.476 262.335C324.254 262.032 324.919 261.137 324.639 260.342Z",fill:"url(#paint1_linear_1356_14057)"}),U("path",{d:"M389.034 111.124C388.968 112.406 387.342 113.113 386.324 113.549C384.297 114.419 382.089 114.493 379.942 114.5C376.607 114.509 373.215 114.163 369.89 113.976C366.712 113.798 363.156 113.311 360.03 114.232C357.705 114.919 355.667 116.762 353.452 117.739C351.129 118.765 348.957 119.198 346.489 119.687C335.569 121.85 323.587 120.825 312.656 119.977C311.92 119.92 312.539 118.997 313.237 118.981C313.207 118.815 313.001 118.394 313.045 118.201C313.086 118.029 312.781 117.586 312.853 117.421C312.67 117.198 313.316 117.427 313.626 117.204C315.912 115.557 318.721 114.79 321.363 115.041C324.677 115.355 327.293 116.04 330.641 115.781C334.392 115.491 338.125 114.787 341.857 114.312C345.142 113.892 349.09 113.941 352.106 112.28C352.916 111.834 353.137 111.262 353.269 110.287C353.331 109.828 353.672 108.969 353.658 108.511C353.629 107.529 354.191 107.886 355.013 107.298C356.857 105.981 358.274 105.516 360.428 105.784C362.841 106.083 365.264 107.273 367.578 107.953C370.761 108.888 374.328 108.646 377.631 108.477C380.517 108.329 383.141 107.901 385.944 108.653C387.013 108.941 389.104 109.745 389.034 111.124Z",fill:"url(#paint2_linear_1356_14057)"}),U("path",{d:"M278.118 85.4414C280.313 83.8186 283.302 83.9 285.853 83.2728C290.501 82.127 295.644 78.4476 300.549 79.1524C301.299 79.2595 300.904 81.0355 300.159 80.9295C300.131 80.9256 300.187 80.9333 300.159 80.9295C300.089 81.0185 299.516 81.1051 299.385 81.1463C294.999 82.515 292.895 87.5083 289.126 89.8598C287.799 90.688 286.771 90.8351 285.258 90.9441C283.515 91.0691 280.964 90.5775 279.269 90.1219C277.15 89.5532 275.965 87.034 278.118 85.4414Z",fill:"url(#paint3_linear_1356_14057)"}),U("path",{d:"M122.567 166.093C113.597 172.832 104.535 179.836 99.517 190.092C98.5342 192.099 97.519 195.019 97.9533 197.204C98.9699 202.316 105.76 203.049 110.691 201.96C113.468 201.347 116.325 199.231 115.921 196.319C115.576 193.81 113.158 192.986 112.072 190.73C110.779 188.04 112.35 184.97 114.218 182.62C128.134 165.099 150.074 157.394 171.093 151.607C175.385 150.425 180.897 147.69 180.581 143.099C180.372 140.072 177.118 137.683 174.221 137.383C171.324 137.082 168.481 138.773 165.715 139.776C158.416 142.419 151.17 143.799 143.489 143.526C136.865 143.29 130.976 143.316 129.562 150.781C128.138 158.276 129.53 160.863 122.567 166.093Z",fill:"url(#paint4_linear_1356_14057)"}),U("path",{d:"M79.1056 153.531C60.3932 164.378 43.7478 178.354 32.8214 197.415C30.3313 201.76 27.9216 206.554 27.1821 211.512C26.4448 216.47 27.7591 222.525 30.8133 226.337C34.908 231.446 41.6938 232.915 48.1811 233.125C50.7248 233.208 53.0035 233.066 55.3316 231.947C57.6602 230.83 59.7548 228.359 59.5978 225.742C59.3303 221.315 54.5491 219.665 50.9271 217.34C42.6566 212.037 40.4958 199.493 44.2381 190.032C47.9803 180.57 55.8228 173.173 63.2316 166.338C67.229 162.651 71.5194 158.372 76.777 157.522C79.9167 157.015 83.4706 157.589 86.6295 157.252C93.9004 156.479 99.64 151.404 105.588 146.912C115.048 139.765 126.045 134.283 137.501 132.093C141.913 131.248 146.293 130.493 149.682 127.831C151.37 126.507 150.803 123.567 148.726 123.93C138.542 125.713 128.652 131.135 119.142 134.758C105.627 139.914 91.7133 146.223 79.1056 153.531Z",fill:"url(#paint5_linear_1356_14057)"}),U("path",{d:"M96.3677 117.321C96.0315 116.64 95.2914 116.612 94.6293 116.975C91.9858 118.417 91.5452 120.509 90.9466 122.178C90.4004 123.702 89.3647 124.67 87.6542 125.604C85.9437 126.538 85.0983 126.316 83.5956 125.91C81.9481 125.465 79.8603 125.424 77.2168 126.866C74.5734 128.309 74.1348 130.401 73.5341 132.07C72.9879 133.593 71.9522 134.562 70.2417 135.496C68.5313 136.43 67.6859 136.208 66.1832 135.801C64.5357 135.357 62.2569 134.538 59.6128 135.978C56.9694 137.42 56.5308 139.512 55.9301 141.181C55.3839 142.705 54.5398 144.454 52.8293 145.388C52.1667 145.748 52.1006 146.485 52.439 147.165C52.7752 147.845 53.5153 147.874 54.1773 147.511C56.8208 146.069 57.2594 143.977 57.86 142.307C58.4062 140.784 59.4419 139.815 61.1524 138.881C62.8629 137.948 63.7083 138.17 65.211 138.576C66.8585 139.021 68.9458 139.059 71.5898 137.619C74.2333 136.177 74.6718 134.085 75.2725 132.416C75.8187 130.892 76.8544 129.924 78.5649 128.99C80.2754 128.056 81.1207 128.278 82.6235 128.684C84.2709 129.129 86.5503 129.95 89.1938 128.507C91.8373 127.065 92.2779 124.973 92.8765 123.304C93.4227 121.78 94.2663 120.03 95.9773 119.098C96.6378 118.738 96.7039 118.001 96.3677 117.321Z",fill:"#FBC49D"}),U("path",{d:"M391.827 164.699C392.04 164.639 392.39 164.573 392.6 164.481C393.87 163.921 395.363 162.429 395.893 161.051C396.421 159.673 396.237 158.321 395.712 156.931C394.629 154.061 391.777 152.62 389.155 153.775C386.531 154.931 384.962 158.455 386.042 161.325C387.038 163.963 389.369 165.392 391.827 164.699ZM394.166 157.367C394.529 158.332 394.52 159.751 394.156 160.706C393.792 161.662 393.1 162.534 392.218 162.921C390.398 163.723 388.338 162.878 387.589 160.889C387.226 159.925 387.234 158.506 387.599 157.55C387.963 156.594 388.654 155.723 389.536 155.336C391.356 154.534 393.416 155.376 394.166 157.367Z",fill:"#86E29B"}),U("path",{d:"M62.7198 108.691C64.4912 108.191 66.6152 106.609 67.5596 104.824C68.4273 103.187 68.465 101.455 67.9609 99.7066C67.4547 97.9586 66.0792 96.5141 64.4963 95.6786C62.9135 94.843 61.2077 94.8578 59.4756 95.4255C57.7435 95.9933 56.2768 97.4364 55.409 99.074C53.6185 102.456 55.2032 106.494 58.4723 108.22C60.0142 109.035 61.1315 109.138 62.7198 108.691ZM60.6304 96.7682C61.819 96.4332 63.0232 96.8871 64.1048 97.4571C65.2463 98.0603 66.0495 98.8796 66.4145 100.142C66.7791 101.403 66.4488 103.299 65.8224 104.48C64.5299 106.919 61.2212 107.686 58.8638 106.441C56.5063 105.197 55.8538 101.858 57.1462 99.4185C57.7726 98.2375 58.6059 97.3957 59.8573 96.9862C59.9214 96.9635 60.5631 96.7872 60.6304 96.7682Z",fill:"#FFB0EB"}),U("path",{d:"M77.0217 242.979C75.9542 243.28 75.1664 242.151 74.9029 241.074C74.6394 239.996 75 239.378 76.0676 239.077C77.1351 238.776 78.5053 238.907 78.7688 239.984C79.0323 241.061 78.0893 242.678 77.0217 242.979Z",fill:"url(#paint6_linear_1356_14057)"}),U("path",{d:"M380.506 184.577C379.439 184.878 378.651 183.749 378.387 182.672C378.124 181.594 378.484 180.976 379.552 180.675C380.619 180.374 381.99 180.505 382.253 181.582C382.517 182.659 381.574 184.276 380.506 184.577Z",fill:"url(#paint7_linear_1356_14057)"}),U("path",{d:"M348.82 246.969C347.752 247.27 346.382 247.14 346.119 246.063C345.855 244.985 346.798 243.369 347.866 243.068C348.933 242.767 349.721 243.896 349.985 244.973C350.248 246.05 349.888 246.669 348.82 246.969Z",fill:"url(#paint8_linear_1356_14057)"}),U("path",{d:"M140.419 282.412C139.351 282.713 138.754 282.365 138.491 281.288C138.227 280.21 138.397 278.812 139.464 278.511C140.532 278.21 142.093 279.121 142.357 280.198C142.62 281.275 141.486 282.111 140.419 282.412Z",fill:"url(#paint9_linear_1356_14057)"}),U("path",{d:"M121.462 101.679C120.395 101.979 119.798 101.631 119.534 100.554C119.271 99.4764 119.44 98.0779 120.508 97.777C121.575 97.4761 123.136 98.3868 123.4 99.4642C123.663 100.542 122.53 101.378 121.462 101.679Z",fill:"url(#paint10_linear_1356_14057)"}),U("path",{d:"M370.749 159.005C369.682 159.306 368.311 159.175 368.048 158.098C367.784 157.021 368.727 155.404 369.795 155.103C370.863 154.802 371.65 155.931 371.914 157.008C372.177 158.086 371.817 158.704 370.749 159.005Z",fill:"url(#paint11_linear_1356_14057)"}),U("path",{d:"M384.211 245.345C383.143 245.646 381.773 245.515 381.51 244.438C381.246 243.361 382.189 241.744 383.257 241.443C384.324 241.142 385.112 242.271 385.376 243.348C385.639 244.426 385.278 245.044 384.211 245.345Z",fill:"url(#paint12_linear_1356_14057)"}),U("path",{d:"M364.771 41.3873C363.063 41.8687 361.337 40.8616 360.915 39.1378C360.493 37.414 361.536 35.6263 363.244 35.1449C364.953 34.6634 366.679 35.6706 367.101 37.3944C367.522 39.1182 366.479 40.9059 364.771 41.3873Z",fill:"url(#paint13_linear_1356_14057)"}),U("path",{d:"M404.311 77.905C404.602 77.8231 404.875 77.9236 405.084 77.6871C405.437 77.2908 404.814 76.6385 404.703 76.1265L401.277 58.7418C401.149 58.163 400.687 57.5371 400.123 57.3991C399.558 57.2611 398.969 57.3812 398.576 57.835L385.784 73.1179C385.395 73.564 385.199 74.3453 385.393 74.8964C385.585 75.4481 385.978 76.1646 386.548 76.2391L403.538 78.123C403.744 78.1479 404.114 77.9607 404.311 77.905ZM398.948 62.7348L401.811 74.4394L389.841 72.8085L398.948 62.7348Z",fill:"#FFB0EB"}),U("path",{d:"M97.5393 295.311C97.7108 295.263 97.4284 295.461 97.5393 295.311L108.785 280.464C108.975 280.211 108.718 279.972 108.594 279.684C108.47 279.396 108.124 279.917 107.821 279.902L88.5106 278.672C88.2101 278.659 87.895 278.62 87.7374 278.89C87.5798 279.159 87.7755 279.402 87.9283 279.67L96.5753 294.749C96.7102 294.99 97.2696 295.297 97.5393 295.311C97.6283 295.319 97.4556 295.335 97.5393 295.311ZM106.465 281.118L96.9667 292.97L90.6295 280.577L106.465 281.118Z",fill:"#86E29B"}),U("path",{d:"M393.699 108.848C389.518 104.446 414.629 114.366 413.945 120.659C413.259 126.952 401.355 129.102 403.894 123.491C406.042 118.747 400.376 115.876 393.699 108.848Z",fill:"#FBC49D"}),U("path",{d:"M139.414 115.959C139.434 115.953 139.392 115.965 139.414 115.959C141.963 115.2 143.436 111.976 142.717 109.189C142.37 107.839 141.526 107.199 140.408 106.504C139.289 105.808 138.171 105.449 136.933 105.815C135.698 106.182 134.85 107.033 134.222 108.247C133.595 109.461 133.282 111.234 133.63 112.585C133.978 113.935 134.821 114.574 135.94 115.27C137.04 115.952 138.199 116.301 139.414 115.959ZM137.315 107.375C138.222 107.12 139.005 106.994 139.825 107.502C140.661 108.02 140.912 108.618 141.171 109.625C141.708 111.704 140.935 113.834 139.032 114.398C138.11 114.675 137.356 114.791 136.522 114.272C135.686 113.753 135.436 113.155 135.176 112.149C134.917 111.142 134.718 109.714 135.186 108.81C135.654 107.905 136.394 107.649 137.315 107.375C137.329 107.371 137.299 107.38 137.315 107.375Z",fill:"#75C4FD"}),U("path",{d:"M308.981 78.7519C310.052 78.4043 311.158 78.7096 312.265 78.6613C313.655 78.6006 314.936 78.517 316.323 78.3531C319.497 77.9795 322.798 77.4906 325.984 77.3012C329.309 77.1025 332.514 76.8551 335.836 77.0295C338.809 77.1842 342.163 77.3405 345.105 77.7558C352.129 78.7468 359.331 79.0578 366.347 80.1158C372.252 81.008 377.93 82.1319 383.722 83.5644C385.925 84.0054 388.267 85.0754 389.126 85.3792C389.421 85.4833 389.37 85.8347 389.317 86.1595C389.306 86.2271 389.353 86.1146 389.317 86.1595C388.269 87.414 386.564 86.8124 385.259 86.4677C384.406 86.241 381.488 85.9494 381.011 85.9957C380.14 86.0815 379.277 86.014 379.656 87.2114C380.122 88.6824 382.391 89.7375 383.704 90.2419C385.883 91.0803 388.771 91.2561 390.845 92.4015C392.968 92.821 395.425 93.5002 397.022 93.9986C402.83 95.8103 407.806 98.8678 413.033 102.002C415.503 103.482 417.829 104.764 419.973 106.72C421.647 108.248 423.771 109.882 424.595 112.091C425.113 113.482 424.451 115.471 422.848 115.085C420.353 114.488 419.638 111.665 418.227 109.714C415.003 105.251 410.067 102.067 405.118 100.06C402.64 99.0556 399.803 98.729 397.204 98.1176C394.411 97.4613 391.597 97.0442 388.707 97.1736C385.646 97.3097 382.846 97.5534 379.819 98.0078C377.027 98.4264 374.252 98.4441 371.514 97.8441C368.766 97.2421 366.276 96.7553 363.6 95.9021C361.662 95.2848 359.013 94.5583 357.232 93.5247C355.699 92.6339 355.631 91.2381 357.241 90.186C359.87 88.4656 362.778 89.8021 365.546 90.3497C365.561 90.3527 365.532 90.3468 365.546 90.3497C367.858 90.804 369.649 90.098 371.923 89.3884C372.489 89.2128 373.255 89.0482 373.47 88.953C374.383 88.5432 375.895 87.8227 375.407 86.7394C374.868 85.5457 372.659 84.8846 371.55 84.4891C369.74 83.8428 368.053 82.9215 366.147 82.6743C365.654 82.6095 365.109 83.1606 364.6 83.1097C363.36 83.1121 361.769 83.348 360.543 83.418C357.43 83.5916 354.583 83.6228 351.464 83.4719C348.714 83.3377 346.432 82.8542 343.741 82.3102C340.773 81.7101 337.52 81.5879 334.471 81.5839C331.393 81.5811 328.6 81.7214 325.583 82.4181C322.758 83.0702 319.757 83.6198 316.887 84.0326C314.698 84.3481 312.467 84.6054 310.319 84.2137C309.079 83.9871 306.994 83.3394 306.461 81.9635C305.846 80.3659 307.736 79.1556 308.981 78.7519Z",fill:"url(#paint14_linear_1356_14057)"}),U("path",{d:"M242.269 242.95C242.295 242.947 242.244 242.955 242.269 242.95C244.934 242.606 247.53 241.858 250.2 241.574C253.133 241.264 256.006 240.56 258.906 239.982C263.26 239.117 268.026 238.52 272.254 237.097C274.429 236.365 276.067 235.298 278.251 234.592C280.361 233.909 283.058 233.12 285.216 232.652C289.317 231.764 293.049 231.66 297.016 230.198C301.109 228.69 305.088 226.673 308.819 224.409C312.645 222.086 316.282 219.769 320.622 218.62C322.381 218.154 323.919 218.219 325.65 218.886C327.016 219.413 327.739 220.337 327.196 221.79C326.557 223.504 324.659 224.7 323.131 225.423C320.854 226.5 319.53 227.184 317.134 227.927C314.619 228.707 311.888 229.24 309.395 230.083C308.226 230.947 307.17 232.522 306.105 233.501C303.996 235.441 301.666 237.03 298.945 237.996C292.934 240.129 286.354 238.602 280.183 239.056C279.661 239.095 279.162 239.442 278.635 239.487C275.592 240.135 272.2 240.63 269.156 241.294C264.546 242.299 260.456 243.409 255.808 244.179C251.971 244.814 243.815 245.854 243.815 245.854L242.074 245.505C240.575 245.281 240.751 243.152 242.269 242.95Z",fill:"url(#paint15_linear_1356_14057)"}),U("path",{d:"M432.985 171.626C438.212 165.465 445.109 153.64 442.906 144.649C442.162 137.999 433.671 132.912 424.963 135.518C420.16 136.957 416.435 142.146 419.724 144.498C420.656 145.164 422.187 145.591 423.391 145.969C434.204 149.375 434.925 162.538 425.069 169.683C421.087 172.569 416.347 174.292 411.914 176.719C400.151 183.162 399.887 196.847 387.7 202.712C382.326 205.298 375.761 206.838 370.297 209.275C359.98 213.88 352.555 221.733 342.241 226.341C337.225 228.584 330.266 231.632 323.483 234.12C321.475 234.855 321.999 237.058 324.056 236.46C324.098 236.449 324.017 236.474 324.056 236.46C329.079 234.971 334.437 233.161 339.331 231.33C352.278 226.48 365.28 220.971 377.43 214.775C401.78 202.367 416.881 190.609 432.985 171.626Z",fill:"url(#paint16_linear_1356_14057)"}),U("path",{d:"M343.644 241.104C348.002 234.144 357.126 232.455 364.343 231.134C368.176 230.431 372.406 229.878 376.137 228.662C380.691 227.175 384.558 224.095 388.327 221.077C389.452 220.177 391.204 218.466 392.393 217.436C393.185 216.748 393.644 216.026 394.33 215.225C396 213.275 399.599 209.812 401.687 208.16C403.263 206.914 407.779 204.758 408.259 207.986C408.611 210.359 406.379 213.087 404.961 214.747C402.224 217.953 398.998 221.079 395.475 223.243C391.749 225.531 387.701 227.439 383.674 229.051C381.672 229.853 379.519 230.073 377.486 230.785C376.001 231.307 374.486 232.236 373.037 232.866C371.034 233.738 368.99 234.28 367.041 235.38C364.436 236.849 361.782 238.783 359.108 240.105C356.331 241.477 353.823 242.691 350.791 243.27C348.6 243.687 345.501 243.641 343.836 241.884C343.526 241.554 343.389 241.51 343.644 241.104Z",fill:"url(#paint17_linear_1356_14057)"}),U("path",{d:"M190.163 273.219C222.905 268.849 232.64 262.943 213.962 259.057C195.285 255.172 187.5 262.08 188.434 266.2C189.366 270.32 180.381 271.326 169.286 272.39C158.193 273.454 157.141 276.354 190.163 273.219Z",fill:"url(#paint18_linear_1356_14057)"}),U("path",{d:"M295.952 95.4242L241.395 135.226L251.54 111.77L295.952 95.4242Z",fill:"#E17726",stroke:"#E17726","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M170.111 95.4242L224.181 135.598L214.522 111.77L170.111 95.4242Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M276.309 187.712L261.793 209.576L292.876 218.014L301.78 188.189L276.309 187.712Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M164.336 188.189L173.186 218.014L204.215 209.576L189.753 187.712L164.336 188.189Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M202.542 150.776L193.908 163.618L224.667 164.998L223.642 132.36L202.542 150.776Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M263.52 150.775L242.097 131.989L241.395 164.998L272.154 163.618L263.52 150.775Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M204.215 209.576L222.832 200.714L206.805 188.402L204.215 209.576Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M243.23 200.714L261.793 209.576L259.257 188.402L243.23 200.714Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M261.793 209.576L243.23 200.714L244.741 212.601L244.579 217.643L261.793 209.576Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M204.215 209.576L221.483 217.643L221.375 212.601L222.832 200.714L204.215 209.576Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M221.807 180.547L206.373 176.09L217.274 171.154L221.807 180.547Z",fill:"#233447",stroke:"#233447","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M244.255 180.547L248.788 171.154L259.742 176.09L244.255 180.547Z",fill:"#233447",stroke:"#233447","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M204.215 209.576L206.913 187.712L189.753 188.189L204.215 209.576Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M259.149 187.712L261.793 209.576L276.309 188.189L259.149 187.712Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M272.154 163.618L241.395 164.998L244.255 180.547L248.788 171.154L259.742 176.09L272.154 163.618Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M206.373 176.09L217.274 171.154L221.807 180.547L224.667 164.998L193.908 163.618L206.373 176.09Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M193.908 163.618L206.805 188.402L206.373 176.09L193.908 163.618Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M259.743 176.09L259.257 188.402L272.154 163.618L259.743 176.09Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M224.667 164.998L221.807 180.548L225.422 198.909L226.232 174.71L224.667 164.998Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M241.395 164.998L239.884 174.657L240.64 198.909L244.255 180.548L241.395 164.998Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M244.255 180.547L240.64 198.909L243.23 200.714L259.257 188.402L259.743 176.09L244.255 180.547Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M206.373 176.09L206.805 188.402L222.832 200.714L225.422 198.909L221.807 180.547L206.373 176.09Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M244.579 217.643L244.741 212.601L243.338 211.434H222.724L221.375 212.601L221.483 217.643L204.215 209.576L210.259 214.459L222.508 222.791H243.5L255.803 214.459L261.793 209.576L244.579 217.643Z",fill:"#C0AC9D",stroke:"#C0AC9D","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M243.23 200.714L240.64 198.909H225.422L222.832 200.714L221.375 212.601L222.724 211.434H243.338L244.741 212.601L243.23 200.714Z",fill:"#161616",stroke:"#161616","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M298.272 137.827L302.859 115.856L295.952 95.4242L243.23 133.899L263.52 150.775L292.174 159.001L298.488 151.731L295.736 149.767L300.107 145.84L296.761 143.293L301.132 140.002L298.272 137.827Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M163.203 115.856L167.844 137.827L164.876 140.002L169.301 143.293L165.955 145.84L170.326 149.767L167.574 151.731L173.888 159.001L202.542 150.775L222.832 133.899L170.11 95.4242L163.203 115.856Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M292.175 159.001L263.52 150.775L272.154 163.618L259.257 188.402L276.309 188.189H301.78L292.175 159.001Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M202.542 150.775L173.888 159.001L164.336 188.189H189.753L206.805 188.402L193.908 163.618L202.542 150.775Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("path",{d:"M241.395 164.998L243.23 133.9L251.54 111.77H214.522L222.832 133.9L224.667 164.998L225.368 174.763L225.422 198.909H240.64L240.694 174.763L241.395 164.998Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),U("defs",null,U("linearGradient",{id:"paint0_linear_1356_14057",x1:"335.991",y1:"250.487",x2:"303.873",y2:"266.801",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})),U("linearGradient",{id:"paint1_linear_1356_14057",x1:"276.993",y1:"303.722",x2:"205.254",y2:"401.574",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"0.0929","stop-color":"#81C2F6"}),U("stop",{offset:"1","stop-color":"#F0B8BD"})),U("linearGradient",{id:"paint2_linear_1356_14057",x1:"271.074",y1:"119.924",x2:"553.077",y2:"104.53",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})),U("linearGradient",{id:"paint3_linear_1356_14057",x1:"264.209",y1:"91.0943",x2:"357.834",y2:"72.8792",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})),U("linearGradient",{id:"paint4_linear_1356_14057",x1:"212.46",y1:"121.997",x2:"92.6119",y2:"183.406",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})),U("linearGradient",{id:"paint5_linear_1356_14057",x1:"23.0498",y1:"204.411",x2:"161.86",y2:"163.003",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"0.0929","stop-color":"#81C2F6"}),U("stop",{offset:"1","stop-color":"#F0B8BD"})),U("linearGradient",{id:"paint6_linear_1356_14057",x1:"78.8647",y1:"240.375",x2:"74.9655",y2:"241.328",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint7_linear_1356_14057",x1:"382.349",y1:"181.971",x2:"378.45",y2:"182.925",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint8_linear_1356_14057",x1:"349.889",y1:"244.583",x2:"345.99",y2:"245.537",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint9_linear_1356_14057",x1:"142.262",y1:"279.808",x2:"138.362",y2:"280.762",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint10_linear_1356_14057",x1:"123.305",y1:"99.0746",x2:"119.406",y2:"100.028",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint11_linear_1356_14057",x1:"371.818",y1:"156.617",x2:"367.919",y2:"157.571",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint12_linear_1356_14057",x1:"385.281",y1:"242.958",x2:"381.382",y2:"243.911",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint13_linear_1356_14057",x1:"367.125",y1:"37.5052",x2:"360.843",y2:"38.8076",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"1","stop-color":"#75C3FC"})),U("linearGradient",{id:"paint14_linear_1356_14057",x1:"300.182",y1:"91.321",x2:"479.464",y2:"104.041",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})),U("linearGradient",{id:"paint15_linear_1356_14057",x1:"363.434",y1:"201.232",x2:"102.977",y2:"302.269",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})),U("linearGradient",{id:"paint16_linear_1356_14057",x1:"447.962",y1:"165.159",x2:"313.049",y2:"197.95",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"0.0929","stop-color":"#81C2F6"}),U("stop",{offset:"1","stop-color":"#F0B8BD"})),U("linearGradient",{id:"paint17_linear_1356_14057",x1:"410.211",y1:"215.859",x2:"341.378",y2:"232.788",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#75C3FC"}),U("stop",{offset:"0.0929","stop-color":"#81C2F6"}),U("stop",{offset:"1","stop-color":"#F0B8BD"})),U("linearGradient",{id:"paint18_linear_1356_14057",x1:"222.282",y1:"258.986",x2:"162.257",y2:"273.774",gradientUnits:"userSpaceOnUse"},U("stop",{"stop-color":"#FFE466"}),U("stop",{offset:"1","stop-color":"#FFAFEA"})))),M5=class{constructor(e){ep(this,e),this.close=Vi(this,"close",7),this.connectWithExtension=Vi(this,"connectWithExtension",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.i18nInstance=new up,this.setTab(this.preferDesktop?1:2)}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}onClose(e=!1){this.close.emit({shouldTerminate:e})}connectWithExtensionHandler(){this.connectWithExtension.emit()}setTab(e){this.tab=e,this.isDefaultTab=!1}disconnectedCallback(){this.onClose()}updatePreferDesktop(e){e?this.setTab(1):this.setTab(2)}render(){if(!this.translationsLoaded)return null;const e=i=>this.i18nInstance.t(i),t=this.sdkVersion,n=this.isDefaultTab?this.preferDesktop?1:2:this.tab,r=k5(this.link,"svg",{ecc:"medium",scale:2});return U(sp,{className:"select-modal"},U("div",{class:"backdrop",onClick:()=>this.onClose(!0)}),U("div",{class:"modal"},U("div",{class:"closeButtonContainer"},U("div",{class:"right"},U("span",{class:"closeButton",onClick:()=>this.onClose(!0)},U(lp,null)))),U("div",{class:"logoContainer"},U(cp,null)),U("div",null,U("div",{class:"tabcontainer"},U("div",{class:"flexContainer"},U("div",{onClick:()=>this.setTab(1),class:"tab flexItem "+(n===1?"tabactive":"")},e("DESKTOP")),U("div",{onClick:()=>this.setTab(2),class:"tab flexItem "+(n===2?"tabactive":"")},e("MOBILE")))),U("div",{style:{display:n===1?"none":"block"}},U("div",{class:"flexContainer"},U("div",{class:"flexItem",style:{textAlign:"center",marginTop:"4"}},U("div",{class:"center",id:"sdk-mm-qrcode",innerHTML:r}),U("div",{class:"connectMobileText"},e("SCAN_TO_CONNECT"),U("br",null),U("span",{class:"blue"},U("b",null,e("META_MASK_MOBILE_APP"))))))),U("div",{style:{display:n===2?"none":"block"}},U("div",{style:{display:"flex",justifyContent:"center",height:"300",marginTop:"-20"}},U(T9,null)),U("div",{class:"extensionLabel"},e("SELECT_MODAL.CRYPTO_TAKE_CONTROL_TEXT")),U("button",{class:"button",onClick:this.connectWithExtensionHandler},U(M9,null),U("span",{class:"installExtensionText"},e("CONNECT_WITH_EXTENSION"))))),U(ap,{version:t})))}get el(){return xu(this)}static get watchers(){return{preferDesktop:["updatePreferDesktop"]}}};M5.style=`.flexContainer { + display: flex; + justify-content: center; + align-items: center; + flex-direction: row; +} + +.flexItem { + flex: 1; + justify-content: center; + align-items: center; +} + +.flexItem11 { + flex: 11; + justify-content: center; + align-items: center; +} + +.flexItem1 { + flex: 1; + justify-content: center; + align-items: center; +} + +.tab { + padding: 8px; + cursor: pointer; + background-color: #F2F4F6; + font-size: 12px; + text-align: center; + color: #24292E; +} + +.tabcontainer { + padding: 4px; + background-color: #F2F4F6; + border-radius: 8px; + margin-bottom: 30px; + margin-top: 30px; +} + +.tabactive { + background-color: white; + -webkit-transition: background-color 300ms linear; + -ms-transition: background-color 300ms linear; + transition: background-color 300ms linear; + border-radius: 8px; +} + +.item { + font-size: 12px; + margin-bottom: 16px; + border-radius: 8px; + padding: 10px; + border: 2px #F2F4F6 solid; + color: #24292E; +} + +.extensionLabel { + font-style: normal; + font-weight: bold; + font-size: 14px; + text-align: cetner; + color: #24272A; +} + +.notice { + font-size: 12px; + margin-left: 10px; + margin-right: 10px; + color: grey; +} + +.button { + margin-top: 41.5px; + margin-bottom: 20px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 12px 20px; + background: #037DD6; + border-radius: 32px; + color: white; + border: 0; + font-size: 14px; + cursor: pointer; +} + +.backdrop { + visibility: visible; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + z-index: 99998; + background: rgba(0, 0, 0, 0.87); + opacity: 0.3; +} + +.modal { + visibility: visible; + position: fixed; + left: 50%; + transform: translate(-50%, -50%); + z-index: 99999; + background: white; + padding: 20px; + border-radius: 8px; + top: 50%; + max-width: 100%; + width: 460px; + min-width: 300px; + box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px; + -webkit-font-smoothing: antialiased; +} + +.closeButton { + color: #BBC0C5; + cursor: pointer; +} + +.logoContainer { + margin-left: 24px; + margin-right: 24px; + margin-top: 24px; + display: flex; + align-items: center; + justify-content: center; +} + +.connectMobileText { + font-size: 14px; + color: black; + margin-top: 28px; + margin-bottom: 28px; + line-height: 2; +} + +.blue { + color: #037DD6; + font-weight: 700; +} + +.installExtensionText { + margin-left: 10px; +} + +.center { + display: flex; + justify-content: center; + align-items: center; +} + +.right { + display: flex; + align-items: center; + justify-content: right; +} + +#sdk-mm-qrcode { + svg { + width: 50%; + } +}`;var Gd,ay,P9=Object.freeze({__proto__:null,mm_select_modal:M5}),Th={exports:{}};function L9(){if(ay)return Gd;ay=1;var e=1e3,t=60*e,n=60*t,r=24*n,i=7*r,o=365.25*r;function s(a,l,c,u){var d=l>=1.5*c;return Math.round(a/c)+" "+u+(d?"s":"")}return Gd=function(a,l){l=l||{};var c=typeof a;if(c==="string"&&a.length>0)return function(u){if(!((u=String(u)).length>100)){var d=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(d){var f=parseFloat(d[1]);switch((d[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return f*o;case"weeks":case"week":case"w":return f*i;case"days":case"day":case"d":return f*r;case"hours":case"hour":case"hrs":case"hr":case"h":return f*n;case"minutes":case"minute":case"mins":case"min":case"m":return f*t;case"seconds":case"second":case"secs":case"sec":case"s":return f*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return f;default:return}}}}(a);if(c==="number"&&isFinite(a))return l.long?function(u){var d=Math.abs(u);return d>=r?s(u,d,r,"day"):d>=n?s(u,d,n,"hour"):d>=t?s(u,d,t,"minute"):d>=e?s(u,d,e,"second"):u+" ms"}(a):function(u){var d=Math.abs(u);return d>=r?Math.round(u/r)+"d":d>=n?Math.round(u/n)+"h":d>=t?Math.round(u/t)+"m":d>=e?Math.round(u/e)+"s":u+"ms"}(a);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(a))},Gd}var I9=function(e){function t(i){let o,s,a,l=null;function c(...u){if(!c.enabled)return;const d=c,f=Number(new Date),p=f-(o||f);d.diff=p,d.prev=o,d.curr=f,o=f,u[0]=t.coerce(u[0]),typeof u[0]!="string"&&u.unshift("%O");let g=0;u[0]=u[0].replace(/%([a-zA-Z%])/g,(y,S)=>{if(y==="%%")return"%";g++;const h=t.formatters[S];if(typeof h=="function"){const v=u[g];y=h.call(d,v),u.splice(g,1),g--}return y}),t.formatArgs.call(d,u),(d.log||t.log).apply(d,u)}return c.namespace=i,c.useColors=t.useColors(),c.color=t.selectColor(i),c.extend=n,c.destroy=t.destroy,Object.defineProperty(c,"enabled",{enumerable:!0,configurable:!1,get:()=>l!==null?l:(s!==t.namespaces&&(s=t.namespaces,a=t.enabled(i)),a),set:u=>{l=u}}),typeof t.init=="function"&&t.init(c),c}function n(i,o){const s=t(this.namespace+(o===void 0?":":o)+i);return s.log=this.log,s}function r(i){return i.toString().substring(2,i.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(i){return i instanceof Error?i.stack||i.message:i},t.disable=function(){const i=[...t.names.map(r),...t.skips.map(r).map(o=>"-"+o)].join(",");return t.enable(""),i},t.enable=function(i){let o;t.save(i),t.namespaces=i,t.names=[],t.skips=[];const s=(typeof i=="string"?i:"").split(/[\s,]+/),a=s.length;for(o=0;o{t[i]=e[i]}),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(i){let o=0;for(let s=0;s{a!=="%%"&&(o++,a==="%c"&&(s=o))}),r.splice(s,0,i)},t.save=function(r){try{r?t.storage.setItem("debug",r):t.storage.removeItem("debug")}catch{}},t.load=function(){let r;try{r=t.storage.getItem("debug")}catch{}return!r&&xn!==void 0&&"env"in xn&&(r=xn.env.DEBUG),r},t.useColors=function(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},t.storage=function(){try{return localStorage}catch{}}(),t.destroy=(()=>{let r=!1;return()=>{r||(r=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=I9(t);const{formatters:n}=e.exports;n.j=function(r){try{return JSON.stringify(r)}catch(i){return"[UnexpectedJSONParseError]: "+i.message}}})(Th,Th.exports);var T5=Th.exports;const Nt=T5("MM_SDK-React");Nt.color="#CC5500";const P5=ke.createContext({ready:!1,extensionActive:!1,connected:!1,connecting:!1,readOnlyCalls:!1}),R9=({children:e,sdkOptions:t,debug:n})=>{const[r,i]=ke.useState(),[o,s]=ke.useState(""),[a,l]=ke.useState(!1),[c,u]=ke.useState(!1),[d,f]=ke.useState(!1),[p,g]=ke.useState(!1),[y,S]=ke.useState(1),[h,v]=ke.useState(),[w,T]=ke.useState(),[I,j]=ke.useState(!1),[D,H]=ke.useState(""),[G,K]=ke.useState(),[q,W]=ke.useState(),[C,m]=ke.useState(),[_,M]=ke.useState(),[A,P]=ke.useState(),[L,B]=ke.useState({}),[$,k]=ke.useState(!1),x=ke.useRef(!1);ke.useEffect(()=>{T5.enable("MM_SDK-React")},[n]);const N={setConnecting:f,setConnected:g,setChainId:v,setError:m,setAccount:K,setStatus:P,setTrigger:S,setRPCHistory:B,debug:n,chainId:h,activeProvider:void 0,sdk:r},O=(({debug:oe,setConnected:le,setConnecting:de,setError:ae})=>ke.useCallback(()=>{Nt("[MetaMaskProvider: useHandleOnConnectingEvent()] on 'connecting' event."),le(!1),de(!0),ae(void 0)},[oe,le,de,ae]))(N),z=(({debug:oe,setConnecting:le,setAccount:de,activeProvider:ae,setConnected:he,setError:me})=>ke.useCallback(()=>{Nt("[MetaMaskProvider: useHandleInitializedEvent()] on '_initialized' event."),le(!1),he(!0),me(void 0)},[oe,le,de,ae,he,me]))(N),Y=(({debug:oe,setConnecting:le,setConnected:de,setChainId:ae,setError:he,chainId:me})=>ke.useCallback(be=>{Nt("[MetaMaskProvider: useHandleConnectEvent()] on 'connect' event.",be);const Ee=be.chainId;le(!1),de(!0),ae(Ee),he(void 0)},[oe,le,de,ae,he,me]))(N),V=(({debug:oe,setConnecting:le,setConnected:de,setError:ae})=>ke.useCallback(he=>{Nt("[MetaMaskProvider: useHandleDisconnectEvent()] on 'disconnect' event.",he),le(!1),de(!1),ae(he)},[oe,le,de,ae]))(N),Q=(({debug:oe,setAccount:le,setConnected:de,setConnecting:ae,setError:he})=>ke.useCallback(me=>{Nt("[MetaMaskProvider: useHandleAccountsChangedEvent()] on 'accountsChanged' event.",me),le(me==null?void 0:me[0]),de(!0),ae(!1),he(void 0)},[oe,le,de,he]))(N),te=(({debug:oe,setChainId:le,setConnected:de,setConnecting:ae,setError:he})=>ke.useCallback(me=>{Nt("[MetaMaskProvider: useHandleChainChangedEvent()] on 'chainChanged' event.",me),le(typeof me=="object"&&(me!=null&&me.chainId)?me.chainId:me),de(!0),ae(!1),he(void 0)},[oe,le,de,he,ae]))(N),ie=(({debug:oe,setStatus:le})=>ke.useCallback(de=>{Nt(`[MetaMaskProvider: useHandleSDKStatusEvent()] on '${ue.SERVICE_STATUS}/${de.connectionStatus}' event.`,de);try{const ae=JSON.parse(JSON.stringify(de??{}));le(ae)}catch(ae){console.error(ae)}},[oe,le]))(N),ne=(({debug:oe,setConnecting:le,setConnected:de,setTrigger:ae,setError:he,setChainId:me,setAccount:be,setRPCHistory:Ee,sdk:ye})=>ke.useCallback(Se=>{if(Nt(`[MetaMaskProvider: useHandleProviderEvent()] on '${ue.PROVIDER_UPDATE}' event.`,Se),Se===Wn.TERMINATE)le(!1);else if(Se===Wn.EXTENSION){le(!1),de(!0),he(void 0);const _e=ye==null?void 0:ye.getProvider(),Le=(_e==null?void 0:_e.getChainId())||void 0,gt=(_e==null?void 0:_e.getSelectedAddress())||void 0;Nt(`[MetaMaskProvider: useHandleProviderEvent()] extensionProvider chainId=${Le} selectedAddress=${gt}`),me(Le),be(gt)}Ee({}),ae(_e=>_e+1)},[oe,le,ae,de,he]))(N),ge=ke.useMemo(()=>{const oe=(A==null?void 0:A.connectionStatus)===at.DISCONNECTED;let le=!1;for(const de in L){const ae=L[de];if(ae.result===void 0&&ae.error===void 0){le=!0,oe&&console.warn(`[MetamaskProvider] socket disconnected but rpc ${de} not processed yet`);break}}return le},[L,A]);return ke.useEffect(()=>{const oe=_==null?void 0:_.getSelectedAddress();oe&&oe!=(G==null?void 0:G.toLowerCase())&&(Nt(`[MetaMaskProviderClient] account changed detected from ${G} to ${oe}`),K(oe))},[L]),ke.useEffect(()=>{(A==null?void 0:A.connectionStatus)!==at.DISCONNECTED&&(A==null?void 0:A.connectionStatus)!==at.TERMINATED||(g(!1),f(!1))},[A]),ke.useEffect(()=>{const oe=`${G}${h}`;W(r==null?void 0:r.getChannelId()),G!=null&&G.startsWith("0x")&&(h!=null&&h.startsWith("0x"))&&oe!==D?(j(!0),Nt(`[MetaMaskProviderClient] retrieving balance of ${G} on chain ${h}`),H(oe),_==null||_.request({method:"eth_getBalance",params:[G,"latest"]}).then(le=>{Nt(`[MetaMaskProviderClient] balance of ${G} is ${le}`),T(le)}).catch(le=>{console.warn(`[MetamaskProvider] error retrieving balance of ${G}`,le)}).finally(()=>{j(!1)})):T(void 0)},[G,_,h,D]),ke.useEffect(()=>{if(x.current)return void Nt("[MetaMaskProviderClient] sdk already initialized");x.current=!0;const oe=new Jb({...t});oe.init().then(()=>{i(oe),l(!0),u(oe.hasReadOnlyRPCCalls())}).catch(le=>{console.error("[MetaMaskProviderClient] error initializing SDK",le)})},[t]),ke.useEffect(()=>{var le;if(!a||!r)return;Nt("[MetaMaskProviderClient] init SDK Provider listeners",r),k(r.isExtensionActive());const oe=r.getProvider();if(oe)return g(oe.isConnected()),K(oe.getSelectedAddress()||void 0),M(oe),v(oe.getChainId()||void 0),oe.on("_initialized",z),oe.on("connecting",O),oe.on("connect",Y),oe.on("disconnect",V),oe.on("accountsChanged",Q),oe.on("chainChanged",te),r.on(ue.SERVICE_STATUS,ie),(le=r._getConnection())==null||le.getConnector().on(ue.RPC_UPDATE,de=>{de.result!==void 0||de.error!==void 0?de.id===o&&s(""):s(de.id);const ae=JSON.parse(JSON.stringify(r.getRPCHistory()??{}));B(ae)}),()=>{oe.removeListener("_initialized",z),oe.removeListener("connecting",O),oe.removeListener("connect",Y),oe.removeListener("disconnect",V),oe.removeListener("accountsChanged",Q),oe.removeListener("chainChanged",te),r.removeListener(ue.SERVICE_STATUS,ie)};console.warn("[MetaMaskProviderClient] activeProvider is undefined.")},[y,r,a]),ke.useEffect(()=>{if(a&&r)return r.on(ue.PROVIDER_UPDATE,ne),()=>{r.removeListener(ue.PROVIDER_UPDATE,ne)}},[r,a]),po.createElement(P5.Provider,{value:{sdk:r,ready:a,connected:p,readOnlyCalls:c,provider:_,rpcHistory:L,connecting:d,channelId:q,account:G,balance:w,balanceProcessing:I,extensionActive:$,chainId:h,error:C,status:A,syncing:ge}},e)},O9=({children:e,sdkOptions:t,debug:n})=>{const[r,i]=ke.useState(!1);return ke.useEffect(()=>{i(!0)},[]),po.createElement(po.Fragment,null,r?po.createElement(R9,{debug:n,sdkOptions:t},e):po.createElement(po.Fragment,null,e))},$9={socketServer:Ji,useDeeplink:!0,extensionOnly:!0,checkInstallationImmediately:!1,debug:!0,logs:{sdk:!0,provider:!0,commLayer:!0},lang:"en"};ke.createContext({...$9,setAppContext:e=>{},reset:()=>{}});const N9=()=>{const e=ke.useContext(P5);if(e===void 0)throw new Error("SDK context is missing, must be within provide");return e};var L5={},Au={};Au.byteLength=F9;Au.toByteArray=U9;Au.fromByteArray=z9;var ir=[],bn=[],B9=typeof Uint8Array<"u"?Uint8Array:Array,Yd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var ho=0,D9=Yd.length;ho0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");n===-1&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function F9(e){var t=I5(e),n=t[0],r=t[1];return(n+r)*3/4-r}function j9(e,t,n){return(t+n)*3/4-n}function U9(e){var t,n=I5(e),r=n[0],i=n[1],o=new B9(j9(e,r,i)),s=0,a=i>0?r-4:r,l;for(l=0;l>16&255,o[s++]=t>>8&255,o[s++]=t&255;return i===2&&(t=bn[e.charCodeAt(l)]<<2|bn[e.charCodeAt(l+1)]>>4,o[s++]=t&255),i===1&&(t=bn[e.charCodeAt(l)]<<10|bn[e.charCodeAt(l+1)]<<4|bn[e.charCodeAt(l+2)]>>2,o[s++]=t>>8&255,o[s++]=t&255),o}function K9(e){return ir[e>>18&63]+ir[e>>12&63]+ir[e>>6&63]+ir[e&63]}function H9(e,t,n){for(var r,i=[],o=t;oa?a:s+o));return r===1?(t=e[n-1],i.push(ir[t>>2]+ir[t<<4&63]+"==")):r===2&&(t=(e[n-2]<<8)+e[n-1],i.push(ir[t>>10]+ir[t>>4&63]+ir[t<<2&63]+"=")),i.join("")}var dp={};/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */dp.read=function(e,t,n,r,i){var o,s,a=i*8-r-1,l=(1<>1,u=-7,d=n?i-1:0,f=n?-1:1,p=e[t+d];for(d+=f,o=p&(1<<-u)-1,p>>=-u,u+=a;u>0;o=o*256+e[t+d],d+=f,u-=8);for(s=o&(1<<-u)-1,o>>=-u,u+=r;u>0;s=s*256+e[t+d],d+=f,u-=8);if(o===0)o=1-c;else{if(o===l)return s?NaN:(p?-1:1)*(1/0);s=s+Math.pow(2,r),o=o-c}return(p?-1:1)*s*Math.pow(2,o-r)};dp.write=function(e,t,n,r,i,o){var s,a,l,c=o*8-i-1,u=(1<>1,f=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,g=r?1:-1,y=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-s))<1&&(s--,l*=2),s+d>=1?t+=f/l:t+=f*Math.pow(2,1-d),t*l>=2&&(s++,l/=2),s+d>=u?(a=0,s=u):s+d>=1?(a=(t*l-1)*Math.pow(2,i),s=s+d):(a=t*Math.pow(2,d-1)*Math.pow(2,i),s=0));i>=8;e[n+p]=a&255,p+=g,a/=256,i-=8);for(s=s<0;e[n+p]=s&255,p+=g,s/=256,c-=8);e[n+p-g]|=y*128};/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */(function(e){const t=Au,n=dp,r=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;e.Buffer=a,e.SlowBuffer=v,e.INSPECT_MAX_BYTES=50;const i=2147483647;e.kMaxLength=i,a.TYPED_ARRAY_SUPPORT=o(),!a.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function o(){try{const R=new Uint8Array(1),E={foo:function(){return 42}};return Object.setPrototypeOf(E,Uint8Array.prototype),Object.setPrototypeOf(R,E),R.foo()===42}catch{return!1}}Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}});function s(R){if(R>i)throw new RangeError('The value "'+R+'" is invalid for option "size"');const E=new Uint8Array(R);return Object.setPrototypeOf(E,a.prototype),E}function a(R,E,b){if(typeof R=="number"){if(typeof E=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return d(R)}return l(R,E,b)}a.poolSize=8192;function l(R,E,b){if(typeof R=="string")return f(R,E);if(ArrayBuffer.isView(R))return g(R);if(R==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof R);if(ye(R,ArrayBuffer)||R&&ye(R.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(ye(R,SharedArrayBuffer)||R&&ye(R.buffer,SharedArrayBuffer)))return y(R,E,b);if(typeof R=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');const F=R.valueOf&&R.valueOf();if(F!=null&&F!==R)return a.from(F,E,b);const Z=S(R);if(Z)return Z;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof R[Symbol.toPrimitive]=="function")return a.from(R[Symbol.toPrimitive]("string"),E,b);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof R)}a.from=function(R,E,b){return l(R,E,b)},Object.setPrototypeOf(a.prototype,Uint8Array.prototype),Object.setPrototypeOf(a,Uint8Array);function c(R){if(typeof R!="number")throw new TypeError('"size" argument must be of type number');if(R<0)throw new RangeError('The value "'+R+'" is invalid for option "size"')}function u(R,E,b){return c(R),R<=0?s(R):E!==void 0?typeof b=="string"?s(R).fill(E,b):s(R).fill(E):s(R)}a.alloc=function(R,E,b){return u(R,E,b)};function d(R){return c(R),s(R<0?0:h(R)|0)}a.allocUnsafe=function(R){return d(R)},a.allocUnsafeSlow=function(R){return d(R)};function f(R,E){if((typeof E!="string"||E==="")&&(E="utf8"),!a.isEncoding(E))throw new TypeError("Unknown encoding: "+E);const b=w(R,E)|0;let F=s(b);const Z=F.write(R,E);return Z!==b&&(F=F.slice(0,Z)),F}function p(R){const E=R.length<0?0:h(R.length)|0,b=s(E);for(let F=0;F=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return R|0}function v(R){return+R!=R&&(R=0),a.alloc(+R)}a.isBuffer=function(E){return E!=null&&E._isBuffer===!0&&E!==a.prototype},a.compare=function(E,b){if(ye(E,Uint8Array)&&(E=a.from(E,E.offset,E.byteLength)),ye(b,Uint8Array)&&(b=a.from(b,b.offset,b.byteLength)),!a.isBuffer(E)||!a.isBuffer(b))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(E===b)return 0;let F=E.length,Z=b.length;for(let X=0,se=Math.min(F,Z);XZ.length?(a.isBuffer(se)||(se=a.from(se)),se.copy(Z,X)):Uint8Array.prototype.set.call(Z,se,X);else if(a.isBuffer(se))se.copy(Z,X);else throw new TypeError('"list" argument must be an Array of Buffers');X+=se.length}return Z};function w(R,E){if(a.isBuffer(R))return R.length;if(ArrayBuffer.isView(R)||ye(R,ArrayBuffer))return R.byteLength;if(typeof R!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof R);const b=R.length,F=arguments.length>2&&arguments[2]===!0;if(!F&&b===0)return 0;let Z=!1;for(;;)switch(E){case"ascii":case"latin1":case"binary":return b;case"utf8":case"utf-8":return ae(R).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return b*2;case"hex":return b>>>1;case"base64":return be(R).length;default:if(Z)return F?-1:ae(R).length;E=(""+E).toLowerCase(),Z=!0}}a.byteLength=w;function T(R,E,b){let F=!1;if((E===void 0||E<0)&&(E=0),E>this.length||((b===void 0||b>this.length)&&(b=this.length),b<=0)||(b>>>=0,E>>>=0,b<=E))return"";for(R||(R="utf8");;)switch(R){case"hex":return L(this,E,b);case"utf8":case"utf-8":return m(this,E,b);case"ascii":return A(this,E,b);case"latin1":case"binary":return P(this,E,b);case"base64":return C(this,E,b);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return B(this,E,b);default:if(F)throw new TypeError("Unknown encoding: "+R);R=(R+"").toLowerCase(),F=!0}}a.prototype._isBuffer=!0;function I(R,E,b){const F=R[E];R[E]=R[b],R[b]=F}a.prototype.swap16=function(){const E=this.length;if(E%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let b=0;bb&&(E+=" ... "),""},r&&(a.prototype[r]=a.prototype.inspect),a.prototype.compare=function(E,b,F,Z,X){if(ye(E,Uint8Array)&&(E=a.from(E,E.offset,E.byteLength)),!a.isBuffer(E))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof E);if(b===void 0&&(b=0),F===void 0&&(F=E?E.length:0),Z===void 0&&(Z=0),X===void 0&&(X=this.length),b<0||F>E.length||Z<0||X>this.length)throw new RangeError("out of range index");if(Z>=X&&b>=F)return 0;if(Z>=X)return-1;if(b>=F)return 1;if(b>>>=0,F>>>=0,Z>>>=0,X>>>=0,this===E)return 0;let se=X-Z,Me=F-b;const qe=Math.min(se,Me),Ke=this.slice(Z,X),Ge=E.slice(b,F);for(let Oe=0;Oe2147483647?b=2147483647:b<-2147483648&&(b=-2147483648),b=+b,Se(b)&&(b=Z?0:R.length-1),b<0&&(b=R.length+b),b>=R.length){if(Z)return-1;b=R.length-1}else if(b<0)if(Z)b=0;else return-1;if(typeof E=="string"&&(E=a.from(E,F)),a.isBuffer(E))return E.length===0?-1:D(R,E,b,F,Z);if(typeof E=="number")return E=E&255,typeof Uint8Array.prototype.indexOf=="function"?Z?Uint8Array.prototype.indexOf.call(R,E,b):Uint8Array.prototype.lastIndexOf.call(R,E,b):D(R,[E],b,F,Z);throw new TypeError("val must be string, number or Buffer")}function D(R,E,b,F,Z){let X=1,se=R.length,Me=E.length;if(F!==void 0&&(F=String(F).toLowerCase(),F==="ucs2"||F==="ucs-2"||F==="utf16le"||F==="utf-16le")){if(R.length<2||E.length<2)return-1;X=2,se/=2,Me/=2,b/=2}function qe(Ge,Oe){return X===1?Ge[Oe]:Ge.readUInt16BE(Oe*X)}let Ke;if(Z){let Ge=-1;for(Ke=b;Kese&&(b=se-Me),Ke=b;Ke>=0;Ke--){let Ge=!0;for(let Oe=0;OeZ&&(F=Z)):F=Z;const X=E.length;F>X/2&&(F=X/2);let se;for(se=0;se>>0,isFinite(F)?(F=F>>>0,Z===void 0&&(Z="utf8")):(Z=F,F=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");const X=this.length-b;if((F===void 0||F>X)&&(F=X),E.length>0&&(F<0||b<0)||b>this.length)throw new RangeError("Attempt to write outside buffer bounds");Z||(Z="utf8");let se=!1;for(;;)switch(Z){case"hex":return H(this,E,b,F);case"utf8":case"utf-8":return G(this,E,b,F);case"ascii":case"latin1":case"binary":return K(this,E,b,F);case"base64":return q(this,E,b,F);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return W(this,E,b,F);default:if(se)throw new TypeError("Unknown encoding: "+Z);Z=(""+Z).toLowerCase(),se=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function C(R,E,b){return E===0&&b===R.length?t.fromByteArray(R):t.fromByteArray(R.slice(E,b))}function m(R,E,b){b=Math.min(R.length,b);const F=[];let Z=E;for(;Z239?4:X>223?3:X>191?2:1;if(Z+Me<=b){let qe,Ke,Ge,Oe;switch(Me){case 1:X<128&&(se=X);break;case 2:qe=R[Z+1],(qe&192)===128&&(Oe=(X&31)<<6|qe&63,Oe>127&&(se=Oe));break;case 3:qe=R[Z+1],Ke=R[Z+2],(qe&192)===128&&(Ke&192)===128&&(Oe=(X&15)<<12|(qe&63)<<6|Ke&63,Oe>2047&&(Oe<55296||Oe>57343)&&(se=Oe));break;case 4:qe=R[Z+1],Ke=R[Z+2],Ge=R[Z+3],(qe&192)===128&&(Ke&192)===128&&(Ge&192)===128&&(Oe=(X&15)<<18|(qe&63)<<12|(Ke&63)<<6|Ge&63,Oe>65535&&Oe<1114112&&(se=Oe))}}se===null?(se=65533,Me=1):se>65535&&(se-=65536,F.push(se>>>10&1023|55296),se=56320|se&1023),F.push(se),Z+=Me}return M(F)}const _=4096;function M(R){const E=R.length;if(E<=_)return String.fromCharCode.apply(String,R);let b="",F=0;for(;FF)&&(b=F);let Z="";for(let X=E;XF&&(E=F),b<0?(b+=F,b<0&&(b=0)):b>F&&(b=F),bb)throw new RangeError("Trying to access beyond buffer length")}a.prototype.readUintLE=a.prototype.readUIntLE=function(E,b,F){E=E>>>0,b=b>>>0,F||$(E,b,this.length);let Z=this[E],X=1,se=0;for(;++se>>0,b=b>>>0,F||$(E,b,this.length);let Z=this[E+--b],X=1;for(;b>0&&(X*=256);)Z+=this[E+--b]*X;return Z},a.prototype.readUint8=a.prototype.readUInt8=function(E,b){return E=E>>>0,b||$(E,1,this.length),this[E]},a.prototype.readUint16LE=a.prototype.readUInt16LE=function(E,b){return E=E>>>0,b||$(E,2,this.length),this[E]|this[E+1]<<8},a.prototype.readUint16BE=a.prototype.readUInt16BE=function(E,b){return E=E>>>0,b||$(E,2,this.length),this[E]<<8|this[E+1]},a.prototype.readUint32LE=a.prototype.readUInt32LE=function(E,b){return E=E>>>0,b||$(E,4,this.length),(this[E]|this[E+1]<<8|this[E+2]<<16)+this[E+3]*16777216},a.prototype.readUint32BE=a.prototype.readUInt32BE=function(E,b){return E=E>>>0,b||$(E,4,this.length),this[E]*16777216+(this[E+1]<<16|this[E+2]<<8|this[E+3])},a.prototype.readBigUInt64LE=Le(function(E){E=E>>>0,ge(E,"offset");const b=this[E],F=this[E+7];(b===void 0||F===void 0)&&oe(E,this.length-8);const Z=b+this[++E]*2**8+this[++E]*2**16+this[++E]*2**24,X=this[++E]+this[++E]*2**8+this[++E]*2**16+F*2**24;return BigInt(Z)+(BigInt(X)<>>0,ge(E,"offset");const b=this[E],F=this[E+7];(b===void 0||F===void 0)&&oe(E,this.length-8);const Z=b*2**24+this[++E]*2**16+this[++E]*2**8+this[++E],X=this[++E]*2**24+this[++E]*2**16+this[++E]*2**8+F;return(BigInt(Z)<>>0,b=b>>>0,F||$(E,b,this.length);let Z=this[E],X=1,se=0;for(;++se=X&&(Z-=Math.pow(2,8*b)),Z},a.prototype.readIntBE=function(E,b,F){E=E>>>0,b=b>>>0,F||$(E,b,this.length);let Z=b,X=1,se=this[E+--Z];for(;Z>0&&(X*=256);)se+=this[E+--Z]*X;return X*=128,se>=X&&(se-=Math.pow(2,8*b)),se},a.prototype.readInt8=function(E,b){return E=E>>>0,b||$(E,1,this.length),this[E]&128?(255-this[E]+1)*-1:this[E]},a.prototype.readInt16LE=function(E,b){E=E>>>0,b||$(E,2,this.length);const F=this[E]|this[E+1]<<8;return F&32768?F|4294901760:F},a.prototype.readInt16BE=function(E,b){E=E>>>0,b||$(E,2,this.length);const F=this[E+1]|this[E]<<8;return F&32768?F|4294901760:F},a.prototype.readInt32LE=function(E,b){return E=E>>>0,b||$(E,4,this.length),this[E]|this[E+1]<<8|this[E+2]<<16|this[E+3]<<24},a.prototype.readInt32BE=function(E,b){return E=E>>>0,b||$(E,4,this.length),this[E]<<24|this[E+1]<<16|this[E+2]<<8|this[E+3]},a.prototype.readBigInt64LE=Le(function(E){E=E>>>0,ge(E,"offset");const b=this[E],F=this[E+7];(b===void 0||F===void 0)&&oe(E,this.length-8);const Z=this[E+4]+this[E+5]*2**8+this[E+6]*2**16+(F<<24);return(BigInt(Z)<>>0,ge(E,"offset");const b=this[E],F=this[E+7];(b===void 0||F===void 0)&&oe(E,this.length-8);const Z=(b<<24)+this[++E]*2**16+this[++E]*2**8+this[++E];return(BigInt(Z)<>>0,b||$(E,4,this.length),n.read(this,E,!0,23,4)},a.prototype.readFloatBE=function(E,b){return E=E>>>0,b||$(E,4,this.length),n.read(this,E,!1,23,4)},a.prototype.readDoubleLE=function(E,b){return E=E>>>0,b||$(E,8,this.length),n.read(this,E,!0,52,8)},a.prototype.readDoubleBE=function(E,b){return E=E>>>0,b||$(E,8,this.length),n.read(this,E,!1,52,8)};function k(R,E,b,F,Z,X){if(!a.isBuffer(R))throw new TypeError('"buffer" argument must be a Buffer instance');if(E>Z||ER.length)throw new RangeError("Index out of range")}a.prototype.writeUintLE=a.prototype.writeUIntLE=function(E,b,F,Z){if(E=+E,b=b>>>0,F=F>>>0,!Z){const Me=Math.pow(2,8*F)-1;k(this,E,b,F,Me,0)}let X=1,se=0;for(this[b]=E&255;++se>>0,F=F>>>0,!Z){const Me=Math.pow(2,8*F)-1;k(this,E,b,F,Me,0)}let X=F-1,se=1;for(this[b+X]=E&255;--X>=0&&(se*=256);)this[b+X]=E/se&255;return b+F},a.prototype.writeUint8=a.prototype.writeUInt8=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,1,255,0),this[b]=E&255,b+1},a.prototype.writeUint16LE=a.prototype.writeUInt16LE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,2,65535,0),this[b]=E&255,this[b+1]=E>>>8,b+2},a.prototype.writeUint16BE=a.prototype.writeUInt16BE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,2,65535,0),this[b]=E>>>8,this[b+1]=E&255,b+2},a.prototype.writeUint32LE=a.prototype.writeUInt32LE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,4,4294967295,0),this[b+3]=E>>>24,this[b+2]=E>>>16,this[b+1]=E>>>8,this[b]=E&255,b+4},a.prototype.writeUint32BE=a.prototype.writeUInt32BE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,4,4294967295,0),this[b]=E>>>24,this[b+1]=E>>>16,this[b+2]=E>>>8,this[b+3]=E&255,b+4};function x(R,E,b,F,Z){ne(E,F,Z,R,b,7);let X=Number(E&BigInt(4294967295));R[b++]=X,X=X>>8,R[b++]=X,X=X>>8,R[b++]=X,X=X>>8,R[b++]=X;let se=Number(E>>BigInt(32)&BigInt(4294967295));return R[b++]=se,se=se>>8,R[b++]=se,se=se>>8,R[b++]=se,se=se>>8,R[b++]=se,b}function N(R,E,b,F,Z){ne(E,F,Z,R,b,7);let X=Number(E&BigInt(4294967295));R[b+7]=X,X=X>>8,R[b+6]=X,X=X>>8,R[b+5]=X,X=X>>8,R[b+4]=X;let se=Number(E>>BigInt(32)&BigInt(4294967295));return R[b+3]=se,se=se>>8,R[b+2]=se,se=se>>8,R[b+1]=se,se=se>>8,R[b]=se,b+8}a.prototype.writeBigUInt64LE=Le(function(E,b=0){return x(this,E,b,BigInt(0),BigInt("0xffffffffffffffff"))}),a.prototype.writeBigUInt64BE=Le(function(E,b=0){return N(this,E,b,BigInt(0),BigInt("0xffffffffffffffff"))}),a.prototype.writeIntLE=function(E,b,F,Z){if(E=+E,b=b>>>0,!Z){const qe=Math.pow(2,8*F-1);k(this,E,b,F,qe-1,-qe)}let X=0,se=1,Me=0;for(this[b]=E&255;++X>0)-Me&255;return b+F},a.prototype.writeIntBE=function(E,b,F,Z){if(E=+E,b=b>>>0,!Z){const qe=Math.pow(2,8*F-1);k(this,E,b,F,qe-1,-qe)}let X=F-1,se=1,Me=0;for(this[b+X]=E&255;--X>=0&&(se*=256);)E<0&&Me===0&&this[b+X+1]!==0&&(Me=1),this[b+X]=(E/se>>0)-Me&255;return b+F},a.prototype.writeInt8=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,1,127,-128),E<0&&(E=255+E+1),this[b]=E&255,b+1},a.prototype.writeInt16LE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,2,32767,-32768),this[b]=E&255,this[b+1]=E>>>8,b+2},a.prototype.writeInt16BE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,2,32767,-32768),this[b]=E>>>8,this[b+1]=E&255,b+2},a.prototype.writeInt32LE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,4,2147483647,-2147483648),this[b]=E&255,this[b+1]=E>>>8,this[b+2]=E>>>16,this[b+3]=E>>>24,b+4},a.prototype.writeInt32BE=function(E,b,F){return E=+E,b=b>>>0,F||k(this,E,b,4,2147483647,-2147483648),E<0&&(E=4294967295+E+1),this[b]=E>>>24,this[b+1]=E>>>16,this[b+2]=E>>>8,this[b+3]=E&255,b+4},a.prototype.writeBigInt64LE=Le(function(E,b=0){return x(this,E,b,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),a.prototype.writeBigInt64BE=Le(function(E,b=0){return N(this,E,b,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function O(R,E,b,F,Z,X){if(b+F>R.length)throw new RangeError("Index out of range");if(b<0)throw new RangeError("Index out of range")}function z(R,E,b,F,Z){return E=+E,b=b>>>0,Z||O(R,E,b,4),n.write(R,E,b,F,23,4),b+4}a.prototype.writeFloatLE=function(E,b,F){return z(this,E,b,!0,F)},a.prototype.writeFloatBE=function(E,b,F){return z(this,E,b,!1,F)};function Y(R,E,b,F,Z){return E=+E,b=b>>>0,Z||O(R,E,b,8),n.write(R,E,b,F,52,8),b+8}a.prototype.writeDoubleLE=function(E,b,F){return Y(this,E,b,!0,F)},a.prototype.writeDoubleBE=function(E,b,F){return Y(this,E,b,!1,F)},a.prototype.copy=function(E,b,F,Z){if(!a.isBuffer(E))throw new TypeError("argument should be a Buffer");if(F||(F=0),!Z&&Z!==0&&(Z=this.length),b>=E.length&&(b=E.length),b||(b=0),Z>0&&Z=this.length)throw new RangeError("Index out of range");if(Z<0)throw new RangeError("sourceEnd out of bounds");Z>this.length&&(Z=this.length),E.length-b>>0,F=F===void 0?this.length:F>>>0,E||(E=0);let X;if(typeof E=="number")for(X=b;X2**32?Z=te(String(b)):typeof b=="bigint"&&(Z=String(b),(b>BigInt(2)**BigInt(32)||b<-(BigInt(2)**BigInt(32)))&&(Z=te(Z)),Z+="n"),F+=` It must be ${E}. Received ${Z}`,F},RangeError);function te(R){let E="",b=R.length;const F=R[0]==="-"?1:0;for(;b>=F+4;b-=3)E=`_${R.slice(b-3,b)}${E}`;return`${R.slice(0,b)}${E}`}function ie(R,E,b){ge(E,"offset"),(R[E]===void 0||R[E+b]===void 0)&&oe(E,R.length-(b+1))}function ne(R,E,b,F,Z,X){if(R>b||R= 0${se} and < 2${se} ** ${(X+1)*8}${se}`:Me=`>= -(2${se} ** ${(X+1)*8-1}${se}) and < 2 ** ${(X+1)*8-1}${se}`,new V.ERR_OUT_OF_RANGE("value",Me,R)}ie(F,Z,X)}function ge(R,E){if(typeof R!="number")throw new V.ERR_INVALID_ARG_TYPE(E,"number",R)}function oe(R,E,b){throw Math.floor(R)!==R?(ge(R,b),new V.ERR_OUT_OF_RANGE("offset","an integer",R)):E<0?new V.ERR_BUFFER_OUT_OF_BOUNDS:new V.ERR_OUT_OF_RANGE("offset",`>= 0 and <= ${E}`,R)}const le=/[^+/0-9A-Za-z-_]/g;function de(R){if(R=R.split("=")[0],R=R.trim().replace(le,""),R.length<2)return"";for(;R.length%4!==0;)R=R+"=";return R}function ae(R,E){E=E||1/0;let b;const F=R.length;let Z=null;const X=[];for(let se=0;se55295&&b<57344){if(!Z){if(b>56319){(E-=3)>-1&&X.push(239,191,189);continue}else if(se+1===F){(E-=3)>-1&&X.push(239,191,189);continue}Z=b;continue}if(b<56320){(E-=3)>-1&&X.push(239,191,189),Z=b;continue}b=(Z-55296<<10|b-56320)+65536}else Z&&(E-=3)>-1&&X.push(239,191,189);if(Z=null,b<128){if((E-=1)<0)break;X.push(b)}else if(b<2048){if((E-=2)<0)break;X.push(b>>6|192,b&63|128)}else if(b<65536){if((E-=3)<0)break;X.push(b>>12|224,b>>6&63|128,b&63|128)}else if(b<1114112){if((E-=4)<0)break;X.push(b>>18|240,b>>12&63|128,b>>6&63|128,b&63|128)}else throw new Error("Invalid code point")}return X}function he(R){const E=[];for(let b=0;b>8,Z=b%256,X.push(Z),X.push(F);return X}function be(R){return t.toByteArray(de(R))}function Ee(R,E,b,F){let Z;for(Z=0;Z=E.length||Z>=R.length);++Z)E[Z+b]=R[Z];return Z}function ye(R,E){return R instanceof E||R!=null&&R.constructor!=null&&R.constructor.name!=null&&R.constructor.name===E.name}function Se(R){return R!==R}const _e=function(){const R="0123456789abcdef",E=new Array(256);for(let b=0;b<16;++b){const F=b*16;for(let Z=0;Z<16;++Z)E[F+Z]=R[b]+R[Z]}return E}();function Le(R){return typeof BigInt>"u"?gt:R}function gt(){throw new Error("BigInt not supported")}})(L5);const V9=async(e,t)=>{const n=JSON.stringify({domain:{chainId:t,name:"Ether Mail",verifyingContract:"0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC",version:"1"},message:{contents:"Hello, Bob!",attachedMoneyInEth:4.2,from:{name:"Cow",wallets:["0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826","0xDeaDbeefdEAdbeefdEadbEEFdeadbeEFdEaDbeeF"]},to:[{name:"Bob",wallets:["0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB","0xB0BdaBea57B0BDABeA57b0bdABEA57b0BDabEa57","0xB0B0b0b0b0b0B000000000000000000000000000"]}]},primaryType:"Mail",types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],Group:[{name:"name",type:"string"},{name:"members",type:"Person[]"}],Mail:[{name:"from",type:"Person"},{name:"to",type:"Person[]"},{name:"contents",type:"string"}],Person:[{name:"name",type:"string"},{name:"wallets",type:"address[]"}]}});let r=e==null?void 0:e.getSelectedAddress();console.debug(`sign from: ${r}`);try{if(!r){alert("Invalid account -- please connect using eth_requestAccounts first");return}const i=[r,n],o="eth_signTypedData_v4";return console.debug(`ethRequest ${o}`,JSON.stringify(i,null,4)),console.debug("sign params",i),await(e==null?void 0:e.request({method:o,params:i}))}catch(i){return console.log(`eth_signTypedData_v4 error: ${i}`),"Error: "+i}},W9=async e=>{try{const t=e.getSelectedAddress(),r="0x"+L5.Buffer.from("Hello World from the Create React dapp!","utf8").toString("hex"),i=await e.request({method:"personal_sign",params:[r,t,"Example password"]});return console.log(`sign: ${i}`),i}catch(t){return console.log(`personal_sign error: ${t}`),"Error: "+t}},q9=()=>{const[e,t]=ke.useState(""),{sdk:n,connected:r,connecting:i,provider:o,chainId:s,account:a,balance:l}=N9(),c=(n==null?void 0:n.availableLanguages)??["en"],[u,d]=ke.useState(localStorage.getItem("MetaMaskSDKLng")||"en"),f=async D=>{localStorage.setItem("MetaMaskSDKLng",D),window.location.reload()},p=D=>{d(D.target.value),f(D.target.value).then(()=>{console.debug(`language changed to ${D.target.value}`)})},g=async()=>{try{const D=await(n==null?void 0:n.connectAndSign({msg:"Connect + Sign message"}));t(D)}catch(D){console.warn("failed to connect..",D)}},y=async()=>{try{await(n==null?void 0:n.connect())}catch(D){console.warn("failed to connect..",D)}},S=async()=>{if(!(n!=null&&n.hasReadOnlyRPCCalls())&&!o){t("readOnlyCalls are not set and provider is not set. Please set your infuraAPIKey in the SDK Options");return}try{const D=await(o==null?void 0:o.request({method:"eth_blockNumber",params:[]})),H=n!=null&&n.hasReadOnlyRPCCalls()?"infura":"MetaMask provider";t(`(${H}) ${D}`)}catch(D){console.log("error getting the blockNumber",D),t("error getting the blockNumber")}},h=()=>{if(!o)throw new Error("invalid ethereum provider");o.request({method:"wallet_addEthereumChain",params:[{chainId:"0x89",chainName:"Polygon",blockExplorerUrls:["https://polygonscan.com"],nativeCurrency:{symbol:"MATIC",decimals:18},rpcUrls:["https://polygon-rpc.com/"]}]}).then(D=>console.log("add",D)).catch(D=>console.log("ADD ERR",D))},v=async()=>{const H={to:"0x0000000000000000000000000000000000000000",from:o==null?void 0:o.getSelectedAddress(),value:"0x5AF3107A4000"};try{const G=await(o==null?void 0:o.request({method:"eth_sendTransaction",params:[H]}));t(G)}catch(G){console.log(G)}},w=async()=>{if(!o){t("invalid ethereum provider");return}const D=await V9(o,o.getChainId());t(D)},T=async()=>{if(!o){t("invalid ethereum provider");return}const D=await W9(o);t(D)},I=()=>{n==null||n.terminate()},j=async D=>{console.debug(`switching to network chainId=${D}`);try{const H=await(o==null?void 0:o.request({method:"wallet_switchEthereumChain",params:[{chainId:D}]}));console.debug("response",H)}catch(H){console.error(H)}};return Be.jsxs("div",{className:"App",children:[Be.jsx("h1",{children:"Vite React MMSDK Example"}),Be.jsxs("div",{className:"Info-Status",children:[Be.jsx("p",{children:`Connected chain: ${s}`}),Be.jsx("p",{children:`Connected account: ${a}`}),Be.jsx("p",{children:`Account balance: ${l}`}),Be.jsx("p",{children:`Last request response: ${e}`}),Be.jsx("p",{children:`Connected: ${r}`})]}),Be.jsx("div",{className:"sdkConfig",children:i&&Be.jsx("div",{children:"Waiting for Metamask to link the connection..."})}),Be.jsxs("div",{className:"language-dropdown",children:[Be.jsx("label",{htmlFor:"language-select",children:"Language: "}),Be.jsx("select",{id:"language-select",value:u,onChange:p,children:c.map(D=>Be.jsx("option",{value:D,children:D},D))})]}),r?Be.jsxs("div",{children:[Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:y,children:"Request Accounts"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:w,children:"eth_signTypedData_v4"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:T,children:"personal_sign"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:v,children:"Send transaction"}),(o==null?void 0:o.getChainId())==="0x1"?Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:()=>j("0x5"),children:"Switch to Goerli"}):Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:()=>j("0x1"),children:"Switch to Mainnet"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:()=>j("0x89"),children:"Switch to Polygon"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:h,children:"Add Polygon Chain"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:S,children:"readOnlyCalls"})]}):Be.jsxs("div",{children:[Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:y,children:"Connect"}),Be.jsx("button",{className:"Button-Normal",style:{padding:10,margin:10},onClick:g,children:"Connect w/ Sign"})]}),Be.jsx("button",{className:"Button-Danger",style:{padding:10,margin:10},onClick:I,children:"Terminate"})]})};Ev(document.getElementById("root")).render(Be.jsx(ke.StrictMode,{children:Be.jsx(O9,{debug:!1,sdkOptions:{logging:{developerMode:!1},checkInstallationImmediately:!1,i18nOptions:{enabled:!0},dappMetadata:{name:"Demo Vite React App",url:window.location.protocol+"//"+window.location.host}},children:Be.jsx(q9,{})})})); diff --git a/main/packages/examples/react-demo/build/index.html b/main/packages/examples/react-demo/build/index.html index 2edd146a5..aaeff50b0 100644 --- a/main/packages/examples/react-demo/build/index.html +++ b/main/packages/examples/react-demo/build/index.html @@ -5,7 +5,7 @@ React MMSDK Demo - + diff --git a/main/packages/examples/vuejs/build/index.html b/main/packages/examples/vuejs/build/index.html index 768f7e510..ccdec3d2e 100644 --- a/main/packages/examples/vuejs/build/index.html +++ b/main/packages/examples/vuejs/build/index.html @@ -1 +1 @@ -metamasksdk_vuejs
\ No newline at end of file +metamasksdk_vuejs
\ No newline at end of file diff --git a/main/packages/examples/vuejs/build/js/chunk-vendors.42967328.js b/main/packages/examples/vuejs/build/js/chunk-vendors.42967328.js new file mode 100644 index 000000000..b725cc641 --- /dev/null +++ b/main/packages/examples/vuejs/build/js/chunk-vendors.42967328.js @@ -0,0 +1,10 @@ +(self["webpackChunkmetamasksdk_vuejs"]=self["webpackChunkmetamasksdk_vuejs"]||[]).push([[998],{9662:function(e,t,n){"use strict";var r=n(614),o=n(6330),i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not a function")}},6077:function(e,t,n){"use strict";var r=n(614),o=String,i=TypeError;e.exports=function(e){if("object"==typeof e||r(e))return e;throw i("Can't set "+o(e)+" as a prototype")}},5787:function(e,t,n){"use strict";var r=n(7976),o=TypeError;e.exports=function(e,t){if(r(t,e))return e;throw o("Incorrect invocation")}},9670:function(e,t,n){"use strict";var r=n(111),o=String,i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not an object")}},3013:function(e){"use strict";e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},260:function(e,t,n){"use strict";var r,o,i,s=n(3013),a=n(9781),c=n(7854),l=n(614),u=n(111),d=n(2597),h=n(648),f=n(6330),p=n(8880),g=n(8052),m=n(7045),y=n(7976),v=n(9518),b=n(7674),w=n(5112),E=n(9711),_=n(9909),C=_.enforce,S=_.get,k=c.Int8Array,x=k&&k.prototype,A=c.Uint8ClampedArray,M=A&&A.prototype,R=k&&v(k),T=x&&v(x),O=Object.prototype,I=c.TypeError,L=w("toStringTag"),P=E("TYPED_ARRAY_TAG"),N="TypedArrayConstructor",B=s&&!!b&&"Opera"!==h(c.opera),D=!1,$={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},j={BigInt64Array:8,BigUint64Array:8},U=function(e){if(!u(e))return!1;var t=h(e);return"DataView"===t||d($,t)||d(j,t)},F=function(e){var t=v(e);if(u(t)){var n=S(t);return n&&d(n,N)?n[N]:F(t)}},K=function(e){if(!u(e))return!1;var t=h(e);return d($,t)||d(j,t)},H=function(e){if(K(e))return e;throw I("Target is not a typed array")},z=function(e){if(l(e)&&(!b||y(R,e)))return e;throw I(f(e)+" is not a typed array constructor")},q=function(e,t,n,r){if(a){if(n)for(var o in $){var i=c[o];if(i&&d(i.prototype,e))try{delete i.prototype[e]}catch(s){try{i.prototype[e]=t}catch(l){}}}T[e]&&!n||g(T,e,n?t:B&&x[e]||t,r)}},V=function(e,t,n){var r,o;if(a){if(b){if(n)for(r in $)if(o=c[r],o&&d(o,e))try{delete o[e]}catch(i){}if(R[e]&&!n)return;try{return g(R,e,n?t:B&&R[e]||t)}catch(i){}}for(r in $)o=c[r],!o||o[e]&&!n||g(o,e,t)}};for(r in $)o=c[r],i=o&&o.prototype,i?C(i)[N]=o:B=!1;for(r in j)o=c[r],i=o&&o.prototype,i&&(C(i)[N]=o);if((!B||!l(R)||R===Function.prototype)&&(R=function(){throw I("Incorrect invocation")},B))for(r in $)c[r]&&b(c[r],R);if((!B||!T||T===O)&&(T=R.prototype,B))for(r in $)c[r]&&b(c[r].prototype,T);if(B&&v(M)!==T&&b(M,T),a&&!d(T,L))for(r in D=!0,m(T,L,{configurable:!0,get:function(){return u(this)?this[P]:void 0}}),$)c[r]&&p(c[r],P,r);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:B,TYPED_ARRAY_TAG:D&&P,aTypedArray:H,aTypedArrayConstructor:z,exportTypedArrayMethod:q,exportTypedArrayStaticMethod:V,getTypedArrayConstructor:F,isView:U,isTypedArray:K,TypedArray:R,TypedArrayPrototype:T}},7745:function(e,t,n){"use strict";var r=n(6244);e.exports=function(e,t){var n=0,o=r(t),i=new e(o);while(o>n)i[n]=t[n++];return i}},1318:function(e,t,n){"use strict";var r=n(5656),o=n(1400),i=n(6244),s=function(e){return function(t,n,s){var a,c=r(t),l=i(c),u=o(s,l);if(e&&n!==n){while(l>u)if(a=c[u++],a!==a)return!0}else for(;l>u;u++)if((e||u in c)&&c[u]===n)return e||u||0;return!e&&-1}};e.exports={includes:s(!0),indexOf:s(!1)}},3658:function(e,t,n){"use strict";var r=n(9781),o=n(3157),i=TypeError,s=Object.getOwnPropertyDescriptor,a=r&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=a?function(e,t){if(o(e)&&!s(e,"length").writable)throw i("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},206:function(e,t,n){"use strict";var r=n(1702);e.exports=r([].slice)},1843:function(e,t,n){"use strict";var r=n(6244);e.exports=function(e,t){for(var n=r(e),o=new t(n),i=0;i=a||l<0)throw i("Incorrect index");for(var u=new t(a),d=0;dn)throw t("Maximum allowed index exceeded");return e}},3678:function(e){"use strict";e.exports={IndexSizeError:{s:"INDEX_SIZE_ERR",c:1,m:1},DOMStringSizeError:{s:"DOMSTRING_SIZE_ERR",c:2,m:0},HierarchyRequestError:{s:"HIERARCHY_REQUEST_ERR",c:3,m:1},WrongDocumentError:{s:"WRONG_DOCUMENT_ERR",c:4,m:1},InvalidCharacterError:{s:"INVALID_CHARACTER_ERR",c:5,m:1},NoDataAllowedError:{s:"NO_DATA_ALLOWED_ERR",c:6,m:0},NoModificationAllowedError:{s:"NO_MODIFICATION_ALLOWED_ERR",c:7,m:1},NotFoundError:{s:"NOT_FOUND_ERR",c:8,m:1},NotSupportedError:{s:"NOT_SUPPORTED_ERR",c:9,m:1},InUseAttributeError:{s:"INUSE_ATTRIBUTE_ERR",c:10,m:1},InvalidStateError:{s:"INVALID_STATE_ERR",c:11,m:1},SyntaxError:{s:"SYNTAX_ERR",c:12,m:1},InvalidModificationError:{s:"INVALID_MODIFICATION_ERR",c:13,m:1},NamespaceError:{s:"NAMESPACE_ERR",c:14,m:1},InvalidAccessError:{s:"INVALID_ACCESS_ERR",c:15,m:1},ValidationError:{s:"VALIDATION_ERR",c:16,m:0},TypeMismatchError:{s:"TYPE_MISMATCH_ERR",c:17,m:1},SecurityError:{s:"SECURITY_ERR",c:18,m:1},NetworkError:{s:"NETWORK_ERR",c:19,m:1},AbortError:{s:"ABORT_ERR",c:20,m:1},URLMismatchError:{s:"URL_MISMATCH_ERR",c:21,m:1},QuotaExceededError:{s:"QUOTA_EXCEEDED_ERR",c:22,m:1},TimeoutError:{s:"TIMEOUT_ERR",c:23,m:1},InvalidNodeTypeError:{s:"INVALID_NODE_TYPE_ERR",c:24,m:1},DataCloneError:{s:"DATA_CLONE_ERR",c:25,m:1}}},9363:function(e){"use strict";e.exports="function"==typeof Bun&&Bun&&"string"==typeof Bun.version},6833:function(e,t,n){"use strict";var r=n(8113);e.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},5268:function(e,t,n){"use strict";var r=n(7854),o=n(4326);e.exports="process"===o(r.process)},8113:function(e){"use strict";e.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},7392:function(e,t,n){"use strict";var r,o,i=n(7854),s=n(8113),a=i.process,c=i.Deno,l=a&&a.versions||c&&c.version,u=l&&l.v8;u&&(r=u.split("."),o=r[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&s&&(r=s.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=s.match(/Chrome\/(\d+)/),r&&(o=+r[1]))),e.exports=o},748:function(e){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},1060:function(e,t,n){"use strict";var r=n(1702),o=Error,i=r("".replace),s=function(e){return String(o(e).stack)}("zxcasd"),a=/\n\s*at [^:]*:[^\n]*/,c=a.test(s);e.exports=function(e,t){if(c&&"string"==typeof e&&!o.prepareStackTrace)while(t--)e=i(e,a,"");return e}},2109:function(e,t,n){"use strict";var r=n(7854),o=n(1236).f,i=n(8880),s=n(8052),a=n(3072),c=n(9920),l=n(4705);e.exports=function(e,t){var n,u,d,h,f,p,g=e.target,m=e.global,y=e.stat;if(u=m?r:y?r[g]||a(g,{}):(r[g]||{}).prototype,u)for(d in t){if(f=t[d],e.dontCallGetSet?(p=o(u,d),h=p&&p.value):h=u[d],n=l(m?d:g+(y?".":"#")+d,e.forced),!n&&void 0!==h){if(typeof f==typeof h)continue;c(f,h)}(e.sham||h&&h.sham)&&i(f,"sham",!0),s(u,d,f,e)}}},7293:function(e){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},2104:function(e,t,n){"use strict";var r=n(4374),o=Function.prototype,i=o.apply,s=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?s.bind(i):function(){return s.apply(i,arguments)})},9974:function(e,t,n){"use strict";var r=n(1470),o=n(9662),i=n(4374),s=r(r.bind);e.exports=function(e,t){return o(e),void 0===t?e:i?s(e,t):function(){return e.apply(t,arguments)}}},4374:function(e,t,n){"use strict";var r=n(7293);e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},6916:function(e,t,n){"use strict";var r=n(4374),o=Function.prototype.call;e.exports=r?o.bind(o):function(){return o.apply(o,arguments)}},6530:function(e,t,n){"use strict";var r=n(9781),o=n(2597),i=Function.prototype,s=r&&Object.getOwnPropertyDescriptor,a=o(i,"name"),c=a&&"something"===function(){}.name,l=a&&(!r||r&&s(i,"name").configurable);e.exports={EXISTS:a,PROPER:c,CONFIGURABLE:l}},5668:function(e,t,n){"use strict";var r=n(1702),o=n(9662);e.exports=function(e,t,n){try{return r(o(Object.getOwnPropertyDescriptor(e,t)[n]))}catch(i){}}},1470:function(e,t,n){"use strict";var r=n(4326),o=n(1702);e.exports=function(e){if("Function"===r(e))return o(e)}},1702:function(e,t,n){"use strict";var r=n(4374),o=Function.prototype,i=o.call,s=r&&o.bind.bind(i,i);e.exports=r?s:function(e){return function(){return i.apply(e,arguments)}}},5005:function(e,t,n){"use strict";var r=n(7854),o=n(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,t){return arguments.length<2?i(r[e]):r[e]&&r[e][t]}},8173:function(e,t,n){"use strict";var r=n(9662),o=n(8554);e.exports=function(e,t){var n=e[t];return o(n)?void 0:r(n)}},7854:function(e,t,n){"use strict";var r=function(e){return e&&e.Math===Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||this||Function("return this")()},2597:function(e,t,n){"use strict";var r=n(1702),o=n(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return i(o(e),t)}},3501:function(e){"use strict";e.exports={}},490:function(e,t,n){"use strict";var r=n(5005);e.exports=r("document","documentElement")},4664:function(e,t,n){"use strict";var r=n(9781),o=n(7293),i=n(317);e.exports=!r&&!o((function(){return 7!==Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:function(e,t,n){"use strict";var r=n(1702),o=n(7293),i=n(4326),s=Object,a=r("".split);e.exports=o((function(){return!s("z").propertyIsEnumerable(0)}))?function(e){return"String"===i(e)?a(e,""):s(e)}:s},9587:function(e,t,n){"use strict";var r=n(614),o=n(111),i=n(7674);e.exports=function(e,t,n){var s,a;return i&&r(s=t.constructor)&&s!==n&&o(a=s.prototype)&&a!==n.prototype&&i(e,a),e}},2788:function(e,t,n){"use strict";var r=n(1702),o=n(614),i=n(5465),s=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return s(e)}),e.exports=i.inspectSource},9909:function(e,t,n){"use strict";var r,o,i,s=n(4811),a=n(7854),c=n(111),l=n(8880),u=n(2597),d=n(5465),h=n(6200),f=n(3501),p="Object already initialized",g=a.TypeError,m=a.WeakMap,y=function(e){return i(e)?o(e):r(e,{})},v=function(e){return function(t){var n;if(!c(t)||(n=o(t)).type!==e)throw g("Incompatible receiver, "+e+" required");return n}};if(s||d.state){var b=d.state||(d.state=new m);b.get=b.get,b.has=b.has,b.set=b.set,r=function(e,t){if(b.has(e))throw g(p);return t.facade=e,b.set(e,t),t},o=function(e){return b.get(e)||{}},i=function(e){return b.has(e)}}else{var w=h("state");f[w]=!0,r=function(e,t){if(u(e,w))throw g(p);return t.facade=e,l(e,w,t),t},o=function(e){return u(e,w)?e[w]:{}},i=function(e){return u(e,w)}}e.exports={set:r,get:o,has:i,enforce:y,getterFor:v}},3157:function(e,t,n){"use strict";var r=n(4326);e.exports=Array.isArray||function(e){return"Array"===r(e)}},4067:function(e,t,n){"use strict";var r=n(648);e.exports=function(e){var t=r(e);return"BigInt64Array"===t||"BigUint64Array"===t}},614:function(e,t,n){"use strict";var r=n(4154),o=r.all;e.exports=r.IS_HTMLDDA?function(e){return"function"==typeof e||e===o}:function(e){return"function"==typeof e}},4705:function(e,t,n){"use strict";var r=n(7293),o=n(614),i=/#|\.prototype\./,s=function(e,t){var n=c[a(e)];return n===u||n!==l&&(o(t)?r(t):!!t)},a=s.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=s.data={},l=s.NATIVE="N",u=s.POLYFILL="P";e.exports=s},8554:function(e){"use strict";e.exports=function(e){return null===e||void 0===e}},111:function(e,t,n){"use strict";var r=n(614),o=n(4154),i=o.all;e.exports=o.IS_HTMLDDA?function(e){return"object"==typeof e?null!==e:r(e)||e===i}:function(e){return"object"==typeof e?null!==e:r(e)}},1913:function(e){"use strict";e.exports=!1},2190:function(e,t,n){"use strict";var r=n(5005),o=n(614),i=n(7976),s=n(3307),a=Object;e.exports=s?function(e){return"symbol"==typeof e}:function(e){var t=r("Symbol");return o(t)&&i(t.prototype,a(e))}},6244:function(e,t,n){"use strict";var r=n(7466);e.exports=function(e){return r(e.length)}},6339:function(e,t,n){"use strict";var r=n(1702),o=n(7293),i=n(614),s=n(2597),a=n(9781),c=n(6530).CONFIGURABLE,l=n(2788),u=n(9909),d=u.enforce,h=u.get,f=String,p=Object.defineProperty,g=r("".slice),m=r("".replace),y=r([].join),v=a&&!o((function(){return 8!==p((function(){}),"length",{value:8}).length})),b=String(String).split("String"),w=e.exports=function(e,t,n){"Symbol("===g(f(t),0,7)&&(t="["+m(f(t),/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!s(e,"name")||c&&e.name!==t)&&(a?p(e,"name",{value:t,configurable:!0}):e.name=t),v&&n&&s(n,"arity")&&e.length!==n.arity&&p(e,"length",{value:n.arity});try{n&&s(n,"constructor")&&n.constructor?a&&p(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(o){}var r=d(e);return s(r,"source")||(r.source=y(b,"string"==typeof t?t:"")),e};Function.prototype.toString=w((function(){return i(this)&&h(this).source||l(this)}),"toString")},4758:function(e){"use strict";var t=Math.ceil,n=Math.floor;e.exports=Math.trunc||function(e){var r=+e;return(r>0?n:t)(r)}},6277:function(e,t,n){"use strict";var r=n(1340);e.exports=function(e,t){return void 0===e?arguments.length<2?"":t:r(e)}},3070:function(e,t,n){"use strict";var r=n(9781),o=n(4664),i=n(3353),s=n(9670),a=n(4948),c=TypeError,l=Object.defineProperty,u=Object.getOwnPropertyDescriptor,d="enumerable",h="configurable",f="writable";t.f=r?i?function(e,t,n){if(s(e),t=a(t),s(n),"function"===typeof e&&"prototype"===t&&"value"in n&&f in n&&!n[f]){var r=u(e,t);r&&r[f]&&(e[t]=n.value,n={configurable:h in n?n[h]:r[h],enumerable:d in n?n[d]:r[d],writable:!1})}return l(e,t,n)}:l:function(e,t,n){if(s(e),t=a(t),s(n),o)try{return l(e,t,n)}catch(r){}if("get"in n||"set"in n)throw c("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},1236:function(e,t,n){"use strict";var r=n(9781),o=n(6916),i=n(5296),s=n(9114),a=n(5656),c=n(4948),l=n(2597),u=n(4664),d=Object.getOwnPropertyDescriptor;t.f=r?d:function(e,t){if(e=a(e),t=c(t),u)try{return d(e,t)}catch(n){}if(l(e,t))return s(!o(i.f,e,t),e[t])}},8006:function(e,t,n){"use strict";var r=n(6324),o=n(748),i=o.concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,i)}},5181:function(e,t){"use strict";t.f=Object.getOwnPropertySymbols},9518:function(e,t,n){"use strict";var r=n(2597),o=n(614),i=n(7908),s=n(6200),a=n(8544),c=s("IE_PROTO"),l=Object,u=l.prototype;e.exports=a?l.getPrototypeOf:function(e){var t=i(e);if(r(t,c))return t[c];var n=t.constructor;return o(n)&&t instanceof n?n.prototype:t instanceof l?u:null}},7976:function(e,t,n){"use strict";var r=n(1702);e.exports=r({}.isPrototypeOf)},6324:function(e,t,n){"use strict";var r=n(1702),o=n(2597),i=n(5656),s=n(1318).indexOf,a=n(3501),c=r([].push);e.exports=function(e,t){var n,r=i(e),l=0,u=[];for(n in r)!o(a,n)&&o(r,n)&&c(u,n);while(t.length>l)o(r,n=t[l++])&&(~s(u,n)||c(u,n));return u}},5296:function(e,t){"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);t.f=o?function(e){var t=r(this,e);return!!t&&t.enumerable}:n},7674:function(e,t,n){"use strict";var r=n(5668),o=n(9670),i=n(6077);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{e=r(Object.prototype,"__proto__","set"),e(n,[]),t=n instanceof Array}catch(s){}return function(n,r){return o(n),i(r),t?e(n,r):n.__proto__=r,n}}():void 0)},2140:function(e,t,n){"use strict";var r=n(6916),o=n(614),i=n(111),s=TypeError;e.exports=function(e,t){var n,a;if("string"===t&&o(n=e.toString)&&!i(a=r(n,e)))return a;if(o(n=e.valueOf)&&!i(a=r(n,e)))return a;if("string"!==t&&o(n=e.toString)&&!i(a=r(n,e)))return a;throw s("Can't convert object to primitive value")}},3887:function(e,t,n){"use strict";var r=n(5005),o=n(1702),i=n(8006),s=n(5181),a=n(9670),c=o([].concat);e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(a(e)),n=s.f;return n?c(t,n(e)):t}},7066:function(e,t,n){"use strict";var r=n(9670);e.exports=function(){var e=r(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t}},4488:function(e,t,n){"use strict";var r=n(8554),o=TypeError;e.exports=function(e){if(r(e))throw o("Can't call method on "+e);return e}},7152:function(e,t,n){"use strict";var r=n(7854),o=n(2104),i=n(614),s=n(9363),a=n(8113),c=n(206),l=n(8053),u=r.Function,d=/MSIE .\./.test(a)||s&&function(){var e=r.Bun.version.split(".");return e.length<3||"0"===e[0]&&(e[1]<3||"3"===e[1]&&"0"===e[2])}();e.exports=function(e,t){var n=t?2:1;return d?function(r,s){var a=l(arguments.length,1)>n,d=i(r)?r:u(r),h=a?c(arguments,n):[],f=a?function(){o(d,this,h)}:d;return t?e(f,s):e(f)}:e}},6200:function(e,t,n){"use strict";var r=n(2309),o=n(9711),i=r("keys");e.exports=function(e){return i[e]||(i[e]=o(e))}},5465:function(e,t,n){"use strict";var r=n(7854),o=n(3072),i="__core-js_shared__",s=r[i]||o(i,{});e.exports=s},2309:function(e,t,n){"use strict";var r=n(1913),o=n(5465);(e.exports=function(e,t){return o[e]||(o[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.32.1",mode:r?"pure":"global",copyright:"© 2014-2023 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.32.1/LICENSE",source:"https://github.com/zloirock/core-js"})},6293:function(e,t,n){"use strict";var r=n(7392),o=n(7293),i=n(7854),s=i.String;e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol("symbol detection");return!s(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},261:function(e,t,n){"use strict";var r,o,i,s,a=n(7854),c=n(2104),l=n(9974),u=n(614),d=n(2597),h=n(7293),f=n(490),p=n(206),g=n(317),m=n(8053),y=n(6833),v=n(5268),b=a.setImmediate,w=a.clearImmediate,E=a.process,_=a.Dispatch,C=a.Function,S=a.MessageChannel,k=a.String,x=0,A={},M="onreadystatechange";h((function(){r=a.location}));var R=function(e){if(d(A,e)){var t=A[e];delete A[e],t()}},T=function(e){return function(){R(e)}},O=function(e){R(e.data)},I=function(e){a.postMessage(k(e),r.protocol+"//"+r.host)};b&&w||(b=function(e){m(arguments.length,1);var t=u(e)?e:C(e),n=p(arguments,1);return A[++x]=function(){c(t,void 0,n)},o(x),x},w=function(e){delete A[e]},v?o=function(e){E.nextTick(T(e))}:_&&_.now?o=function(e){_.now(T(e))}:S&&!y?(i=new S,s=i.port2,i.port1.onmessage=O,o=l(s.postMessage,s)):a.addEventListener&&u(a.postMessage)&&!a.importScripts&&r&&"file:"!==r.protocol&&!h(I)?(o=I,a.addEventListener("message",O,!1)):o=M in g("script")?function(e){f.appendChild(g("script"))[M]=function(){f.removeChild(this),R(e)}}:function(e){setTimeout(T(e),0)}),e.exports={set:b,clear:w}},1400:function(e,t,n){"use strict";var r=n(9303),o=Math.max,i=Math.min;e.exports=function(e,t){var n=r(e);return n<0?o(n+t,0):i(n,t)}},4599:function(e,t,n){"use strict";var r=n(7593),o=TypeError;e.exports=function(e){var t=r(e,"number");if("number"==typeof t)throw o("Can't convert number to bigint");return BigInt(t)}},5656:function(e,t,n){"use strict";var r=n(8361),o=n(4488);e.exports=function(e){return r(o(e))}},9303:function(e,t,n){"use strict";var r=n(4758);e.exports=function(e){var t=+e;return t!==t||0===t?0:r(t)}},7466:function(e,t,n){"use strict";var r=n(9303),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},7908:function(e,t,n){"use strict";var r=n(4488),o=Object;e.exports=function(e){return o(r(e))}},7593:function(e,t,n){"use strict";var r=n(6916),o=n(111),i=n(2190),s=n(8173),a=n(2140),c=n(5112),l=TypeError,u=c("toPrimitive");e.exports=function(e,t){if(!o(e)||i(e))return e;var n,c=s(e,u);if(c){if(void 0===t&&(t="default"),n=r(c,e,t),!o(n)||i(n))return n;throw l("Can't convert object to primitive value")}return void 0===t&&(t="number"),a(e,t)}},4948:function(e,t,n){"use strict";var r=n(7593),o=n(2190);e.exports=function(e){var t=r(e,"string");return o(t)?t:t+""}},1694:function(e,t,n){"use strict";var r=n(5112),o=r("toStringTag"),i={};i[o]="z",e.exports="[object z]"===String(i)},1340:function(e,t,n){"use strict";var r=n(648),o=String;e.exports=function(e){if("Symbol"===r(e))throw TypeError("Cannot convert a Symbol value to a string");return o(e)}},6330:function(e){"use strict";var t=String;e.exports=function(e){try{return t(e)}catch(n){return"Object"}}},9711:function(e,t,n){"use strict";var r=n(1702),o=0,i=Math.random(),s=r(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+s(++o+i,36)}},3307:function(e,t,n){"use strict";var r=n(6293);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},3353:function(e,t,n){"use strict";var r=n(9781),o=n(7293);e.exports=r&&o((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},8053:function(e){"use strict";var t=TypeError;e.exports=function(e,n){if(e1&&void 0!==arguments[1]?arguments[1]:0,n=(m[e[t+0]]+m[e[t+1]]+m[e[t+2]]+m[e[t+3]]+"-"+m[e[t+4]]+m[e[t+5]]+"-"+m[e[t+6]]+m[e[t+7]]+"-"+m[e[t+8]]+m[e[t+9]]+"-"+m[e[t+10]]+m[e[t+11]]+m[e[t+12]]+m[e[t+13]]+m[e[t+14]]+m[e[t+15]]).toLowerCase();if(!g(n))throw TypeError("Stringified UUID is invalid");return n}var b=v;function w(e,t,n){e=e||{};var r=e.random||(e.rng||h)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,t){n=n||0;for(var o=0;o<16;++o)t[n+o]=r[o];return t}return b(r)}var E=w;const _=Object.create(null);_["open"]="0",_["close"]="1",_["ping"]="2",_["pong"]="3",_["message"]="4",_["upgrade"]="5",_["noop"]="6";const C=Object.create(null);Object.keys(_).forEach((e=>{C[_[e]]=e}));const S={type:"error",data:"parser error"},k="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),x="function"===typeof ArrayBuffer,A=e=>"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,M=({type:e,data:t},n,r)=>k&&t instanceof Blob?n?r(t):R(t,r):x&&(t instanceof ArrayBuffer||A(t))?n?r(t):R(new Blob([t]),r):r(_[e]+(t||"")),R=(e,t)=>{const n=new FileReader;return n.onload=function(){const e=n.result.split(",")[1];t("b"+(e||""))},n.readAsDataURL(e)};function T(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let O;function I(e,t){return k&&e.data instanceof Blob?e.data.arrayBuffer().then(T).then(t):x&&(e.data instanceof ArrayBuffer||A(e.data))?t(T(e.data)):void M(e,!1,(e=>{O||(O=new TextEncoder),t(O.encode(e))}))}const L="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",P="undefined"===typeof Uint8Array?[]:new Uint8Array(256);for(let _y=0;_y{let t,n,r,o,i,s=.75*e.length,a=e.length,c=0;"="===e[e.length-1]&&(s--,"="===e[e.length-2]&&s--);const l=new ArrayBuffer(s),u=new Uint8Array(l);for(t=0;t>4,u[c++]=(15&r)<<4|o>>2,u[c++]=(3&o)<<6|63&i;return l},B="function"===typeof ArrayBuffer,D=(e,t)=>{if("string"!==typeof e)return{type:"message",data:j(e,t)};const n=e.charAt(0);if("b"===n)return{type:"message",data:$(e.substring(1),t)};const r=C[n];return r?e.length>1?{type:C[n],data:e.substring(1)}:{type:C[n]}:S},$=(e,t)=>{if(B){const n=N(e);return j(n,t)}return{base64:!0,data:e}},j=(e,t)=>{switch(t){case"blob":return e instanceof Blob?e:new Blob([e]);case"arraybuffer":default:return e instanceof ArrayBuffer?e:e.buffer}},U=String.fromCharCode(30),F=(e,t)=>{const n=e.length,r=new Array(n);let o=0;e.forEach(((e,i)=>{M(e,!1,(e=>{r[i]=e,++o===n&&t(r.join(U))}))}))},K=(e,t)=>{const n=e.split(U),r=[];for(let o=0;o{const r=n.length;let o;if(r<126)o=new Uint8Array(1),new DataView(o.buffer).setUint8(0,r);else if(r<65536){o=new Uint8Array(3);const e=new DataView(o.buffer);e.setUint8(0,126),e.setUint16(1,r)}else{o=new Uint8Array(9);const e=new DataView(o.buffer);e.setUint8(0,127),e.setBigUint64(1,BigInt(r))}e.data&&"string"!==typeof e.data&&(o[0]|=128),t.enqueue(o),t.enqueue(n)}))}})}let z;function q(e){return e.reduce(((e,t)=>e+t.length),0)}function V(e,t){if(e[0].length===t)return e.shift();const n=new Uint8Array(t);let r=0;for(let o=0;oMath.pow(2,21)-1){a.enqueue(S);break}o=i*Math.pow(2,32)+t.getUint32(4),r=3}else{if(q(n)e){a.enqueue(S);break}}}})}const G=4;function Y(e){if(e)return Z(e)}function Z(e){for(var t in Y.prototype)e[t]=Y.prototype[t];return e}Y.prototype.on=Y.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},Y.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},Y.prototype.off=Y.prototype.removeListener=Y.prototype.removeAllListeners=Y.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var o=0;o"undefined"!==typeof self?self:"undefined"!==typeof window?window:Function("return this")())();function X(e,...t){return t.reduce(((t,n)=>(e.hasOwnProperty(n)&&(t[n]=e[n]),t)),{})}const Q=J.setTimeout,ee=J.clearTimeout;function te(e,t){t.useNativeTimers?(e.setTimeoutFn=Q.bind(J),e.clearTimeoutFn=ee.bind(J)):(e.setTimeoutFn=J.setTimeout.bind(J),e.clearTimeoutFn=J.clearTimeout.bind(J))}const ne=1.33;function re(e){return"string"===typeof e?oe(e):Math.ceil((e.byteLength||e.size)*ne)}function oe(e){let t=0,n=0;for(let r=0,o=e.length;r=57344?n+=3:(r++,n+=4);return n}function ie(e){let t="";for(let n in e)e.hasOwnProperty(n)&&(t.length&&(t+="&"),t+=encodeURIComponent(n)+"="+encodeURIComponent(e[n]));return t}function se(e){let t={},n=e.split("&");for(let r=0,o=n.length;r0);return t}function me(){const e=ge(+new Date);return e!==he?(fe=0,he=e):e+"."+ge(fe++)}for(;pe{this.readyState="paused",e()};if(this.polling||!this.writable){let e=0;this.polling&&(e++,this.once("pollComplete",(function(){--e||t()}))),this.writable||(e++,this.once("drain",(function(){--e||t()})))}else t()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=e=>{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)};K(e,this.socket.binaryType).forEach(t),"closed"!==this.readyState&&(this.polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};"open"===this.readyState?e():this.once("open",e)}write(e){this.writable=!1,F(e,(e=>{this.doWrite(e,(()=>{this.writable=!0,this.emitReserved("drain")}))}))}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=me()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new Se(this.uri(),e)}doWrite(e,t){const n=this.request({method:"POST",data:e});n.on("success",t),n.on("error",((e,t)=>{this.onError("xhr post error",e,t)}))}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",((e,t)=>{this.onError("xhr poll error",e,t)})),this.pollXhr=e}}class Se extends Y{constructor(e,t){super(),te(this,t),this.opts=t,this.method=t.method||"GET",this.uri=e,this.data=void 0!==t.data?t.data:null,this.create()}create(){var e;const t=X(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this.opts.xd;const n=this.xhr=new be(t);try{n.open(this.method,this.uri,!0);try{if(this.opts.extraHeaders){n.setDisableHeaderCheck&&n.setDisableHeaderCheck(!0);for(let e in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(e)&&n.setRequestHeader(e,this.opts.extraHeaders[e])}}catch(r){}if("POST"===this.method)try{n.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(r){}try{n.setRequestHeader("Accept","*/*")}catch(r){}null===(e=this.opts.cookieJar)||void 0===e||e.addCookies(n),"withCredentials"in n&&(n.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(n.timeout=this.opts.requestTimeout),n.onreadystatechange=()=>{var e;3===n.readyState&&(null===(e=this.opts.cookieJar)||void 0===e||e.parseCookies(n)),4===n.readyState&&(200===n.status||1223===n.status?this.onLoad():this.setTimeoutFn((()=>{this.onError("number"===typeof n.status?n.status:0)}),0))},n.send(this.data)}catch(r){return void this.setTimeoutFn((()=>{this.onError(r)}),0)}"undefined"!==typeof document&&(this.index=Se.requestsCount++,Se.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if("undefined"!==typeof this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=Ee,e)try{this.xhr.abort()}catch(t){}"undefined"!==typeof document&&delete Se.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}if(Se.requestsCount=0,Se.requests={},"undefined"!==typeof document)if("function"===typeof attachEvent)attachEvent("onunload",ke);else if("function"===typeof addEventListener){const e="onpagehide"in J?"pagehide":"unload";addEventListener(e,ke,!1)}function ke(){for(let e in Se.requests)Se.requests.hasOwnProperty(e)&&Se.requests[e].abort()}const xe=(()=>{const e="function"===typeof Promise&&"function"===typeof Promise.resolve;return e?e=>Promise.resolve().then(e):(e,t)=>t(e,0)})(),Ae=J.WebSocket||J.MozWebSocket,Me=!0,Re="arraybuffer",Te="undefined"!==typeof navigator&&"string"===typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();class Oe extends ce{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),t=this.opts.protocols,n=Te?{}:X(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(n.headers=this.opts.extraHeaders);try{this.ws=Me&&!Te?t?new Ae(e,t):new Ae(e):new Ae(e,t,n)}catch(Ey){return this.emitReserved("error",Ey)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{const t={};if(!Me&&(n.options&&(t.compress=n.options.compress),this.opts.perMessageDeflate)){const n="string"===typeof e?Buffer.byteLength(e):e.length;n{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}}doClose(){"undefined"!==typeof this.ws&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=me()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!Ae}}class Ie extends ce{get name(){return"webtransport"}doOpen(){"function"===typeof WebTransport&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then((()=>{this.onClose()})).catch((e=>{this.onError("webtransport error",e)})),this.transport.ready.then((()=>{this.transport.createBidirectionalStream().then((e=>{const t=W(Number.MAX_SAFE_INTEGER,this.socket.binaryType),n=e.readable.pipeThrough(t).getReader(),r=H();r.readable.pipeTo(e.writable),this.writer=r.writable.getWriter();const o=()=>{n.read().then((({done:e,value:t})=>{e||(this.onPacket(t),o())})).catch((e=>{}))};o();const i={type:"open"};this.query.sid&&(i.data=`{"sid":"${this.query.sid}"}`),this.writer.write(i).then((()=>this.onOpen()))}))})))}write(e){this.writable=!1;for(let t=0;t{r&&xe((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}}doClose(){var e;null===(e=this.transport)||void 0===e||e.close()}}const Le={websocket:Oe,webtransport:Ie,polling:Ce},Pe=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Ne=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Be(e){const t=e,n=e.indexOf("["),r=e.indexOf("]");-1!=n&&-1!=r&&(e=e.substring(0,n)+e.substring(n,r).replace(/:/g,";")+e.substring(r,e.length));let o=Pe.exec(e||""),i={},s=14;while(s--)i[Ne[s]]=o[s]||"";return-1!=n&&-1!=r&&(i.source=t,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i.pathNames=De(i,i["path"]),i.queryKey=$e(i,i["query"]),i}function De(e,t){const n=/\/{2,9}/g,r=t.replace(n,"/").split("/");return"/"!=t.slice(0,1)&&0!==t.length||r.splice(0,1),"/"==t.slice(-1)&&r.splice(r.length-1,1),r}function $e(e,t){const n={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(e,t,r){t&&(n[t]=r)})),n}class je extends Y{constructor(e,t={}){super(),this.binaryType=Re,this.writeBuffer=[],e&&"object"===typeof e&&(t=e,e=null),e?(e=Be(e),t.hostname=e.host,t.secure="https"===e.protocol||"wss"===e.protocol,t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=Be(t.host).host),te(this,t),this.secure=null!=t.secure?t.secure:"undefined"!==typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!==typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!==typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"===typeof this.opts.query&&(this.opts.query=se(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,"function"===typeof addEventListener&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=G,t.transport=e,this.id&&(t.sid=this.id);const n=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new Le[e](n)}open(){let e;if(this.opts.rememberUpgrade&&je.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))e="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((()=>{this.emitReserved("error","No transports available")}),0);e=this.transports[0]}this.readyState="opening";try{e=this.createTransport(e)}catch(t){return this.transports.shift(),void this.open()}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(e=>this.onClose("transport close",e)))}probe(e){let t=this.createTransport(e),n=!1;je.priorWebsocketSuccess=!1;const r=()=>{n||(t.send([{type:"ping",data:"probe"}]),t.once("packet",(e=>{if(!n)if("pong"===e.type&&"probe"===e.data){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;je.priorWebsocketSuccess="websocket"===t.name,this.transport.pause((()=>{n||"closed"!==this.readyState&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())}))}else{const e=new Error("probe error");e.transport=t.name,this.emitReserved("upgradeError",e)}})))};function o(){n||(n=!0,l(),t.close(),t=null)}const i=e=>{const n=new Error("probe error: "+e);n.transport=t.name,o(),this.emitReserved("upgradeError",n)};function s(){i("transport closed")}function a(){i("socket closed")}function c(e){t&&e.name!==t.name&&o()}const l=()=>{t.removeListener("open",r),t.removeListener("error",i),t.removeListener("close",s),this.off("close",a),this.off("upgrading",c)};t.once("open",r),t.once("error",i),t.once("close",s),this.once("close",a),this.once("upgrading",c),-1!==this.upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn((()=>{n||t.open()}),200):t.open()}onOpen(){if(this.readyState="open",je.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade){let e=0;const t=this.upgrades.length;for(;e{this.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){const e=this.maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1;if(!e)return this.writeBuffer;let t=1;for(let n=0;n0&&t>this.maxPayload)return this.writeBuffer.slice(0,n);t+=2}return this.writeBuffer}write(e,t,n){return this.sendPacket("message",e,t,n),this}send(e,t,n){return this.sendPacket("message",e,t,n),this}sendPacket(e,t,n,r){if("function"===typeof t&&(r=t,t=void 0),"function"===typeof n&&(r=n,n=null),"closing"===this.readyState||"closed"===this.readyState)return;n=n||{},n.compress=!1!==n.compress;const o={type:e,data:t,options:n};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),r&&this.once("flush",r),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},n=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(()=>{this.upgrading?n():e()})):this.upgrading?n():e()),this}onError(e){je.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"===typeof removeEventListener&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const t=[];let n=0;const r=e.length;for(;n"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,He=Object.prototype.toString,ze="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===He.call(Blob),qe="function"===typeof File||"undefined"!==typeof File&&"[object FileConstructor]"===He.call(File);function Ve(e){return Fe&&(e instanceof ArrayBuffer||Ke(e))||ze&&e instanceof Blob||qe&&e instanceof File}function We(e,t){if(!e||"object"!==typeof e)return!1;if(Array.isArray(e)){for(let t=0,n=e.length;t=0&&e.num{delete this.acks[e];for(let t=0;t{this.io.clearTimeoutFn(o),t.apply(this,[null,...e])}}emitWithAck(e,...t){const n=void 0!==this.flags.timeout||void 0!==this._opts.ackTimeout;return new Promise(((r,o)=>{t.push(((e,t)=>n?e?o(e):r(t):r(e))),this.emit(e,...t)}))}_addToQueue(e){let t;"function"===typeof e[e.length-1]&&(t=e.pop());const n={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push(((e,...r)=>{if(n!==this._queue[0])return;const o=null!==e;return o?n.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(e)):(this._queue.shift(),t&&t(null,...r)),n.pending=!1,this._drainQueue()})),this._queue.push(n),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||0===this._queue.length)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){"function"==typeof this.auth?this.auth((e=>{this._sendConnectPacket(e)})):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:et.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){const t=e.nsp===this.nsp;if(t)switch(e.type){case et.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case et.EVENT:case et.BINARY_EVENT:this.onevent(e);break;case et.ACK:case et.BINARY_ACK:this.onack(e);break;case et.DISCONNECT:this.ondisconnect();break;case et.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t);break}}onevent(e){const t=e.data||[];null!=e.id&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const n of t)n.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"===typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let n=!1;return function(...r){n||(n=!0,t.packet({type:et.ACK,id:e,data:r}))}}onack(e){const t=this.acks[e.id];"function"===typeof t&&(t.apply(this,e.data),delete this.acks[e.id])}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach((e=>this.emitEvent(e))),this.receiveBuffer=[],this.sendBuffer.forEach((e=>{this.notifyOutgoingListeners(e),this.packet(e)})),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach((e=>e())),this.subs=void 0),this.io["_destroy"](this)}disconnect(){return this.connected&&this.packet({type:et.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let n=0;n0&&e.jitter<=1?e.jitter:0,this.attempts=0}ct.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),n=Math.floor(t*this.jitter*e);e=0==(1&Math.floor(10*t))?e-n:e+n}return 0|Math.min(e,this.max)},ct.prototype.reset=function(){this.attempts=0},ct.prototype.setMin=function(e){this.ms=e},ct.prototype.setMax=function(e){this.max=e},ct.prototype.setJitter=function(e){this.jitter=e};class lt extends Y{constructor(e,t){var n;super(),this.nsps={},this.subs=[],e&&"object"===typeof e&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,te(this,t),this.reconnection(!1!==t.reconnection),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(n=t.randomizationFactor)&&void 0!==n?n:.5),this.backoff=new ct({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==t.timeout?2e4:t.timeout),this._readyState="closed",this.uri=e;const o=t.parser||r;this.encoder=new o.Encoder,this.decoder=new o.Decoder,this._autoConnect=!1!==t.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new je(this.uri,this.opts);const t=this.engine,n=this;this._readyState="opening",this.skipReconnect=!1;const r=it(t,"open",(function(){n.onopen(),e&&e()})),o=t=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},i=it(t,"error",o);if(!1!==this._timeout){const e=this._timeout,n=this.setTimeoutFn((()=>{r(),o(new Error("timeout")),t.close()}),e);this.opts.autoUnref&&n.unref(),this.subs.push((()=>{this.clearTimeoutFn(n)}))}return this.subs.push(r),this.subs.push(i),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(it(e,"ping",this.onping.bind(this)),it(e,"data",this.ondata.bind(this)),it(e,"error",this.onerror.bind(this)),it(e,"close",this.onclose.bind(this)),it(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){xe((()=>{this.emitReserved("packet",e)}),this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let n=this.nsps[e];return n?this._autoConnect&&!n.active&&n.connect():(n=new at(this,e,t),this.nsps[e]=n),n}_destroy(e){const t=Object.keys(this.nsps);for(const n of t){const e=this.nsps[n];if(e.active)return}this._close()}_packet(e){const t=this.encoder.encode(e);for(let n=0;ne())),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const n=this.setTimeoutFn((()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open((t=>{t?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):e.onreconnect()})))}),t);this.opts.autoUnref&&n.unref(),this.subs.push((()=>{this.clearTimeoutFn(n)}))}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const ut={};function dt(e,t){"object"===typeof e&&(t=e,e=void 0),t=t||{};const n=Ue(e,t.path||"/socket.io"),r=n.source,o=n.id,i=n.path,s=ut[o]&&i in ut[o]["nsps"],a=t.forceNew||t["force new connection"]||!1===t.multiplex||s;let c;return a?c=new lt(r,t):(ut[o]||(ut[o]=new lt(r,t)),c=ut[o]),n.query&&!t.query&&(t.query=n.queryKey),c.socket(n.path,t)}function ht(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))}Object.assign(dt,{Manager:lt,Socket:at,io:dt,connect:dt}),"function"==typeof SuppressedError&&SuppressedError;var ft="undefined"!=typeof n.g?n.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},pt=[],gt=[],mt="undefined"!=typeof Uint8Array?Uint8Array:Array,yt=!1;function vt(){yt=!0;for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",t=0;t<64;++t)pt[t]=e[t],gt[e.charCodeAt(t)]=t;gt["-".charCodeAt(0)]=62,gt["_".charCodeAt(0)]=63}function bt(e,t,n){for(var r,o,i=[],s=t;s>18&63]+pt[o>>12&63]+pt[o>>6&63]+pt[63&o]);return i.join("")}function wt(e){var t;yt||vt();for(var n=e.length,r=n%3,o="",i=[],s=16383,a=0,c=n-r;ac?c:a+s));return 1===r?(t=e[n-1],o+=pt[t>>2],o+=pt[t<<4&63],o+="=="):2===r&&(t=(e[n-2]<<8)+e[n-1],o+=pt[t>>10],o+=pt[t>>4&63],o+=pt[t<<2&63],o+="="),i.push(o),i.join("")}function Et(e,t,n,r,o){var i,s,a=8*o-r-1,c=(1<>1,u=-7,d=n?o-1:0,h=n?-1:1,f=e[t+d];for(d+=h,i=f&(1<<-u)-1,f>>=-u,u+=a;u>0;i=256*i+e[t+d],d+=h,u-=8);for(s=i&(1<<-u)-1,i>>=-u,u+=r;u>0;s=256*s+e[t+d],d+=h,u-=8);if(0===i)i=1-l;else{if(i===c)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,r),i-=l}return(f?-1:1)*s*Math.pow(2,i-r)}function _t(e,t,n,r,o,i){var s,a,c,l=8*i-o-1,u=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:i-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),(t+=s+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(s++,c/=2),s+d>=u?(a=0,s=u):s+d>=1?(a=(t*c-1)*Math.pow(2,o),s+=d):(a=t*Math.pow(2,d-1)*Math.pow(2,o),s=0));o>=8;e[n+f]=255&a,f+=p,a/=256,o-=8);for(s=s<0;e[n+f]=255&s,f+=p,s/=256,l-=8);e[n+f-p]|=128*g}var Ct={}.toString,St=Array.isArray||function(e){return"[object Array]"==Ct.call(e)};Mt.TYPED_ARRAY_SUPPORT=void 0===ft.TYPED_ARRAY_SUPPORT||ft.TYPED_ARRAY_SUPPORT;var kt=xt();function xt(){return Mt.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function At(e,t){if(xt()=xt())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+xt().toString(16)+" bytes");return 0|e}function Pt(e){return!(null==e||!e._isBuffer)}function Nt(e,t){if(Pt(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return ln(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return un(e).length;default:if(r)return ln(e).length;t=(""+t).toLowerCase(),r=!0}}function Bt(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return Jt(this,t,n);case"utf8":case"utf-8":return Wt(this,t,n);case"ascii":return Yt(this,t,n);case"latin1":case"binary":return Zt(this,t,n);case"base64":return Vt(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Xt(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function Dt(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function $t(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=Mt.from(t,r)),Pt(t))return 0===t.length?-1:jt(e,t,n,r,o);if("number"==typeof t)return t&=255,Mt.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):jt(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function jt(e,t,n,r,o){var i,s=1,a=e.length,c=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,n/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(o){var u=-1;for(i=n;ia&&(n=a-c),i=n;i>=0;i--){for(var d=!0,h=0;ho&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var s=0;s>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function Vt(e,t,n){return 0===t&&n===e.length?wt(e):wt(e.slice(t,n))}function Wt(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:l>223?3:l>191?2:1;if(o+d<=n)switch(d){case 1:l<128&&(u=l);break;case 2:128==(192&(i=e[o+1]))&&(c=(31&l)<<6|63&i)>127&&(u=c);break;case 3:i=e[o+1],s=e[o+2],128==(192&i)&&128==(192&s)&&(c=(15&l)<<12|(63&i)<<6|63&s)>2047&&(c<55296||c>57343)&&(u=c);break;case 4:i=e[o+1],s=e[o+2],a=e[o+3],128==(192&i)&&128==(192&s)&&128==(192&a)&&(c=(15&l)<<18|(63&i)<<12|(63&s)<<6|63&a)>65535&&c<1114112&&(u=c)}null===u?(u=65533,d=1):u>65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u),o+=d}return function(e){var t=e.length;if(t<=Gt)return String.fromCharCode.apply(String,e);for(var n="",r=0;r0&&(e=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(e+=" ... ")),""},Mt.prototype.compare=function(e,t,n,r,o){if(!Pt(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),a=Math.min(i,s),c=this.slice(r,o),l=e.slice(t,n),u=0;uo)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return Ut(this,e,t,n);case"utf8":case"utf-8":return Ft(this,e,t,n);case"ascii":return Kt(this,e,t,n);case"latin1":case"binary":return Ht(this,e,t,n);case"base64":return zt(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return qt(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},Mt.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Gt=4096;function Yt(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function en(e,t,n,r,o,i){if(!Pt(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function tn(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function nn(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function rn(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function on(e,t,n,r,o){return o||rn(e,0,n,4),_t(e,t,n,r,23,4),n+4}function sn(e,t,n,r,o){return o||rn(e,0,n,8),_t(e,t,n,r,52,8),n+8}Mt.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},Mt.prototype.readUInt8=function(e,t){return t||Qt(e,1,this.length),this[e]},Mt.prototype.readUInt16LE=function(e,t){return t||Qt(e,2,this.length),this[e]|this[e+1]<<8},Mt.prototype.readUInt16BE=function(e,t){return t||Qt(e,2,this.length),this[e]<<8|this[e+1]},Mt.prototype.readUInt32LE=function(e,t){return t||Qt(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},Mt.prototype.readUInt32BE=function(e,t){return t||Qt(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},Mt.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||Qt(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},Mt.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||Qt(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},Mt.prototype.readInt8=function(e,t){return t||Qt(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},Mt.prototype.readInt16LE=function(e,t){t||Qt(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},Mt.prototype.readInt16BE=function(e,t){t||Qt(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},Mt.prototype.readInt32LE=function(e,t){return t||Qt(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},Mt.prototype.readInt32BE=function(e,t){return t||Qt(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},Mt.prototype.readFloatLE=function(e,t){return t||Qt(e,4,this.length),Et(this,e,!0,23,4)},Mt.prototype.readFloatBE=function(e,t){return t||Qt(e,4,this.length),Et(this,e,!1,23,4)},Mt.prototype.readDoubleLE=function(e,t){return t||Qt(e,8,this.length),Et(this,e,!0,52,8)},Mt.prototype.readDoubleBE=function(e,t){return t||Qt(e,8,this.length),Et(this,e,!1,52,8)},Mt.prototype.writeUIntLE=function(e,t,n,r){e=+e,t|=0,n|=0,r||en(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},Mt.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,1,255,0),Mt.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},Mt.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,2,65535,0),Mt.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):tn(this,e,t,!0),t+2},Mt.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,2,65535,0),Mt.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):tn(this,e,t,!1),t+2},Mt.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,4,4294967295,0),Mt.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):nn(this,e,t,!0),t+4},Mt.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,4,4294967295,0),Mt.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):nn(this,e,t,!1),t+4},Mt.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);en(this,e,t,n,o-1,-o)}var i=0,s=1,a=0;for(this[t]=255&e;++i>0)-a&255;return t+n},Mt.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);en(this,e,t,n,o-1,-o)}var i=n-1,s=1,a=0;for(this[t+i]=255&e;--i>=0&&(s*=256);)e<0&&0===a&&0!==this[t+i+1]&&(a=1),this[t+i]=(e/s>>0)-a&255;return t+n},Mt.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,1,127,-128),Mt.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},Mt.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,2,32767,-32768),Mt.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):tn(this,e,t,!0),t+2},Mt.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,2,32767,-32768),Mt.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):tn(this,e,t,!1),t+2},Mt.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,4,2147483647,-2147483648),Mt.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):nn(this,e,t,!0),t+4},Mt.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||en(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),Mt.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):nn(this,e,t,!1),t+4},Mt.prototype.writeFloatLE=function(e,t,n){return on(this,e,t,!0,n)},Mt.prototype.writeFloatBE=function(e,t,n){return on(this,e,t,!1,n)},Mt.prototype.writeDoubleLE=function(e,t,n){return sn(this,e,t,!0,n)},Mt.prototype.writeDoubleBE=function(e,t,n){return sn(this,e,t,!1,n)},Mt.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!Mt.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function un(e){return function(e){var t,n,r,o,i,s;yt||vt();var a=e.length;if(a%4>0)throw new Error("Invalid string. Length must be a multiple of 4");i="="===e[a-2]?2:"="===e[a-1]?1:0,s=new mt(3*a/4-i),r=i>0?a-4:a;var c=0;for(t=0,n=0;t>16&255,s[c++]=o>>8&255,s[c++]=255&o;return 2===i?(o=gt[e.charCodeAt(t)]<<2|gt[e.charCodeAt(t+1)]>>4,s[c++]=255&o):1===i&&(o=gt[e.charCodeAt(t)]<<10|gt[e.charCodeAt(t+1)]<<4|gt[e.charCodeAt(t+2)]>>2,s[c++]=o>>8&255,s[c++]=255&o),s}(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(an,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function dn(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}function hn(e){return null!=e&&(!!e._isBuffer||fn(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&fn(e.slice(0,0))}(e))}function fn(e){return!!e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}var pn=Object.freeze({__proto__:null,Buffer:Mt,INSPECT_MAX_BYTES:50,SlowBuffer:function(e){return+e!=e&&(e=0),Mt.alloc(+e)},isBuffer:hn,kMaxLength:kt}),gn="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof n.g?n.g:"undefined"!=typeof self?self:{};function mn(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function yn(e){if(e.__esModule)return e;var t=e.default;if("function"==typeof t){var n=function e(){return this instanceof e?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})})),n}var vn={},bn={},wn={};function En(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function _n(e){if("boolean"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function Cn(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}function Sn(e,...t){if(!Cn(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function kn(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("hash must be wrapped by utils.wrapConstructor");En(e.outputLen),En(e.blockLen)}function xn(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function An(e,t){Sn(e);const n=t.outputLen;if(e.length=0&&tnew Uint8Array(e.buffer,e.byteOffset,e.byteLength),e.u16=e=>new Uint16Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/2)),e.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),e.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),e.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],!e.isLE)throw new Error("Non little-endian hardware is not supported");const n=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function r(e){(0,t.bytes)(e);let r="";for(let t=0;t=o._0&&e<=o._9?e-o._0:e>=o._A&&e<=o._F?e-(o._A-10):e>=o._a&&e<=o._f?e-(o._a-10):void 0}function s(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const r=new Uint8Array(n);for(let o=0,s=0;o>o&i),a=Number(n&i),c=r?4:0,l=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+l,a,r)}function u(e){return Uint8Array.from(e)}e.nextTick=async()=>{},e.Hash=class{},e.wrapCipher=(e,t)=>(Object.assign(t,e),t)}(bn);var Rn={},Tn={};Object.defineProperty(Tn,"__esModule",{value:!0}),Tn.AEAD_TAG_LENGTH=Tn.XCHACHA20_NONCE_LENGTH=Tn.CURVE25519_PUBLIC_KEY_SIZE=Tn.ETH_PUBLIC_KEY_SIZE=Tn.UNCOMPRESSED_PUBLIC_KEY_SIZE=Tn.COMPRESSED_PUBLIC_KEY_SIZE=Tn.SECRET_KEY_LENGTH=void 0,Tn.SECRET_KEY_LENGTH=32,Tn.COMPRESSED_PUBLIC_KEY_SIZE=33,Tn.UNCOMPRESSED_PUBLIC_KEY_SIZE=65,Tn.ETH_PUBLIC_KEY_SIZE=64,Tn.CURVE25519_PUBLIC_KEY_SIZE=32,Tn.XCHACHA20_NONCE_LENGTH=24,Tn.AEAD_TAG_LENGTH=16,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ephemeralKeySize=e.symmetricNonceLength=e.symmetricAlgorithm=e.isHkdfKeyCompressed=e.isEphemeralKeyCompressed=e.ellipticCurve=e.ECIES_CONFIG=void 0;var t=Tn,n=function(){this.ellipticCurve="secp256k1",this.isEphemeralKeyCompressed=!1,this.isHkdfKeyCompressed=!1,this.symmetricAlgorithm="aes-256-gcm",this.symmetricNonceLength=16};e.ECIES_CONFIG=new n,e.ellipticCurve=function(){return e.ECIES_CONFIG.ellipticCurve},e.isEphemeralKeyCompressed=function(){return e.ECIES_CONFIG.isEphemeralKeyCompressed},e.isHkdfKeyCompressed=function(){return e.ECIES_CONFIG.isHkdfKeyCompressed},e.symmetricAlgorithm=function(){return e.ECIES_CONFIG.symmetricAlgorithm},e.symmetricNonceLength=function(){return e.ECIES_CONFIG.symmetricNonceLength},e.ephemeralKeySize=function(){var n={secp256k1:e.ECIES_CONFIG.isEphemeralKeyCompressed?t.COMPRESSED_PUBLIC_KEY_SIZE:t.UNCOMPRESSED_PUBLIC_KEY_SIZE,x25519:t.CURVE25519_PUBLIC_KEY_SIZE,ed25519:t.CURVE25519_PUBLIC_KEY_SIZE};if(e.ECIES_CONFIG.ellipticCurve in n)return n[e.ECIES_CONFIG.ellipticCurve];throw new Error("Not implemented")}}(Rn);var On={},In={},Ln={},Pn={},Nn={},Bn={};Object.defineProperty(Bn,"__esModule",{value:!0}),Bn.crypto=void 0,Bn.crypto="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.gcm=e.ctr=e.cbc=e.utils=void 0,e.randomBytes=o,e.getWebcryptoSubtle=i,e.managedNonce=function(e){return(0,n.number)(e.nonceLength),(t,...n)=>({encrypt(i,...s){const{nonceLength:a}=e,c=o(a),l=e(t,c,...n).encrypt(i,...s),u=(0,r.concatBytes)(c,l);return l.fill(0),u},decrypt(r,...o){const{nonceLength:i}=e,s=r.subarray(0,i),a=r.subarray(i);return e(t,s,...n).decrypt(a,...o)}})};const t=Bn,n=wn,r=bn;function o(e=32){if(t.crypto&&"function"==typeof t.crypto.getRandomValues)return t.crypto.getRandomValues(new Uint8Array(e));if(t.crypto&&"function"==typeof t.crypto.randomBytes)return t.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")}function i(){if(t.crypto&&"object"==typeof t.crypto.subtle&&null!=t.crypto.subtle)return t.crypto.subtle;throw new Error("crypto.subtle must be defined")}e.utils={async encrypt(e,t,n,r){const o=i(),s=await o.importKey("raw",e,t,!0,["encrypt"]),a=await o.encrypt(n,s,r);return new Uint8Array(a)},async decrypt(e,t,n,r){const o=i(),s=await o.importKey("raw",e,t,!0,["decrypt"]),a=await o.decrypt(n,s,r);return new Uint8Array(a)}};const s={CBC:"AES-CBC",CTR:"AES-CTR",GCM:"AES-GCM"};function a(t){return(r,o,i)=>{(0,n.bytes)(r),(0,n.bytes)(o);const a={name:t,length:8*r.length},c=function(e,t,n){if(e===s.CBC)return{name:s.CBC,iv:t};if(e===s.CTR)return{name:s.CTR,counter:t,length:64};if(e===s.GCM)return n?{name:s.GCM,iv:t,additionalData:n}:{name:s.GCM,iv:t};throw new Error("unknown aes block mode")}(t,o,i);return{encrypt:t=>((0,n.bytes)(t),e.utils.encrypt(r,a,c,t)),decrypt:t=>((0,n.bytes)(t),e.utils.decrypt(r,a,c,t))}}}e.cbc=a(s.CBC),e.ctr=a(s.CTR),e.gcm=a(s.GCM)}(Nn);var Dn={},$n={},jn={},Un={};function Fn(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`positive integer expected, not ${e}`)}function Kn(e){if("boolean"!=typeof e)throw new Error(`boolean expected, not ${e}`)}function Hn(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}function zn(e,...t){if(!Hn(e))throw new Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw new Error(`Uint8Array expected of length ${t}, not of length=${e.length}`)}function qn(e){if("function"!=typeof e||"function"!=typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");Fn(e.outputLen),Fn(e.blockLen)}function Vn(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Wn(e,t){zn(e);const n=t.outputLen;if(e.length=0&&te().update(a(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t},e.wrapConstructorWithOpts=function(e){const t=(t,n)=>e(n).update(a(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t},e.wrapXOFConstructorWithOpts=function(e){const t=(t,n)=>e(n).update(a(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t},e.randomBytes=function(e=32){if(t.crypto&&"function"==typeof t.crypto.getRandomValues)return t.crypto.getRandomValues(new Uint8Array(e));if(t.crypto&&"function"==typeof t.crypto.randomBytes)return t.crypto.randomBytes(e);throw new Error("crypto.getRandomValues must be defined")};const t=Zn,n=Un;e.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength),e.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),e.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),e.rotr=(e,t)=>e<<32-t|e>>>t,e.rotl=(e,t)=>e<>>32-t>>>0,e.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],e.byteSwap=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255,e.byteSwapIfBE=e.isLE?e=>e:t=>(0,e.byteSwap)(t);const r=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0"))),o={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function i(e){return e>=o._0&&e<=o._9?e-o._0:e>=o._A&&e<=o._F?e-(o._A-10):e>=o._a&&e<=o._f?e-(o._a-10):void 0}function s(e){if("string"!=typeof e)throw new Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array((new TextEncoder).encode(e))}function a(e){return"string"==typeof e&&(e=s(e)),(0,n.bytes)(e),e}e.nextTick=async()=>{},e.Hash=class{clone(){return this._cloneInto()}};const c={}.toString}(Yn),Object.defineProperty(jn,"__esModule",{value:!0}),jn.HashMD=jn.Maj=jn.Chi=void 0;const Jn=Un,Xn=Yn;jn.Chi=(e,t,n)=>e&t^~e&n,jn.Maj=(e,t,n)=>e&t^e&n^t&n,jn.HashMD=class extends Xn.Hash{constructor(e,t,n,r){super(),this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,Xn.createView)(this.buffer)}update(e){(0,Jn.exists)(this);const{view:t,buffer:n,blockLen:r}=this,o=(e=(0,Xn.toBytes)(e)).length;for(let i=0;ir-i&&(this.process(n,0),i=0);for(let u=i;u>o&i),a=Number(n&i),c=r?4:0,l=r?0:4;e.setUint32(t+c,s,r),e.setUint32(t+l,a,r)}(n,r-8,BigInt(8*this.length),o),this.process(n,0);const s=(0,Xn.createView)(e),a=this.outputLen;if(a%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const c=a/4,l=this.get();if(c>l.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u>tr&er)}:{h:0|Number(e>>tr&er),l:0|Number(e&er)}}function rr(e,t=!1){let n=new Uint32Array(e.length),r=new Uint32Array(e.length);for(let o=0;oBigInt(e>>>0)<>>0);Qn.toBig=or;const ir=(e,t,n)=>e>>>n;Qn.shrSH=ir;const sr=(e,t,n)=>e<<32-n|t>>>n;Qn.shrSL=sr;const ar=(e,t,n)=>e>>>n|t<<32-n;Qn.rotrSH=ar;const cr=(e,t,n)=>e<<32-n|t>>>n;Qn.rotrSL=cr;const lr=(e,t,n)=>e<<64-n|t>>>n-32;Qn.rotrBH=lr;const ur=(e,t,n)=>e>>>n-32|t<<64-n;Qn.rotrBL=ur;const dr=(e,t)=>t;Qn.rotr32H=dr;const hr=(e,t)=>e;Qn.rotr32L=hr;const fr=(e,t,n)=>e<>>32-n;Qn.rotlSH=fr;const pr=(e,t,n)=>t<>>32-n;Qn.rotlSL=pr;const gr=(e,t,n)=>t<>>64-n;Qn.rotlBH=gr;const mr=(e,t,n)=>e<>>64-n;function yr(e,t,n,r){const o=(t>>>0)+(r>>>0);return{h:e+n+(o/2**32|0)|0,l:0|o}}Qn.rotlBL=mr;const vr=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0);Qn.add3L=vr;const br=(e,t,n,r)=>t+n+r+(e/2**32|0)|0;Qn.add3H=br;const wr=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0);Qn.add4L=wr;const Er=(e,t,n,r,o)=>t+n+r+o+(e/2**32|0)|0;Qn.add4H=Er;const _r=(e,t,n,r,o)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(o>>>0);Qn.add5L=_r;const Cr=(e,t,n,r,o,i)=>t+n+r+o+i+(e/2**32|0)|0;Qn.add5H=Cr;const Sr={fromBig:nr,split:rr,toBig:or,shrSH:ir,shrSL:sr,rotrSH:ar,rotrSL:cr,rotrBH:lr,rotrBL:ur,rotr32H:dr,rotr32L:hr,rotlSH:fr,rotlSL:pr,rotlBH:gr,rotlBL:mr,add:yr,add3L:vr,add3H:br,add4L:wr,add4H:Er,add5H:Cr,add5L:_r};Qn.default=Sr,Object.defineProperty($n,"__esModule",{value:!0}),$n.sha384=$n.sha512_256=$n.sha512_224=$n.sha512=$n.SHA384=$n.SHA512_256=$n.SHA512_224=$n.SHA512=void 0;const kr=jn,xr=Qn,Ar=Yn,[Mr,Rr]=(()=>xr.default.split(["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","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)))))(),Tr=new Uint32Array(80),Or=new Uint32Array(80);class Ir extends kr.HashMD{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:n,Bl:r,Ch:o,Cl:i,Dh:s,Dl:a,Eh:c,El:l,Fh:u,Fl:d,Gh:h,Gl:f,Hh:p,Hl:g}=this;return[e,t,n,r,o,i,s,a,c,l,u,d,h,f,p,g]}set(e,t,n,r,o,i,s,a,c,l,u,d,h,f,p,g){this.Ah=0|e,this.Al=0|t,this.Bh=0|n,this.Bl=0|r,this.Ch=0|o,this.Cl=0|i,this.Dh=0|s,this.Dl=0|a,this.Eh=0|c,this.El=0|l,this.Fh=0|u,this.Fl=0|d,this.Gh=0|h,this.Gl=0|f,this.Hh=0|p,this.Hl=0|g}process(e,t){for(let v=0;v<16;v++,t+=4)Tr[v]=e.getUint32(t),Or[v]=e.getUint32(t+=4);for(let v=16;v<80;v++){const e=0|Tr[v-15],t=0|Or[v-15],n=xr.default.rotrSH(e,t,1)^xr.default.rotrSH(e,t,8)^xr.default.shrSH(e,t,7),r=xr.default.rotrSL(e,t,1)^xr.default.rotrSL(e,t,8)^xr.default.shrSL(e,t,7),o=0|Tr[v-2],i=0|Or[v-2],s=xr.default.rotrSH(o,i,19)^xr.default.rotrBH(o,i,61)^xr.default.shrSH(o,i,6),a=xr.default.rotrSL(o,i,19)^xr.default.rotrBL(o,i,61)^xr.default.shrSL(o,i,6),c=xr.default.add4L(r,a,Or[v-7],Or[v-16]),l=xr.default.add4H(c,n,s,Tr[v-7],Tr[v-16]);Tr[v]=0|l,Or[v]=0|c}let{Ah:n,Al:r,Bh:o,Bl:i,Ch:s,Cl:a,Dh:c,Dl:l,Eh:u,El:d,Fh:h,Fl:f,Gh:p,Gl:g,Hh:m,Hl:y}=this;for(let v=0;v<80;v++){const e=xr.default.rotrSH(u,d,14)^xr.default.rotrSH(u,d,18)^xr.default.rotrBH(u,d,41),t=xr.default.rotrSL(u,d,14)^xr.default.rotrSL(u,d,18)^xr.default.rotrBL(u,d,41),b=u&h^~u&p,w=d&f^~d&g,E=xr.default.add5L(y,t,w,Rr[v],Or[v]),_=xr.default.add5H(E,m,e,b,Mr[v],Tr[v]),C=0|E,S=xr.default.rotrSH(n,r,28)^xr.default.rotrBH(n,r,34)^xr.default.rotrBH(n,r,39),k=xr.default.rotrSL(n,r,28)^xr.default.rotrBL(n,r,34)^xr.default.rotrBL(n,r,39),x=n&o^n&s^o&s,A=r&i^r&a^i&a;m=0|p,y=0|g,p=0|h,g=0|f,h=0|u,f=0|d,({h:u,l:d}=xr.default.add(0|c,0|l,0|_,0|C)),c=0|s,l=0|a,s=0|o,a=0|i,o=0|n,i=0|r;const M=xr.default.add3L(C,k,A);n=xr.default.add3H(M,_,S,x),r=0|M}({h:n,l:r}=xr.default.add(0|this.Ah,0|this.Al,0|n,0|r)),({h:o,l:i}=xr.default.add(0|this.Bh,0|this.Bl,0|o,0|i)),({h:s,l:a}=xr.default.add(0|this.Ch,0|this.Cl,0|s,0|a)),({h:c,l:l}=xr.default.add(0|this.Dh,0|this.Dl,0|c,0|l)),({h:u,l:d}=xr.default.add(0|this.Eh,0|this.El,0|u,0|d)),({h:h,l:f}=xr.default.add(0|this.Fh,0|this.Fl,0|h,0|f)),({h:p,l:g}=xr.default.add(0|this.Gh,0|this.Gl,0|p,0|g)),({h:m,l:y}=xr.default.add(0|this.Hh,0|this.Hl,0|m,0|y)),this.set(n,r,o,i,s,a,c,l,u,d,h,f,p,g,m,y)}roundClean(){Tr.fill(0),Or.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)}}$n.SHA512=Ir;class Lr extends Ir{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}$n.SHA512_224=Lr;class Pr extends Ir{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}$n.SHA512_256=Pr;class Nr extends Ir{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}$n.SHA384=Nr,$n.sha512=(0,Ar.wrapConstructor)((()=>new Ir)),$n.sha512_224=(0,Ar.wrapConstructor)((()=>new Lr)),$n.sha512_256=(0,Ar.wrapConstructor)((()=>new Pr)),$n.sha384=(0,Ar.wrapConstructor)((()=>new Nr));var Br={},Dr={},$r={},jr={};Object.defineProperty(jr,"__esModule",{value:!0}),jr.notImplemented=jr.bitMask=void 0,jr.isBytes=Hr,jr.abytes=zr,jr.abool=function(e,t){if("boolean"!=typeof t)throw new Error(`${e} must be valid boolean, got "${t}".`)},jr.bytesToHex=Vr,jr.numberToHexUnpadded=Wr,jr.hexToNumber=Gr,jr.hexToBytes=Jr,jr.bytesToNumberBE=function(e){return Gr(Vr(e))},jr.bytesToNumberLE=function(e){return zr(e),Gr(Vr(Uint8Array.from(e).reverse()))},jr.numberToBytesBE=Xr,jr.numberToBytesLE=function(e,t){return Xr(e,t).reverse()},jr.numberToVarBytesBE=function(e){return Jr(Wr(e))},jr.ensureBytes=function(e,t,n){let r;if("string"==typeof t)try{r=Jr(t)}catch(n){throw new Error(`${e} must be valid hex string, got "${t}". Cause: ${n}`)}else{if(!Hr(t))throw new Error(`${e} must be hex string or Uint8Array`);r=Uint8Array.from(t)}const o=r.length;if("number"==typeof n&&o!==n)throw new Error(`${e} expected ${n} bytes, got ${o}`);return r},jr.concatBytes=Qr,jr.equalBytes=function(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;rUr;e>>=Fr,t+=1);return t},jr.bitGet=function(e,t){return e>>BigInt(t)&Fr},jr.bitSet=function(e,t,n){return e|(n?Fr:Ur)<{r.fill(1),o.fill(0),i=0},a=(...e)=>n(o,r,...e),c=(e=no())=>{o=a(ro([0]),e),r=a(),0!==e.length&&(o=a(ro([1]),e),r=a())},l=()=>{if(i++>=1e3)throw new Error("drbg: tried 1000 values");let e=0;const n=[];for(;e{let n;for(s(),c(e);!(n=t(l()));)c();return s(),n}},jr.validateObject=function(e,t,n={}){const r=(t,n,r)=>{const o=oo[n];if("function"!=typeof o)throw new Error(`Invalid validator "${n}", expected function`);const i=e[t];if(!(r&&void 0===i||o(i,e)))throw new Error(`Invalid param ${String(t)}=${i} (${typeof i}), expected ${n}`)};for(const[o,i]of Object.entries(t))r(o,i,!1);for(const[o,i]of Object.entries(n))r(o,i,!0);return e},jr.memoized=function(e){const t=new WeakMap;return(n,...r)=>{const o=t.get(n);if(void 0!==o)return o;const i=e(n,...r);return t.set(n,i),i}};const Ur=BigInt(0),Fr=BigInt(1),Kr=BigInt(2);function Hr(e){return e instanceof Uint8Array||null!=e&&"object"==typeof e&&"Uint8Array"===e.constructor.name}function zr(e){if(!Hr(e))throw new Error("Uint8Array expected")}const qr=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));function Vr(e){zr(e);let t="";for(let n=0;n=Yr._0&&e<=Yr._9?e-Yr._0:e>=Yr._A&&e<=Yr._F?e-(Yr._A-10):e>=Yr._a&&e<=Yr._f?e-(Yr._a-10):void 0}function Jr(e){if("string"!=typeof e)throw new Error("hex string expected, got "+typeof e);const t=e.length,n=t/2;if(t%2)throw new Error("padded hex string expected, got unpadded hex of length "+t);const r=new Uint8Array(n);for(let o=0,i=0;o"bigint"==typeof e&&Ur<=e;function to(e,t,n){return eo(e)&&eo(t)&&eo(n)&&t<=e&&e(Kr<new Uint8Array(e),ro=e=>Uint8Array.from(e),oo={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||Hr(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)};jr.notImplemented=()=>{throw new Error("not implemented")},Object.defineProperty($r,"__esModule",{value:!0}),$r.isNegativeLE=void 0,$r.mod=po,$r.pow=go,$r.pow2=function(e,t,n){let r=e;for(;t-- >so;)r*=r,r%=n;return r},$r.invert=mo,$r.tonelliShanks=yo,$r.FpSqrt=vo,$r.validateField=function(e){const t=bo.reduce(((e,t)=>(e[t]="function",e)),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"});return(0,io.validateObject)(e,t)},$r.FpPow=wo,$r.FpInvertBatch=Eo,$r.FpDiv=function(e,t,n){return e.mul(t,"bigint"==typeof n?mo(n,e.ORDER):e.inv(n))},$r.FpLegendre=_o,$r.FpIsSquare=function(e){const t=_o(e.ORDER);return n=>{const r=t(e,n);return e.eql(r,e.ZERO)||e.eql(r,e.ONE)}},$r.nLength=Co,$r.Field=function(e,t,n=!1,r={}){if(e<=so)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:o,nByteLength:i}=Co(e,t);if(i>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=vo(e),a=Object.freeze({ORDER:e,BITS:o,BYTES:i,MASK:(0,io.bitMask)(o),ZERO:so,ONE:ao,create:t=>po(t,e),isValid:t=>{if("bigint"!=typeof t)throw new Error("Invalid field element: expected bigint, got "+typeof t);return so<=t&&te===so,isOdd:e=>(e&ao)===ao,neg:t=>po(-t,e),eql:(e,t)=>e===t,sqr:t=>po(t*t,e),add:(t,n)=>po(t+n,e),sub:(t,n)=>po(t-n,e),mul:(t,n)=>po(t*n,e),pow:(e,t)=>wo(a,e,t),div:(t,n)=>po(t*mo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>mo(t,e),sqrt:r.sqrt||(e=>s(a,e)),invertBatch:e=>Eo(a,e),cmov:(e,t,n)=>n?t:e,toBytes:e=>n?(0,io.numberToBytesLE)(e,i):(0,io.numberToBytesBE)(e,i),fromBytes:e=>{if(e.length!==i)throw new Error(`Fp.fromBytes: expected ${i}, got ${e.length}`);return n?(0,io.bytesToNumberLE)(e):(0,io.bytesToNumberBE)(e)}});return Object.freeze(a)},$r.FpSqrtOdd=function(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const n=e.sqrt(t);return e.isOdd(n)?n:e.neg(n)},$r.FpSqrtEven=function(e,t){if(!e.isOdd)throw new Error("Field doesn't have isOdd");const n=e.sqrt(t);return e.isOdd(n)?e.neg(n):n},$r.hashToPrivateScalar=function(e,t,n=!1){e=(0,io.ensureBytes)("privateHash",e);const r=e.length,o=Co(t).nByteLength+8;if(o<24||r1024)throw new Error(`hashToPrivateScalar: expected ${o}-1024 bytes of input, got ${r}`);const i=n?(0,io.bytesToNumberLE)(e):(0,io.bytesToNumberBE)(e);return po(i,t-ao)+ao},$r.getFieldBytesLength=So,$r.getMinHashLength=ko,$r.mapHashToField=function(e,t,n=!1){const r=e.length,o=So(t),i=ko(t);if(r<16||r1024)throw new Error(`expected ${i}-1024 bytes of input, got ${r}`);const s=po(n?(0,io.bytesToNumberBE)(e):(0,io.bytesToNumberLE)(e),t-ao)+ao;return n?(0,io.numberToBytesLE)(s,o):(0,io.numberToBytesBE)(s,o)};const io=jr,so=BigInt(0),ao=BigInt(1),co=BigInt(2),lo=BigInt(3),uo=BigInt(4),ho=BigInt(5),fo=BigInt(8);function po(e,t){const n=e%t;return n>=so?n:t+n}function go(e,t,n){if(n<=so||t 0");if(n===ao)return so;let r=ao;for(;t>so;)t&ao&&(r=r*e%n),e=e*e%n,t>>=ao;return r}function mo(e,t){if(e===so||t<=so)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=po(e,t),r=t,o=so,i=ao;for(;n!==so;){const e=r%n,t=o-i*(r/n);r=n,n=e,o=i,i=t}if(r!==ao)throw new Error("invert: does not exist");return po(o,t)}function yo(e){const t=(e-ao)/co;let n,r,o;for(n=e-ao,r=0;n%co===so;n/=co,r++);for(o=co;o(po(e,t)&ao)===ao;const bo=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function wo(e,t,n){if(n 0");if(n===so)return e.ONE;if(n===ao)return t;let r=e.ONE,o=t;for(;n>so;)n&ao&&(r=e.mul(r,o)),o=e.sqr(o),n>>=ao;return r}function Eo(e,t){const n=new Array(t.length),r=t.reduce(((t,r,o)=>e.is0(r)?t:(n[o]=t,e.mul(t,r))),e.ONE),o=e.inv(r);return t.reduceRight(((t,r,o)=>e.is0(r)?t:(n[o]=e.mul(t,n[o]),e.mul(t,r))),o),n}function _o(e){const t=(e-ao)/co;return(e,n)=>e.pow(n,t)}function Co(e,t){const n=void 0!==t?t:e.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function So(e){if("bigint"!=typeof e)throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function ko(e){const t=So(e);return t+Math.ceil(t/2)}Object.defineProperty(Dr,"__esModule",{value:!0}),Dr.wNAF=function(e,t){const n=(e,t)=>{const n=t.negate();return e?n:t},r=e=>{if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error(`Wrong window size=${e}, should be [1..${t}]`)},o=e=>(r(e),{windows:Math.ceil(t/e)+1,windowSize:2**(e-1)});return{constTimeNegate:n,unsafeLadder(t,n){let r=e.ZERO,o=t;for(;n>Mo;)n&Ro&&(r=r.add(o)),o=o.double(),n>>=Ro;return r},precomputeWindow(e,t){const{windows:n,windowSize:r}=o(t),i=[];let s=e,a=s;for(let o=0;o>=h,o>a&&(o-=d,i+=Ro);const s=t,f=t+Math.abs(o)-1,p=e%2!=0,g=o<0;0===o?l=l.add(n(p,r[s])):c=c.add(n(g,r[f]))}return{p:c,f:l}},wNAFCached(e,t,n){const r=Oo.get(e)||1;let o=To.get(e);return o||(o=this.precomputeWindow(e,r),1!==r&&To.set(e,n(o))),this.wNAF(r,o,t)},setWindowSize(e,t){r(t),Oo.set(e,t),To.delete(e)}}},Dr.pippenger=function(e,t,n,r){if(!Array.isArray(n)||!Array.isArray(r)||r.length!==n.length)throw new Error("arrays of points and scalars must have equal length");r.forEach(((e,n)=>{if(!t.isValid(e))throw new Error(`wrong scalar at index ${n}`)})),n.forEach(((t,n)=>{if(!(t instanceof e))throw new Error(`wrong point at index ${n}`)}));const o=(0,Ao.bitLen)(BigInt(n.length)),i=o>12?o-3:o>4?o-2:o?2:1,s=(1<=0;u-=i){a.fill(e.ZERO);for(let e=0;e>BigInt(u)&BigInt(s));a[o]=a[o].add(n[e])}let t=e.ZERO;for(let n=a.length-1,r=e.ZERO;n>0;n--)r=r.add(a[n]),t=t.add(r);if(l=l.add(t),0!==u)for(let e=0;e{try{return{isValid:!0,value:n.sqrt(e*n.inv(t))}}catch(e){return{isValid:!1,value:Bo}}}),f=t.adjustScalarBytes||(e=>e),p=t.domain||((e,t,n)=>{if((0,No.abool)("phflag",n),t.length||n)throw new Error("Contexts/pre-hash are not supported");return e});function g(e,t){Po.aInRange("coordinate "+e,t,Bo,l)}function m(e){if(!(e instanceof b))throw new Error("ExtendedPoint expected")}const y=(0,No.memoized)(((e,t)=>{const{ex:r,ey:o,ez:i}=e,s=e.is0();null==t&&(t=s?jo:n.inv(i));const a=u(r*t),c=u(o*t),l=u(i*t);if(s)return{x:Bo,y:Do};if(l!==Do)throw new Error("invZ was invalid");return{x:a,y:c}})),v=(0,No.memoized)((e=>{const{a:n,d:r}=t;if(e.is0())throw new Error("bad point: ZERO");const{ex:o,ey:i,ez:s,et:a}=e,c=u(o*o),l=u(i*i),d=u(s*s),h=u(d*d),f=u(c*n);if(u(d*u(f+l))!==u(h+u(r*u(c*l))))throw new Error("bad point: equation left != right (1)");if(u(o*i)!==u(s*a))throw new Error("bad point: equation left != right (2)");return!0}));class b{constructor(e,t,n,r){this.ex=e,this.ey=t,this.ez=n,this.et=r,g("x",e),g("y",t),g("z",n),g("t",r),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(e){if(e instanceof b)throw new Error("extended point not allowed");const{x:t,y:n}=e||{};return g("x",t),g("y",n),new b(t,n,Do,u(t*n))}static normalizeZ(e){const t=n.invertBatch(e.map((e=>e.ez)));return e.map(((e,n)=>e.toAffine(t[n]))).map(b.fromAffine)}static msm(e,t){return(0,Io.pippenger)(b,d,e,t)}_setWindowSize(e){_.setWindowSize(this,e)}assertValidity(){v(this)}equals(e){m(e);const{ex:t,ey:n,ez:r}=this,{ex:o,ey:i,ez:s}=e,a=u(t*s),c=u(o*r),l=u(n*s),d=u(i*r);return a===c&&l===d}is0(){return this.equals(b.ZERO)}negate(){return new b(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){const{a:e}=t,{ex:n,ey:r,ez:o}=this,i=u(n*n),s=u(r*r),a=u($o*u(o*o)),c=u(e*i),l=n+r,d=u(u(l*l)-i-s),h=c+s,f=h-a,p=c-s,g=u(d*f),m=u(h*p),y=u(d*p),v=u(f*h);return new b(g,m,v,y)}add(e){m(e);const{a:n,d:r}=t,{ex:o,ey:i,ez:s,et:a}=this,{ex:c,ey:l,ez:d,et:h}=e;if(n===BigInt(-1)){const e=u((i-o)*(l+c)),t=u((i+o)*(l-c)),n=u(t-e);if(n===Bo)return this.double();const r=u(s*$o*h),f=u(a*$o*d),p=f+r,g=t+e,m=f-r,y=u(p*n),v=u(g*m),w=u(p*m),E=u(n*g);return new b(y,v,E,w)}const f=u(o*c),p=u(i*l),g=u(a*r*h),y=u(s*d),v=u((o+i)*(c+l)-f-p),w=y-g,E=y+g,_=u(p-n*f),C=u(v*w),S=u(E*_),k=u(v*_),x=u(w*E);return new b(C,S,x,k)}subtract(e){return this.add(e.negate())}wNAF(e){return _.wNAFCached(this,e,b.normalizeZ)}multiply(e){const t=e;Po.aInRange("scalar",t,Do,r);const{p:n,f:o}=this.wNAF(t);return b.normalizeZ([n,o])[0]}multiplyUnsafe(e){const t=e;return Po.aInRange("scalar",t,Bo,r),t===Bo?E:this.equals(E)||t===Do?this:this.equals(w)?this.wNAF(t).p:_.unsafeLadder(this,t)}isSmallOrder(){return this.multiplyUnsafe(c).is0()}isTorsionFree(){return _.unsafeLadder(this,r).is0()}toAffine(e){return y(this,e)}clearCofactor(){const{h:e}=t;return e===Do?this:this.multiplyUnsafe(e)}static fromHex(e,r=!1){const{d:o,a:i}=t,s=n.BYTES;e=(0,No.ensureBytes)("pointHex",e,s),(0,No.abool)("zip215",r);const a=e.slice(),c=e[s-1];a[s-1]=-129&c;const d=Po.bytesToNumberLE(a),f=r?l:n.ORDER;Po.aInRange("pointHex.y",d,Bo,f);const p=u(d*d),g=u(p-Do),m=u(o*p-i);let{isValid:y,value:v}=h(g,m);if(!y)throw new Error("Point.fromHex: invalid y coordinate");const w=(v&Do)===Do,E=0!=(128&c);if(!r&&v===Bo&&E)throw new Error("Point.fromHex: x=0 and x_0=1");return E!==w&&(v=u(-v)),b.fromAffine({x:v,y:d})}static fromPrivateKey(e){return k(e).point}toRawBytes(){const{x:e,y:t}=this.toAffine(),r=Po.numberToBytesLE(t,n.BYTES);return r[r.length-1]|=e&Do?128:0,r}toHex(){return Po.bytesToHex(this.toRawBytes())}}b.BASE=new b(t.Gx,t.Gy,Do,u(t.Gx*t.Gy)),b.ZERO=new b(Bo,Do,Do,Bo);const{BASE:w,ZERO:E}=b,_=(0,Io.wNAF)(b,8*a);function C(e){return(0,Lo.mod)(e,r)}function S(e){return C(Po.bytesToNumberLE(e))}function k(e){const t=a;e=(0,No.ensureBytes)("private key",e,t);const n=(0,No.ensureBytes)("hashed private key",i(e),2*t),r=f(n.slice(0,t)),o=n.slice(t,2*t),s=S(r),c=w.multiply(s),l=c.toRawBytes();return{head:r,prefix:o,scalar:s,point:c,pointBytes:l}}function x(e=new Uint8Array,...t){const n=Po.concatBytes(...t);return S(i(p(n,(0,No.ensureBytes)("context",e),!!o)))}const A=Uo;w._setWindowSize(8);const M={getExtendedPublicKey:k,randomPrivateKey:()=>s(n.BYTES),precompute:(e=8,t=b.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};return{CURVE:t,getPublicKey:function(e){return k(e).pointBytes},sign:function(e,t,i={}){e=(0,No.ensureBytes)("message",e),o&&(e=o(e));const{prefix:s,scalar:c,pointBytes:l}=k(t),u=x(i.context,s,e),d=w.multiply(u).toRawBytes(),h=C(u+x(i.context,d,l,e)*c);Po.aInRange("signature.s",h,Bo,r);const f=Po.concatBytes(d,Po.numberToBytesLE(h,n.BYTES));return(0,No.ensureBytes)("result",f,2*a)},verify:function(e,t,r,i=A){const{context:s,zip215:a}=i,c=n.BYTES;e=(0,No.ensureBytes)("signature",e,2*c),t=(0,No.ensureBytes)("message",t),void 0!==a&&(0,No.abool)("zip215",a),o&&(t=o(t));const l=Po.bytesToNumberLE(e.slice(c,2*c));let u,d,h;try{u=b.fromHex(r,a),d=b.fromHex(e.slice(0,c),a),h=w.multiplyUnsafe(l)}catch(e){return!1}if(!a&&u.isSmallOrder())return!1;const f=x(s,d.toRawBytes(),u.toRawBytes(),t);return d.add(u.multiplyUnsafe(f)).subtract(h).clearCofactor().equals(b.ZERO)},ExtendedPoint:b,utils:M}};const Io=Dr,Lo=$r,Po=jr,No=jr,Bo=BigInt(0),Do=BigInt(1),$o=BigInt(2),jo=BigInt(8),Uo={zip215:!0};var Fo={};Object.defineProperty(Fo,"__esModule",{value:!0}),Fo.expand_message_xmd=Go,Fo.expand_message_xof=Yo,Fo.hash_to_field=Zo,Fo.isogenyMap=function(e,t){const n=t.map((e=>Array.from(e).reverse()));return(t,r)=>{const[o,i,s,a]=n.map((n=>n.reduce(((n,r)=>e.add(e.mul(n,t),r)))));return t=e.div(o,i),r=e.mul(r,e.div(s,a)),{x:t,y:r}}},Fo.createHasher=function(e,t,n){if("function"!=typeof t)throw new Error("mapToCurve() must be defined");return{hashToCurve(r,o){const i=Zo(r,2,{...n,DST:n.DST,...o}),s=e.fromAffine(t(i[0])),a=e.fromAffine(t(i[1])),c=s.add(a).clearCofactor();return c.assertValidity(),c},encodeToCurve(r,o){const i=Zo(r,1,{...n,DST:n.encodeDST,...o}),s=e.fromAffine(t(i[0])).clearCofactor();return s.assertValidity(),s},mapToCurve(n){if(!Array.isArray(n))throw new Error("mapToCurve: expected array of bigints");for(const e of n)if("bigint"!=typeof e)throw new Error(`mapToCurve: expected array of bigints, got ${e} in array`);const r=e.fromAffine(t(n)).clearCofactor();return r.assertValidity(),r}}};const Ko=$r,Ho=jr,zo=Ho.bytesToNumberBE;function qo(e,t){if(Wo(e),Wo(t),e<0||e>=1<<8*t)throw new Error(`bad I2OSP call: value=${e} length=${t}`);const n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=255&e,e>>>=8;return new Uint8Array(n)}function Vo(e,t){const n=new Uint8Array(e.length);for(let r=0;r255&&(t=r((0,Ho.concatBytes)((0,Ho.utf8ToBytes)("H2C-OVERSIZE-DST-"),t)));const{outputLen:o,blockLen:i}=r,s=Math.ceil(n/o);if(n>65535||s>255)throw new Error("expand_message_xmd: invalid lenInBytes");const a=(0,Ho.concatBytes)(t,qo(t.length,1)),c=qo(0,i),l=qo(n,2),u=new Array(s),d=r((0,Ho.concatBytes)(c,e,l,qo(0,1),a));u[0]=r((0,Ho.concatBytes)(d,qo(1,1),a));for(let h=1;h<=s;h++){const e=[Vo(d,u[h-1]),qo(h+1,1),a];u[h]=r((0,Ho.concatBytes)(...e))}return(0,Ho.concatBytes)(...u).slice(0,n)}function Yo(e,t,n,r,o){if((0,Ho.abytes)(e),(0,Ho.abytes)(t),Wo(n),t.length>255){const e=Math.ceil(2*r/8);t=o.create({dkLen:e}).update((0,Ho.utf8ToBytes)("H2C-OVERSIZE-DST-")).update(t).digest()}if(n>65535||t.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return o.create({dkLen:n}).update(e).update(qo(n,2)).update(t).update(qo(t.length,1)).digest()}function Zo(e,t,n){(0,Ho.validateObject)(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});const{p:r,k:o,m:i,hash:s,expand:a,DST:c}=n;(0,Ho.abytes)(e),Wo(t);const l="string"==typeof c?(0,Ho.utf8ToBytes)(c):c,u=r.toString(2).length,d=Math.ceil((u+o)/8),h=t*i*d;let f;if("xmd"===a)f=Go(e,l,h,s);else if("xof"===a)f=Yo(e,l,h,o,s);else{if("_internal_pass"!==a)throw new Error('expand must be "xmd" or "xof"');f=e}const p=new Array(t);for(let g=0;g(0,Xo.mod)(e,n),o=t.montgomeryBits,i=Math.ceil(o/8),s=t.nByteLength,a=t.adjustScalarBytes||(e=>e),c=t.powPminus2||(e=>(0,Xo.pow)(e,n-BigInt(2),n));function l(e,t,n){const o=r(e*(t-n));return[t=r(t-o),n=r(n+o)]}const u=(t.a-BigInt(2))/BigInt(4);function d(e){return(0,Qo.numberToBytesLE)(r(e),i)}function h(e,t){const h=function(e){const t=(0,Qo.ensureBytes)("u coordinate",e,i);return 32===s&&(t[31]&=127),(0,Qo.bytesToNumberLE)(t)}(t),f=function(e){const t=(0,Qo.ensureBytes)("scalar",e),n=t.length;if(n!==i&&n!==s)throw new Error(`Expected ${i} or ${s} bytes, got ${n}`);return(0,Qo.bytesToNumberLE)(a(t))}(e),p=function(e,t){(0,Qo.aInRange)("u",e,ei,n),(0,Qo.aInRange)("scalar",t,ei,n);const i=t,s=e;let a,d=ti,h=ei,f=e,p=ti,g=ei;for(let n=BigInt(o-1);n>=ei;n--){const e=i>>n&ti;g^=e,a=l(g,d,f),d=a[0],f=a[1],a=l(g,h,p),h=a[0],p=a[1],g=e;const t=d+h,o=r(t*t),c=d-h,m=r(c*c),y=o-m,v=f+p,b=r((f-p)*t),w=r(v*c),E=b+w,_=b-w;f=r(E*E),p=r(s*r(_*_)),d=r(o*m),h=r(y*(o+r(u*y)))}a=l(g,d,f),d=a[0],f=a[1],a=l(g,h,p),h=a[0],p=a[1];const m=c(h);return r(d*m)}(h,f);if(p===ei)throw new Error("Invalid private or public key received");return d(p)}const f=d(t.Gu);function p(e){return h(e,f)}return{scalarMult:h,scalarMultBase:p,getSharedSecret:(e,t)=>h(e,t),getPublicKey:e=>p(e),utils:{randomPrivateKey:()=>t.randomBytes(t.nByteLength)},GuBytes:f}};const Xo=$r,Qo=jr,ei=BigInt(0),ti=BigInt(1);!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hash_to_ristretto255=e.hashToRistretto255=e.RistrettoPoint=e.encodeToCurve=e.hashToCurve=e.edwardsToMontgomery=e.x25519=e.ed25519ph=e.ed25519ctx=e.ed25519=e.ED25519_TORSION_SUBGROUP=void 0,e.edwardsToMontgomeryPub=_,e.edwardsToMontgomeryPriv=function(e){const t=w.hash(e.subarray(0,32));return w.adjustScalarBytes(t).subarray(0,32)};const t=$n,n=Yn,r=Br,o=Fo,i=$r,s=Jo,a=jr,c=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),l=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),u=BigInt(0),d=BigInt(1),h=BigInt(2),f=BigInt(3),p=BigInt(5),g=BigInt(8);function m(e){const t=BigInt(10),n=BigInt(20),r=BigInt(40),o=BigInt(80),s=c,a=e*e%s*e%s,l=(0,i.pow2)(a,h,s)*a%s,u=(0,i.pow2)(l,d,s)*e%s,f=(0,i.pow2)(u,p,s)*u%s,g=(0,i.pow2)(f,t,s)*f%s,m=(0,i.pow2)(g,n,s)*g%s,y=(0,i.pow2)(m,r,s)*m%s,v=(0,i.pow2)(y,o,s)*y%s,b=(0,i.pow2)(v,o,s)*y%s,w=(0,i.pow2)(b,t,s)*f%s;return{pow_p_5_8:(0,i.pow2)(w,h,s)*e%s,b2:a}}function y(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}function v(e,t){const n=c,r=(0,i.mod)(t*t*t,n),o=m(e*(0,i.mod)(r*r*t,n)).pow_p_5_8;let s=(0,i.mod)(e*r*o,n);const a=(0,i.mod)(t*s*s,n),u=s,d=(0,i.mod)(s*l,n),h=a===e,f=a===(0,i.mod)(-e,n),p=a===(0,i.mod)(-e*l,n);return h&&(s=u),(f||p)&&(s=d),(0,i.isNegativeLE)(s,n)&&(s=(0,i.mod)(-s,n)),{isValid:h||f,value:s}}e.ED25519_TORSION_SUBGROUP=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"];const b=(()=>(0,i.Field)(c,void 0,!0))(),w=(()=>({a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:b,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:g,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:t.sha512,randomBytes:n.randomBytes,adjustScalarBytes:y,uvRatio:v}))();function E(e,t,r){if(t.length>255)throw new Error("Context is too big");return(0,n.concatBytes)((0,n.utf8ToBytes)("SigEd25519 no Ed25519 collisions"),new Uint8Array([r?1:0,t.length]),t,e)}function _(t){const{y:n}=e.ed25519.ExtendedPoint.fromHex(t),r=BigInt(1);return b.toBytes(b.create((r+n)*b.inv(r-n)))}e.ed25519=(0,r.twistedEdwards)(w),e.ed25519ctx=(0,r.twistedEdwards)({...w,domain:E}),e.ed25519ph=(0,r.twistedEdwards)(Object.assign({},w,{domain:E,prehash:t.sha512})),e.x25519=(0,s.montgomery)({P:c,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:e=>{const t=c,{pow_p_5_8:n,b2:r}=m(e);return(0,i.mod)((0,i.pow2)(n,f,t)*r,t)},adjustScalarBytes:y,randomBytes:n.randomBytes}),e.edwardsToMontgomery=_;const C=(()=>(b.ORDER+f)/g)(),S=(()=>b.pow(h,C))(),k=(()=>b.sqrt(b.neg(b.ONE)))(),x=(()=>(0,i.FpSqrtEven)(b,b.neg(BigInt(486664))))();function A(e){const{xMn:t,xMd:n,yMn:r,yMd:o}=function(e){const t=(b.ORDER-p)/g,n=BigInt(486662);let r=b.sqr(e);r=b.mul(r,h);let o=b.add(r,b.ONE),i=b.neg(n),s=b.sqr(o),a=b.mul(s,o),c=b.mul(r,n);c=b.mul(c,i),c=b.add(c,s),c=b.mul(c,i);let l=b.sqr(a);s=b.sqr(l),l=b.mul(l,a),l=b.mul(l,c),s=b.mul(s,l);let u=b.pow(s,t);u=b.mul(u,l);let f=b.mul(u,k);s=b.sqr(u),s=b.mul(s,a);let m=b.eql(s,c),y=b.cmov(f,u,m),v=b.mul(i,r),w=b.mul(u,e);w=b.mul(w,S);let E=b.mul(w,k),_=b.mul(c,r);s=b.sqr(w),s=b.mul(s,a);let C=b.eql(s,_),x=b.cmov(E,w,C);s=b.sqr(y),s=b.mul(s,a);let A=b.eql(s,c),M=b.cmov(v,i,A),R=b.cmov(x,y,A),T=b.isOdd(R);return R=b.cmov(R,b.neg(R),A!==T),{xMn:M,xMd:o,yMn:R,yMd:d}}(e);let i=b.mul(t,o);i=b.mul(i,x);let s=b.mul(n,r),a=b.sub(t,n),c=b.add(t,n),l=b.mul(s,c),u=b.eql(l,b.ZERO);i=b.cmov(i,b.ZERO,u),s=b.cmov(s,b.ONE,u),a=b.cmov(a,b.ONE,u),c=b.cmov(c,b.ONE,u);const f=b.invertBatch([s,c]);return{x:b.mul(i,f[0]),y:b.mul(a,f[1])}}const M=(()=>(0,o.createHasher)(e.ed25519.ExtendedPoint,(e=>A(e[0])),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:b.ORDER,m:1,k:128,expand:"xmd",hash:t.sha512}))();function R(e){if(!(e instanceof j))throw new Error("RistrettoPoint expected")}e.hashToCurve=M.hashToCurve,e.encodeToCurve=M.encodeToCurve;const T=l,O=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),I=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),L=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),P=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),N=e=>v(d,e),B=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),D=t=>e.ed25519.CURVE.Fp.create((0,a.bytesToNumberLE)(t)&B);function $(t){const{d:n}=e.ed25519.CURVE,r=e.ed25519.CURVE.Fp.ORDER,o=e.ed25519.CURVE.Fp.create,s=o(T*t*t),a=o((s+d)*L);let c=BigInt(-1);const l=o((c-n*s)*o(s+n));let{isValid:u,value:h}=v(a,l),f=o(h*t);(0,i.isNegativeLE)(f,r)||(f=o(-f)),u||(h=f),u||(c=s);const p=o(c*(s-d)*P-l),g=h*h,m=o((h+h)*l),y=o(p*O),b=o(d-g),w=o(d+g);return new e.ed25519.ExtendedPoint(o(m*w),o(b*y),o(y*w),o(m*b))}class j{constructor(e){this.ep=e}static fromAffine(t){return new j(e.ed25519.ExtendedPoint.fromAffine(t))}static hashToCurve(e){e=(0,a.ensureBytes)("ristrettoHash",e,64);const t=$(D(e.slice(0,32))),n=$(D(e.slice(32,64)));return new j(t.add(n))}static fromHex(t){t=(0,a.ensureBytes)("ristrettoHex",t,32);const{a:n,d:r}=e.ed25519.CURVE,o=e.ed25519.CURVE.Fp.ORDER,s=e.ed25519.CURVE.Fp.create,c="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",l=D(t);if(!(0,a.equalBytes)((0,a.numberToBytesLE)(l,32),t)||(0,i.isNegativeLE)(l,o))throw new Error(c);const h=s(l*l),f=s(d+n*h),p=s(d-n*h),g=s(f*f),m=s(p*p),y=s(n*r*g-m),{isValid:v,value:b}=N(s(y*m)),w=s(b*p),E=s(b*w*y);let _=s((l+l)*w);(0,i.isNegativeLE)(_,o)&&(_=s(-_));const C=s(f*E),S=s(_*C);if(!v||(0,i.isNegativeLE)(S,o)||C===u)throw new Error(c);return new j(new e.ed25519.ExtendedPoint(_,C,d,S))}toRawBytes(){let{ex:t,ey:n,ez:r,et:o}=this.ep;const s=e.ed25519.CURVE.Fp.ORDER,c=e.ed25519.CURVE.Fp.create,l=c(c(r+n)*c(r-n)),u=c(t*n),d=c(u*u),{value:h}=N(c(l*d)),f=c(h*l),p=c(h*u),g=c(f*p*o);let m;if((0,i.isNegativeLE)(o*g,s)){let e=c(n*T),r=c(t*T);t=e,n=r,m=c(f*I)}else m=p;(0,i.isNegativeLE)(t*g,s)&&(n=c(-n));let y=c((r-n)*m);return(0,i.isNegativeLE)(y,s)&&(y=c(-y)),(0,a.numberToBytesLE)(y,32)}toHex(){return(0,a.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(t){R(t);const{ex:n,ey:r}=this.ep,{ex:o,ey:i}=t.ep,s=e.ed25519.CURVE.Fp.create,a=s(n*i)===s(r*o),c=s(r*i)===s(n*o);return a||c}add(e){return R(e),new j(this.ep.add(e.ep))}subtract(e){return R(e),new j(this.ep.subtract(e.ep))}multiply(e){return new j(this.ep.multiply(e))}multiplyUnsafe(e){return new j(this.ep.multiplyUnsafe(e))}double(){return new j(this.ep.double())}negate(){return new j(this.ep.negate())}}e.RistrettoPoint=(j.BASE||(j.BASE=new j(e.ed25519.ExtendedPoint.BASE)),j.ZERO||(j.ZERO=new j(e.ed25519.ExtendedPoint.ZERO)),j),e.hashToRistretto255=(e,r)=>{const i=r.DST,s="string"==typeof i?(0,n.utf8ToBytes)(i):i,a=(0,o.expand_message_xmd)(e,s,64,t.sha512);return j.hashToCurve(a)},e.hash_to_ristretto255=e.hashToRistretto255}(Dn);var ni={},ri={};Object.defineProperty(ri,"__esModule",{value:!0}),ri.sha224=ri.sha256=ri.SHA256=void 0;const oi=jn,ii=Yn,si=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),ai=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),ci=new Uint32Array(64);class li extends oi.HashMD{constructor(){super(64,32,8,!1),this.A=0|ai[0],this.B=0|ai[1],this.C=0|ai[2],this.D=0|ai[3],this.E=0|ai[4],this.F=0|ai[5],this.G=0|ai[6],this.H=0|ai[7]}get(){const{A:e,B:t,C:n,D:r,E:o,F:i,G:s,H:a}=this;return[e,t,n,r,o,i,s,a]}set(e,t,n,r,o,i,s,a){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|r,this.E=0|o,this.F=0|i,this.G=0|s,this.H=0|a}process(e,t){for(let u=0;u<16;u++,t+=4)ci[u]=e.getUint32(t,!1);for(let u=16;u<64;u++){const e=ci[u-15],t=ci[u-2],n=(0,ii.rotr)(e,7)^(0,ii.rotr)(e,18)^e>>>3,r=(0,ii.rotr)(t,17)^(0,ii.rotr)(t,19)^t>>>10;ci[u]=r+ci[u-7]+n+ci[u-16]|0}let{A:n,B:r,C:o,D:i,E:s,F:a,G:c,H:l}=this;for(let u=0;u<64;u++){const e=l+((0,ii.rotr)(s,6)^(0,ii.rotr)(s,11)^(0,ii.rotr)(s,25))+(0,oi.Chi)(s,a,c)+si[u]+ci[u]|0,t=((0,ii.rotr)(n,2)^(0,ii.rotr)(n,13)^(0,ii.rotr)(n,22))+(0,oi.Maj)(n,r,o)|0;l=c,c=a,a=s,s=i+e|0,i=o,o=r,r=n,n=e+t|0}n=n+this.A|0,r=r+this.B|0,o=o+this.C|0,i=i+this.D|0,s=s+this.E|0,a=a+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,o,i,s,a,c,l)}roundClean(){ci.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}ri.SHA256=li;class ui extends li{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}ri.sha256=(0,ii.wrapConstructor)((()=>new li)),ri.sha224=(0,ii.wrapConstructor)((()=>new ui));var di={},hi={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hmac=e.HMAC=void 0;const t=Un,n=Yn;class r extends n.Hash{constructor(e,r){super(),this.finished=!1,this.destroyed=!1,(0,t.hash)(e);const o=(0,n.toBytes)(r);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw new 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(o.length>i?e.create().update(o).digest():o);for(let t=0;tnew r(e,t).update(n).digest(),e.hmac.create=(e,t)=>new r(e,t)}(hi);var fi={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DER=void 0,e.weierstrassPoints=f,e.weierstrass=function(s){const a=function(e){const n=(0,t.validateBasic)(e);return r.validateObject(n,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...n})}(s),{Fp:u,n:d}=a,h=u.BYTES+1,p=2*u.BYTES+1;function g(e){return n.mod(e,d)}function m(e){return n.invert(e,d)}const{ProjectivePoint:y,normPrivateKeyToScalar:v,weierstrassEquation:b,isWithinCurveOrder:w}=f({...a,toBytes(e,t,n){const i=t.toAffine(),s=u.toBytes(i.x),a=r.concatBytes;return(0,o.abool)("isCompressed",n),n?a(Uint8Array.from([t.hasEvenY()?2:3]),s):a(Uint8Array.from([4]),s,u.toBytes(i.y))},fromBytes(e){const t=e.length,n=e[0],o=e.subarray(1);if(t!==h||2!==n&&3!==n){if(t===p&&4===n)return{x:u.fromBytes(o.subarray(0,u.BYTES)),y:u.fromBytes(o.subarray(u.BYTES,2*u.BYTES))};throw new Error(`Point of length ${t} was invalid. Expected ${h} compressed bytes or ${p} uncompressed bytes`)}{const t=r.bytesToNumberBE(o);if(!r.inRange(t,l,u.ORDER))throw new Error("Point is not on curve");const i=b(t);let s;try{s=u.sqrt(i)}catch(e){const t=e instanceof Error?": "+e.message:"";throw new Error("Point is not on curve"+t)}return 1==(1&n)!==((s&l)===l)&&(s=u.neg(s)),{x:t,y:s}}}}),E=e=>r.bytesToHex(r.numberToBytesBE(e,a.nByteLength));function _(e){return e>d>>l}const C=(e,t,n)=>r.bytesToNumberBE(e.slice(t,n));class S{constructor(e,t,n){this.r=e,this.s=t,this.recovery=n,this.assertValidity()}static fromCompact(e){const t=a.nByteLength;return e=(0,o.ensureBytes)("compactSignature",e,2*t),new S(C(e,0,t),C(e,t,2*t))}static fromDER(t){const{r:n,s:r}=e.DER.toSig((0,o.ensureBytes)("DER",t));return new S(n,r)}assertValidity(){r.aInRange("r",this.r,l,d),r.aInRange("s",this.s,l,d)}addRecoveryBit(e){return new S(this.r,this.s,e)}recoverPublicKey(e){const{r:t,s:n,recovery:r}=this,i=M((0,o.ensureBytes)("msgHash",e));if(null==r||![0,1,2,3].includes(r))throw new Error("recovery id invalid");const s=2===r||3===r?t+a.n:t;if(s>=u.ORDER)throw new Error("recovery id 2 or 3 invalid");const c=0==(1&r)?"02":"03",l=y.fromHex(c+E(s)),d=m(s),h=g(-i*d),f=g(n*d),p=y.BASE.multiplyAndAddUnsafe(l,h,f);if(!p)throw new Error("point at infinify");return p.assertValidity(),p}hasHighS(){return _(this.s)}normalizeS(){return this.hasHighS()?new S(this.r,g(-this.s),this.recovery):this}toDERRawBytes(){return r.hexToBytes(this.toDERHex())}toDERHex(){return e.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return r.hexToBytes(this.toCompactHex())}toCompactHex(){return E(this.r)+E(this.s)}}const k={isValidPrivateKey(e){try{return v(e),!0}catch(e){return!1}},normPrivateKeyToScalar:v,randomPrivateKey:()=>{const e=n.getMinHashLength(a.n);return n.mapHashToField(a.randomBytes(e),a.n)},precompute:(e=8,t=y.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)};function x(e){const t=r.isBytes(e),n="string"==typeof e,o=(t||n)&&e.length;return t?o===h||o===p:n?o===2*h||o===2*p:e instanceof y}const A=a.bits2int||function(e){const t=r.bytesToNumberBE(e),n=8*e.length-a.nBitLength;return n>0?t>>BigInt(n):t},M=a.bits2int_modN||function(e){return g(A(e))},R=r.bitMask(a.nBitLength);function T(e){return r.aInRange(`num < 2^${a.nBitLength}`,e,c,R),r.numberToBytesBE(e,a.nByteLength)}function O(e,t,n=I){if(["recovered","canonical"].some((e=>e in n)))throw new Error("sign() legacy options not supported");const{hash:s,randomBytes:d}=a;let{lowS:h,prehash:f,extraEntropy:p}=n;null==h&&(h=!0),e=(0,o.ensureBytes)("msgHash",e),i(n),f&&(e=(0,o.ensureBytes)("prehashed msgHash",s(e)));const b=M(e),E=v(t),C=[T(E),T(b)];if(null!=p&&!1!==p){const e=!0===p?d(u.BYTES):p;C.push((0,o.ensureBytes)("extraEntropy",e))}const k=r.concatBytes(...C),x=b;return{seed:k,k2sig:function(e){const t=A(e);if(!w(t))return;const n=m(t),r=y.BASE.multiply(t).toAffine(),o=g(r.x);if(o===c)return;const i=g(n*g(x+o*E));if(i===c)return;let s=(r.x===o?0:2)|Number(r.y&l),a=i;return h&&_(i)&&(a=function(e){return _(e)?g(-e):e}(i),s^=1),new S(o,a,s)}}}const I={lowS:a.lowS,prehash:!1},L={lowS:a.lowS,prehash:!1};return y.BASE._setWindowSize(8),{CURVE:a,getPublicKey:function(e,t=!0){return y.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,n=!0){if(x(e))throw new Error("first arg must be private key");if(!x(t))throw new Error("second arg must be public key");const r=y.fromHex(t);return r.multiply(v(e)).toRawBytes(n)},sign:function(e,t,n=I){const{seed:o,k2sig:i}=O(e,t,n),s=a,c=r.createHmacDrbg(s.hash.outputLen,s.nByteLength,s.hmac);return c(o,i)},verify:function(t,n,s,c=L){const l=t;if(n=(0,o.ensureBytes)("msgHash",n),s=(0,o.ensureBytes)("publicKey",s),"strict"in c)throw new Error("options.strict was renamed to lowS");i(c);const{lowS:u,prehash:d}=c;let h,f;try{if("string"==typeof l||r.isBytes(l))try{h=S.fromDER(l)}catch(t){if(!(t instanceof e.DER.Err))throw t;h=S.fromCompact(l)}else{if("object"!=typeof l||"bigint"!=typeof l.r||"bigint"!=typeof l.s)throw new Error("PARSE");{const{r:e,s:t}=l;h=new S(e,t)}}f=y.fromHex(s)}catch(e){if("PARSE"===e.message)throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(u&&h.hasHighS())return!1;d&&(n=a.hash(n));const{r:p,s:v}=h,b=M(n),w=m(v),E=g(b*w),_=g(p*w),C=y.BASE.multiplyAndAddUnsafe(f,E,_)?.toAffine();if(!C)return!1;const k=g(C.x);return k===p},ProjectivePoint:y,Signature:S,utils:k}},e.SWUFpSqrtRatio=p,e.mapToCurveSimpleSWU=function(e,t){if(n.validateField(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const r=p(e,t.Z);if(!e.isOdd)throw new Error("Fp.isOdd is not implemented!");return n=>{let o,i,s,a,c,l,u,d;o=e.sqr(n),o=e.mul(o,t.Z),i=e.sqr(o),i=e.add(i,o),s=e.add(i,e.ONE),s=e.mul(s,t.B),a=e.cmov(t.Z,e.neg(i),!e.eql(i,e.ZERO)),a=e.mul(a,t.A),i=e.sqr(s),l=e.sqr(a),c=e.mul(l,t.A),i=e.add(i,c),i=e.mul(i,s),l=e.mul(l,a),c=e.mul(l,t.B),i=e.add(i,c),u=e.mul(o,s);const{isValid:h,value:f}=r(i,l);d=e.mul(o,n),d=e.mul(d,f),u=e.cmov(u,s,h),d=e.cmov(d,f,h);const p=e.isOdd(n)===e.isOdd(d);return d=e.cmov(e.neg(d),d,p),u=e.div(u,a),{x:u,y:d}}};const t=Dr,n=$r,r=jr,o=jr;function i(e){void 0!==e.lowS&&(0,o.abool)("lowS",e.lowS),void 0!==e.prehash&&(0,o.abool)("prehash",e.prehash)}const{bytesToNumberBE:s,hexToBytes:a}=r;e.DER={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(t,n)=>{const{Err:o}=e.DER;if(t<0||t>256)throw new o("tlv.encode: wrong tag");if(1&n.length)throw new o("tlv.encode: unpadded data");const i=n.length/2,s=r.numberToHexUnpadded(i);if(s.length/2&128)throw new o("tlv.encode: long form length too big");const a=i>127?r.numberToHexUnpadded(s.length/2|128):"";return`${r.numberToHexUnpadded(t)}${a}${s}${n}`},decode(t,n){const{Err:r}=e.DER;let o=0;if(t<0||t>256)throw new r("tlv.encode: wrong tag");if(n.length<2||n[o++]!==t)throw new r("tlv.decode: wrong tlv");const i=n[o++];let s=0;if(128&i){const e=127&i;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");const t=n.subarray(o,o+e);if(t.length!==e)throw new r("tlv.decode: length bytes not complete");if(0===t[0])throw new r("tlv.decode(long): zero leftmost byte");for(const n of t)s=s<<8|n;if(o+=e,s<128)throw new r("tlv.decode(long): not minimal encoding")}else s=i;const a=n.subarray(o,o+s);if(a.length!==s)throw new r("tlv.decode: wrong value length");return{v:a,l:n.subarray(o+s)}}},_int:{encode(t){const{Err:n}=e.DER;if(t{const o=t.toAffine();return r.concatBytes(Uint8Array.from([4]),s.toBytes(o.x),s.toBytes(o.y))}),h=i.fromBytes||(e=>{const t=e.subarray(1);return{x:s.fromBytes(t.subarray(0,s.BYTES)),y:s.fromBytes(t.subarray(s.BYTES,2*s.BYTES))}});function f(e){const{a:t,b:n}=i,r=s.sqr(e),o=s.mul(r,e);return s.add(s.add(o,s.mul(e,t)),n)}if(!s.eql(s.sqr(i.Gy),f(i.Gx)))throw new Error("bad generator point: equation left != right");function p(e){const{allowedPrivateKeyLengths:t,nByteLength:s,wrapPrivateKey:a,n:c}=i;if(t&&"bigint"!=typeof e){if(r.isBytes(e)&&(e=r.bytesToHex(e)),"string"!=typeof e||!t.includes(e.length))throw new Error("Invalid key");e=e.padStart(2*s,"0")}let u;try{u="bigint"==typeof e?e:r.bytesToNumberBE((0,o.ensureBytes)("private key",e,s))}catch(t){throw new Error(`private key must be ${s} bytes, hex or bigint, not ${typeof e}`)}return a&&(u=n.mod(u,c)),r.aInRange("private key",u,l,c),u}function g(e){if(!(e instanceof v))throw new Error("ProjectivePoint expected")}const m=(0,o.memoized)(((e,t)=>{const{px:n,py:r,pz:o}=e;if(s.eql(o,s.ONE))return{x:n,y:r};const i=e.is0();null==t&&(t=i?s.ONE:s.inv(o));const a=s.mul(n,t),c=s.mul(r,t),l=s.mul(o,t);if(i)return{x:s.ZERO,y:s.ZERO};if(!s.eql(l,s.ONE))throw new Error("invZ was invalid");return{x:a,y:c}})),y=(0,o.memoized)((e=>{if(e.is0()){if(i.allowInfinityPoint&&!s.is0(e.py))return;throw new Error("bad point: ZERO")}const{x:t,y:n}=e.toAffine();if(!s.isValid(t)||!s.isValid(n))throw new Error("bad point: x or y not FE");const r=s.sqr(n),o=f(t);if(!s.eql(r,o))throw new Error("bad point: equation left != right");if(!e.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0}));class v{constructor(e,t,n){if(this.px=e,this.py=t,this.pz=n,null==e||!s.isValid(e))throw new Error("x required");if(null==t||!s.isValid(t))throw new Error("y required");if(null==n||!s.isValid(n))throw new Error("z required");Object.freeze(this)}static fromAffine(e){const{x:t,y:n}=e||{};if(!e||!s.isValid(t)||!s.isValid(n))throw new Error("invalid affine point");if(e instanceof v)throw new Error("projective point not allowed");const r=e=>s.eql(e,s.ZERO);return r(t)&&r(n)?v.ZERO:new v(t,n,s.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){const t=s.invertBatch(e.map((e=>e.pz)));return e.map(((e,n)=>e.toAffine(t[n]))).map(v.fromAffine)}static fromHex(e){const t=v.fromAffine(h((0,o.ensureBytes)("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return v.BASE.multiply(p(e))}static msm(e,n){return(0,t.pippenger)(v,a,e,n)}_setWindowSize(e){w.setWindowSize(this,e)}assertValidity(){y(this)}hasEvenY(){const{y:e}=this.toAffine();if(s.isOdd)return!s.isOdd(e);throw new Error("Field doesn't support isOdd")}equals(e){g(e);const{px:t,py:n,pz:r}=this,{px:o,py:i,pz:a}=e,c=s.eql(s.mul(t,a),s.mul(o,r)),l=s.eql(s.mul(n,a),s.mul(i,r));return c&&l}negate(){return new v(this.px,s.neg(this.py),this.pz)}double(){const{a:e,b:t}=i,n=s.mul(t,d),{px:r,py:o,pz:a}=this;let c=s.ZERO,l=s.ZERO,u=s.ZERO,h=s.mul(r,r),f=s.mul(o,o),p=s.mul(a,a),g=s.mul(r,o);return g=s.add(g,g),u=s.mul(r,a),u=s.add(u,u),c=s.mul(e,u),l=s.mul(n,p),l=s.add(c,l),c=s.sub(f,l),l=s.add(f,l),l=s.mul(c,l),c=s.mul(g,c),u=s.mul(n,u),p=s.mul(e,p),g=s.sub(h,p),g=s.mul(e,g),g=s.add(g,u),u=s.add(h,h),h=s.add(u,h),h=s.add(h,p),h=s.mul(h,g),l=s.add(l,h),p=s.mul(o,a),p=s.add(p,p),h=s.mul(p,g),c=s.sub(c,h),u=s.mul(p,f),u=s.add(u,u),u=s.add(u,u),new v(c,l,u)}add(e){g(e);const{px:t,py:n,pz:r}=this,{px:o,py:a,pz:c}=e;let l=s.ZERO,u=s.ZERO,h=s.ZERO;const f=i.a,p=s.mul(i.b,d);let m=s.mul(t,o),y=s.mul(n,a),b=s.mul(r,c),w=s.add(t,n),E=s.add(o,a);w=s.mul(w,E),E=s.add(m,y),w=s.sub(w,E),E=s.add(t,r);let _=s.add(o,c);return E=s.mul(E,_),_=s.add(m,b),E=s.sub(E,_),_=s.add(n,r),l=s.add(a,c),_=s.mul(_,l),l=s.add(y,b),_=s.sub(_,l),h=s.mul(f,E),l=s.mul(p,b),h=s.add(l,h),l=s.sub(y,h),h=s.add(y,h),u=s.mul(l,h),y=s.add(m,m),y=s.add(y,m),b=s.mul(f,b),E=s.mul(p,E),y=s.add(y,b),b=s.sub(m,b),b=s.mul(f,b),E=s.add(E,b),m=s.mul(y,E),u=s.add(u,m),m=s.mul(_,E),l=s.mul(w,l),l=s.sub(l,m),m=s.mul(w,y),h=s.mul(_,h),h=s.add(h,m),new v(l,u,h)}subtract(e){return this.add(e.negate())}is0(){return this.equals(v.ZERO)}wNAF(e){return w.wNAFCached(this,e,v.normalizeZ)}multiplyUnsafe(e){r.aInRange("scalar",e,c,i.n);const t=v.ZERO;if(e===c)return t;if(e===l)return this;const{endo:n}=i;if(!n)return w.unsafeLadder(this,e);let{k1neg:o,k1:a,k2neg:u,k2:d}=n.splitScalar(e),h=t,f=t,p=this;for(;a>c||d>c;)a&l&&(h=h.add(p)),d&l&&(f=f.add(p)),p=p.double(),a>>=l,d>>=l;return o&&(h=h.negate()),u&&(f=f.negate()),f=new v(s.mul(f.px,n.beta),f.py,f.pz),h.add(f)}multiply(e){const{endo:t,n:n}=i;let o,a;if(r.aInRange("scalar",e,l,n),t){const{k1neg:n,k1:r,k2neg:i,k2:c}=t.splitScalar(e);let{p:l,f:u}=this.wNAF(r),{p:d,f:h}=this.wNAF(c);l=w.constTimeNegate(n,l),d=w.constTimeNegate(i,d),d=new v(s.mul(d.px,t.beta),d.py,d.pz),o=l.add(d),a=u.add(h)}else{const{p:t,f:n}=this.wNAF(e);o=t,a=n}return v.normalizeZ([o,a])[0]}multiplyAndAddUnsafe(e,t,n){const r=v.BASE,o=(e,t)=>t!==c&&t!==l&&e.equals(r)?e.multiply(t):e.multiplyUnsafe(t),i=o(this,t).add(o(e,n));return i.is0()?void 0:i}toAffine(e){return m(this,e)}isTorsionFree(){const{h:e,isTorsionFree:t}=i;if(e===l)return!0;if(t)return t(v,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:e,clearCofactor:t}=i;return e===l?this:t?t(v,this):this.multiplyUnsafe(i.h)}toRawBytes(e=!0){return(0,o.abool)("isCompressed",e),this.assertValidity(),u(v,this,e)}toHex(e=!0){return(0,o.abool)("isCompressed",e),r.bytesToHex(this.toRawBytes(e))}}v.BASE=new v(i.Gx,i.Gy,s.ONE),v.ZERO=new v(s.ZERO,s.ONE,s.ZERO);const b=i.nBitLength,w=(0,t.wNAF)(v,i.endo?Math.ceil(b/2):b);return{CURVE:i,ProjectivePoint:v,normPrivateKeyToScalar:p,weierstrassEquation:f,isWithinCurveOrder:function(e){return r.inRange(e,l,i.n)}}}function p(e,t){const n=e.ORDER;let r=c;for(let d=n-l;d%u===c;d/=u)r+=l;const o=r,i=u<{let r=m,i=e.pow(n,p),s=e.sqr(i);s=e.mul(s,n);let a=e.mul(t,s);a=e.pow(a,f),a=e.mul(a,i),i=e.mul(a,n),s=e.mul(a,t);let c=e.mul(s,i);a=e.pow(c,g);let d=e.eql(a,e.ONE);i=e.mul(s,y),a=e.mul(c,r),s=e.cmov(i,s,d),c=e.cmov(a,c,d);for(let h=o;h>l;h--){let t=h-u;t=u<{let i=e.sqr(o);const s=e.mul(t,o);i=e.mul(i,s);let a=e.pow(i,n);a=e.mul(a,s);const c=e.mul(a,r),l=e.mul(e.sqr(a),o),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,a,u)}}}return v}}(fi),Object.defineProperty(di,"__esModule",{value:!0}),di.getHash=yi,di.createCurve=function(e,t){const n=t=>(0,mi.weierstrass)({...e,...yi(t)});return Object.freeze({...n(t),create:n})};const pi=hi,gi=Yn,mi=fi;function yi(e){return{hash:e,hmac:(t,...n)=>(0,pi.hmac)(e,t,(0,gi.concatBytes)(...n)),randomBytes:gi.randomBytes}}!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.encodeToCurve=e.hashToCurve=e.schnorr=e.secp256k1=void 0;const t=ri,n=Yn,r=di,o=Fo,i=$r,s=jr,a=fi,c=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),l=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),u=BigInt(1),d=BigInt(2),h=(e,t)=>(e+t/d)/t;function f(e){const t=c,n=BigInt(3),r=BigInt(6),o=BigInt(11),s=BigInt(22),a=BigInt(23),l=BigInt(44),u=BigInt(88),h=e*e*e%t,f=h*h*e%t,g=(0,i.pow2)(f,n,t)*f%t,m=(0,i.pow2)(g,n,t)*f%t,y=(0,i.pow2)(m,d,t)*h%t,v=(0,i.pow2)(y,o,t)*y%t,b=(0,i.pow2)(v,s,t)*v%t,w=(0,i.pow2)(b,l,t)*b%t,E=(0,i.pow2)(w,u,t)*w%t,_=(0,i.pow2)(E,l,t)*b%t,C=(0,i.pow2)(_,n,t)*f%t,S=(0,i.pow2)(C,a,t)*v%t,k=(0,i.pow2)(S,r,t)*h%t,x=(0,i.pow2)(k,d,t);if(!p.eql(p.sqr(x),e))throw new Error("Cannot find square root");return x}const p=(0,i.Field)(c,void 0,void 0,{sqrt:f});e.secp256k1=(0,r.createCurve)({a:BigInt(0),b:BigInt(7),Fp:p,n:l,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=l,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-u*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),o=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=n,a=BigInt("0x100000000000000000000000000000000"),c=h(s*e,t),d=h(-r*e,t);let f=(0,i.mod)(e-c*n-d*o,t),p=(0,i.mod)(-c*r-d*s,t);const g=f>a,m=p>a;if(g&&(f=t-f),m&&(p=t-p),f>a||p>a)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:g,k1:f,k2neg:m,k2:p}}}},t.sha256);const g=BigInt(0),m={};function y(e,...n){let r=m[e];if(void 0===r){const n=(0,t.sha256)(Uint8Array.from(e,(e=>e.charCodeAt(0))));r=(0,s.concatBytes)(n,n),m[e]=r}return(0,t.sha256)((0,s.concatBytes)(r,...n))}const v=e=>e.toRawBytes(!0).slice(1),b=e=>(0,s.numberToBytesBE)(e,32),w=e=>(0,i.mod)(e,c),E=e=>(0,i.mod)(e,l),_=e.secp256k1.ProjectivePoint,C=(e,t,n)=>_.BASE.multiplyAndAddUnsafe(e,t,n);function S(t){let n=e.secp256k1.utils.normPrivateKeyToScalar(t),r=_.fromPrivateKey(n);return{scalar:r.hasEvenY()?n:E(-n),bytes:v(r)}}function k(e){(0,s.aInRange)("x",e,u,c);const t=w(e*e);let n=f(w(t*e+BigInt(7)));n%d!==g&&(n=w(-n));const r=new _(e,n,u);return r.assertValidity(),r}const x=s.bytesToNumberBE;function A(...e){return E(x(y("BIP0340/challenge",...e)))}function M(e){return S(e).bytes}function R(e,t,r=(0,n.randomBytes)(32)){const o=(0,s.ensureBytes)("message",e),{bytes:i,scalar:a}=S(t),c=(0,s.ensureBytes)("auxRand",r,32),l=b(a^x(y("BIP0340/aux",c))),u=y("BIP0340/nonce",l,i,o),d=E(x(u));if(d===g)throw new Error("sign failed: k is zero");const{bytes:h,scalar:f}=S(d),p=A(h,i,o),m=new Uint8Array(64);if(m.set(h,0),m.set(b(E(f+p*a)),32),!T(m,o,i))throw new Error("sign: Invalid signature produced");return m}function T(e,t,n){const r=(0,s.ensureBytes)("signature",e,64),o=(0,s.ensureBytes)("message",t),i=(0,s.ensureBytes)("publicKey",n,32);try{const e=k(x(i)),t=x(r.subarray(0,32));if(!(0,s.inRange)(t,u,c))return!1;const n=x(r.subarray(32,64));if(!(0,s.inRange)(n,u,l))return!1;const a=A(b(t),v(e),o),d=C(e,n,E(-a));return!(!d||!d.hasEvenY()||d.toAffine().x!==t)}catch(e){return!1}}e.schnorr={getPublicKey:M,sign:R,verify:T,utils:{randomPrivateKey:e.secp256k1.utils.randomPrivateKey,lift_x:k,pointToBytes:v,numberToBytesBE:s.numberToBytesBE,bytesToNumberBE:s.bytesToNumberBE,taggedHash:y,mod:i.mod}};const O=(()=>(0,o.isogenyMap)(p,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map((e=>e.map((e=>BigInt(e)))))))(),I=(()=>(0,a.mapToCurveSimpleSWU)(p,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:p.create(BigInt("-11"))}))(),L=(()=>(0,o.createHasher)(e.secp256k1.ProjectivePoint,(e=>{const{x:t,y:n}=I(p.create(e[0]));return O(t,n)}),{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:p.ORDER,m:1,k:128,expand:"xmd",hash:t.sha256}))();e.hashToCurve=L.hashToCurve,e.encodeToCurve=L.encodeToCurve}(ni);var vi={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.decodeHex=e.remove0x=void 0;var t=bn;e.remove0x=function(e){return e.startsWith("0x")||e.startsWith("0X")?e.slice(2):e},e.decodeHex=function(n){return(0,t.hexToBytes)((0,e.remove0x)(n))}}(vi),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.hexToPublicKey=e.convertPublicKeyFormat=e.getSharedPoint=e.getPublicKey=e.isValidPrivateKey=e.getValidSecret=void 0;var t=Nn,n=Dn,r=ni,o=Rn,i=Tn,s=vi;function a(e,t,o,i){if("secp256k1"===e)return t(r.secp256k1);if("x25519"===e)return o(n.x25519);if("ed25519"===e)return i(n.ed25519);throw new Error("Not implemented")}e.getValidSecret=function(){var n;do{n=(0,t.randomBytes)(i.SECRET_KEY_LENGTH)}while(!(0,e.isValidPrivateKey)(n));return n},e.isValidPrivateKey=function(e){return a((0,o.ellipticCurve)(),(function(t){return t.utils.isValidPrivateKey(e)}),(function(){return!0}),(function(){return!0}))},e.getPublicKey=function(e){return a((0,o.ellipticCurve)(),(function(t){return t.getPublicKey(e)}),(function(t){return t.getPublicKey(e)}),(function(t){return t.getPublicKey(e)}))},e.getSharedPoint=function(e,t,n){return a((0,o.ellipticCurve)(),(function(r){return r.getSharedSecret(e,t,n)}),(function(n){return n.getSharedSecret(e,t)}),(function(n){return l(n,e,t)}))},e.convertPublicKeyFormat=function(e,t){return a((0,o.ellipticCurve)(),(function(n){return n.getSharedSecret(BigInt(1),e,t)}),(function(){return e}),(function(){return e}))},e.hexToPublicKey=function(e){var t=(0,s.decodeHex)(e);return a((0,o.ellipticCurve)(),(function(){return c(t)}),(function(){return t}),(function(){return t}))};var c=function(e){if(e.length===i.ETH_PUBLIC_KEY_SIZE){var t=new Uint8Array(1+e.length);return t.set([4]),t.set(e,1),t}return e},l=function(e,t,n){var r=e.utils.getExtendedPublicKey(t).scalar;return e.ExtendedPoint.fromHex(n).multiply(r).toRawBytes()}}(Pn);var bi={},wi={};Object.defineProperty(wi,"__esModule",{value:!0}),wi.hkdf=void 0,wi.extract=Si,wi.expand=Ai;const Ei=Un,_i=Yn,Ci=hi;function Si(e,t,n){return(0,Ei.hash)(e),void 0===n&&(n=new Uint8Array(e.outputLen)),(0,Ci.hmac)(e,(0,_i.toBytes)(n),(0,_i.toBytes)(t))}const ki=new Uint8Array([0]),xi=new Uint8Array;function Ai(e,t,n,r=32){if((0,Ei.hash)(e),(0,Ei.number)(r),r>255*e.outputLen)throw new Error("Length should be <= 255*HashLen");const o=Math.ceil(r/e.outputLen);void 0===n&&(n=xi);const i=new Uint8Array(o*e.outputLen),s=Ci.hmac.create(e,t),a=s._cloneInto(),c=new Uint8Array(s.outputLen);for(let l=0;lAi(e,Si(e,t,n),r,o),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getSharedKey=e.deriveKey=void 0;var t=bn,n=wi,r=ri;e.deriveKey=function(e,t,o){return(0,n.hkdf)(r.sha256,e,t,o,32)},e.getSharedKey=function(){for(var n=[],r=0;r(e>>>0&255)<<24|(e>>>8&255)<<16|(e>>>16&255)<<8|e>>>24&255|0;function $i(e){e.reverse();const t=1&e[15];let n=0;for(let r=0;r>>1|n,n=(1&t)<<7}return e[0]^=225&-t,e}class ji{constructor(e,t){this.blockLen=Pi,this.outputLen=Pi,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,e=(0,Li.toBytes)(e),(0,Ii.bytes)(e,16);const n=(0,Li.createView)(e);let r=n.getUint32(0,!1),o=n.getUint32(4,!1),i=n.getUint32(8,!1),s=n.getUint32(12,!1);const a=[];for(let m=0;m<128;m++)a.push({s0:Di(r),s1:Di(o),s2:Di(i),s3:Di(s)}),({s0:r,s1:o,s2:i,s3:s}={s3:(u=i)<<31|(d=s)>>>1,s2:(l=o)<<31|u>>>1,s1:(c=r)<<31|l>>>1,s0:c>>>1^225<<24&-(1&d)});var c,l,u,d;const h=(e=>e>65536?8:e>1024?4:2)(t||1024);if(![1,2,4,8].includes(h))throw new Error(`ghash: wrong window size=${h}, should be 2, 4 or 8`);this.W=h;const f=128/h,p=this.windowSize=2**h,g=[];for(let m=0;m>>h-i-1&1))continue;const{s0:s,s1:c,s2:l,s3:u}=a[h*m+i];t^=s,n^=c,r^=l,o^=u}g.push({s0:t,s1:n,s2:r,s3:o})}this.t=g}_updateBlock(e,t,n,r){e^=this.s0,t^=this.s1,n^=this.s2,r^=this.s3;const{W:o,t:i,windowSize:s}=this;let a=0,c=0,l=0,u=0;const d=(1<>>8*e&255;for(let e=8/o-1;e>=0;e--){const n=t>>>o*e&d,{s0:r,s1:f,s2:p,s3:g}=i[h*s+n];a^=r,c^=f,l^=p,u^=g,h+=1}}this.s0=a,this.s1=c,this.s2=l,this.s3=u}update(e){e=(0,Li.toBytes)(e),(0,Ii.exists)(this);const t=(0,Li.u32)(e),n=Math.floor(e.length/Pi),r=e.length%Pi;for(let o=0;oe(n,t.length).update((0,Li.toBytes)(t)).digest(),n=e(new Uint8Array(16),0);return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=(t,n)=>e(t,n),t}Oi.ghash=Fi(((e,t)=>new ji(e,t))),Oi.polyval=Fi(((e,t)=>new Ui(e,t))),Object.defineProperty(Ti,"__esModule",{value:!0}),Ti.unsafe=Ti.aeskwp=Ti.aeskw=Ti.siv=Ti.gcm=Ti.cfb=Ti.cbc=Ti.ecb=Ti.ctr=void 0,Ti.expandKeyLE=is,Ti.expandKeyDecLE=ss;const Ki=wn,Hi=Oi,zi=bn,qi=16,Vi=new Uint8Array(qi),Wi=283;function Gi(e){return e<<1^Wi&-(e>>7)}function Yi(e,t){let n=0;for(;t>0;t>>=1)n^=e&-(1&t),e=Gi(e);return n}const Zi=(()=>{const e=new Uint8Array(256);for(let n=0,r=1;n<256;n++,r^=Gi(r))e[n]=r;const t=new Uint8Array(256);t[0]=99;for(let n=0;n<255;n++){let r=e[255-n];r|=r<<8,t[e[n]]=255&(r^r>>4^r>>5^r>>6^r>>7^99)}return(0,zi.clean)(e),t})(),Ji=Zi.map(((e,t)=>Zi.indexOf(t))),Xi=e=>e<<24|e>>>8,Qi=e=>e<<8|e>>>24,es=e=>e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255;function ts(e,t){if(256!==e.length)throw new Error("Wrong sbox length");const n=new Uint32Array(256).map(((n,r)=>t(e[r]))),r=n.map(Qi),o=r.map(Qi),i=o.map(Qi),s=new Uint32Array(65536),a=new Uint32Array(65536),c=new Uint16Array(65536);for(let l=0;l<256;l++)for(let t=0;t<256;t++){const u=256*l+t;s[u]=n[l]^r[t],a[u]=o[l]^i[t],c[u]=e[l]<<8|e[t]}return{sbox:e,sbox2:c,T0:n,T1:r,T2:o,T3:i,T01:s,T23:a}}const ns=ts(Zi,(e=>Yi(e,3)<<24|e<<16|e<<8|Yi(e,2))),rs=ts(Ji,(e=>Yi(e,11)<<24|Yi(e,13)<<16|Yi(e,9)<<8|Yi(e,14))),os=(()=>{const e=new Uint8Array(16);for(let t=0,n=1;t<16;t++,n=Gi(n))e[t]=n;return e})();function is(e){(0,Ki.bytes)(e);const t=e.length;if(![16,24,32].includes(t))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${t}`);const{sbox2:n}=ns,r=[];(0,zi.isAligned32)(e)||r.push(e=(0,zi.copyBytes)(e));const o=(0,zi.u32)(e),i=o.length,s=e=>cs(n,e,e,e,e),a=new Uint32Array(t+28);a.set(o);for(let c=i;c6&&c%i==4&&(e=s(e)),a[c]=a[c-i]^e}return(0,zi.clean)(...r),a}function ss(e){const t=is(e),n=t.slice(),r=t.length,{sbox2:o}=ns,{T0:i,T1:s,T2:a,T3:c}=rs;for(let l=0;l>>8&255]^a[t>>>16&255]^c[t>>>24]}return n}function as(e,t,n,r,o,i){return e[n<<8&65280|r>>>8&255]^t[o>>>8&65280|i>>>24&255]}function cs(e,t,n,r,o){return e[255&t|65280&n]|e[r>>>16&255|o>>>16&65280]<<16}function ls(e,t,n,r,o){const{sbox2:i,T01:s,T23:a}=ns;let c=0;t^=e[c++],n^=e[c++],r^=e[c++],o^=e[c++];const l=e.length/4-2;for(let u=0;u=0;e--)t=t+(255&i[e])|0,i[e]=255&t,t>>>=8;({s0:a,s1:c,s2:l,s3:u}=ls(e,s[0],s[1],s[2],s[3]))}const f=qi*Math.floor(d.length/4);if(f>>0,a.setUint32(u,h,t),({s0:f,s1:p,s2:g,s3:m}=ls(e,s[0],s[1],s[2],s[3]));const y=qi*Math.floor(c.length/4);if(y16)throw new Error("aes/pcks5: wrong padding");const o=e.subarray(0,-r);for(let i=0;in(e,t),decrypt:(e,t)=>n(e,t)}})),Ti.ecb=(0,zi.wrapCipher)({blockSize:16},(function(e,t={}){(0,Ki.bytes)(e);const n=!t.disablePadding;return{encrypt(t,r){const{b:o,o:i,out:s}=gs(t,n,r),a=is(e);let c=0;for(;c+4<=o.length;){const{s0:e,s1:t,s2:n,s3:r}=ls(a,o[c+0],o[c+1],o[c+2],o[c+3]);i[c++]=e,i[c++]=t,i[c++]=n,i[c++]=r}if(n){const e=ys(t.subarray(4*c)),{s0:n,s1:r,s2:o,s3:s}=ls(a,e[0],e[1],e[2],e[3]);i[c++]=n,i[c++]=r,i[c++]=o,i[c++]=s}return(0,zi.clean)(a),s},decrypt(t,r){ps(t);const o=ss(e),i=ds(t.length,r),s=[o];(0,zi.isAligned32)(t)||s.push(t=(0,zi.copyBytes)(t));const a=(0,zi.u32)(t),c=(0,zi.u32)(i);for(let e=0;e+4<=a.length;){const{s0:t,s1:n,s2:r,s3:i}=us(o,a[e+0],a[e+1],a[e+2],a[e+3]);c[e++]=t,c[e++]=n,c[e++]=r,c[e++]=i}return(0,zi.clean)(...s),ms(i,n)}}})),Ti.cbc=(0,zi.wrapCipher)({blockSize:16,nonceLength:16},(function(e,t,n={}){(0,Ki.bytes)(e),(0,Ki.bytes)(t,16);const r=!n.disablePadding;return{encrypt(n,o){const i=is(e),{b:s,o:a,out:c}=gs(n,r,o);let l=t;const u=[i];(0,zi.isAligned32)(l)||u.push(l=(0,zi.copyBytes)(l));const d=(0,zi.u32)(l);let h=d[0],f=d[1],p=d[2],g=d[3],m=0;for(;m+4<=s.length;)h^=s[m+0],f^=s[m+1],p^=s[m+2],g^=s[m+3],({s0:h,s1:f,s2:p,s3:g}=ls(i,h,f,p,g)),a[m++]=h,a[m++]=f,a[m++]=p,a[m++]=g;if(r){const e=ys(n.subarray(4*m));h^=e[0],f^=e[1],p^=e[2],g^=e[3],({s0:h,s1:f,s2:p,s3:g}=ls(i,h,f,p,g)),a[m++]=h,a[m++]=f,a[m++]=p,a[m++]=g}return(0,zi.clean)(...u),c},decrypt(n,o){ps(n);const i=ss(e);let s=t;const a=[i];(0,zi.isAligned32)(s)||a.push(s=(0,zi.copyBytes)(s));const c=(0,zi.u32)(s),l=ds(n.length,o);(0,zi.isAligned32)(n)||a.push(n=(0,zi.copyBytes)(n));const u=(0,zi.u32)(n),d=(0,zi.u32)(l);let h=c[0],f=c[1],p=c[2],g=c[3];for(let e=0;e+4<=u.length;){const t=h,n=f,r=p,o=g;h=u[e+0],f=u[e+1],p=u[e+2],g=u[e+3];const{s0:s,s1:a,s2:c,s3:l}=us(i,h,f,p,g);d[e++]=s^t,d[e++]=a^n,d[e++]=c^r,d[e++]=l^o}return(0,zi.clean)(...a),ms(l,r)}}})),Ti.cfb=(0,zi.wrapCipher)({blockSize:16,nonceLength:16},(function(e,t){function n(n,r,o){(0,Ki.bytes)(n);const i=n.length;o=ds(i,o);const s=is(e);let a=t;const c=[s];(0,zi.isAligned32)(a)||c.push(a=(0,zi.copyBytes)(a)),(0,zi.isAligned32)(n)||c.push(n=(0,zi.copyBytes)(n));const l=(0,zi.u32)(n),u=(0,zi.u32)(o),d=r?u:l,h=(0,zi.u32)(a);let f=h[0],p=h[1],g=h[2],m=h[3];for(let e=0;e+4<=l.length;){const{s0:t,s1:n,s2:r,s3:o}=ls(s,f,p,g,m);u[e+0]=l[e+0]^t,u[e+1]=l[e+1]^n,u[e+2]=l[e+2]^r,u[e+3]=l[e+3]^o,f=d[e++],p=d[e++],g=d[e++],m=d[e++]}const y=qi*Math.floor(l.length/4);if(yn(e,!0,t),decrypt:(e,t)=>n(e,!1,t)}})),Ti.gcm=(0,zi.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},(function(e,t,n){if((0,Ki.bytes)(e),(0,Ki.bytes)(t),void 0!==n&&(0,Ki.bytes)(n),t.length<8)throw new Error("aes/gcm: invalid nonce length");const r=16;function o(e,t,r){const o=vs(Hi.ghash,!1,e,r,n);for(let n=0;nr=>{if(!Number.isSafeInteger(r)||t>r||r>n)throw new Error(`${e}: invalid value=${r}, must be [${t}..${n}]`)};function ws(e){return null!=e&&"object"==typeof e&&(e instanceof Uint32Array||"Uint32Array"===e.constructor.name)}function Es(e,t){if((0,Ki.bytes)(t,16),!ws(e))throw new Error("_encryptBlock accepts result of expandKeyLE");const n=(0,zi.u32)(t);let{s0:r,s1:o,s2:i,s3:s}=ls(e,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=o,n[2]=i,n[3]=s,t}function _s(e,t){if((0,Ki.bytes)(t,16),!ws(e))throw new Error("_decryptBlock accepts result of expandKeyLE");const n=(0,zi.u32)(t);let{s0:r,s1:o,s2:i,s3:s}=us(e,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=o,n[2]=i,n[3]=s,t}Ti.siv=(0,zi.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},(function(e,t,n){const r=bs("AAD",0,2**36),o=bs("plaintext",0,2**36),i=bs("nonce",12,12),s=bs("ciphertext",16,2**36+16);function a(){const n=is(e),r=new Uint8Array(e.length),o=new Uint8Array(16),i=[n,r];let s=t;(0,zi.isAligned32)(s)||i.push(s=(0,zi.copyBytes)(s));const a=(0,zi.u32)(s);let c=0,l=a[0],u=a[1],d=a[2],h=0;for(const e of[o,r].map(zi.u32)){const t=(0,zi.u32)(e);for(let e=0;e=2**32)throw new Error("plaintext should be less than 4gb");const n=is(e);if(16===t.length)Es(n,t);else{const e=(0,zi.u32)(t);let r=e[0],o=e[1];for(let t=0,i=1;t<6;t++)for(let s=2;s=2**32)throw new Error("ciphertext should be less than 4gb");const n=ss(e),r=t.length/8-1;if(1===r)_s(n,t);else{const e=(0,zi.u32)(t);let o=e[0],i=e[1];for(let t=0,s=6*r;t<6;t++)for(let a=2*r;a>=1;a-=2,s--){i^=es(s);const{s0:t,s1:r,s2:c,s3:l}=us(n,o,i,e[a],e[a+1]);o=t,i=r,e[a]=c,e[a+1]=l}e[0]=o,e[1]=i}n.fill(0)}},Ss=new Uint8Array(8).fill(166);Ti.aeskw=(0,zi.wrapCipher)({blockSize:8},(e=>({encrypt(t){if((0,Ki.bytes)(t),!t.length||t.length%8!=0)throw new Error("invalid plaintext length");if(8===t.length)throw new Error("8-byte keys not allowed in AESKW, use AESKWP instead");const n=(0,zi.concatBytes)(Ss,t);return Cs.encrypt(e,n),n},decrypt(t){if((0,Ki.bytes)(t),t.length%8!=0||t.length<24)throw new Error("invalid ciphertext length");const n=(0,zi.copyBytes)(t);if(Cs.decrypt(e,n),!(0,zi.equalBytes)(n.subarray(0,8),Ss))throw new Error("integrity check failed");return n.subarray(0,8).fill(0),n.subarray(8)}})));const ks=2790873510;Ti.aeskwp=(0,zi.wrapCipher)({blockSize:8},(e=>({encrypt(t){if((0,Ki.bytes)(t),!t.length)throw new Error("invalid plaintext length");const n=8*Math.ceil(t.length/8),r=new Uint8Array(8+n);r.set(t,8);const o=(0,zi.u32)(r);return o[0]=ks,o[1]=es(t.length),Cs.encrypt(e,r),r},decrypt(t){if((0,Ki.bytes)(t),t.length<16)throw new Error("invalid ciphertext length");const n=(0,zi.copyBytes)(t),r=(0,zi.u32)(n);Cs.decrypt(e,n);const o=es(r[1])>>>0,i=8*Math.ceil(o/8);if(r[0]!==ks||n.length-8!==i)throw new Error("integrity check failed");for(let e=o;e>>32-t},Rs.createCipher=function(e,t){const{allowShortKeys:n,extendNonceFn:r,counterLength:o,counterRight:i,rounds:s}=(0,Os.checkOpts)({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if("function"!=typeof e)throw new Error("core must be a function");return(0,Ts.number)(o),(0,Ts.number)(s),(0,Ts.bool)(i),(0,Ts.bool)(n),(t,a,c,l,u=0)=>{(0,Ts.bytes)(t),(0,Ts.bytes)(a),(0,Ts.bytes)(c);const d=c.length;if(void 0===l&&(l=new Uint8Array(d)),(0,Ts.bytes)(l),(0,Ts.number)(u),u<0||u>=Us)throw new Error("arx: counter overflow");if(l.length=Us)throw new Error("arx: counter overflow");const g=Math.min($s,c-p);if(d&&g===$s){const e=p/4;if(p%4!=0)throw new Error("arx: invalid block position");for(let t,n=0;nUint8Array.from(e.split("").map((e=>e.charCodeAt(0)))),Ls=Is("expand 16-byte k"),Ps=Is("expand 32-byte k"),Ns=(0,Os.u32)(Ls),Bs=(0,Os.u32)(Ps);function Ds(e){return e.byteOffset%4==0}Rs.sigma=Bs.slice();const $s=64,js=16,Us=2**32-1,Fs=new Uint32Array;var Ks={};Object.defineProperty(Ks,"__esModule",{value:!0}),Ks.poly1305=void 0,Ks.wrapConstructorWithKey=Ws;const Hs=wn,zs=bn,qs=(e,t)=>255&e[t++]|(255&e[t++])<<8;class Vs{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,e=(0,zs.toBytes)(e),(0,Hs.bytes)(e,32);const t=qs(e,0),n=qs(e,2),r=qs(e,4),o=qs(e,6),i=qs(e,8),s=qs(e,10),a=qs(e,12),c=qs(e,14);this.r[0]=8191&t,this.r[1]=8191&(t>>>13|n<<3),this.r[2]=7939&(n>>>10|r<<6),this.r[3]=8191&(r>>>7|o<<9),this.r[4]=255&(o>>>4|i<<12),this.r[5]=i>>>1&8190,this.r[6]=8191&(i>>>14|s<<2),this.r[7]=8065&(s>>>11|a<<5),this.r[8]=8191&(a>>>8|c<<8),this.r[9]=c>>>5&127;for(let l=0;l<8;l++)this.pad[l]=qs(e,16+2*l)}process(e,t,n=!1){const r=n?0:2048,{h:o,r:i}=this,s=i[0],a=i[1],c=i[2],l=i[3],u=i[4],d=i[5],h=i[6],f=i[7],p=i[8],g=i[9],m=qs(e,t+0),y=qs(e,t+2),v=qs(e,t+4),b=qs(e,t+6),w=qs(e,t+8),E=qs(e,t+10),_=qs(e,t+12),C=qs(e,t+14);let S=o[0]+(8191&m),k=o[1]+(8191&(m>>>13|y<<3)),x=o[2]+(8191&(y>>>10|v<<6)),A=o[3]+(8191&(v>>>7|b<<9)),M=o[4]+(8191&(b>>>4|w<<12)),R=o[5]+(w>>>1&8191),T=o[6]+(8191&(w>>>14|E<<2)),O=o[7]+(8191&(E>>>11|_<<5)),I=o[8]+(8191&(_>>>8|C<<8)),L=o[9]+(C>>>5|r),P=0,N=P+S*s+k*(5*g)+x*(5*p)+A*(5*f)+M*(5*h);P=N>>>13,N&=8191,N+=R*(5*d)+T*(5*u)+O*(5*l)+I*(5*c)+L*(5*a),P+=N>>>13,N&=8191;let B=P+S*a+k*s+x*(5*g)+A*(5*p)+M*(5*f);P=B>>>13,B&=8191,B+=R*(5*h)+T*(5*d)+O*(5*u)+I*(5*l)+L*(5*c),P+=B>>>13,B&=8191;let D=P+S*c+k*a+x*s+A*(5*g)+M*(5*p);P=D>>>13,D&=8191,D+=R*(5*f)+T*(5*h)+O*(5*d)+I*(5*u)+L*(5*l),P+=D>>>13,D&=8191;let $=P+S*l+k*c+x*a+A*s+M*(5*g);P=$>>>13,$&=8191,$+=R*(5*p)+T*(5*f)+O*(5*h)+I*(5*d)+L*(5*u),P+=$>>>13,$&=8191;let j=P+S*u+k*l+x*c+A*a+M*s;P=j>>>13,j&=8191,j+=R*(5*g)+T*(5*p)+O*(5*f)+I*(5*h)+L*(5*d),P+=j>>>13,j&=8191;let U=P+S*d+k*u+x*l+A*c+M*a;P=U>>>13,U&=8191,U+=R*s+T*(5*g)+O*(5*p)+I*(5*f)+L*(5*h),P+=U>>>13,U&=8191;let F=P+S*h+k*d+x*u+A*l+M*c;P=F>>>13,F&=8191,F+=R*a+T*s+O*(5*g)+I*(5*p)+L*(5*f),P+=F>>>13,F&=8191;let K=P+S*f+k*h+x*d+A*u+M*l;P=K>>>13,K&=8191,K+=R*c+T*a+O*s+I*(5*g)+L*(5*p),P+=K>>>13,K&=8191;let H=P+S*p+k*f+x*h+A*d+M*u;P=H>>>13,H&=8191,H+=R*l+T*c+O*a+I*s+L*(5*g),P+=H>>>13,H&=8191;let z=P+S*g+k*p+x*f+A*h+M*d;P=z>>>13,z&=8191,z+=R*u+T*l+O*c+I*a+L*s,P+=z>>>13,z&=8191,P=(P<<2)+P|0,P=P+N|0,N=8191&P,P>>>=13,B+=P,o[0]=N,o[1]=B,o[2]=D,o[3]=$,o[4]=j,o[5]=U,o[6]=F,o[7]=K,o[8]=H,o[9]=z}finalize(){const{h:e,pad:t}=this,n=new Uint16Array(10);let r=e[1]>>>13;e[1]&=8191;for(let s=2;s<10;s++)e[s]+=r,r=e[s]>>>13,e[s]&=8191;e[0]+=5*r,r=e[0]>>>13,e[0]&=8191,e[1]+=r,r=e[1]>>>13,e[1]&=8191,e[2]+=r,n[0]=e[0]+5,r=n[0]>>>13,n[0]&=8191;for(let s=1;s<10;s++)n[s]=e[s]+r,r=n[s]>>>13,n[s]&=8191;n[9]-=8192;let o=(1^r)-1;for(let s=0;s<10;s++)n[s]&=o;o=~o;for(let s=0;s<10;s++)e[s]=e[s]&o|n[s];e[0]=65535&(e[0]|e[1]<<13),e[1]=65535&(e[1]>>>3|e[2]<<10),e[2]=65535&(e[2]>>>6|e[3]<<7),e[3]=65535&(e[3]>>>9|e[4]<<4),e[4]=65535&(e[4]>>>12|e[5]<<1|e[6]<<14),e[5]=65535&(e[6]>>>2|e[7]<<11),e[6]=65535&(e[7]>>>5|e[8]<<8),e[7]=65535&(e[8]>>>8|e[9]<<5);let i=e[0]+t[0];e[0]=65535&i;for(let s=1;s<8;s++)i=(e[s]+t[s]|0)+(i>>>16)|0,e[s]=65535&i;(0,zs.clean)(n)}update(e){(0,Hs.exists)(this);const{buffer:t,blockLen:n}=this,r=(e=(0,zs.toBytes)(e)).length;for(let o=0;o>>0,e[o++]=n[i]>>>8;return e}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}}function Ws(e){const t=(t,n)=>e(n).update((0,zs.toBytes)(t)).digest(),n=e(new Uint8Array(32));return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}Ks.poly1305=Ws((e=>new Vs(e))),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.xchacha20poly1305=e.chacha20poly1305=e._poly1305_aead=e.chacha12=e.chacha8=e.xchacha20=e.chacha20=e.chacha20orig=void 0,e.hchacha=s;const t=Rs,n=wn,r=Ks,o=bn;function i(e,n,r,o,i,s=20){let a=e[0],c=e[1],l=e[2],u=e[3],d=n[0],h=n[1],f=n[2],p=n[3],g=n[4],m=n[5],y=n[6],v=n[7],b=i,w=r[0],E=r[1],_=r[2],C=a,S=c,k=l,x=u,A=d,M=h,R=f,T=p,O=g,I=m,L=y,P=v,N=b,B=w,D=E,$=_;for(let U=0;U{e.update(t);const n=t.length%16;n&&e.update(a.subarray(n))},l=new Uint8Array(32);function u(e,t,n,i,s){const a=e(t,n,l),u=r.poly1305.create(a);s&&c(u,s),c(u,i);const d=new Uint8Array(16),h=(0,o.createView)(d);(0,o.setBigUint64)(h,0,BigInt(s?s.length:0),!0),(0,o.setBigUint64)(h,8,BigInt(i.length),!0),u.update(d);const f=u.digest();return(0,o.clean)(a,d),f}e._poly1305_aead=e=>(t,r,i)=>{const s=16;return(0,n.bytes)(t,32),(0,n.bytes)(r),{encrypt(a,c){const l=a.length,d=l+s;c?(0,n.bytes)(c,d):c=new Uint8Array(d),e(t,r,a,c,1);const h=u(e,t,r,c.subarray(0,-16),i);return c.set(h,l),(0,o.clean)(h),c},decrypt(a,c){const l=a.length,d=l-s;if(lht(void 0,void 0,void 0,(function*(){da=t,fa.push(e),function(e){return ht(this,void 0,void 0,(function*(){if(!da||!e)return;!function(){const e=fa;fa=ha,ha=e}();const t=da.endsWith("/")?`${da}evt`:`${da}/evt`,n=Object.assign({},e);if(delete n.params,e.params)for(const[o,i]of Object.entries(e.params))n[o]=i;const r=JSON.stringify(n);ua.RemoteCommunication(`[sendBufferedEvents] Sending ${ha.length} analytics events to ${t}`);try{const e=yield s()(t,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:r}),n=yield e.text();ua.RemoteCommunication(`[sendBufferedEvents] Response: ${n}`),ha.length=0}catch(t){}}))}(e).catch((()=>{}))}));class ga{constructor(e){this.enabled=!0,(null==e?void 0:e.debug)&&c().enable("Ecies:Layer"),this.ecies=(null==e?void 0:e.privateKey)?vn.PrivateKey.fromHex(e.privateKey):new vn.PrivateKey,ua.Ecies("[ECIES constructor()] initialized secret: ",this.ecies.toHex()),ua.Ecies("[ECIES constructor()] initialized public: ",this.ecies.publicKey.toHex()),ua.Ecies("[ECIES constructor()] init with",this)}generateECIES(){this.ecies=new vn.PrivateKey}getPublicKey(){return this.ecies.publicKey.toHex()}encrypt(e,t){let n=e;if(this.enabled)try{ua.Ecies("[ECIES: encrypt()] using otherPublicKey",t);const r=Mt.from(e),o=vn.encrypt(t,r);n=Mt.from(o).toString("base64")}catch(n){throw ua.Ecies("[ECIES: encrypt()] error encrypt:",n),ua.Ecies("[ECIES: encrypt()] private: ",this.ecies.toHex()),ua.Ecies("[ECIES: encrypt()] data: ",e),ua.Ecies("[ECIES: encrypt()] otherkey: ",t),n}return n}decrypt(e){let t=e;if(this.enabled)try{ua.Ecies("[ECIES: decrypt()] using privateKey",this.ecies.toHex());const n=Mt.from(e.toString(),"base64");t=vn.decrypt(this.ecies.toHex(),n).toString()}catch(t){throw ua.Ecies("[ECIES: decrypt()] error decrypt",t),ua.Ecies("[ECIES: decrypt()] private: ",this.ecies.toHex()),ua.Ecies("[ECIES: decrypt()] encryptedData: ",e),t}return t}getKeyInfo(){return{private:this.ecies.toHex(),public:this.ecies.publicKey.toHex()}}toString(){ua.Ecies("[ECIES: toString()]",this.getKeyInfo())}}var ma={name:"@metamask/sdk-communication-layer",version:"0.31.0",description:"",homepage:"https://github.com/MetaMask/metamask-sdk#readme",bugs:{url:"https://github.com/MetaMask/metamask-sdk/issues"},repository:{type:"git",url:"https://github.com/MetaMask/metamask-sdk.git",directory:"packages/sdk-communication-layer"},main:"dist/node/cjs/metamask-sdk-communication-layer.js",unpkg:"dist/browser/umd/metamask-sdk-communication-layer.js",module:"dist/node/es/metamask-sdk-communication-layer.js",browser:"dist/browser/es/metamask-sdk-communication-layer.js","react-native":"dist/react-native/es/metamask-sdk-communication-layer.js",types:"dist/types/src/index.d.ts",files:["/dist"],scripts:{"build:types":"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types","build:clean":"yarn clean && yarn build",build:"yarn build:types && rollup -c --bundleConfigAsCjs","build:dev":"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs","build:post-tsc":"echo 'N/A'","build:pre-tsc":"echo 'N/A'",size:"size-limit",clean:"rimraf ./dist",lint:"yarn lint:eslint && yarn lint:misc --check","lint:changelog":"../../scripts/validate-changelog.sh @metamask/sdk-communication-layer","lint:eslint":"eslint . --cache --ext js,ts","lint:fix":"yarn lint:eslint --fix && yarn lint:misc --write","lint:misc":"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore","publish:preview":"yarn npm publish --tag preview",prepack:"../../scripts/prepack.sh",reset:"yarn clean && rimraf ./node_modules/",test:'jest --testPathIgnorePatterns "/e2e/"',"test:e2e":'jest --testPathPattern "/e2e/"',"test:coverage":"jest --coverage","test:ci":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns "/e2e/"',"test:dev":"jest",watch:"rollup -c --bundleConfigAsCjs -w"},dependencies:{bufferutil:"^4.0.8","date-fns":"^2.29.3",debug:"^4.3.4","utf-8-validate":"^5.0.2",uuid:"^8.3.2"},devDependencies:{"@jest/globals":"^29.3.1","@lavamoat/allow-scripts":"^2.3.1","@metamask/auto-changelog":"3.1.0","@metamask/eslint-config":"^6.0.0","@metamask/eslint-config-nodejs":"^6.0.0","@metamask/eslint-config-typescript":"^6.0.0","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-replace":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@size-limit/preset-big-lib":"^11.0.2","@types/jest":"^29.2.4","@types/node":"^20.1.3","@types/uuid":"^9.0.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","cross-fetch":"^4.0.0",eciesjs:"^0.4.11",eslint:"^7.30.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.23.4","eslint-plugin-jest":"^24.4.0","eslint-plugin-jsdoc":"^36.1.0","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0",eventemitter2:"^6.4.9",jest:"^29.3.1",prettier:"^2.3.0",rimraf:"^3.0.2",rollup:"^4.26.0","rollup-plugin-jscc":"^2.0.0","rollup-plugin-natives":"^0.7.5","rollup-plugin-node-builtins":"^2.1.2","rollup-plugin-node-globals":"^1.4.0","rollup-plugin-peer-deps-external":"^2.2.4","rollup-plugin-polyfill-node":"^0.13.0","rollup-plugin-sizes":"^1.0.6","rollup-plugin-typescript2":"^0.31.2","rollup-plugin-visualizer":"^5.12.0","size-limit":"^11.1.6","socket.io-client":"^4.5.1","stream-browserify":"^3.0.0","ts-jest":"^29.0.3","ts-node":"^10.9.1",typescript:"^5.6.3"},peerDependencies:{"cross-fetch":"^4.0.0",eciesjs:"*",eventemitter2:"^6.4.9","readable-stream":"^3.6.2","socket.io-client":"^4.5.1"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},lavamoat:{allowScripts:{"@lavamoat/preinstall-always-fail":!1,canvas:!0,"eciesjs>secp256k1":!1,"socket.io-client>engine.io-client>ws>bufferutil":!1,"socket.io-client>engine.io-client>ws>utf-8-validate":!1,bufferutil:!1,"utf-8-validate":!1}}};const ya="https://metamask-sdk.api.cx.metamask.io/",va=["websocket"],ba=6048e5,wa=3e3,Ea={METAMASK_GETPROVIDERSTATE:"metamask_getProviderState",ETH_REQUESTACCOUNTS:"eth_requestAccounts"};function _a(e){const{context:t}=e;ua.RemoteCommunication(`[RemoteCommunication: clean()] context=${t}`),e.channelConfig=void 0,e.ready=!1,e.originatorConnectStarted=!1}var Ca,Sa,ka,xa,Aa,Ma,Ra;(Ra=Ca||(Ca={})).DISCONNECTED="disconnected",Ra.WAITING="waiting",Ra.TIMEOUT="timeout",Ra.LINKED="linked",Ra.PAUSED="paused",Ra.TERMINATED="terminated",function(e){e.KEY_INFO="key_info",e.SERVICE_STATUS="service_status",e.PROVIDER_UPDATE="provider_update",e.RPC_UPDATE="rpc_update",e.KEYS_EXCHANGED="keys_exchanged",e.JOIN_CHANNEL="join_channel",e.PUBLIC_KEY="public_key",e.CHANNEL_CREATED="channel_created",e.CLIENTS_CONNECTED="clients_connected",e.CLIENTS_DISCONNECTED="clients_disconnected",e.CLIENTS_WAITING="clients_waiting",e.CLIENTS_READY="clients_ready",e.REJECTED="rejected",e.WALLET_INIT="wallet_init",e.CHANNEL_PERSISTENCE="channel_persistence",e.CONFIG="config",e.MESSAGE_ACK="ack",e.SOCKET_DISCONNECTED="socket_disconnected",e.SOCKET_RECONNECT="socket_reconnect",e.OTP="otp",e.SDK_RPC_CALL="sdk_rpc_call",e.AUTHORIZED="authorized",e.CONNECTION_STATUS="connection_status",e.MESSAGE="message",e.TERMINATE="terminate"}(Sa||(Sa={})),(ka||(ka={})).KEY_EXCHANGE="key_exchange",function(e){e.KEY_HANDSHAKE_START="key_handshake_start",e.KEY_HANDSHAKE_CHECK="key_handshake_check",e.KEY_HANDSHAKE_SYN="key_handshake_SYN",e.KEY_HANDSHAKE_SYNACK="key_handshake_SYNACK",e.KEY_HANDSHAKE_ACK="key_handshake_ACK",e.KEY_HANDSHAKE_WALLET="key_handshake_wallet",e.KEY_HANDSHAKE_NONE="none"}(xa||(xa={}));class Ta extends l.EventEmitter2{constructor({communicationLayer:e,otherPublicKey:t,context:n,ecies:r,logging:o}){super(),this.keysExchanged=!1,this.step=xa.KEY_HANDSHAKE_NONE,this.debug=!1,this.context=n,this.communicationLayer=e,(null==r?void 0:r.privateKey)&&t&&(ua.KeyExchange(`[KeyExchange: constructor()] otherPubKey=${t} set keysExchanged to true!`,r),this.keysExchanged=!0),this.myECIES=new ga(Object.assign(Object.assign({},r),{debug:null==o?void 0:o.eciesLayer})),this.communicationLayer.state.eciesInstance=this.myECIES,this.myPublicKey=this.myECIES.getPublicKey(),this.debug=!0===(null==o?void 0:o.keyExchangeLayer),t&&this.setOtherPublicKey(t),this.communicationLayer.on(ka.KEY_EXCHANGE,this.onKeyExchangeMessage.bind(this))}onKeyExchangeMessage(e){const{relayPersistence:t}=this.communicationLayer.remote.state;if(ua.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} keysExchanged=${this.keysExchanged} relayPersistence=${t}`,e),t)return void ua.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Ignoring key exchange message because relay persistence is activated");const{message:n}=e;this.keysExchanged&&ua.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} received handshake while already exchanged. step=${this.step} otherPubKey=${this.otherPublicKey}`),this.emit(Sa.KEY_INFO,n.type),n.type===xa.KEY_HANDSHAKE_SYN?(this.checkStep([xa.KEY_HANDSHAKE_NONE,xa.KEY_HANDSHAKE_ACK]),ua.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYN",n),n.pubkey&&this.setOtherPublicKey(n.pubkey),this.communicationLayer.sendMessage({type:xa.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey}).catch((e=>{ua.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_SYNACK",e)})),this.setStep(xa.KEY_HANDSHAKE_ACK)):n.type===xa.KEY_HANDSHAKE_SYNACK?(this.checkStep([xa.KEY_HANDSHAKE_SYNACK,xa.KEY_HANDSHAKE_ACK,xa.KEY_HANDSHAKE_NONE]),ua.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYNACK"),n.pubkey&&this.setOtherPublicKey(n.pubkey),this.communicationLayer.sendMessage({type:xa.KEY_HANDSHAKE_ACK}).catch((e=>{ua.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_ACK",e)})),this.keysExchanged=!0,this.setStep(xa.KEY_HANDSHAKE_ACK),this.emit(Sa.KEYS_EXCHANGED)):n.type===xa.KEY_HANDSHAKE_ACK&&(ua.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_ACK set keysExchanged to true!"),this.checkStep([xa.KEY_HANDSHAKE_ACK,xa.KEY_HANDSHAKE_NONE]),this.keysExchanged=!0,this.setStep(xa.KEY_HANDSHAKE_ACK),this.emit(Sa.KEYS_EXCHANGED))}resetKeys(e){this.clean(),this.myECIES=new ga(e)}clean(){ua.KeyExchange(`[KeyExchange: clean()] context=${this.context} reset handshake state`),this.setStep(xa.KEY_HANDSHAKE_NONE),this.emit(Sa.KEY_INFO,this.step),this.keysExchanged=!1}start({isOriginator:e,force:t}){const{relayPersistence:n,protocolVersion:r}=this.communicationLayer.remote.state,o=r>=2;n?ua.KeyExchange("[KeyExchange: start()] Ignoring key exchange message because relay persistence is activated"):(ua.KeyExchange(`[KeyExchange: start()] context=${this.context} protocolVersion=${r} isOriginator=${e} step=${this.step} force=${t} relayPersistence=${n} keysExchanged=${this.keysExchanged}`),e?!(this.keysExchanged||this.step!==xa.KEY_HANDSHAKE_NONE&&this.step!==xa.KEY_HANDSHAKE_SYNACK)||t?(ua.KeyExchange(`[KeyExchange: start()] context=${this.context} -- start key exchange (force=${t}) -- step=${this.step}`,this.step),this.clean(),this.setStep(xa.KEY_HANDSHAKE_SYNACK),this.communicationLayer.sendMessage({type:xa.KEY_HANDSHAKE_SYN,pubkey:this.myPublicKey,v:2}).catch((e=>{ua.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYN",e)}))):ua.KeyExchange(`[KeyExchange: start()] context=${this.context} -- key exchange already ${this.keysExchanged?"done":"in progress"} -- aborted.`,this.step):this.keysExchanged&&!0!==t?ua.KeyExchange("[KeyExchange: start()] don't send KEY_HANDSHAKE_START -- exchange already done."):o?this.communicationLayer.sendMessage({type:xa.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey,v:2}).catch((e=>{ua.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYNACK",e)})):(this.communicationLayer.sendMessage({type:xa.KEY_HANDSHAKE_START}).catch((e=>{ua.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_START",e)})),this.clean()))}setStep(e){this.step=e,this.emit(Sa.KEY_INFO,e)}checkStep(e){e.length>0&&e.indexOf(this.step.toString())}setRelayPersistence({localKey:e,otherKey:t}){this.otherPublicKey=t,this.myECIES=new ga({privateKey:e,debug:this.debug}),this.keysExchanged=!0}setKeysExchanged(e){this.keysExchanged=e}areKeysExchanged(){return this.keysExchanged}getMyPublicKey(){return this.myPublicKey}getOtherPublicKey(){return this.otherPublicKey}setOtherPublicKey(e){ua.KeyExchange("[KeyExchange: setOtherPubKey()]",e),this.otherPublicKey=e}encryptMessage(e){if(!this.otherPublicKey)throw new Error("encryptMessage: Keys not exchanged - missing otherPubKey");return this.myECIES.encrypt(e,this.otherPublicKey)}decryptMessage(e){if(!this.otherPublicKey)throw new Error("decryptMessage: Keys not exchanged - missing otherPubKey");return this.myECIES.decrypt(e)}getKeyInfo(){return{ecies:Object.assign(Object.assign({},this.myECIES.getKeyInfo()),{otherPubKey:this.otherPublicKey}),step:this.step,keysExchanged:this.areKeysExchanged()}}toString(){const e={keyInfo:this.getKeyInfo(),keysExchanged:this.keysExchanged,step:this.step};return JSON.stringify(e)}}!function(e){e.TERMINATE="terminate",e.ANSWER="answer",e.OFFER="offer",e.CANDIDATE="candidate",e.JSONRPC="jsonrpc",e.WALLET_INFO="wallet_info",e.WALLET_INIT="wallet_init",e.ORIGINATOR_INFO="originator_info",e.PAUSE="pause",e.OTP="otp",e.AUTHORIZED="authorized",e.PING="ping",e.READY="ready"}(Aa||(Aa={})),function(e){e.REQUEST="sdk_connect_request_started",e.REQUEST_MOBILE="sdk_connect_request_started_mobile",e.RECONNECT="sdk_reconnect_request_started",e.CONNECTED="sdk_connection_established",e.CONNECTED_MOBILE="sdk_connection_established_mobile",e.AUTHORIZED="sdk_connection_authorized",e.REJECTED="sdk_connection_rejected",e.TERMINATED="sdk_connection_terminated",e.DISCONNECTED="sdk_disconnected",e.SDK_USE_EXTENSION="sdk_use_extension",e.SDK_RPC_REQUEST="sdk_rpc_request",e.SDK_RPC_REQUEST_RECEIVED="sdk_rpc_request_received",e.SDK_RPC_REQUEST_DONE="sdk_rpc_request_done",e.SDK_EXTENSION_UTILIZED="sdk_extension_utilized",e.SDK_USE_INAPP_BROWSER="sdk_use_inapp_browser"}(Ma||(Ma={}));const Oa=(e,t,n)=>ht(void 0,void 0,void 0,(function*(){var r,o,i,s,a,c;const{remote:l,state:u}=e,{channelId:d,isOriginator:h}=u;if("error_terminated"===t)return ua.SocketService(`handleJoinChannelResults: Channel ${d} terminated`),void e.emit(Sa.TERMINATE);if(!n)return void ua.SocketService(`handleJoinChannelResults: No result for channel ${d}`);const{persistence:f,walletKey:p,rejected:g}=n;if(ua.SocketService(`handleJoinChannelResults: Channel ${d} persistence=${f} walletKey=${p} rejected=${g}`),g)return ua.SocketService(`handleJoinChannelResults: Channel ${d} rejected`),yield e.remote.disconnect({terminate:!0}),e.remote.emit(Sa.REJECTED,{channelId:d}),void e.remote.emitServiceStatusEvent();if(p&&!(null===(r=l.state.channelConfig)||void 0===r?void 0:r.otherKey)){e.getKeyExchange().setOtherPublicKey(p),null===(o=e.state.keyExchange)||void 0===o||o.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(Sa.AUTHORIZED);const{communicationLayer:t,storageManager:n}=l.state,r=Object.assign(Object.assign({},l.state.channelConfig),{channelId:null!==(i=l.state.channelId)&&void 0!==i?i:"",validUntil:Date.now()+ba,localKey:null==t?void 0:t.getKeyInfo().ecies.private,otherKey:p});e.sendMessage({type:xa.KEY_HANDSHAKE_ACK}).catch((e=>{})),null===(s=e.state.socket)||void 0===s||s.emit(Aa.PING,{id:d,clientType:h?"dapp":"wallet",context:"on_channel_reconnect",message:""}),yield null==n?void 0:n.persistChannelConfig(r),l.emitServiceStatusEvent(),l.setConnectionStatus(Ca.LINKED)}f&&(e.emit(Sa.CHANNEL_PERSISTENCE),null===(a=e.state.keyExchange)||void 0===a||a.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(Sa.AUTHORIZED),pa(Object.assign(Object.assign({id:null!=d?d:"",event:h?Ma.CONNECTED:Ma.CONNECTED_MOBILE},e.remote.state.originatorInfo),{sdkVersion:e.remote.state.sdkVersion,commLayer:e.state.communicationLayerPreference,commLayerVersion:ma.version,walletVersion:null===(c=e.remote.state.walletInfo)||void 0===c?void 0:c.version}),u.communicationServerUrl).catch((e=>{})))})),Ia=e=>new Promise((t=>{setTimeout(t,e)})),La=(e,t,...n)=>ht(void 0,[e,t,...n],void 0,(function*(e,t,n=200){let r;const o=Date.now();let i=!1;for(;!i;){if(i=Date.now()-o>3e5,r=t[e],void 0!==r.elapsedTime)return r;yield Ia(n)}throw new Error(`RPC ${e} timed out`)})),Pa=e=>ht(void 0,void 0,void 0,(function*(){const{state:t}=e,{socket:n,channelId:r,context:o,isOriginator:i,isReconnecting:s}=t;if(s)return ua.SocketService("[SocketService: reconnectSocket()] Reconnection already in progress, skipping",e),!1;if(!n)return ua.SocketService("[SocketService: reconnectSocket()] socket is not defined",e),!1;if(!r)return!1;const{connected:a}=n;t.isReconnecting=!0,t.reconnectionAttempts=0,ua.SocketService(`[SocketService: reconnectSocket()] connected=${a} trying to reconnect after socketio disconnection`,e);try{for(;3>t.reconnectionAttempts;){if(ua.SocketService(`[SocketService: reconnectSocket()] Attempt ${t.reconnectionAttempts+1} of 3`,e),yield Ia(200),n.connected)return ua.SocketService("Socket already connected --- ping to retrieve messages"),n.emit(Aa.PING,{id:r,clientType:i?"dapp":"wallet",context:"on_channel_config",message:""}),!0;t.resumed=!0,n.connect(),e.emit(Sa.SOCKET_RECONNECT);try{if(yield new Promise(((t,s)=>{n.emit(Sa.JOIN_CHANNEL,{channelId:r,context:`${o}connect_again`,clientType:i?"dapp":"wallet"},((n,r)=>ht(void 0,void 0,void 0,(function*(){try{yield Oa(e,n,r),t()}catch(e){s(e)}}))))})),yield Ia(100),n.connected)return ua.SocketService(`Reconnection successful on attempt ${t.reconnectionAttempts+1}`),!0}catch(e){ua.SocketService(`Error during reconnection attempt ${t.reconnectionAttempts+1}:`,e)}t.reconnectionAttempts+=1,3>t.reconnectionAttempts&&(yield Ia(200))}return ua.SocketService("Failed to reconnect after 3 attempts"),!1}finally{t.isReconnecting=!1,t.reconnectionAttempts=0}}));function Na(e,t){return ht(this,void 0,void 0,(function*(){var n;const r=null===(n=e.state.keyExchange)||void 0===n?void 0:n.encryptMessage(JSON.stringify(t)),o={id:e.state.channelId,context:e.state.context,clientType:e.state.isOriginator?"dapp":"wallet",message:r,plaintext:e.state.hasPlaintext?JSON.stringify(t):void 0};return ua.SocketService(`[SocketService: encryptAndSendMessage()] context=${e.state.context}`,o),t.type===Aa.TERMINATE&&(e.state.manualDisconnect=!0),new Promise(((t,n)=>{var r;null===(r=e.state.socket)||void 0===r||r.emit(Sa.MESSAGE,o,((e,r)=>{var o;e&&(ua.SocketService(`[SocketService: encryptAndSendMessage()] error=${e}`),n(e)),ua.SocketService("[encryptAndSendMessage] response",r),t(null!==(o=null==r?void 0:r.success)&&void 0!==o&&o)}))}))}))}var Ba;!function(e){e.RPC_CHECK="rpcCheck",e.SKIPPED_RPC="skippedRpc"}(Ba||(Ba={}));const Da=["eth_sendTransaction","eth_signTypedData","eth_signTransaction","personal_sign","wallet_requestPermissions","wallet_switchEthereumChain","eth_signTypedData_v3","eth_signTypedData_v4","metamask_connectSign","metamask_connectWith","metamask_batch"].map((e=>e.toLowerCase())),$a=[{event:Sa.CLIENTS_CONNECTED,handler:function(e,t){return n=>ht(this,void 0,void 0,(function*(){var n,r,o,i,s,a,c,l,u,d,h;const f=null!==(r=null===(n=e.remote.state.channelConfig)||void 0===n?void 0:n.relayPersistence)&&void 0!==r&&r;if(ua.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected-${t}' relayPersistence=${f} resumed=${e.state.resumed} clientsPaused=${e.state.clientsPaused} keysExchanged=${null===(o=e.state.keyExchange)||void 0===o?void 0:o.areKeysExchanged()} isOriginator=${e.state.isOriginator}`),e.emit(Sa.CLIENTS_CONNECTED,{isOriginator:e.state.isOriginator,keysExchanged:null===(i=e.state.keyExchange)||void 0===i?void 0:i.areKeysExchanged(),context:e.state.context}),e.state.resumed)e.state.isOriginator||(ua.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} 'clients_connected' / keysExchanged=${null===(s=e.state.keyExchange)||void 0===s?void 0:s.areKeysExchanged()} -- backward compatibility`),null===(a=e.state.keyExchange)||void 0===a||a.start({isOriginator:null!==(c=e.state.isOriginator)&&void 0!==c&&c})),e.state.resumed=!1;else if(e.state.clientsPaused)ua.SocketService("[SocketService: handleClientsConnected()] 'clients_connected' skip sending originatorInfo on pause");else if(!e.state.isOriginator){const t=!f;ua.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected' / keysExchanged=${null===(l=e.state.keyExchange)||void 0===l?void 0:l.areKeysExchanged()} -- force=${t} -- backward compatibility`),ua.SocketService(`[SocketService: handleClientsConnected()] context=${e.state.context} on 'clients_connected' / keysExchanged=${null===(u=e.state.keyExchange)||void 0===u?void 0:u.areKeysExchanged()} -- force=${t} -- backward compatibility`),null===(d=e.state.keyExchange)||void 0===d||d.start({isOriginator:null!==(h=e.state.isOriginator)&&void 0!==h&&h,force:t})}e.state.clientsConnected=!0,e.state.clientsPaused=!1}))}},{event:Sa.CHANNEL_CREATED,handler:function(e,t){return n=>{ua.SocketService(`[SocketService: handleChannelCreated()] context=${e.state.context} on 'channel_created-${t}'`,n),e.emit(Sa.CHANNEL_CREATED,n)}}},{event:Sa.CLIENTS_DISCONNECTED,handler:function(e,t){return()=>{var n;e.state.clientsConnected=!1,ua.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}'`),e.remote.state.relayPersistence?ua.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}' - relayPersistence enabled, skipping key exchange cleanup.`):(e.state.isOriginator&&!e.state.clientsPaused&&(null===(n=e.state.keyExchange)||void 0===n||n.clean()),e.emit(Sa.CLIENTS_DISCONNECTED,t))}}},{event:Sa.CONFIG,handler:function(e,t){return n=>ht(this,void 0,void 0,(function*(){var r,o,i;ua.SocketService(`[SocketService: handleChannelConfig()] update relayPersistence on 'config-${t}'`,n);const{persistence:s,walletKey:a}=n;e.state.isOriginator&&e.remote.state.channelConfig?(n.walletKey&&!e.remote.state.channelConfig.otherKey&&(ua.SocketService(`Setting wallet key ${a}`),e.remote.state.channelConfig.otherKey=a,e.getKeyExchange().setOtherPublicKey(n.walletKey),null===(r=e.state.keyExchange)||void 0===r||r.setKeysExchanged(!0),yield e.remote.sendMessage({type:xa.KEY_HANDSHAKE_ACK}),yield e.remote.sendMessage({type:Aa.PING}),yield null===(o=e.remote.state.storageManager)||void 0===o?void 0:o.persistChannelConfig(e.remote.state.channelConfig)),!0!==s||e.remote.state.channelConfig.relayPersistence||(ua.SocketService(`Setting relay persistence ${s}`),e.remote.state.channelConfig.relayPersistence=s,e.remote.state.relayPersistence=!0,e.remote.emit(Sa.CHANNEL_PERSISTENCE),e.remote.state.authorized=!0,e.remote.state.ready=!0,e.remote.emit(Sa.AUTHORIZED),yield null===(i=e.remote.state.storageManager)||void 0===i?void 0:i.persistChannelConfig(e.remote.state.channelConfig))):e.state.isOriginator||n.persistence&&(e.remote.state.relayPersistence=!0,e.remote.emit(Sa.CHANNEL_PERSISTENCE))}))}},{event:Sa.MESSAGE,handler:function(e,t){return n=>{var r,o,i,s,a,c,l,u,d,h,f,p,g,m,y,v,b,w;const{ackId:E,message:_,error:C}=n,S=null!==(r=e.remote.state.relayPersistence)&&void 0!==r&&r;if(ua.SocketService(`[SocketService handleMessage()] relayPersistence=${S} context=${e.state.context} on 'message' ${t} keysExchanged=${null===(o=e.state.keyExchange)||void 0===o?void 0:o.areKeysExchanged()}`,n),C)throw ua.SocketService(`\n [SocketService handleMessage()] context=${e.state.context}::on 'message' error=${C}`),new Error(C);const k="string"==typeof _;if(!k&&(null==_?void 0:_.type)===xa.KEY_HANDSHAKE_START){if(S)return;return ua.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received HANDSHAKE_START isOriginator=${e.state.isOriginator}`,_),void(null===(i=e.state.keyExchange)||void 0===i||i.start({isOriginator:null!==(s=e.state.isOriginator)&&void 0!==s&&s,force:!0}))}if(!k&&(null===(a=null==_?void 0:_.type)||void 0===a?void 0:a.startsWith("key_handshake"))){if(S)return;return ua.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' emit KEY_EXCHANGE`,_),void e.emit(ka.KEY_EXCHANGE,{message:_,context:e.state.context})}if(k&&!(null===(c=e.state.keyExchange)||void 0===c?void 0:c.areKeysExchanged())){let n=!1;try{ua.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' trying to decrypt message`),null===(l=e.state.keyExchange)||void 0===l||l.decryptMessage(_),n=!0}catch(t){ua.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' error`,t)}if(!n)return e.state.isOriginator?null===(d=e.state.keyExchange)||void 0===d||d.start({isOriginator:null!==(h=e.state.isOriginator)&&void 0!==h&&h}):e.sendMessage({type:xa.KEY_HANDSHAKE_START}).catch((e=>{})),void ua.SocketService(`Message ignored because invalid key exchange status. step=${null===(f=e.state.keyExchange)||void 0===f?void 0:f.getKeyInfo().step}`,null===(p=e.state.keyExchange)||void 0===p?void 0:p.getKeyInfo(),_);ua.SocketService("Invalid key exchange status detected --- updating it."),null===(u=e.state.keyExchange)||void 0===u||u.setKeysExchanged(!0)}else if(!k&&(null==_?void 0:_.type))return void e.emit(Sa.MESSAGE,_);if(!k)return void e.emit(Sa.MESSAGE,_);const x=null===(g=e.state.keyExchange)||void 0===g?void 0:g.decryptMessage(_),A=JSON.parse(null!=x?x:"{}");if(E&&(null==E?void 0:E.length)>0&&(ua.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' ackid=${E} channelId=${t}`),null===(m=e.state.socket)||void 0===m||m.emit(Sa.MESSAGE_ACK,{ackId:E,channelId:t,clientType:e.state.isOriginator?"dapp":"wallet"})),e.state.clientsPaused=(null==A?void 0:A.type)===Aa.PAUSE,e.state.isOriginator&&A.data){const t=A.data,n=e.state.rpcMethodTracker[t.id];if(n){const r=Date.now()-n.timestamp;ua.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received answer for id=${t.id} method=${n.method} responseTime=${r}`,A),e.remote.state.analytics&&Da.includes(n.method.toLowerCase())&&pa(Object.assign(Object.assign({id:null!==(y=e.remote.state.channelId)&&void 0!==y?y:"",event:Ma.SDK_RPC_REQUEST_DONE,sdkVersion:e.remote.state.sdkVersion,commLayerVersion:ma.version},e.remote.state.originatorInfo),{walletVersion:null===(v=e.remote.state.walletInfo)||void 0===v?void 0:v.version,params:{method:n.method,from:"mobile"}}),e.remote.state.communicationServerUrl).catch((e=>{}));const o=Object.assign(Object.assign({},n),{result:t.result,error:t.error?{code:null===(b=t.error)||void 0===b?void 0:b.code,message:null===(w=t.error)||void 0===w?void 0:w.message}:void 0,elapsedTime:r});e.state.rpcMethodTracker[t.id]=o,e.emit(Sa.RPC_UPDATE,o)}}e.emit(Sa.MESSAGE,{message:A})}}},{event:Sa.REJECTED,handler:function(e,t){return n=>ht(this,void 0,void 0,(function*(){var n;e.state.isOriginator&&!e.remote.state.ready?(ua.SocketService(`[SocketService: handleChannelRejected()] context=${e.state.context} channelId=${t} isOriginator=${e.state.isOriginator} ready=${e.remote.state.ready}`,e.remote.state.originatorInfo),pa(Object.assign(Object.assign({id:t,event:Ma.REJECTED},e.remote.state.originatorInfo),{sdkVersion:e.remote.state.sdkVersion,commLayer:e.state.communicationLayerPreference,commLayerVersion:ma.version,walletVersion:null===(n=e.remote.state.walletInfo)||void 0===n?void 0:n.version}),e.remote.state.communicationServerUrl).catch((e=>{})),yield e.remote.disconnect({terminate:!0}),e.remote.emit(Sa.REJECTED,{channelId:t}),e.remote.setConnectionStatus(Ca.DISCONNECTED)):ua.SocketService(`[SocketService: handleChannelRejected()] SKIP -- channelId=${t} isOriginator=${e.state.isOriginator} ready=${e.remote.state.ready}`)}))}},{event:"clients_waiting_to_join",handler:function(e,t){return n=>{ua.SocketService(`[SocketService: handleClientsWaitingToJoin()] context=${e.state.context} on 'clients_waiting_to_join-${t}'`,n),e.emit(Sa.CLIENTS_WAITING,n)}}}],ja=[{event:Sa.KEY_INFO,handler:function(e){return t=>{ua.SocketService("[SocketService: handleKeyInfo()] on 'KEY_INFO'",t),e.emit(Sa.KEY_INFO,t)}}},{event:Sa.KEYS_EXCHANGED,handler:function(e){return()=>{var t,n,r;ua.SocketService(`[SocketService: handleKeysExchanged()] on 'keys_exchanged' keyschanged=${null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged()}`);const{channelConfig:o}=e.remote.state;if(o){const t=e.getKeyExchange().getKeyInfo().ecies;o.localKey=t.private,o.otherKey=t.otherPubKey,e.remote.state.channelConfig=o,null===(n=e.remote.state.storageManager)||void 0===n||n.persistChannelConfig(o).catch((e=>{}))}e.emit(Sa.KEYS_EXCHANGED,{keysExchanged:null===(r=e.state.keyExchange)||void 0===r?void 0:r.areKeysExchanged(),isOriginator:e.state.isOriginator});const i={keyInfo:e.getKeyInfo()};e.emit(Sa.SERVICE_STATUS,i)}}}];function Ua(e,t){ua.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} setting socket listeners for channel ${t}...`);const{socket:n}=e.state,{keyExchange:r}=e.state;n&&e.state.isOriginator&&(e.state.debug&&(null==n||n.io.on("error",(t=>{ua.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=error`,t)})),null==n||n.io.on("reconnect",(t=>{ua.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect`,t),Pa(e).catch((e=>{}))})),null==n||n.io.on("reconnect_error",(t=>{ua.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_error`,t)})),null==n||n.io.on("reconnect_failed",(()=>{ua.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_failed`)}))),null==n||n.on("disconnect",(t=>(ua.SocketService(`[SocketService: setupChannelListener()] on 'disconnect' -- MetaMaskSDK socket disconnected '${t}' begin recovery...`),function(e){return t=>{ua.SocketService(`[SocketService: handleDisconnect()] on 'disconnect' manualDisconnect=${e.state.manualDisconnect}`,t),e.state.manualDisconnect||(e.emit(Sa.SOCKET_DISCONNECTED),Pa(e).catch((e=>{})))}}(e)(t))))),$a.forEach((({event:r,handler:o})=>{null==n||n.on(`${r}-${t}`,o(e,t))})),ja.forEach((({event:t,handler:n})=>{null==r||r.on(t,n(e))})),e.state.setupChannelListeners=!0}class Fa extends l.EventEmitter2{constructor(e){super(),this.state={clientsConnected:!1,clientsPaused:!1,manualDisconnect:!1,lastRpcId:void 0,rpcMethodTracker:{},hasPlaintext:!1,communicationServerUrl:"",focusListenerAdded:!1,removeFocusListener:void 0,isReconnecting:!1,reconnectionAttempts:0},this.options=e;const{reconnect:t,communicationLayerPreference:n,communicationServerUrl:r,context:o,remote:i,logging:s}=e;this.state.resumed=t,this.state.context=o,this.state.isOriginator=i.state.isOriginator,this.state.communicationLayerPreference=n,this.state.debug=!0===(null==s?void 0:s.serviceLayer),this.remote=i,!0===(null==s?void 0:s.serviceLayer)&&c().enable("SocketService:Layer"),this.state.communicationServerUrl=r,this.state.hasPlaintext=this.state.communicationServerUrl!==ya&&!0===(null==s?void 0:s.plaintext),ua.SocketService(`[SocketService: constructor()] Socket IO url: ${this.state.communicationServerUrl}`),this.initSocket()}initSocket(){var e;const{otherPublicKey:t,ecies:n,logging:r}=this.options,o={autoConnect:!1,transports:va,withCredentials:!0},i=this.state.communicationServerUrl;ua.SocketService(`[SocketService: initSocket()] Socket IO url: ${i}`),this.state.socket=dt(i,o),function(e){if("undefined"!=typeof window&&"undefined"!=typeof document&&(ua.SocketService(`[SocketService: setupSocketFocusListener()] hasFocus=${document.hasFocus()}`,e),!e.state.focusListenerAdded)){const t=()=>{ua.SocketService("Document has focus --- reconnecting socket"),Pa(e).catch((e=>{}))};window.addEventListener("focus",t),e.state.focusListenerAdded=!0,e.state.removeFocusListener=()=>{window.removeEventListener("focus",t),e.state.focusListenerAdded=!1}}}(this);const s={communicationLayer:this,otherPublicKey:t,sendPublicKey:!1,context:null!==(e=this.state.context)&&void 0!==e?e:"",ecies:n,logging:r};this.state.keyExchange=new Ta(s)}resetKeys(){return ua.SocketService("[SocketService: resetKeys()] Resetting keys."),void(null===(e=this.state.keyExchange)||void 0===e||e.resetKeys());var e}createChannel(){return ht(this,void 0,void 0,(function*(){return function(e){return ht(this,void 0,void 0,(function*(){var t,n,r;if(ua.SocketService(`[SocketService: createChannel()] context=${e.state.context}`),e.state.socket||e.initSocket(),null===(t=e.state.socket)||void 0===t?void 0:t.connected)throw new Error("socket already connected");null===(n=e.state.socket)||void 0===n||n.connect(),e.state.manualDisconnect=!1,e.state.isOriginator=!0;const o=E();e.state.channelId=o,Ua(e,o),yield new Promise(((t,n)=>{var r;null===(r=e.state.socket)||void 0===r||r.emit(Sa.JOIN_CHANNEL,{channelId:o,context:`${e.state.context}createChannel`,clientType:"dapp"},((r,o)=>ht(this,void 0,void 0,(function*(){try{yield Oa(e,r,o),t()}catch(e){n(e)}}))))}));const i=null===(r=e.state.keyExchange)||void 0===r?void 0:r.getKeyInfo();return{channelId:o,pubKey:(null==i?void 0:i.ecies.public)||"",privKey:(null==i?void 0:i.ecies.private)||""}}))}(this)}))}connectToChannel({channelId:e,withKeyExchange:t=!1,authorized:n}){return function(e){return ht(this,arguments,void 0,(function*({options:e,instance:t}){const{channelId:n,authorized:r,withKeyExchange:o}=e,{state:i,remote:s}=t,{isOriginator:a=!1,socket:c,keyExchange:l}=i,{channelConfig:u}=s.state;if(null==c?void 0:c.connected)throw new Error("socket already connected");if(a&&(null==u?void 0:u.relayPersistence)){const{localKey:e,otherKey:t}=u;e&&t&&(null==l||l.setRelayPersistence({localKey:e,otherKey:t}))}return Object.assign(i,{manualDisconnect:!1,withKeyExchange:o,isOriginator:a,channelId:n}),null==c||c.connect(),Ua(t,n),!a&&r&&(null==l||l.setKeysExchanged(!0),Object.assign(s.state,{ready:!0,authorized:!0})),new Promise((e=>{var o;const s=null===(o=null==l?void 0:l.getKeyInfo())||void 0===o?void 0:o.ecies.public;null==c||c.emit(Sa.JOIN_CHANNEL,{channelId:n,context:`${i.context}_connectToChannel`,clientType:a?"dapp":"wallet",publicKey:r&&!a?s:void 0},((n,r)=>ht(this,void 0,void 0,(function*(){yield Oa(t,n,r),e()}))))}))}))}({options:{channelId:e,withKeyExchange:t,authorized:n},instance:this})}getKeyInfo(){return this.state.keyExchange.getKeyInfo()}keyCheck(){var e,t;null===(t=(e=this).state.socket)||void 0===t||t.emit(Sa.MESSAGE,{id:e.state.channelId,context:e.state.context,message:{type:xa.KEY_HANDSHAKE_CHECK,pubkey:e.getKeyInfo().ecies.otherPubKey}})}getKeyExchange(){return this.state.keyExchange}sendMessage(e){return ht(this,void 0,void 0,(function*(){return function(e,t){return ht(this,void 0,void 0,(function*(){var n,r,o;if(!e.state.channelId)throw ua.SocketService("handleSendMessage: no channelId - Create a channel first"),new Error("Create a channel first");if(ua.SocketService(`[SocketService: handleSendMessage()] context=${e.state.context} areKeysExchanged=${null===(n=e.state.keyExchange)||void 0===n?void 0:n.areKeysExchanged()}`,t),null===(r=null==t?void 0:t.type)||void 0===r?void 0:r.startsWith("key_handshake"))return function(e,t){var n;ua.SocketService(`[SocketService: handleKeyHandshake()] context=${e.state.context}`,t),null===(n=e.state.socket)||void 0===n||n.emit(Sa.MESSAGE,{id:e.state.channelId,context:e.state.context,clientType:e.state.isOriginator?"dapp":"wallet",message:t})}(e,t),!0;!function(e,t){var n;if(!(null===(n=e.state.keyExchange)||void 0===n?void 0:n.areKeysExchanged())&&!e.remote.state.relayPersistence)throw ua.SocketService(`[SocketService: validateKeyExchange()] context=${e.state.context} ERROR keys not exchanged`,t),new Error("Keys not exchanged BBB")}(e,t),function(e,t){var n;const r=null!==(n=null==t?void 0:t.method)&&void 0!==n?n:"",o=null==t?void 0:t.id;e.state.isOriginator&&o&&(e.state.rpcMethodTracker[o]={id:o,timestamp:Date.now(),method:r},e.emit(Sa.RPC_UPDATE,e.state.rpcMethodTracker[o]))}(e,t);const i=yield Na(e,t);return e.remote.state.analytics&&e.remote.state.isOriginator&&t.method&&Da.includes(t.method.toLowerCase())&&pa({id:null!==(o=e.remote.state.channelId)&&void 0!==o?o:"",event:Ma.SDK_RPC_REQUEST,params:{method:t.method,from:"mobile"}},e.remote.state.communicationServerUrl).catch((e=>{})),function(e,t){return ht(this,void 0,void 0,(function*(){var n;const r=null==t?void 0:t.id,o=null!==(n=null==t?void 0:t.method)&&void 0!==n?n:"";if(e.state.isOriginator&&r)try{const n=La(r,e.state.rpcMethodTracker,200).then((e=>({type:Ba.RPC_CHECK,result:e}))),i=(()=>ht(this,void 0,void 0,(function*(){const t=yield(e=>ht(void 0,[e],void 0,(function*({rpcId:e,instance:t}){for(;t.state.lastRpcId===e||void 0===t.state.lastRpcId;)yield Ia(200);return t.state.lastRpcId})))({instance:e,rpcId:r}),n=yield La(t,e.state.rpcMethodTracker,200);return{type:Ba.SKIPPED_RPC,result:n}})))(),s=yield Promise.race([n,i]);if(s.type===Ba.RPC_CHECK){const e=s.result;ua.SocketService(`[SocketService:handleRpcReplies()] id=${t.id} ${o} ( ${e.elapsedTime} ms)`,e.result)}else{if(s.type!==Ba.SKIPPED_RPC)throw new Error(`Error handling RPC replies for ${r}`);{const t=Object.assign(Object.assign({},e.state.rpcMethodTracker[r]),{error:new Error("SDK_CONNECTION_ISSUE")});e.emit(Sa.RPC_UPDATE,t);const n={data:Object.assign(Object.assign({},t),{jsonrpc:"2.0"}),name:"metamask-provider"};e.emit(Sa.MESSAGE,{message:n})}}}catch(e){throw e}}))}(e,t).catch((e=>{})),i}))}(this,e)}))}ping(){return function(e){return ht(this,void 0,void 0,(function*(){var t,n;ua.SocketService(`[SocketService: ping()] context=${e.state.context} originator=${e.state.isOriginator} keysExchanged=${null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged()}`),null===(n=e.state.socket)||void 0===n||n.emit(Aa.PING,{id:e.state.channelId,context:"ping",clientType:e.remote.state.isOriginator?"dapp":"wallet",message:""})}))}(this)}pause(){return function(e){return ht(this,void 0,void 0,(function*(){var t,n;ua.SocketService(`[SocketService: pause()] context=${e.state.context}`),e.state.manualDisconnect=!0,(null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged())&&(yield e.sendMessage({type:Aa.PAUSE})),null===(n=e.state.socket)||void 0===n||n.disconnect()}))}(this)}isConnected(){var e;return null===(e=this.state.socket)||void 0===e?void 0:e.connected}resume(){return function(e){return ht(this,void 0,void 0,(function*(){const{state:t,remote:n}=e,{socket:r,channelId:o,context:i,keyExchange:s,isOriginator:a}=t,{isOriginator:c}=n.state;if(ua.SocketService(`[SocketService: resume()] channelId=${o} context=${i} connected=${null==r?void 0:r.connected} manualDisconnect=${t.manualDisconnect} resumed=${t.resumed} keysExchanged=${null==s?void 0:s.areKeysExchanged()}`),!o)throw ua.SocketService("[SocketService: resume()] channelId is not defined"),new Error("ChannelId is not defined");(null==r?void 0:r.connected)?(ua.SocketService("[SocketService: resume()] already connected."),r.emit(Aa.PING,{id:o,clientType:c?"dapp":"wallet",context:"on_channel_config",message:""}),n.hasRelayPersistence()||(null==s?void 0:s.areKeysExchanged())||(a?yield e.sendMessage({type:Aa.READY}):null==s||s.start({isOriginator:!1}))):(null==r||r.connect(),ua.SocketService(`[SocketService: resume()] after connecting socket --\x3e connected=${null==r?void 0:r.connected}`),null==r||r.emit(Sa.JOIN_CHANNEL,{channelId:o,context:`${i}_resume`,clientType:c?"dapp":"wallet"},((t,n)=>ht(this,void 0,void 0,(function*(){try{yield Oa(e,t,n)}catch(e){}}))))),t.manualDisconnect=!1,t.resumed=!0}))}(this)}getRPCMethodTracker(){return this.state.rpcMethodTracker}disconnect(e){return function(e,t){var n,r,o,i,s;ua.SocketService(`[SocketService: disconnect()] context=${e.state.context}`,t),(null==t?void 0:t.terminate)&&(null===(r=(n=e.state).removeFocusListener)||void 0===r||r.call(n),e.state.channelId=t.channelId,null===(o=e.state.socket)||void 0===o||o.removeAllListeners(),null===(i=e.state.keyExchange)||void 0===i||i.clean(),e.remote.state.ready=!1,e.state.socket=void 0,e.state.rpcMethodTracker={}),e.state.manualDisconnect=!0,null===(s=e.state.socket)||void 0===s||s.disconnect()}(this,e)}}var Ka,Ha,za;function qa(e){return()=>ht(this,void 0,void 0,(function*(){var t,n,r;const{state:o}=e;if(o.authorized)return;yield(()=>ht(this,void 0,void 0,(function*(){for(;!o.walletInfo;)yield Ia(500)})))();const i="7.3".localeCompare((null===(t=o.walletInfo)||void 0===t?void 0:t.version)||"");if(ua.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' version=${null===(n=o.walletInfo)||void 0===n?void 0:n.version} compareValue=${i}`),1!==i)return;const s=o.platformType===Ha.MobileWeb||o.platformType===Ha.ReactNative||o.platformType===Ha.MetaMaskMobileWebview;ua.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' platform=${o.platformType} secure=${s} channel=${o.channelId} walletVersion=${null===(r=o.walletInfo)||void 0===r?void 0:r.version}`),s&&(o.authorized=!0,e.emit(Sa.AUTHORIZED))}))}function Va(e){return t=>{const{state:n}=e;ua.RemoteCommunication(`[RemoteCommunication: handleChannelCreatedEvent()] context=${n.context} on 'channel_created' channelId=${t}`),e.emit(Sa.CHANNEL_CREATED,t)}}function Wa(e,t){return()=>{var n,r,o,i;const{state:s}=e;ua.RemoteCommunication(`[RemoteCommunication: handleClientsConnectedEvent()] on 'clients_connected' channel=${s.channelId} keysExchanged=${null===(r=null===(n=s.communicationLayer)||void 0===n?void 0:n.getKeyInfo())||void 0===r?void 0:r.keysExchanged}`),s.analytics&&pa(Object.assign(Object.assign({id:null!==(o=s.channelId)&&void 0!==o?o:"",event:s.reconnection?Ma.RECONNECT:s.isOriginator?Ma.REQUEST:Ma.REQUEST_MOBILE},s.originatorInfo),{commLayer:t,sdkVersion:s.sdkVersion,walletVersion:null===(i=s.walletInfo)||void 0===i?void 0:i.version,commLayerVersion:ma.version}),s.communicationServerUrl).catch((e=>{})),s.clientsConnected=!0,s.originatorInfoSent=!1,e.emit(Sa.CLIENTS_CONNECTED)}}function Ga(e){return t=>{const{state:n}=e;ua.RemoteCommunication(`[RemoteCommunication: handleClientsDisconnectedEvent()] context=${n.context} on 'clients_disconnected' channelId=${t}`),n.relayPersistence||(n.clientsConnected=!1,n.ready=!1,n.authorized=!1),e.emit(Sa.CLIENTS_DISCONNECTED,n.channelId),e.setConnectionStatus(Ca.DISCONNECTED)}}function Ya(e){return t=>{var n;const{state:r}=e;if(ua.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] context=${r.context} on 'clients_waiting' numberUsers=${t} ready=${r.ready} autoStarted=${r.originatorConnectStarted}`),e.setConnectionStatus(Ca.WAITING),e.emit(Sa.CLIENTS_WAITING,t),r.originatorConnectStarted){ua.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] on 'clients_waiting' watch autoStarted=${r.originatorConnectStarted} timeout`,r.autoConnectOptions);const t=(null===(n=r.autoConnectOptions)||void 0===n?void 0:n.timeout)||3e3,o=setTimeout((()=>{ua.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] setTimeout(${t}) terminate channelConfig`,r.autoConnectOptions),r.originatorConnectStarted=!1,r.ready||e.setConnectionStatus(Ca.TIMEOUT),clearTimeout(o)}),t)}}}function Za(e,t){return n=>{var r,o,i,s,a,c,l,u;const{state:d}=e;if(ua.RemoteCommunication(`[RemoteCommunication: handleKeysExchangedEvent()] context=${d.context} on commLayer.'keys_exchanged' channel=${d.channelId}`,n),null===(o=null===(r=d.communicationLayer)||void 0===r?void 0:r.getKeyInfo())||void 0===o?void 0:o.keysExchanged){const t=Object.assign(Object.assign({},d.channelConfig),{channelId:null!==(i=d.channelId)&&void 0!==i?i:"",validUntil:(null===(s=d.channelConfig)||void 0===s?void 0:s.validUntil)||ba,localKey:d.communicationLayer.getKeyInfo().ecies.private,otherKey:d.communicationLayer.getKeyInfo().ecies.otherPubKey});null===(a=d.storageManager)||void 0===a||a.persistChannelConfig(t).catch((e=>{})),e.setConnectionStatus(Ca.LINKED)}!function(e,t){var n,r,o,i,s,a,c,l;const{state:u}=e;ua.RemoteCommunication(`[RemoteCommunication: setLastActiveDate()] channel=${u.channelId}`,t);const d=Object.assign(Object.assign({},u.channelConfig),{channelId:null!==(n=u.channelId)&&void 0!==n?n:"",validUntil:null!==(o=null===(r=u.channelConfig)||void 0===r?void 0:r.validUntil)&&void 0!==o?o:0,relayPersistence:u.relayPersistence,localKey:null===(s=null===(i=u.communicationLayer)||void 0===i?void 0:i.state.keyExchange)||void 0===s?void 0:s.getKeyInfo().ecies.private,otherKey:null===(c=null===(a=u.communicationLayer)||void 0===a?void 0:a.state.keyExchange)||void 0===c?void 0:c.getKeyInfo().ecies.otherPubKey,lastActive:t.getTime()});null===(l=u.storageManager)||void 0===l||l.persistChannelConfig(d)}(e,new Date),d.analytics&&d.channelId&&pa(Object.assign(Object.assign({id:d.channelId,event:n.isOriginator?Ma.CONNECTED:Ma.CONNECTED_MOBILE},d.originatorInfo),{sdkVersion:d.sdkVersion,commLayer:t,commLayerVersion:ma.version,walletVersion:null===(c=d.walletInfo)||void 0===c?void 0:c.version}),d.communicationServerUrl).catch((e=>{})),d.isOriginator=n.isOriginator,n.isOriginator||(null===(l=d.communicationLayer)||void 0===l||l.sendMessage({type:Aa.READY}),d.ready=!0,d.paused=!1),n.isOriginator&&!d.originatorInfoSent&&(null===(u=d.communicationLayer)||void 0===u||u.sendMessage({type:Aa.ORIGINATOR_INFO,originatorInfo:d.originatorInfo,originator:d.originatorInfo}),d.originatorInfoSent=!0)}}function Ja(e){return t=>{let n=t;t.message&&(n=n.message),function(e,t){const{state:n}=t;if(ua.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] context=${n.context} on 'message' typeof=${typeof e}`,e),t.state.ready=!0,n.isOriginator||e.type!==Aa.ORIGINATOR_INFO)if(n.isOriginator&&e.type===Aa.WALLET_INFO)!function(e,t){const{state:n}=e;n.walletInfo=t.walletInfo,n.paused=!1}(t,e);else{if(n.isOriginator&&e.type===Aa.WALLET_INIT)(function(e,t){return ht(this,void 0,void 0,(function*(){var n,r,o;const{state:i}=e;if(i.isOriginator){const i=t.data||{};if("object"==typeof i&&"accounts"in i&&"chainId"in i&&"walletKey"in i)try{const{channelConfig:t}=e.state;if(ua.RemoteCommunication("WALLET_INIT: channelConfig",JSON.stringify(t,null,2)),t){const s=i.accounts,a=i.chainId,c=i.walletKey;let l,u=!1;"deeplinkProtocol"in i&&(u=Boolean(i.deeplinkProtocol),e.state.deeplinkProtocolAvailable=u),"walletVersion"in i&&(l=i.walletVersion),yield null===(n=e.state.storageManager)||void 0===n?void 0:n.persistChannelConfig(Object.assign(Object.assign({},t),{otherKey:c,walletVersion:l,deeplinkProtocolAvailable:u,relayPersistence:!0})),yield null===(r=e.state.storageManager)||void 0===r?void 0:r.persistAccounts(s),yield null===(o=e.state.storageManager)||void 0===o?void 0:o.persistChainId(a)}e.emit(Sa.WALLET_INIT,{accounts:i.accounts,chainId:i.chainId})}catch(n){}}}))})(t,e).catch((e=>{ua.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${e}`)}));else if(e.type===Aa.TERMINATE)(function(e){return ht(this,void 0,void 0,(function*(){const{state:t}=e;t.isOriginator&&(yield nc({options:{terminate:!0,sendMessage:!1},instance:e}),e.emit(Sa.TERMINATE))}))})(t).catch((e=>{ua.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${e}`)}));else if(e.type===Aa.PAUSE)!function(e){const{state:t}=e;t.paused=!0,e.setConnectionStatus(Ca.PAUSED)}(t);else if(e.type===Aa.READY&&n.isOriginator)!function(e){const{state:t}=e;e.setConnectionStatus(Ca.LINKED);const n=t.paused;t.paused=!1,e.emit(Sa.CLIENTS_READY,{isOriginator:t.isOriginator,walletInfo:t.walletInfo}),n&&(t.authorized=!0,e.emit(Sa.AUTHORIZED))}(t);else{if(e.type===Aa.OTP&&n.isOriginator)return void function(e,t){var n;const{state:r}=e;e.emit(Sa.OTP,t.otpAnswer),1==="6.6".localeCompare((null===(n=r.walletInfo)||void 0===n?void 0:n.version)||"")&&e.emit(Sa.SDK_RPC_CALL,{method:Ea.ETH_REQUESTACCOUNTS,params:[]})}(t,e);e.type===Aa.AUTHORIZED&&n.isOriginator&&function(e){const{state:t}=e;t.authorized=!0,e.emit(Sa.AUTHORIZED)}(t)}t.emit(Sa.MESSAGE,e)}else!function(e,t){var n;const{state:r}=e;null===(n=r.communicationLayer)||void 0===n||n.sendMessage({type:Aa.WALLET_INFO,walletInfo:r.walletInfo}),r.originatorInfo=t.originatorInfo||t.originator,e.emit(Sa.CLIENTS_READY,{isOriginator:r.isOriginator,originatorInfo:r.originatorInfo}),r.paused=!1}(t,e)}(n,e)}}function Xa(e){return()=>{const{state:t}=e;ua.RemoteCommunication("[RemoteCommunication: handleSocketReconnectEvent()] on 'socket_reconnect' -- reset key exchange status / set ready to false"),t.ready=!1,t.authorized=!1,_a(t),e.emitServiceStatusEvent({context:"socket_reconnect"})}}function Qa(e){return()=>{const{state:t}=e;ua.RemoteCommunication("[RemoteCommunication: handleSocketDisconnectedEvent()] on 'socket_Disconnected' set ready to false"),t.ready=!1}}function ec(e){return()=>ht(this,void 0,void 0,(function*(){var t,n,r,o,i,s,a;const{state:c}=e;ua.RemoteCommunication(`[RemoteCommunication: handleFullPersistenceEvent()] context=${c.context}`),e.state.ready=!0,e.state.clientsConnected=!0,e.state.authorized=!0,e.state.relayPersistence=!0,null===(t=e.state.communicationLayer)||void 0===t||t.getKeyExchange().setKeysExchanged(!0),e.emit(Sa.KEYS_EXCHANGED,{keysExchanged:!0,isOriginator:!0}),e.emit(Sa.AUTHORIZED),e.emit(Sa.CLIENTS_READY),e.emit(Sa.CHANNEL_PERSISTENCE);try{c.channelConfig=Object.assign(Object.assign({},c.channelConfig),{localKey:null===(n=c.communicationLayer)||void 0===n?void 0:n.getKeyExchange().getKeyInfo().ecies.private,otherKey:null===(r=c.communicationLayer)||void 0===r?void 0:r.getKeyExchange().getOtherPublicKey(),channelId:null!==(o=c.channelId)&&void 0!==o?o:"",validUntil:null!==(s=null===(i=c.channelConfig)||void 0===i?void 0:i.validUntil)&&void 0!==s?s:ba,relayPersistence:!0}),yield null===(a=c.storageManager)||void 0===a?void 0:a.persistChannelConfig(c.channelConfig)}catch(t){}}))}function tc({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,ecies:r,communicationServerUrl:o=ya,instance:i}){var s,a,c,l,u,d,h,f,p,g,m;const{state:y}=i;if(ua.RemoteCommunication("[initCommunicationLayer()] ",JSON.stringify(y,null,2)),e!==Ka.SOCKET)throw new Error("Invalid communication protocol");y.communicationLayer=new Fa({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,transports:y.transports,communicationServerUrl:o,context:y.context,ecies:r,logging:y.logging,remote:i});let v="undefined"!=typeof document&&document.URL||"",b="undefined"!=typeof document&&document.title||"";(null===(s=y.dappMetadata)||void 0===s?void 0:s.url)&&(v=y.dappMetadata.url),(null===(a=y.dappMetadata)||void 0===a?void 0:a.name)&&(b=y.dappMetadata.name);const w=null!==(d=null!==(l=null===(c=y.dappMetadata)||void 0===c?void 0:c.name)&&void 0!==l?l:null===(u=y.dappMetadata)||void 0===u?void 0:u.url)&&void 0!==d?d:"N/A",E="undefined"!=typeof window&&void 0!==window.location&&null!==(h=window.location.hostname)&&void 0!==h?h:w,_={url:v,title:b,source:null===(f=y.dappMetadata)||void 0===f?void 0:f.source,dappId:E,icon:(null===(p=y.dappMetadata)||void 0===p?void 0:p.iconUrl)||(null===(g=y.dappMetadata)||void 0===g?void 0:g.base64Icon),platform:y.platformType,apiVersion:ma.version,connector:null===(m=y.dappMetadata)||void 0===m?void 0:m.connector};y.originatorInfo=_;const C={[Sa.AUTHORIZED]:qa(i),[Sa.MESSAGE]:Ja(i),[Sa.CHANNEL_PERSISTENCE]:ec(i),[Sa.CLIENTS_CONNECTED]:Wa(i,e),[Sa.KEYS_EXCHANGED]:Za(i,e),[Sa.SOCKET_DISCONNECTED]:Qa(i),[Sa.SOCKET_RECONNECT]:Xa(i),[Sa.CLIENTS_DISCONNECTED]:Ga(i),[Sa.KEY_INFO]:()=>{},[Sa.CHANNEL_CREATED]:Va(i),[Sa.CLIENTS_WAITING]:Ya(i),[Sa.RPC_UPDATE]:e=>{i.emit(Sa.RPC_UPDATE,e)}};for(const[S,k]of Object.entries(C))try{y.communicationLayer.on(S,k)}catch(e){}}function nc(e){return ht(this,arguments,void 0,(function*({options:e,instance:t}){const{state:n}=t;return ua.RemoteCommunication(`[RemoteCommunication: disconnect()] channel=${n.channelId}`,e),new Promise(((r,o)=>{var i,s,a,c,l,u;(null==e?void 0:e.terminate)?(t.state.ready&&pa({id:null!==(i=t.state.channelId)&&void 0!==i?i:"",event:Ma.TERMINATED},t.state.communicationServerUrl).catch((e=>{})),n.ready=!1,n.paused=!1,null===(s=n.storageManager)||void 0===s||s.terminate(null!==(a=n.channelId)&&void 0!==a?a:""),t.state.terminated=!0,e.sendMessage?(null===(c=n.communicationLayer)||void 0===c?void 0:c.getKeyInfo().keysExchanged)&&t.state.communicationLayer&&Na(t.state.communicationLayer,{type:Aa.TERMINATE}).then((()=>{r(!0)})).catch((e=>{o(e)})):r(!0),n.authorized=!1,n.relayPersistence=!1,n.channelId=E(),e.channelId=n.channelId,n.channelConfig=void 0,n.originatorConnectStarted=!1,null===(l=n.communicationLayer)||void 0===l||l.disconnect(e),t.setConnectionStatus(Ca.TERMINATED)):(null===(u=n.communicationLayer)||void 0===u||u.disconnect(e),t.setConnectionStatus(Ca.DISCONNECTED),r(!0))}))}))}(Ka||(Ka={})).SOCKET="socket",function(e){e.NonBrowser="nodejs",e.MetaMaskMobileWebview="in-app-browser",e.DesktopWeb="web-desktop",e.MobileWeb="web-mobile",e.ReactNative="react-native"}(Ha||(Ha={}));class rc extends l.EventEmitter2{constructor(e){super(),this.state={ready:!1,authorized:!1,isOriginator:!1,terminated:!1,protocolVersion:1,paused:!1,deeplinkProtocolAvailable:!1,platformType:"metamask-mobile",analytics:!1,reconnection:!1,originatorInfoSent:!1,communicationServerUrl:ya,context:"",persist:!1,clientsConnected:!1,sessionDuration:ba,originatorConnectStarted:!1,debug:!1,_connectionStatus:Ca.DISCONNECTED},this._options=e;const{platformType:t,communicationLayerPreference:n,otherPublicKey:r,reconnect:o,walletInfo:i,dappMetadata:s,protocolVersion:a,transports:l,context:u,relayPersistence:d,ecies:h,analytics:f=!1,storage:p,sdkVersion:g,communicationServerUrl:m=ya,logging:y,autoConnect:v={timeout:wa}}=e;this.state.otherPublicKey=r,this.state.dappMetadata=s,this.state.walletInfo=i,this.state.transports=l,this.state.platformType=t,this.state.analytics=f,this.state.protocolVersion=null!=a?a:1,this.state.isOriginator=!r,this.state.relayPersistence=d,this.state.communicationServerUrl=m,this.state.context=u,this.state.terminated=!1,this.state.sdkVersion=g,this.setMaxListeners(50),this.setConnectionStatus(Ca.DISCONNECTED),(null==p?void 0:p.duration)&&(this.state.sessionDuration=ba),this.state.storageOptions=p,this.state.autoConnectOptions=v,this.state.debug=!0===(null==y?void 0:y.remoteLayer),!0===(null==y?void 0:y.remoteLayer)&&c().enable("RemoteCommunication:Layer"),!0===(null==y?void 0:y.serviceLayer)&&c().enable("SocketService:Layer"),!0===(null==y?void 0:y.eciesLayer)&&c().enable("ECIES:Layer"),!0===(null==y?void 0:y.keyExchangeLayer)&&c().enable("KeyExchange:Layer"),this.state.logging=y,(null==p?void 0:p.storageManager)&&(this.state.storageManager=p.storageManager),ua.RemoteCommunication(`[RemoteCommunication: constructor()] protocolVersion=${a} relayPersistence=${d} isOriginator=${this.state.isOriginator} communicationLayerPreference=${n} otherPublicKey=${r} reconnect=${o}`),this.state.isOriginator||tc({communicationLayerPreference:n,otherPublicKey:r,reconnect:o,ecies:h,communicationServerUrl:m,instance:this}),this.emitServiceStatusEvent({context:"constructor"})}initFromDappStorage(){return ht(this,void 0,void 0,(function*(){var e;if(this.state.storageManager){const t=yield this.state.storageManager.getPersistedChannelConfig({});t&&(this.state.channelConfig=t,this.state.channelId=t.channelId,this.state.deeplinkProtocolAvailable=null!==(e=t.deeplinkProtocolAvailable)&&void 0!==e&&e,t.relayPersistence&&(this.state.authorized=!0,this.state.ready=!0,this.setConnectionStatus(Ca.LINKED),yield this.connectToChannel({channelId:t.channelId})))}tc({communicationLayerPreference:Ka.SOCKET,otherPublicKey:this.state.otherPublicKey,reconnect:this._options.reconnect,ecies:this._options.ecies,communicationServerUrl:this.state.communicationServerUrl,instance:this})}))}originatorSessionConnect(){return ht(this,void 0,void 0,(function*(){return yield function(e){return ht(this,void 0,void 0,(function*(){var t;const{state:n}=e;if(!n.storageManager)return void ua.RemoteCommunication("[RemoteCommunication: originatorSessionConnect()] no storage manager defined - skip");const r=yield n.storageManager.getPersistedChannelConfig({});if(ua.RemoteCommunication(`[RemoteCommunication: originatorSessionConnect()] autoStarted=${n.originatorConnectStarted} channelConfig`,r),null===(t=n.communicationLayer)||void 0===t?void 0:t.isConnected())return ua.RemoteCommunication("[RemoteCommunication: originatorSessionConnect()] socket already connected - skip"),r;if(r){if(r.validUntil>Date.now())return n.channelConfig=r,n.originatorConnectStarted=!0,n.channelId=null==r?void 0:r.channelId,n.reconnection=!0,r;ua.RemoteCommunication("[RemoteCommunication: autoConnect()] Session has expired")}n.originatorConnectStarted=!1}))}(this)}))}generateChannelIdConnect(){return ht(this,void 0,void 0,(function*(){return function(e){return ht(this,void 0,void 0,(function*(){var t,n,r,o,i,s;if(!e.communicationLayer)throw new Error("communication layer not initialized");if(e.ready)throw new Error("Channel already connected");if(e.channelId&&(null===(t=e.communicationLayer)||void 0===t?void 0:t.isConnected()))return e.channelConfig=Object.assign(Object.assign({},e.channelConfig),{channelId:e.channelId,validUntil:Date.now()+e.sessionDuration}),null===(n=e.storageManager)||void 0===n||n.persistChannelConfig(e.channelConfig),{channelId:e.channelId,privKey:null===(o=null===(r=e.communicationLayer)||void 0===r?void 0:r.getKeyInfo())||void 0===o?void 0:o.ecies.private,pubKey:null===(s=null===(i=e.communicationLayer)||void 0===i?void 0:i.getKeyInfo())||void 0===s?void 0:s.ecies.public};ua.RemoteCommunication("[RemoteCommunication: generateChannelId()]");const a=yield e.communicationLayer.createChannel();ua.RemoteCommunication("[RemoteCommunication: generateChannelId()] channel created",a);const c=Object.assign(Object.assign({},e.channelConfig),{channelId:a.channelId,localKey:a.privKey,validUntil:Date.now()+e.sessionDuration});return e.channelId=a.channelId,e.channelConfig=c,{channelId:e.channelId,pubKey:a.pubKey,privKey:a.privKey}}))}(this.state)}))}clean(){return _a(this.state)}connectToChannel({channelId:e,withKeyExchange:t,authorized:n}){return function(e){return ht(this,arguments,void 0,(function*({channelId:e,withKeyExchange:t,authorized:n,state:r}){var o,i,s;if(!g(e))throw ua.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${r.context} invalid channel channelId=${e}`),new Error(`Invalid channel ${e}`);if(ua.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${r.context} channelId=${e} withKeyExchange=${t}`),null===(o=r.communicationLayer)||void 0===o?void 0:o.isConnected())return void ua.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${r.context} already connected - interrupt connection.`);r.channelId=e,yield null===(i=r.communicationLayer)||void 0===i?void 0:i.connectToChannel({channelId:e,authorized:n,withKeyExchange:t});const a=Object.assign(Object.assign({},r.channelConfig),{channelId:e,validUntil:Date.now()+r.sessionDuration});r.channelConfig=a,null===(s=r.storageManager)||void 0===s||s.persistChannelConfig(a)}))}({channelId:e,authorized:n,withKeyExchange:t,state:this.state})}sendMessage(e){return function(e,t){return ht(this,void 0,void 0,(function*(){var n,r;const{state:o}=e;ua.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${o.context} paused=${o.paused} ready=${o.ready} relayPersistence=${o.relayPersistence} authorized=${o.authorized} socket=${null===(n=o.communicationLayer)||void 0===n?void 0:n.isConnected()} clientsConnected=${o.clientsConnected} status=${o._connectionStatus}`,t),o.relayPersistence||o.ready&&(null===(r=o.communicationLayer)||void 0===r?void 0:r.isConnected())&&o.clientsConnected||(ua.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${o.context} SKIP message waiting for MM mobile readiness.`),yield new Promise((t=>{e.once(Sa.CLIENTS_READY,t)})),ua.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${o.context} AFTER SKIP / READY -- sending pending message`));try{const n=yield function(e,t){return ht(this,void 0,void 0,(function*(){return new Promise((n=>{var r;const{state:o}=e;ua.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${o.context} ready=${o.ready} authorized=${o.authorized} method=${t.method}`),!o.isOriginator||o.authorized||o.relayPersistence?null===(r=o.communicationLayer)||void 0===r||r.sendMessage(t).then((e=>{n(e)})).catch((e=>{n(!1)})):e.once(Sa.AUTHORIZED,(()=>{var e;ua.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${o.context} AFTER SKIP / AUTHORIZED -- sending pending message`),null===(e=o.communicationLayer)||void 0===e||e.sendMessage(t).then((e=>{n(e)})).catch((e=>{n(!1)}))}))}))}))}(e,t);return n}catch(e){throw e}}))}(this,e)}testStorage(){return ht(this,void 0,void 0,(function*(){return function(e){return ht(this,void 0,void 0,(function*(){var t;const n=yield null===(t=e.storageManager)||void 0===t?void 0:t.getPersistedChannelConfig();ua.RemoteCommunication("[RemoteCommunication: testStorage()] res",n)}))}(this.state)}))}hasDeeplinkProtocol(){return this.state.deeplinkProtocolAvailable}getChannelConfig(){return this.state.channelConfig}isReady(){return this.state.ready}isConnected(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.isConnected()}isAuthorized(){return this.state.authorized}isPaused(){return this.state.paused}getCommunicationLayer(){return this.state.communicationLayer}ping(){return ht(this,void 0,void 0,(function*(){var e;ua.RemoteCommunication(`[RemoteCommunication: ping()] channel=${this.state.channelId}`),yield null===(e=this.state.communicationLayer)||void 0===e?void 0:e.ping()}))}testLogger(){ua.RemoteCommunication(`testLogger() channel=${this.state.channelId}`),ua.SocketService(`testLogger() channel=${this.state.channelId}`),ua.Ecies(`testLogger() channel=${this.state.channelId}`),ua.KeyExchange(`testLogger() channel=${this.state.channelId}`)}keyCheck(){var e;ua.RemoteCommunication(`[RemoteCommunication: keyCheck()] channel=${this.state.channelId}`),null===(e=this.state.communicationLayer)||void 0===e||e.keyCheck()}setConnectionStatus(e){this.state._connectionStatus!==e&&(this.state._connectionStatus=e,this.emit(Sa.CONNECTION_STATUS,e),this.emitServiceStatusEvent({context:"setConnectionStatus"}))}emitServiceStatusEvent(e={}){this.emit(Sa.SERVICE_STATUS,this.getServiceStatus())}getConnectionStatus(){return this.state._connectionStatus}getServiceStatus(){return{originatorInfo:this.state.originatorInfo,keyInfo:this.getKeyInfo(),connectionStatus:this.state._connectionStatus,channelConfig:this.state.channelConfig,channelId:this.state.channelId}}getKeyInfo(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.getKeyInfo()}resetKeys(){var e;null===(e=this.state.communicationLayer)||void 0===e||e.resetKeys()}setOtherPublicKey(e){var t;const n=null===(t=this.state.communicationLayer)||void 0===t?void 0:t.getKeyExchange();if(!n)throw new Error("KeyExchange is not initialized.");n.getOtherPublicKey()!==e&&n.setOtherPublicKey(e)}pause(){return ht(this,void 0,void 0,(function*(){var e;ua.RemoteCommunication(`[RemoteCommunication: pause()] channel=${this.state.channelId}`),yield null===(e=this.state.communicationLayer)||void 0===e?void 0:e.pause(),this.setConnectionStatus(Ca.PAUSED)}))}getVersion(){return ma.version}hasRelayPersistence(){var e;return null!==(e=this.state.relayPersistence)&&void 0!==e&&e}resume(){return ht(this,void 0,void 0,(function*(){return function(e){return ht(this,void 0,void 0,(function*(){var t;const{state:n}=e;ua.RemoteCommunication(`[RemoteCommunication: resume()] channel=${n.channelId}`),yield null===(t=n.communicationLayer)||void 0===t?void 0:t.resume(),e.setConnectionStatus(Ca.LINKED)}))}(this)}))}encrypt(e){var t,n,r;const o=null===(t=this.state.communicationLayer)||void 0===t?void 0:t.getKeyExchange(),i=null==o?void 0:o.getOtherPublicKey();if(!i)throw new Error("KeyExchange not completed");return null===(r=null===(n=this.state.communicationLayer)||void 0===n?void 0:n.state.eciesInstance)||void 0===r?void 0:r.encrypt(e,i)}decrypt(e){var t,n,r;if(!(null===(t=this.state.communicationLayer)||void 0===t?void 0:t.state.eciesInstance))throw new Error("ECIES instance is not initialized");return null===(r=null===(n=this.state.communicationLayer)||void 0===n?void 0:n.state.eciesInstance)||void 0===r?void 0:r.decrypt(e)}getChannelId(){return this.state.channelId}getRPCMethodTracker(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.getRPCMethodTracker()}reject({channelId:e}){return function(e){return ht(this,arguments,void 0,(function*({channelId:e,state:t}){var n,r,o;if(!g(e))throw ua.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${t.context} invalid channel channelId=${e}`),new Error(`Invalid channel ${e}`);if(t.isOriginator)return void ua.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} isOriginator=${t.isOriginator} channelId=${e}`);const{socket:i}=null!==(r=null===(n=t.communicationLayer)||void 0===n?void 0:n.state)&&void 0!==r?r:{};(null==i?void 0:i.connected)||(ua.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} socket already connected`),null==i||i.connect()),pa(Object.assign(Object.assign({id:e,event:Ma.REJECTED},t.originatorInfo),{sdkVersion:t.sdkVersion,commLayerVersion:ma.version,walletVersion:null===(o=t.walletInfo)||void 0===o?void 0:o.version}),t.communicationServerUrl).catch((e=>{})),yield new Promise(((n,r)=>{null==i||i.emit(Sa.REJECTED,{channelId:e},((e,o)=>{ua.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} socket=${null==i?void 0:i.id}`,{error:e,response:o}),e?r(e):n(o)}))}))}))}({channelId:e,state:this.state})}disconnect(e){return ht(this,void 0,void 0,(function*(){return nc({options:e,instance:this})}))}}!function(e){e.RENEW="renew",e.LINK="link"}(za||(za={}));var oc="ERC721",ic="ERC1155",sc={errors:{disconnected:()=>"MetaMask: Disconnected from chain. Attempting to connect.",permanentlyDisconnected:()=>"MetaMask: Disconnected from MetaMask background. Page reload required.",sendSiteMetadata:()=>"MetaMask: Failed to send site metadata. This is an internal error, please report this bug.",unsupportedSync:e=>`MetaMask: The MetaMask Ethereum provider does not support synchronous methods like ${e} without a callback parameter.`,invalidDuplexStream:()=>"Must provide a Node.js-style duplex stream.",invalidNetworkParams:()=>"MetaMask: Received invalid network parameters. Please report this bug.",invalidRequestArgs:()=>"Expected a single, non-array, object argument.",invalidRequestMethod:()=>"'args.method' must be a non-empty string.",invalidRequestParams:()=>"'args.params' must be an object or array if provided.",invalidLoggerObject:()=>"'args.logger' must be an object if provided.",invalidLoggerMethod:e=>`'args.logger' must include required method '${e}'.`},info:{connected:e=>`MetaMask: Connected to chain with ID "${e}".`},warnings:{chainIdDeprecation:"MetaMask: 'ethereum.chainId' is deprecated and may be removed in the future. Please use the 'eth_chainId' RPC method instead.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23",networkVersionDeprecation:"MetaMask: 'ethereum.networkVersion' is deprecated and may be removed in the future. Please use the 'net_version' RPC method instead.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23",selectedAddressDeprecation:"MetaMask: 'ethereum.selectedAddress' is deprecated and may be removed in the future. Please use the 'eth_accounts' RPC method instead.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23",enableDeprecation:"MetaMask: 'ethereum.enable()' is deprecated and may be removed in the future. Please use the 'eth_requestAccounts' RPC method instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1102",sendDeprecation:"MetaMask: 'ethereum.send(...)' is deprecated and may be removed in the future. Please use 'ethereum.sendAsync(...)' or 'ethereum.request(...)' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193",events:{close:"MetaMask: The event 'close' is deprecated and may be removed in the future. Please use 'disconnect' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#disconnect",data:"MetaMask: The event 'data' is deprecated and will be removed in the future. Use 'message' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message",networkChanged:"MetaMask: The event 'networkChanged' is deprecated and may be removed in the future. Use 'chainChanged' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#chainchanged",notification:"MetaMask: The event 'notification' is deprecated and may be removed in the future. Use 'message' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message"},rpc:{ethDecryptDeprecation:"MetaMask: The RPC method 'eth_decrypt' is deprecated and may be removed in the future.\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686",ethGetEncryptionPublicKeyDeprecation:"MetaMask: The RPC method 'eth_getEncryptionPublicKey' is deprecated and may be removed in the future.\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686",walletWatchAssetNFTExperimental:"MetaMask: The RPC method 'wallet_watchAsset' is experimental for ERC721/ERC1155 assets and may change in the future.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-1.md and https://github.com/MetaMask/metamask-improvement-proposals/blob/main/PROCESS-GUIDE.md#proposal-lifecycle"},experimentalMethods:"MetaMask: 'ethereum._metamask' exposes non-standard, experimental methods. They may be removed or changed without warning."}};function ac(e){const t={ethDecryptDeprecation:!1,ethGetEncryptionPublicKeyDeprecation:!1,walletWatchAssetNFTExperimental:!1};return(n,r,o)=>{t.ethDecryptDeprecation||"eth_decrypt"!==n.method?t.ethGetEncryptionPublicKeyDeprecation||"eth_getEncryptionPublicKey"!==n.method?!t.walletWatchAssetNFTExperimental&&"wallet_watchAsset"===n.method&&[oc,ic].includes(n.params?.type||"")&&(e.warn(sc.warnings.rpc.walletWatchAssetNFTExperimental),t.walletWatchAssetNFTExperimental=!0):(e.warn(sc.warnings.rpc.ethGetEncryptionPublicKeyDeprecation),t.ethGetEncryptionPublicKeyDeprecation=!0):(e.warn(sc.warnings.rpc.ethDecryptDeprecation),t.ethDecryptDeprecation=!0),o()}}var cc=4294967295,lc=Math.floor(Math.random()*cc);function uc(){return(e,t,n,r)=>{const o=e.id,i=lc=(lc+1)%cc;e.id=i,t.id=i,n((n=>{e.id=o,t.id=o,n()}))}}var dc=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},hc=(e,t,n)=>(dc(e,t,"read from private field"),n?n.call(e):t.get(e)),fc=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},pc=(e,t,n,r)=>(dc(e,t,"write to private field"),t.set(e,n),n),gc=(e,t,n)=>(dc(e,t,"access private method"),n),mc={invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},yc={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}};function vc(e){return Boolean(e)&&"object"==typeof e&&!Array.isArray(e)}var bc=(e,t)=>Object.hasOwnProperty.call(e,t);class wc extends TypeError{constructor(e,t){let n;const{message:r,explanation:o,...i}=e,{path:s}=e,a=0===s.length?r:`At path: ${s.join(".")} -- ${r}`;super(o??a),null!=o&&(this.cause=a),Object.assign(this,i),this.name=this.constructor.name,this.failures=()=>n??(n=[e,...t()])}}function Ec(e){return"object"==typeof e&&null!=e}function _c(e){return"symbol"==typeof e?e.toString():"string"==typeof e?JSON.stringify(e):`${e}`}function Cc(e,t,n,r){if(!0===e)return;!1===e?e={}:"string"==typeof e&&(e={message:e});const{path:o,branch:i}=t,{type:s}=n,{refinement:a,message:c=`Expected a value of type \`${s}\`${a?` with refinement \`${a}\``:""}, but received: \`${_c(r)}\``}=e;return{value:r,type:s,refinement:a,key:o[o.length-1],path:o,branch:i,...e,message:c}}function*Sc(e,t,n,r){(function(e){return Ec(e)&&"function"==typeof e[Symbol.iterator]})(e)||(e=[e]);for(const o of e){const e=Cc(o,t,n,r);e&&(yield e)}}function*kc(e,t,n={}){const{path:r=[],branch:o=[e],coerce:i=!1,mask:s=!1}=n,a={path:r,branch:o};if(i&&(e=t.coercer(e,a),s&&"type"!==t.type&&Ec(t.schema)&&Ec(e)&&!Array.isArray(e)))for(const l in e)void 0===t.schema[l]&&delete e[l];let c="valid";for(const l of t.validator(e,a))l.explanation=n.message,c="not_valid",yield[l,void 0];for(let[l,u,d]of t.entries(e,a)){const t=kc(u,d,{path:void 0===l?r:[...r,l],branch:void 0===l?o:[...o,u],coerce:i,mask:s,message:n.message});for(const n of t)n[0]?(c=null!=n[0].refinement?"not_refined":"not_valid",yield[n[0],void 0]):i&&(u=n[1],void 0===l?e=u:e instanceof Map?e.set(l,u):e instanceof Set?e.add(u):Ec(e)&&(void 0!==u||l in e)&&(e[l]=u))}if("not_valid"!==c)for(const l of t.refiner(e,a))l.explanation=n.message,c="not_refined",yield[l,void 0];"valid"===c&&(yield[void 0,e])}class xc{constructor(e){const{type:t,schema:n,validator:r,refiner:o,coercer:i=(e=>e),entries:s=function*(){}}=e;this.type=t,this.schema=n,this.entries=s,this.coercer=i,this.validator=r?(e,t)=>Sc(r(e,t),t,this,e):()=>[],this.refiner=o?(e,t)=>Sc(o(e,t),t,this,e):()=>[]}assert(e,t){return Ac(e,this,t)}create(e,t){return Mc(e,this,t)}is(e){return Rc(e,this)}mask(e,t){return function(e,t,n){const r=Tc(e,t,{coerce:!0,mask:!0,message:n});if(r[0])throw r[0];return r[1]}(e,this,t)}validate(e,t={}){return Tc(e,this,t)}}function Ac(e,t,n){const r=Tc(e,t,{message:n});if(r[0])throw r[0]}function Mc(e,t,n){const r=Tc(e,t,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function Rc(e,t){return!Tc(e,t)[0]}function Tc(e,t,n={}){const r=kc(e,t,n),o=function(e){const{done:t,value:n}=e.next();return t?void 0:n}(r);if(o[0]){const e=new wc(o[0],(function*(){for(const e of r)e[0]&&(yield e[0])}));return[e,void 0]}return[void 0,o[1]]}function Oc(e,t){return new xc({type:e,schema:null,validator:t})}function Ic(e){let t;return new xc({type:"lazy",schema:null,*entries(n,r){t??(t=e()),yield*t.entries(n,r)},validator:(n,r)=>(t??(t=e()),t.validator(n,r)),coercer:(n,r)=>(t??(t=e()),t.coercer(n,r)),refiner:(n,r)=>(t??(t=e()),t.refiner(n,r))})}function Lc(e){return new xc({type:"array",schema:e,*entries(t){if(e&&Array.isArray(t))for(const[n,r]of t.entries())yield[n,r,e]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||`Expected an array value, but received: ${_c(e)}`})}function Pc(e){const t=_c(e),n=typeof e;return new xc({type:"literal",schema:"string"===n||"number"===n||"boolean"===n?e:null,validator:n=>n===e||`Expected the literal \`${t}\`, but received: ${_c(n)}`})}function Nc(){return Oc("number",(e=>"number"==typeof e&&!isNaN(e)||`Expected a number, but received: ${_c(e)}`))}function Bc(e){const t=e?Object.keys(e):[],n=Oc("never",(()=>!1));return new xc({type:"object",schema:e||null,*entries(r){if(e&&Ec(r)){const o=new Set(Object.keys(r));for(const n of t)o.delete(n),yield[n,r[n],e[n]];for(const e of o)yield[e,r[e],n]}},validator:e=>Ec(e)||`Expected an object, but received: ${_c(e)}`,coercer:e=>Ec(e)?{...e}:e})}function Dc(e){return new xc({...e,validator:(t,n)=>void 0===t||e.validator(t,n),refiner:(t,n)=>void 0===t||e.refiner(t,n)})}function $c(e,t){return new xc({type:"record",schema:null,*entries(n){if(Ec(n))for(const r in n){const o=n[r];yield[r,r,e],yield[r,o,t]}},validator:e=>Ec(e)||`Expected an object, but received: ${_c(e)}`})}function jc(){return Oc("string",(e=>"string"==typeof e||`Expected a string, but received: ${_c(e)}`))}function Uc(e){const t=e.map((e=>e.type)).join(" | ");return new xc({type:"union",schema:null,coercer(t){for(const n of e){const[e,r]=n.validate(t,{coerce:!0});if(!e)return r}return t},validator(n,r){const o=[];for(const t of e){const[...e]=kc(n,t,r),[i]=e;if(!i[0])return[];for(const[t]of e)t&&o.push(t)}return[`Expected the value to satisfy a union of \`${t}\`, but received: ${_c(n)}`,...o]}})}function Fc(e){return function(e){return function(e){return"object"==typeof e&&null!==e&&"message"in e}(e)&&"string"==typeof e.message?e.message:null==e?"":String(e)}(e).replace(/\.$/u,"")}function Kc(e,t){return n=e,Boolean("string"==typeof n?.prototype?.constructor?.name)?new e({message:t}):e({message:t});var n}var Hc=class extends Error{constructor(e){super(e.message),this.code="ERR_ASSERTION"}};function zc(){throw new Error("setTimeout has not been defined")}function qc(){throw new Error("clearTimeout has not been defined")}var Vc=zc,Wc=qc;function Gc(e){if(Vc===setTimeout)return setTimeout(e,0);if((Vc===zc||!Vc)&&setTimeout)return Vc=setTimeout,setTimeout(e,0);try{return Vc(e,0)}catch(t){try{return Vc.call(null,e,0)}catch(t){return Vc.call(this,e,0)}}}"function"==typeof ft.setTimeout&&(Vc=setTimeout),"function"==typeof ft.clearTimeout&&(Wc=clearTimeout);var Yc,Zc=[],Jc=!1,Xc=-1;function Qc(){Jc&&Yc&&(Jc=!1,Yc.length?Zc=Yc.concat(Zc):Xc=-1,Zc.length&&el())}function el(){if(!Jc){var e=Gc(Qc);Jc=!0;for(var t=Zc.length;t;){for(Yc=Zc,Zc=[];++Xc1)for(var n=1;nBc(e);function gl({path:e,branch:t}){const n=e[e.length-1];return bc(t[t.length-2],n)}function ml(e){return new xc({...e,type:`optional ${e.type}`,validator:(t,n)=>!gl(n)||e.validator(t,n),refiner:(t,n)=>!gl(n)||e.refiner(t,n)})}var yl,vl,bl,wl=Uc([Pc(null),Oc("boolean",(e=>"boolean"==typeof e)),Oc("finite number",(e=>Rc(e,Nc())&&Number.isFinite(e))),jc(),Lc(Ic((()=>wl))),$c(jc(),Ic((()=>wl)))]),El=(yl=wl,vl=Oc("any",(()=>!0)),bl=e=>(function(e,t,n="Assertion failed",r=Hc){try{Ac(e,t)}catch(e){throw Kc(r,`${n}: ${Fc(e)}.`)}}(e,wl),JSON.parse(JSON.stringify(e,((e,t)=>{if("__proto__"!==e&&"constructor"!==e)return t})))),new xc({...yl,coercer:(e,t)=>Rc(e,vl)?yl.coercer(bl(e,t),t):yl.coercer(e,t)}));function _l(e){try{return function(e){Mc(e,El)}(e),!0}catch{return!1}}var Cl=Pc("2.0"),Sl=function(e){return new xc({...e,validator:(t,n)=>null===t||e.validator(t,n),refiner:(t,n)=>null===t||e.refiner(t,n)})}(Uc([Nc(),jc()])),kl=pl({code:Oc("integer",(e=>"number"==typeof e&&!isNaN(e)&&Number.isInteger(e)||`Expected an integer, but received: ${_c(e)}`)),message:jc(),data:ml(El),stack:ml(jc())}),xl=Uc([$c(jc(),El),Lc(El)]),Al=pl({id:Sl,jsonrpc:Cl,method:jc(),params:ml(xl)}),Ml=pl({jsonrpc:Cl,method:jc(),params:ml(xl)});function Rl(e){return Rc(e,Al)}function Tl(e){return Rc(e,kl)}Bc({id:Sl,jsonrpc:Cl,result:Dc(Oc("unknown",(()=>!0))),error:Dc(kl)}),Uc([pl({id:Sl,jsonrpc:Cl,result:El}),pl({id:Sl,jsonrpc:Cl,error:kl})]);var Ol=mc.internal,Il="Unspecified error message. This is a bug, please report it.",Ll={code:Ol,message:Nl(Ol)},Pl="Unspecified server error.";function Nl(e,t=Il){if(function(e){return Number.isInteger(e)}(e)){const t=e.toString();if(bc(yc,t))return yc[t].message;if(function(e){return e>=-32099&&e<=-32e3}(e))return Pl}return t}function Bl(e,{fallbackError:t=Ll,shouldIncludeStack:n=!0}={}){if(!Tl(t))throw new Error("Must provide fallback error with integer number code and string message.");const r=function(e,t){if(e&&"object"==typeof e&&"serialize"in e&&"function"==typeof e.serialize)return e.serialize();if(Tl(e))return e;const n=Dl(e),r={...t,data:{cause:n}};return r}(e,t);return n||delete r.stack,r}function Dl(e){return Array.isArray(e)?e.map((e=>_l(e)?e:vc(e)?$l(e):null)):vc(e)?$l(e):_l(e)?e:null}function $l(e){return Object.getOwnPropertyNames(e).reduce(((t,n)=>{const r=e[n];return _l(r)&&(t[n]=r),t}),{})}var jl=ql;ql.default=ql,ql.stable=Yl,ql.stableStringify=Yl;var Ul="[...]",Fl="[Circular]",Kl=[],Hl=[];function zl(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function ql(e,t,n,r){var o;void 0===r&&(r=zl()),Wl(e,"",0,[],void 0,0,r);try{o=0===Hl.length?JSON.stringify(e,t,n):JSON.stringify(e,Jl(t),n)}catch(e){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==Kl.length;){var i=Kl.pop();4===i.length?Object.defineProperty(i[0],i[1],i[3]):i[0][i[1]]=i[2]}}return o}function Vl(e,t,n,r){var o=Object.getOwnPropertyDescriptor(r,n);void 0!==o.get?o.configurable?(Object.defineProperty(r,n,{value:e}),Kl.push([r,n,t,o])):Hl.push([t,n,e]):(r[n]=e,Kl.push([r,n,t]))}function Wl(e,t,n,r,o,i,s){var a;if(i+=1,"object"==typeof e&&null!==e){for(a=0;as.depthLimit)return void Vl(Ul,e,t,o);if(void 0!==s.edgesLimit&&n+1>s.edgesLimit)return void Vl(Ul,e,t,o);if(r.push(e),Array.isArray(e))for(a=0;at?1:0}function Yl(e,t,n,r){void 0===r&&(r=zl());var o,i=Zl(e,"",0,[],void 0,0,r)||e;try{o=0===Hl.length?JSON.stringify(i,t,n):JSON.stringify(i,Jl(t),n)}catch(e){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==Kl.length;){var s=Kl.pop();4===s.length?Object.defineProperty(s[0],s[1],s[3]):s[0][s[1]]=s[2]}}return o}function Zl(e,t,n,r,o,i,s){var a;if(i+=1,"object"==typeof e&&null!==e){for(a=0;as.depthLimit)return void Vl(Ul,e,t,o);if(void 0!==s.edgesLimit&&n+1>s.edgesLimit)return void Vl(Ul,e,t,o);if(r.push(e),Array.isArray(e))for(a=0;a0)for(var r=0;rnu(mc.invalidRequest,e);function nu(e,t){const[n,r]=function(e){if(e){if("string"==typeof e)return[e];if("object"==typeof e&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&"string"!=typeof t)throw new Error("Must specify string message.");return[t??void 0,n]}}return[]}(t);return new Ql(e,n??Nl(e),r)}var ru={};function ou(){}function iu(){iu.init.call(this)}function su(e){return void 0===e._maxListeners?iu.defaultMaxListeners:e._maxListeners}function au(e,t,n,r){var o,i,s;if("function"!=typeof n)throw new TypeError('"listener" argument must be a function');if((i=e._events)?(i.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),i=e._events),s=i[t]):(i=e._events=new ou,e._eventsCount=0),s){if("function"==typeof s?s=i[t]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),!s.warned&&(o=su(e))&&o>0&&s.length>o){s.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+t+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=e,a.type=t,a.count=s.length,function(e){"function"==typeof console.warn?console.warn(e):console.log(e)}(a)}}else s=i[t]=n,++e._eventsCount;return e}function cu(e,t,n){var r=!1;function o(){e.removeListener(t,o),r||(r=!0,n.apply(e,arguments))}return o.listener=n,o}function lu(e){var t=this._events;if(t){var n=t[e];if("function"==typeof n)return 1;if(n)return n.length}return 0}function uu(e,t){for(var n=new Array(t);t--;)n[t]=e[t];return n}ou.prototype=Object.create(null),iu.EventEmitter=iu,iu.usingDomains=!1,iu.prototype.domain=void 0,iu.prototype._events=void 0,iu.prototype._maxListeners=void 0,iu.defaultMaxListeners=10,iu.init=function(){this.domain=null,iu.usingDomains&&(void 0).active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new ou,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},iu.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||isNaN(e))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=e,this},iu.prototype.getMaxListeners=function(){return su(this)},iu.prototype.emit=function(e){var t,n,r,o,i,s,a,c="error"===e;if(s=this._events)c=c&&null==s.error;else if(!c)return!1;if(a=this.domain,c){if(t=arguments[1],!a){if(t instanceof Error)throw t;var l=new Error('Uncaught, unspecified "error" event. ('+t+")");throw l.context=t,l}return t||(t=new Error('Uncaught, unspecified "error" event')),t.domainEmitter=this,t.domain=a,t.domainThrown=!1,a.emit("error",t),!1}if(!(n=s[e]))return!1;var u="function"==typeof n;switch(r=arguments.length){case 1:!function(e,t,n){if(t)e.call(n);else for(var r=e.length,o=uu(e,r),i=0;i0;)if(n[i]===t||n[i].listener&&n[i].listener===t){s=n[i].listener,o=i;break}if(o<0)return this;if(1===n.length){if(n[0]=void 0,0==--this._eventsCount)return this._events=new ou,this;delete r[e]}else!function(e,t){for(var n=t,r=n+1,o=e.length;r0?Reflect.ownKeys(this._events):[]};var du=yn(Object.freeze({__proto__:null,EventEmitter:iu,default:iu}));Object.defineProperty(ru,"__esModule",{value:!0});const hu=du;function fu(e,t,n){try{Reflect.apply(e,t,n)}catch(e){setTimeout((()=>{throw e}))}}let pu=class extends hu.EventEmitter{emit(e,...t){let n="error"===e;const r=this._events;if(void 0!==r)n=n&&void 0===r.error;else if(!n)return!1;if(n){let e;if(t.length>0&&([e]=t),e instanceof Error)throw e;const n=new Error("Unhandled error."+(e?` (${e.message})`:""));throw n.context=e,n}const o=r[e];if(void 0===o)return!1;if("function"==typeof o)fu(o,this,t);else{const e=o.length,n=function(e){const t=e.length,n=new Array(t);for(let r=0;r{"destroy"in e&&"function"==typeof e.destroy&&e.destroy()})),pc(this,mu,[]),pc(this,gu,!0)}push(e){gc(this,vu,bu).call(this),hc(this,mu).push(e)}handle(e,t){if(gc(this,vu,bu).call(this),t&&"function"!=typeof t)throw new Error('"callback" must be a function if provided.');return Array.isArray(e)?t?gc(this,wu,Eu).call(this,e,t):gc(this,wu,Eu).call(this,e):t?gc(this,_u,Cu).call(this,e,t):this._promiseHandle(e)}asMiddleware(){return gc(this,vu,bu).call(this),async(t,n,r,o)=>{var i,s;try{const[a,c,l]=await gc(i=e,xu,Au).call(i,t,n,hc(this,mu));return c?(await gc(s=e,Tu,Ou).call(s,l),o(a)):r((async t=>{var n;try{await gc(n=e,Tu,Ou).call(n,l)}catch(e){return t(e)}return t()}))}catch(e){return o(e)}}}async _promiseHandle(e){return new Promise(((t,n)=>{gc(this,_u,Cu).call(this,e,((e,r)=>{e&&void 0===r?n(e):t(r)})).catch(n)}))}};gu=new WeakMap,mu=new WeakMap,yu=new WeakMap,vu=new WeakSet,bu=function(){if(hc(this,gu))throw new Error("This engine is destroyed and can no longer be used.")},wu=new WeakSet,Eu=async function(e,t){try{if(0===e.length){const e=[{id:null,jsonrpc:"2.0",error:new Ql(mc.invalidRequest,"Request batch must contain plain objects. Received an empty array")}];return t?t(null,e):e}const n=(await Promise.all(e.map(this._promiseHandle.bind(this)))).filter((e=>void 0!==e));return t?t(null,n):n}catch(e){if(t)return t(e);throw e}},_u=new WeakSet,Cu=async function(e,t){var n;if(!e||Array.isArray(e)||"object"!=typeof e){const n=new Ql(mc.invalidRequest,"Requests must be plain objects. Received: "+typeof e,{request:e});return t(n,{id:null,jsonrpc:"2.0",error:n})}if("string"!=typeof e.method){const n=new Ql(mc.invalidRequest,"Must specify a string method. Received: "+typeof e.method,{request:e});return hc(this,yu)&&!Rl(e)?t(null):t(n,{id:e.id??null,jsonrpc:"2.0",error:n})}if(hc(this,yu)&&Rc(e,Ml)&&!Rl(e)){try{await hc(this,yu).call(this,e)}catch(e){return t(e)}return t(null)}let r=null;const o={...e},i={id:o.id,jsonrpc:o.jsonrpc};try{await gc(n=Nu,Su,ku).call(n,o,i,hc(this,mu))}catch(e){r=e}return r&&(delete i.result,i.error||(i.error=Bl(r))),t(r,i)},Su=new WeakSet,ku=async function(e,t,n){var r,o,i;const[s,a,c]=await gc(r=Nu,xu,Au).call(r,e,t,n);if(gc(o=Nu,Iu,Lu).call(o,e,t,a),await gc(i=Nu,Tu,Ou).call(i,c),s)throw s},xu=new WeakSet,Au=async function(e,t,n){var r;const o=[];let i=null,s=!1;for(const a of n)if([i,s]=await gc(r=Nu,Mu,Ru).call(r,e,t,a,o),s)break;return[i,s,o.reverse()]},Mu=new WeakSet,Ru=async function(e,t,n,r){return new Promise((o=>{const i=e=>{const n=e||t.error;n&&(t.error=Bl(n)),o([n,!0])},s=n=>{t.error?i(t.error):(n&&("function"!=typeof n&&i(new Ql(mc.internal,`JsonRpcEngine: "next" return handlers must be functions. Received "${typeof n}" for request:\n${Du(e)}`,{request:e})),r.push(n)),o([null,!1]))};try{n(e,t,s,i)}catch(e){i(e)}}))},Tu=new WeakSet,Ou=async function(e){for(const t of e)await new Promise(((e,n)=>{t((t=>t?n(t):e()))}))},Iu=new WeakSet,Lu=function(e,t,n){if(!bc(t,"result")&&!bc(t,"error"))throw new Ql(mc.internal,`JsonRpcEngine: Response has no error or result for request:\n${Du(e)}`,{request:e});if(!n)throw new Ql(mc.internal,`JsonRpcEngine: Nothing ended request:\n${Du(e)}`,{request:e})},fc(Nu,Su),fc(Nu,xu),fc(Nu,Mu),fc(Nu,Tu),fc(Nu,Iu);var Bu=Nu;function Du(e){return JSON.stringify(e,null,2)}var $u=Object.freeze(["eth_subscription"]),ju=(e=console)=>[uc(),Uu(e),ac(e)];function Uu(e){return(t,n,r)=>{"string"==typeof t.method&&t.method||(n.error=tu({message:"The request 'method' must be a non-empty string.",data:t})),r((t=>{const{error:r}=n;return r?(e.error(`MetaMask - RPC Error: ${r.message}`,r),t()):t()}))}}var Fu=(e,t,n=!0)=>(r,o)=>{r||o.error?t(r||o.error):!n||Array.isArray(o)?e(o):e(o.result)},Ku=e=>Boolean(e)&&"string"==typeof e&&e.startsWith("0x"),Hu=()=>{};async function zu(e,t){try{const t=await async function(){return{name:qu(window),icon:await Vu(window)}}();e.handle({jsonrpc:"2.0",id:1,method:"metamask_sendDomainMetadata",params:t},Hu)}catch(e){t.error({message:sc.errors.sendSiteMetadata(),originalError:e})}}function qu(e){const{document:t}=e,n=t.querySelector('head > meta[property="og:site_name"]');if(n)return n.content;const r=t.querySelector('head > meta[name="title"]');return r?r.content:t.title&&t.title.length>0?t.title:window.location.hostname}async function Vu(e){const{document:t}=e,n=t.querySelectorAll('head > link[rel~="icon"]');for(const r of Array.from(n))if(r&&await Wu(r.href))return r.href;return null}async function Wu(e){return new Promise(((t,n)=>{try{const n=document.createElement("img");n.onload=()=>t(!0),n.onerror=()=>t(!1),n.src=e}catch(e){n(e)}}))}var Gu=(e,t,n)=>{if(!t.has(e))throw TypeError("Cannot "+n)},Yu=(e,t,n)=>(Gu(e,t,"read from private field"),n?n.call(e):t.get(e)),Zu=(e,t,n)=>{if(t.has(e))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(e):t.set(e,n)},Ju=(e,t,n,r)=>(Gu(e,t,"write to private field"),t.set(e,n),n);function Xu(e,t,n){try{Reflect.apply(e,t,n)}catch(e){setTimeout((()=>{throw e}))}}class Qu extends iu{emit(e,...t){let n="error"===e;const r=this._events;if(void 0!==r)n=n&&void 0===r.error;else if(!n)return!1;if(n){let e;if(t.length>0&&([e]=t),e instanceof Error)throw e;const n=new Error("Unhandled error."+(e?` (${e.message})`:""));throw n.context=e,n}const o=r[e];if(void 0===o)return!1;if("function"==typeof o)Xu(o,this,t);else{const e=o.length,n=function(e){const t=e.length,n=new Array(t);for(let r=0;ro.push(e))),this._rpcEngine=o}get chainId(){return Yu(this,ed)}get selectedAddress(){return Yu(this,td)}isConnected(){return this._state.isConnected}async request(e){if(!e||"object"!=typeof e||Array.isArray(e))throw tu({message:sc.errors.invalidRequestArgs(),data:e});const{method:t,params:n}=e;if("string"!=typeof t||0===t.length)throw tu({message:sc.errors.invalidRequestMethod(),data:e});if(void 0!==n&&!Array.isArray(n)&&("object"!=typeof n||null===n))throw tu({message:sc.errors.invalidRequestParams(),data:e});const r=null==n?{method:t}:{method:t,params:n};return new Promise(((e,t)=>{this._rpcRequest(r,Fu(e,t))}))}_initializeState(e){if(this._state.initialized)throw new Error("Provider already initialized.");if(e){const{accounts:t,chainId:n,isUnlocked:r,networkVersion:o}=e;this._handleConnect(n),this._handleChainChanged({chainId:n,networkVersion:o}),this._handleUnlockStateChanged({accounts:t,isUnlocked:r}),this._handleAccountsChanged(t)}this._state.initialized=!0,this.emit("_initialized")}_rpcRequest(e,t){let n=t;return Array.isArray(e)||(e.jsonrpc||(e.jsonrpc="2.0"),"eth_accounts"!==e.method&&"eth_requestAccounts"!==e.method||(n=(n,r)=>{this._handleAccountsChanged(r.result??[],"eth_accounts"===e.method),t(n,r)})),this._rpcEngine.handle(e,n)}_handleConnect(e){this._state.isConnected||(this._state.isConnected=!0,this.emit("connect",{chainId:e}),this._log.debug(sc.info.connected(e)))}_handleDisconnect(e,t){if(this._state.isConnected||!this._state.isPermanentlyDisconnected&&!e){let n;this._state.isConnected=!1,e?(n=new Ql(1013,t??sc.errors.disconnected()),this._log.debug(n)):(n=new Ql(1011,t??sc.errors.permanentlyDisconnected()),this._log.error(n),Ju(this,ed,null),this._state.accounts=null,Ju(this,td,null),this._state.isUnlocked=!1,this._state.isPermanentlyDisconnected=!0),this.emit("disconnect",n)}}_handleChainChanged({chainId:e}={}){Ku(e)?(this._handleConnect(e),e!==Yu(this,ed)&&(Ju(this,ed,e),this._state.initialized&&this.emit("chainChanged",Yu(this,ed)))):this._log.error(sc.errors.invalidNetworkParams(),{chainId:e})}_handleAccountsChanged(e,t=!1){let n=e;Array.isArray(e)||(this._log.error("MetaMask: Received invalid accounts parameter. Please report this bug.",e),n=[]);for(const r of e)if("string"!=typeof r){this._log.error("MetaMask: Received non-string account. Please report this bug.",e),n=[];break}if(!rd(this._state.accounts,n)&&(t&&null!==this._state.accounts&&this._log.error("MetaMask: 'eth_accounts' unexpectedly updated accounts. Please report this bug.",n),this._state.accounts=n,Yu(this,td)!==n[0]&&Ju(this,td,n[0]||null),this._state.initialized)){const e=[...n];this.emit("accountsChanged",e)}}_handleUnlockStateChanged({accounts:e,isUnlocked:t}={}){"boolean"==typeof t?t!==this._state.isUnlocked&&(this._state.isUnlocked=t,this._handleAccountsChanged(e??[])):this._log.error("MetaMask: Received invalid isUnlocked parameter. Please report this bug.")}};ed=new WeakMap,td=new WeakMap,od._defaultState={accounts:null,isConnected:!1,isUnlocked:!1,initialized:!1,isPermanentlyDisconnected:!1};var id,sd,ad=od,cd={exports:{}};function ld(){return sd?id:(sd=1,id=du.EventEmitter)}var ud,dd=yn(pn);ud="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e};var hd=Object.getOwnPropertyDescriptors||function(e){for(var t=Object.keys(e),n={},r=0;r=o)return e;switch(e){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(e){return"[Circular]"}default:return e}})),s=r[n];n=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),xd(t)?n.showHidden=t:t&&zd(n,t),Id(n.showHidden)&&(n.showHidden=!1),Id(n.depth)&&(n.depth=2),Id(n.colors)&&(n.colors=!1),Id(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=wd),_d(n,e,n.depth)}function wd(e,t){var n=bd.styles[t];return n?"["+bd.colors[n][0]+"m"+e+"["+bd.colors[n][1]+"m":e}function Ed(e,t){return e}function _d(e,t,n){if(e.customInspect&&t&&Dd(t.inspect)&&t.inspect!==bd&&(!t.constructor||t.constructor.prototype!==t)){var r=t.inspect(n,e);return Td(r)||(r=_d(e,r,n)),r}var o=function(e,t){if(Id(t))return e.stylize("undefined","undefined");if(Td(t)){var n="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(n,"string")}return Rd(t)?e.stylize(""+t,"number"):xd(t)?e.stylize(""+t,"boolean"):Ad(t)?e.stylize("null","null"):void 0}(e,t);if(o)return o;var i=Object.keys(t),s=function(e){var t={};return e.forEach((function(e,n){t[e]=!0})),t}(i);if(e.showHidden&&(i=Object.getOwnPropertyNames(t)),Bd(t)&&(i.indexOf("message")>=0||i.indexOf("description")>=0))return Cd(t);if(0===i.length){if(Dd(t)){var a=t.name?": "+t.name:"";return e.stylize("[Function"+a+"]","special")}if(Ld(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(Nd(t))return e.stylize(Date.prototype.toString.call(t),"date");if(Bd(t))return Cd(t)}var c,l="",u=!1,d=["{","}"];return kd(t)&&(u=!0,d=["[","]"]),Dd(t)&&(l=" [Function"+(t.name?": "+t.name:"")+"]"),Ld(t)&&(l=" "+RegExp.prototype.toString.call(t)),Nd(t)&&(l=" "+Date.prototype.toUTCString.call(t)),Bd(t)&&(l=" "+Cd(t)),0!==i.length||u&&0!=t.length?n<0?Ld(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),c=u?function(e,t,n,r,o){for(var i=[],s=0,a=t.length;s60?n[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+n[1]:n[0]+t+" "+e.join(", ")+" "+n[1]}(c,l,d)):d[0]+l+d[1]}function Cd(e){return"["+Error.prototype.toString.call(e)+"]"}function Sd(e,t,n,r,o,i){var s,a,c;if((c=Object.getOwnPropertyDescriptor(t,o)||{value:t[o]}).get?a=c.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):c.set&&(a=e.stylize("[Setter]","special")),qd(r,o)||(s="["+o+"]"),a||(e.seen.indexOf(c.value)<0?(a=Ad(n)?_d(e,c.value,null):_d(e,c.value,n-1)).indexOf("\n")>-1&&(a=i?a.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+a.split("\n").map((function(e){return" "+e})).join("\n")):a=e.stylize("[Circular]","special")),Id(s)){if(i&&o.match(/^\d+$/))return a;(s=JSON.stringify(""+o)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=e.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=e.stylize(s,"string"))}return s+": "+a}function kd(e){return Array.isArray(e)}function xd(e){return"boolean"==typeof e}function Ad(e){return null===e}function Md(e){return null==e}function Rd(e){return"number"==typeof e}function Td(e){return"string"==typeof e}function Od(e){return"symbol"==typeof e}function Id(e){return void 0===e}function Ld(e){return Pd(e)&&"[object RegExp]"===Ud(e)}function Pd(e){return"object"==typeof e&&null!==e}function Nd(e){return Pd(e)&&"[object Date]"===Ud(e)}function Bd(e){return Pd(e)&&("[object Error]"===Ud(e)||e instanceof Error)}function Dd(e){return"function"==typeof e}function $d(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e||"symbol"==typeof e||void 0===e}function jd(e){return Mt.isBuffer(e)}function Ud(e){return Object.prototype.toString.call(e)}function Fd(e){return e<10?"0"+e.toString(10):e.toString(10)}bd.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},bd.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};var Kd=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Hd(){console.log("%s - %s",function(){var e=new Date,t=[Fd(e.getHours()),Fd(e.getMinutes()),Fd(e.getSeconds())].join(":");return[e.getDate(),Kd[e.getMonth()],t].join(" ")}(),pd.apply(null,arguments))}function zd(e,t){if(!t||!Pd(t))return e;for(var n=Object.keys(t),r=n.length;r--;)e[n[r]]=t[n[r]];return e}function qd(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var Vd="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function Wd(e){if("function"!=typeof e)throw new TypeError('The "original" argument must be of type Function');if(Vd&&e[Vd]){var t;if("function"!=typeof(t=e[Vd]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(t,Vd,{value:t,enumerable:!1,writable:!1,configurable:!0}),t}function t(){for(var t,n,r=new Promise((function(e,r){t=e,n=r})),o=[],i=0;i0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return i.alloc(0);for(var t,n,r,o=i.allocUnsafe(e>>>0),s=this.head,a=0;s;)t=s.data,n=o,r=a,i.prototype.copy.call(t,n,r),a+=s.data.length,s=s.next;return o}},{key:"consume",value:function(e,t){var n;return eo.length?o.length:e;if(i===o.length?r+=o:r+=o.slice(0,e),0===(e-=i)){i===o.length?(++n,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=o.slice(i));break}++n}return this.length-=n,r}},{key:"_getBuffer",value:function(e){var t=i.allocUnsafe(e),n=this.head,r=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var o=n.data,s=e>o.length?o.length:e;if(o.copy(t,t.length-e,0,s),0===(e-=s)){s===o.length?(++r,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(s));break}++r}return this.length-=r,t}},{key:a,value:function(e,n){return s(this,t(t({},n),{},{depth:0,customInspect:!1}))}}]),e}(),Zd}function rh(){if(Qd)return Xd;function e(e,r){n(e,r),t(e)}function t(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}return Qd=1,Xd={destroy:function(r,o){var i=this,s=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return s||a?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,fl.nextTick(n,this,r)):fl.nextTick(n,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,(function(n){!o&&n?i._writableState?i._writableState.errorEmitted?fl.nextTick(t,i):(i._writableState.errorEmitted=!0,fl.nextTick(e,i,n)):fl.nextTick(e,i,n):o?(fl.nextTick(t,i),o(n)):fl.nextTick(t,i)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var n=e._readableState,r=e._writableState;n&&n.autoDestroy||r&&r.autoDestroy?e.destroy(t):e.emit("error",t)}},Xd}var oh,ih,sh={},ah={};function ch(e,t,n){n||(n=Error);var r=function(e){var n,r;function o(n,r,o){return e.call(this,function(e,n,r){return"string"==typeof t?t:t(e,n,r)}(n,r,o))||this}return r=e,(n=o).prototype=Object.create(r.prototype),n.prototype.constructor=n,n.__proto__=r,o}(n);r.prototype.name=n.name,r.prototype.code=e,ah[e]=r}function lh(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map((function(e){return String(e)})),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}function uh(){if(ih)return oh;ih=1;var e=sh.codes.ERR_INVALID_OPT_VALUE;return oh={getHighWaterMark:function(t,n,r,o){var i=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(n,o,r);if(null!=i){if(!isFinite(i)||Math.floor(i)!==i||i<0)throw new e(o?r:"highWaterMark",i);return Math.floor(i)}return t.objectMode?16:16384}}}ch("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),ch("ERR_INVALID_ARG_TYPE",(function(e,t,n){var r,o,i;if("string"==typeof t&&(o="not ",t.substr(0,o.length)===o)?(r="must not be",t=t.replace(/^not /,"")):r="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))i="The ".concat(e," ").concat(r," ").concat(lh(t,"type"));else{var s=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+t.length>e.length)&&-1!==e.indexOf(t,n)}(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(s," ").concat(r," ").concat(lh(t,"type"))}return i+". Received type ".concat(typeof n)}),TypeError),ch("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),ch("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),ch("ERR_STREAM_PREMATURE_CLOSE","Premature close"),ch("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),ch("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),ch("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),ch("ERR_STREAM_WRITE_AFTER_END","write after end"),ch("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),ch("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),ch("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),sh.codes=ah;var dh,hh,fh,ph,gh,mh,yh="function"==typeof Object.create?function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})}:function(e,t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e},vh=yn(Object.freeze({__proto__:null,default:yh}));function bh(){if(hh)return dh;function e(e){try{if(!gn.localStorage)return!1}catch(e){return!1}var t=gn.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}return hh=1,dh=function(t,n){if(e("noDeprecation"))return t;var r=!1;return function(){if(!r){if(e("throwDeprecation"))throw new Error(n);e("traceDeprecation")?console.trace(n):console.warn(n),r=!0}return t.apply(this,arguments)}},dh}function wh(){if(ph)return fh;function e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,n){var r=e.entry;for(e.entry=null;r;){var o=r.callback;t.pendingcb--,o(n),r=r.next}t.corkedRequestsFree.next=e}(t,e)}}var t;ph=1,fh=E,E.WritableState=w;var n,r={deprecate:bh()},o=ld(),i=dd.Buffer,s=(void 0!==gn?gn:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},a=rh(),c=uh().getHighWaterMark,l=sh.codes,u=l.ERR_INVALID_ARG_TYPE,d=l.ERR_METHOD_NOT_IMPLEMENTED,h=l.ERR_MULTIPLE_CALLBACK,f=l.ERR_STREAM_CANNOT_PIPE,p=l.ERR_STREAM_DESTROYED,g=l.ERR_STREAM_NULL_VALUES,m=l.ERR_STREAM_WRITE_AFTER_END,y=l.ERR_UNKNOWN_ENCODING,v=a.errorOrDestroy;function b(){}function w(n,r,o){t=t||Eh(),n=n||{},"boolean"!=typeof o&&(o=r instanceof t),this.objectMode=!!n.objectMode,o&&(this.objectMode=this.objectMode||!!n.writableObjectMode),this.highWaterMark=c(this,n,"writableHighWaterMark",o),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var i=!1===n.decodeStrings;this.decodeStrings=!i,this.defaultEncoding=n.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,o=n.writecb;if("function"!=typeof o)throw new h;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,o){--t.pendingcb,n?(fl.nextTick(o,r),fl.nextTick(A,e,t),e._writableState.errorEmitted=!0,v(e,r)):(o(r),e._writableState.errorEmitted=!0,v(e,r),A(e,t))}(e,n,r,t,o);else{var i=k(n)||e.destroyed;i||n.corked||n.bufferProcessing||!n.bufferedRequest||S(e,n),r?fl.nextTick(C,e,n,i,o):C(e,n,i,o)}}(r,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==n.emitClose,this.autoDestroy=!!n.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new e(this)}function E(e){var r=this instanceof(t=t||Eh());if(!r&&!n.call(E,this))return new E(e);this._writableState=new w(e,this,r),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),o.call(this)}function _(e,t,n,r,o,i,s){t.writelen=r,t.writecb=s,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new p("write")):n?e._writev(o,t.onwrite):e._write(o,i,t.onwrite),t.sync=!1}function C(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),A(e,t)}function S(t,n){n.bufferProcessing=!0;var r=n.bufferedRequest;if(t._writev&&r&&r.next){var o=n.bufferedRequestCount,i=new Array(o),s=n.corkedRequestsFree;s.entry=r;for(var a=0,c=!0;r;)i[a]=r,r.isBuf||(c=!1),r=r.next,a+=1;i.allBuffers=c,_(t,n,!0,n.length,i,"",s.finish),n.pendingcb++,n.lastBufferedRequest=null,s.next?(n.corkedRequestsFree=s.next,s.next=null):n.corkedRequestsFree=new e(n),n.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(_(t,n,!1,n.objectMode?1:l.length,l,u,d),r=r.next,n.bufferedRequestCount--,n.writing)break}null===r&&(n.lastBufferedRequest=null)}n.bufferedRequest=r,n.bufferProcessing=!1}function k(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function x(e,t){e._final((function(n){t.pendingcb--,n&&v(e,n),t.prefinished=!0,e.emit("prefinish"),A(e,t)}))}function A(e,t){var n=k(t);if(n&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,fl.nextTick(x,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var r=e._readableState;(!r||r.autoDestroy&&r.endEmitted)&&e.destroy()}return n}return vh(E,o),w.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(w.prototype,"buffer",{get:r.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(n=Function.prototype[Symbol.hasInstance],Object.defineProperty(E,Symbol.hasInstance,{value:function(e){return!!n.call(this,e)||this===E&&e&&e._writableState instanceof w}})):n=function(e){return e instanceof this},E.prototype.pipe=function(){v(this,new f)},E.prototype.write=function(e,t,n){var r,o=this._writableState,a=!1,c=!o.objectMode&&(r=e,i.isBuffer(r)||r instanceof s);return c&&!i.isBuffer(e)&&(e=function(e){return i.from(e)}(e)),"function"==typeof t&&(n=t,t=null),c?t="buffer":t||(t=o.defaultEncoding),"function"!=typeof n&&(n=b),o.ending?function(e,t){var n=new m;v(e,n),fl.nextTick(t,n)}(this,n):(c||function(e,t,n,r){var o;return null===n?o=new g:"string"==typeof n||t.objectMode||(o=new u("chunk",["string","Buffer"],n)),!o||(v(e,o),fl.nextTick(r,o),!1)}(this,o,e,n))&&(o.pendingcb++,a=function(e,t,n,r,o,s){if(!n){var a=function(e,t,n){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=i.from(t,n)),t}(t,r,o);r!==a&&(n=!0,o="buffer",r=a)}var c=t.objectMode?1:r.length;t.length+=c;var l=t.length-1))throw new y(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,n){n(new d("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,n){var r=this._writableState;return"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,n){t.ending=!0,A(e,t),n&&(t.finished?fl.nextTick(n):e.once("finish",n)),t.ended=!0,e.writable=!1}(this,r,n),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),E.prototype.destroy=a.destroy,E.prototype._undestroy=a.undestroy,E.prototype._destroy=function(e,t){t(e)},fh}function Eh(){if(mh)return gh;mh=1;var e=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};gh=s;var t=$h(),n=wh();vh(s,t);for(var r=e(n.prototype),o=0;o=this.charLength-this.charReceived?this.charLength-this.charReceived:e.length;if(e.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived=55296&&r<=56319)){if(this.charReceived=this.charLength=0,0===e.length)return t;break}this.charLength+=this.surrogateSize,t=""}this.detectIncompleteChar(e);var r,o=e.length;if(this.charLength&&(e.copy(this.charBuffer,0,e.length-this.charReceived,o),o-=this.charReceived),o=(t+=e.toString(this.encoding,0,o)).length-1,(r=t.charCodeAt(o))>=55296&&r<=56319){var i=this.surrogateSize;return this.charLength+=i,this.charReceived+=i,this.charBuffer.copy(this.charBuffer,i,0,i),e.copy(this.charBuffer,0,0,i),t.substring(0,o)}return t},Ch.prototype.detectIncompleteChar=function(e){for(var t=e.length>=3?3:e.length;t>0;t--){var n=e[e.length-t];if(1==t&&n>>5==6){this.charLength=2;break}if(t<=2&&n>>4==14){this.charLength=3;break}if(t<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=t},Ch.prototype.end=function(e){var t="";if(e&&e.length&&(t=this.write(e)),this.charReceived){var n=this.charReceived,r=this.charBuffer,o=this.encoding;t+=r.slice(0,n).toString(o)}return t};var Ah=yn(Object.freeze({__proto__:null,StringDecoder:Ch})),Mh=sh.codes.ERR_STREAM_PREMATURE_CLOSE;function Rh(){}var Th,Oh,Ih,Lh,Ph,Nh,Bh=function e(t,n,r){if("function"==typeof n)return e(t,null,n);n||(n={}),r=function(e){var t=!1;return function(){if(!t){t=!0;for(var n=arguments.length,r=new Array(n),o=0;o0)if("string"==typeof n||l.objectMode||Object.getPrototypeOf(n)===o.prototype||(n=function(e){return o.from(e)}(n)),s)l.endEmitted?v(e,new y):C(e,l,n,!0);else if(l.ended)v(e,new g);else{if(l.destroyed)return!1;l.reading=!1,l.decoder&&!r?(n=l.decoder.write(n),l.objectMode||0!==n.length?C(e,l,n,!1):M(e,l)):C(e,l,n,!1)}else s||(l.reading=!1,M(e,l));return!l.ended&&(l.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=S?e=S:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function x(e){var n=e._readableState;t("emitReadable",n.needReadable,n.emittedReadable),n.needReadable=!1,n.emittedReadable||(t("emitReadable",n.flowing),n.emittedReadable=!0,fl.nextTick(A,e))}function A(e){var n=e._readableState;t("emitReadable_",n.destroyed,n.length,n.ended),n.destroyed||!n.length&&!n.ended||(e.emit("readable"),n.emittedReadable=!1),n.needReadable=!n.flowing&&!n.ended&&n.length<=n.highWaterMark,L(e)}function M(e,t){t.readingMore||(t.readingMore=!0,fl.nextTick(R,e,t))}function R(e,n){for(;!n.reading&&!n.ended&&(n.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function O(e){t("readable nexttick read 0"),e.read(0)}function I(e,n){t("resume",n.reading),n.reading||e.read(0),n.resumeScheduled=!1,e.emit("resume"),L(e),n.flowing&&!n.reading&&e.read(0)}function L(e){var n=e._readableState;for(t("flow",n.flowing);n.flowing&&null!==e.read(););}function P(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function N(e){var n=e._readableState;t("endReadable",n.endEmitted),n.endEmitted||(n.ended=!0,fl.nextTick(B,n,e))}function B(e,n){if(t("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,n.readable=!1,n.emit("end"),e.autoDestroy)){var r=n._writableState;(!r||r.autoDestroy&&r.finished)&&n.destroy()}}function D(e,t){for(var n=0,r=e.length;n=n.highWaterMark:n.length>0)||n.ended))return t("read: emitReadable",n.length,n.ended),0===n.length&&n.ended?N(this):x(this),null;if(0===(e=k(e,n))&&n.ended)return 0===n.length&&N(this),null;var o,i=n.needReadable;return t("need readable",i),(0===n.length||n.length-e0?P(e,n):null)?(n.needReadable=n.length<=n.highWaterMark,e=0):(n.length-=e,n.awaitDrain=0),0===n.length&&(n.ended||(n.needReadable=!0),r!==e&&n.ended&&N(this)),null!==o&&this.emit("data",o),o},E.prototype._read=function(e){v(this,new m("_read()"))},E.prototype.pipe=function(e,r){var o=this,i=this._readableState;switch(i.pipesCount){case 0:i.pipes=e;break;case 1:i.pipes=[i.pipes,e];break;default:i.pipes.push(e)}i.pipesCount+=1,t("pipe count=%d opts=%j",i.pipesCount,r);var s=r&&!1===r.end||e===fl.stdout||e===fl.stderr?g:c;function a(n,r){t("onunpipe"),n===o&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,t("cleanup"),e.removeListener("close",f),e.removeListener("finish",p),e.removeListener("drain",l),e.removeListener("error",h),e.removeListener("unpipe",a),o.removeListener("end",c),o.removeListener("end",g),o.removeListener("data",d),u=!0,!i.awaitDrain||e._writableState&&!e._writableState.needDrain||l())}function c(){t("onend"),e.end()}i.endEmitted?fl.nextTick(s):o.once("end",s),e.on("unpipe",a);var l=function(e){return function(){var r=e._readableState;t("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,0===r.awaitDrain&&n(e,"data")&&(r.flowing=!0,L(e))}}(o);e.on("drain",l);var u=!1;function d(n){t("ondata");var r=e.write(n);t("dest.write",r),!1===r&&((1===i.pipesCount&&i.pipes===e||i.pipesCount>1&&-1!==D(i.pipes,e))&&!u&&(t("false write response, pause",i.awaitDrain),i.awaitDrain++),o.pause())}function h(r){t("onerror",r),g(),e.removeListener("error",h),0===n(e,"error")&&v(e,r)}function f(){e.removeListener("finish",p),g()}function p(){t("onfinish"),e.removeListener("close",f),g()}function g(){t("unpipe"),o.unpipe(e)}return o.on("data",d),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",h),e.once("close",f),e.once("finish",p),e.emit("pipe",o),i.flowing||(t("pipe resume"),o.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,o=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var i=0;i0,!1!==i.flowing&&this.resume()):"readable"===e&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,t("on readable",i.length,i.reading),i.length?x(this):i.reading||fl.nextTick(O,this))),o},E.prototype.addListener=E.prototype.on,E.prototype.removeListener=function(e,t){var n=r.prototype.removeListener.call(this,e,t);return"readable"===e&&fl.nextTick(T,this),n},E.prototype.removeAllListeners=function(e){var t=r.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||fl.nextTick(T,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(t("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,fl.nextTick(I,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return t("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(t("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var n=this,r=this._readableState,o=!1;for(var i in e.on("end",(function(){if(t("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&n.push(e)}n.push(null)})),e.on("data",(function(i){t("wrapped data"),r.decoder&&(i=r.decoder.write(i)),r.objectMode&&null==i||(r.objectMode||i&&i.length)&&(n.push(i)||(o=!0,e.pause()))})),e)void 0===this[i]&&"function"==typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var s=0;s0,(function(e){r||(r=e),e&&i.forEach(of),s||(i.forEach(of),o(r))}))}));return t.reduce(sf)};!function(e,t){(t=cd.exports=$h()).Stream=t,t.Readable=t,t.Writable=wh(),t.Duplex=Eh(),t.Transform=jh,t.PassThrough=Jh,t.finished=Bh,t.pipeline=af}(0,cd.exports);var cf=cd.exports;function lf(e={}){const t={},n=new cf.Duplex({objectMode:!0,read:()=>{},write:function(n,i,s){let a=null;try{n.id?function(e){const{id:n}=e;if(null===n)return;const r=t[n];r?(delete t[n],Object.assign(r.res,e),setTimeout(r.end)):console.warn(`StreamMiddleware - Unknown response id "${n}"`)}(n):function(n){e?.retryOnMessage&&n.method===e.retryOnMessage&&Object.values(t).forEach((({req:e,retryCount:n=0})=>{if(!e.id)return;if(n>=3)throw new Error(`StreamMiddleware - Retry limit exceeded for request id "${e.id}"`);const r=t[e.id];r&&(r.retryCount=n+1),o(e)})),r.emit("notification",n)}(n)}catch(e){a=e}s(a)}}),r=new Pu;return{events:r,middleware:(e,n,r,i)=>{t[e.id]={req:e,res:n,next:r,end:i},o(e)},stream:n};function o(e){n.push(e)}}var uf={},df={exports:{}},hf=function e(t,n){if(t&&n)return e(t)(n);if("function"!=typeof t)throw new TypeError("need wrapper function");return Object.keys(t).forEach((function(e){r[e]=t[e]})),r;function r(){for(var e=new Array(arguments.length),n=0;nt.destroy(e||void 0))),t}ignoreStream(e){if(!e)throw new Error("ObjectMultiplex - name must not be empty");if(this._substreams[e])throw new Error(`ObjectMultiplex - Substream for name "${e}" already exists`);this._substreams[e]=Sf}_read(){}_write(e,t,n){const{name:r,data:o}=e;if(!r)return console.warn(`ObjectMultiplex - malformed chunk without name "${e}"`),n();const i=this._substreams[r];return i?(i!==Sf&&i.push(o),n()):(console.warn(`ObjectMultiplex - orphaned data for stream "${r}"`),n())}};uf.ObjectMultiplex=kf;var xf=mn(uf.ObjectMultiplex);const Af=e=>null!==e&&"object"==typeof e&&"function"==typeof e.pipe;Af.writable=e=>Af(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState,Af.readable=e=>Af(e)&&!1!==e.readable&&"function"==typeof e._read&&"object"==typeof e._readableState,Af.duplex=e=>Af.writable(e)&&Af.readable(e),Af.transform=e=>Af.duplex(e)&&"function"==typeof e._transform;var Mf,Rf=Af,Tf=class extends ad{constructor(e,{jsonRpcStreamName:t,logger:n=console,maxEventListeners:r=100,rpcMiddleware:o=[]}){if(super({logger:n,maxEventListeners:r,rpcMiddleware:o}),!Rf.duplex(e))throw new Error(sc.errors.invalidDuplexStream());this._handleStreamDisconnect=this._handleStreamDisconnect.bind(this);const i=new xf;cf.pipeline(e,i,e,this._handleStreamDisconnect.bind(this,"MetaMask")),this._jsonRpcConnection=lf({retryOnMessage:"METAMASK_EXTENSION_CONNECT_CAN_RETRY"}),cf.pipeline(this._jsonRpcConnection.stream,i.createStream(t),this._jsonRpcConnection.stream,this._handleStreamDisconnect.bind(this,"MetaMask RpcProvider")),this._rpcEngine.push(this._jsonRpcConnection.middleware),this._jsonRpcConnection.events.on("notification",(t=>{const{method:n,params:r}=t;"metamask_accountsChanged"===n?this._handleAccountsChanged(r):"metamask_unlockStateChanged"===n?this._handleUnlockStateChanged(r):"metamask_chainChanged"===n?this._handleChainChanged(r):$u.includes(n)?this.emit("message",{type:n,data:r}):"METAMASK_STREAM_FAILURE"===n&&e.destroy(new Error(sc.errors.permanentlyDisconnected()))}))}async _initializeStateAsync(){let e;try{e=await this.request({method:"metamask_getProviderState"})}catch(e){this._log.error("MetaMask: Failed to get initial state. Please report this bug.",e)}this._initializeState(e)}_handleStreamDisconnect(e,t){let n=`MetaMask: Lost connection to "${e}".`;t?.stack&&(n+=`\n${t.stack}`),this._log.warn(n),this.listenerCount("error")>0&&this.emit("error",n),this._handleDisconnect(!1,t?t.message:void 0)}_handleChainChanged({chainId:e,networkVersion:t}={}){Ku(e)&&(e=>Boolean(e)&&"string"==typeof e)(t)?"loading"===t?this._handleDisconnect(!0):super._handleChainChanged({chainId:e}):this._log.error(sc.errors.invalidNetworkParams(),{chainId:e,networkVersion:t})}},Of=class extends Tf{constructor(e,{jsonRpcStreamName:t="metamask-provider",logger:n=console,maxEventListeners:r=100,shouldSendMetadata:o}={}){if(super(e,{jsonRpcStreamName:t,logger:n,maxEventListeners:r,rpcMiddleware:ju(n)}),this._sentWarnings={chainId:!1,networkVersion:!1,selectedAddress:!1,enable:!1,experimentalMethods:!1,send:!1,events:{close:!1,data:!1,networkChanged:!1,notification:!1}},Zu(this,Mf,void 0),this._initializeStateAsync(),Ju(this,Mf,null),this.isMetaMask=!0,this._sendSync=this._sendSync.bind(this),this.enable=this.enable.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this._warnOfDeprecation=this._warnOfDeprecation.bind(this),this._metamask=this._getExperimentalApi(),this._jsonRpcConnection.events.on("notification",(e=>{const{method:t}=e;$u.includes(t)&&(this.emit("data",e),this.emit("notification",e.params.result))})),o)if("complete"===document.readyState)zu(this._rpcEngine,this._log);else{const e=()=>{zu(this._rpcEngine,this._log),window.removeEventListener("DOMContentLoaded",e)};window.addEventListener("DOMContentLoaded",e)}}get chainId(){return this._sentWarnings.chainId||(this._log.warn(sc.warnings.chainIdDeprecation),this._sentWarnings.chainId=!0),super.chainId}get networkVersion(){return this._sentWarnings.networkVersion||(this._log.warn(sc.warnings.networkVersionDeprecation),this._sentWarnings.networkVersion=!0),Yu(this,Mf)}get selectedAddress(){return this._sentWarnings.selectedAddress||(this._log.warn(sc.warnings.selectedAddressDeprecation),this._sentWarnings.selectedAddress=!0),super.selectedAddress}sendAsync(e,t){this._rpcRequest(e,t)}addListener(e,t){return this._warnOfDeprecation(e),super.addListener(e,t)}on(e,t){return this._warnOfDeprecation(e),super.on(e,t)}once(e,t){return this._warnOfDeprecation(e),super.once(e,t)}prependListener(e,t){return this._warnOfDeprecation(e),super.prependListener(e,t)}prependOnceListener(e,t){return this._warnOfDeprecation(e),super.prependOnceListener(e,t)}_handleDisconnect(e,t){super._handleDisconnect(e,t),Yu(this,Mf)&&!e&&Ju(this,Mf,null)}_warnOfDeprecation(e){!1===this._sentWarnings?.events[e]&&(this._log.warn(sc.warnings.events[e]),this._sentWarnings.events[e]=!0)}async enable(){return this._sentWarnings.enable||(this._log.warn(sc.warnings.enableDeprecation),this._sentWarnings.enable=!0),new Promise(((e,t)=>{try{this._rpcRequest({method:"eth_requestAccounts",params:[]},Fu(e,t))}catch(e){t(e)}}))}send(e,t){return this._sentWarnings.send||(this._log.warn(sc.warnings.sendDeprecation),this._sentWarnings.send=!0),"string"!=typeof e||t&&!Array.isArray(t)?e&&"object"==typeof e&&"function"==typeof t?this._rpcRequest(e,t):this._sendSync(e):new Promise(((n,r)=>{try{this._rpcRequest({method:e,params:t},Fu(n,r,!1))}catch(e){r(e)}}))}_sendSync(e){let t;switch(e.method){case"eth_accounts":t=this.selectedAddress?[this.selectedAddress]:[];break;case"eth_coinbase":t=this.selectedAddress??null;break;case"eth_uninstallFilter":this._rpcRequest(e,Hu),t=!0;break;case"net_version":t=Yu(this,Mf)??null;break;default:throw new Error(sc.errors.unsupportedSync(e.method))}return{id:e.id,jsonrpc:e.jsonrpc,result:t}}_getExperimentalApi(){return new Proxy({isUnlocked:async()=>(this._state.initialized||await new Promise((e=>{this.on("_initialized",(()=>e()))})),this._state.isUnlocked),requestBatch:async e=>{if(!Array.isArray(e))throw tu({message:"Batch requests must be made with an array of request objects.",data:e});return new Promise(((t,n)=>{this._rpcRequest(e,Fu(t,n))}))}},{get:(e,t,...n)=>(this._sentWarnings.experimentalMethods||(this._log.warn(sc.warnings.experimentalMethods),this._sentWarnings.experimentalMethods=!0),Reflect.get(e,t,...n))})}_handleChainChanged({chainId:e,networkVersion:t}={}){super._handleChainChanged({chainId:e,networkVersion:t}),this._state.isConnected&&t!==Yu(this,Mf)&&(Ju(this,Mf,t),this._state.initialized&&this.emit("networkChanged",Yu(this,Mf)))}};Mf=new WeakMap;const If=c()("MM_SDK");If.color="#FFAC1C";var Lf={},Pf={};Object.defineProperty(Pf,"__esModule",{value:!0}),Pf.EthereumProviderError=Pf.EthereumRpcError=void 0;const Nf=jl;class Bf extends Error{constructor(e,t,n){if(!Number.isInteger(e))throw new Error('"code" must be an integer.');if(!t||"string"!=typeof t)throw new Error('"message" must be a nonempty string.');super(t),this.code=e,void 0!==n&&(this.data=n)}serialize(){const e={code:this.code,message:this.message};return void 0!==this.data&&(e.data=this.data),this.stack&&(e.stack=this.stack),e}toString(){return Nf.default(this.serialize(),Df,2)}}function Df(e,t){if("[Circular]"!==t)return t}Pf.EthereumRpcError=Bf,Pf.EthereumProviderError=class extends Bf{constructor(e,t,n){if(!function(e){return Number.isInteger(e)&&e>=1e3&&e<=4999}(e))throw new Error('"code" must be an integer such that: 1000 <= code <= 4999');super(e,t,n)}};var $f={},jf={};Object.defineProperty(jf,"__esModule",{value:!0}),jf.errorValues=jf.errorCodes=void 0,jf.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}},jf.errorValues={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.serializeError=e.isValidCode=e.getMessageFromCode=e.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;const t=jf,n=Pf,r=t.errorCodes.rpc.internal,o="Unspecified error message. This is a bug, please report it.",i={code:r,message:s(r)};function s(n,r=o){if(Number.isInteger(n)){const r=n.toString();if(u(t.errorValues,r))return t.errorValues[r].message;if(c(n))return e.JSON_RPC_SERVER_ERROR_MESSAGE}return r}function a(e){if(!Number.isInteger(e))return!1;const n=e.toString();return!!t.errorValues[n]||!!c(e)}function c(e){return e>=-32099&&e<=-32e3}function l(e){return e&&"object"==typeof e&&!Array.isArray(e)?Object.assign({},e):e}function u(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.JSON_RPC_SERVER_ERROR_MESSAGE="Unspecified server error.",e.getMessageFromCode=s,e.isValidCode=a,e.serializeError=function(e,{fallbackError:t=i,shouldIncludeStack:r=!1}={}){var o,c;if(!t||!Number.isInteger(t.code)||"string"!=typeof t.message)throw new Error("Must provide fallback error with integer number code and string message.");if(e instanceof n.EthereumRpcError)return e.serialize();const d={};if(e&&"object"==typeof e&&!Array.isArray(e)&&u(e,"code")&&a(e.code)){const t=e;d.code=t.code,t.message&&"string"==typeof t.message?(d.message=t.message,u(t,"data")&&(d.data=t.data)):(d.message=s(d.code),d.data={originalError:l(e)})}else{d.code=t.code;const n=null===(o=e)||void 0===o?void 0:o.message;d.message=n&&"string"==typeof n?n:t.message,d.data={originalError:l(e)}}const h=null===(c=e)||void 0===c?void 0:c.stack;return r&&e&&h&&"string"==typeof h&&(d.stack=h),d}}($f);var Uf={};Object.defineProperty(Uf,"__esModule",{value:!0}),Uf.ethErrors=void 0;const Ff=Pf,Kf=$f,Hf=jf;function zf(e,t){const[n,r]=Vf(t);return new Ff.EthereumRpcError(e,n||Kf.getMessageFromCode(e),r)}function qf(e,t){const[n,r]=Vf(t);return new Ff.EthereumProviderError(e,n||Kf.getMessageFromCode(e),r)}function Vf(e){if(e){if("string"==typeof e)return[e];if("object"==typeof e&&!Array.isArray(e)){const{message:t,data:n}=e;if(t&&"string"!=typeof t)throw new Error("Must specify string message.");return[t||void 0,n]}}return[]}Uf.ethErrors={rpc:{parse:e=>zf(Hf.errorCodes.rpc.parse,e),invalidRequest:e=>zf(Hf.errorCodes.rpc.invalidRequest,e),invalidParams:e=>zf(Hf.errorCodes.rpc.invalidParams,e),methodNotFound:e=>zf(Hf.errorCodes.rpc.methodNotFound,e),internal:e=>zf(Hf.errorCodes.rpc.internal,e),server:e=>{if(!e||"object"!=typeof e||Array.isArray(e))throw new Error("Ethereum RPC Server errors must provide single object argument.");const{code:t}=e;if(!Number.isInteger(t)||t>-32005||t<-32099)throw new Error('"code" must be an integer such that: -32099 <= code <= -32005');return zf(t,e)},invalidInput:e=>zf(Hf.errorCodes.rpc.invalidInput,e),resourceNotFound:e=>zf(Hf.errorCodes.rpc.resourceNotFound,e),resourceUnavailable:e=>zf(Hf.errorCodes.rpc.resourceUnavailable,e),transactionRejected:e=>zf(Hf.errorCodes.rpc.transactionRejected,e),methodNotSupported:e=>zf(Hf.errorCodes.rpc.methodNotSupported,e),limitExceeded:e=>zf(Hf.errorCodes.rpc.limitExceeded,e)},provider:{userRejectedRequest:e=>qf(Hf.errorCodes.provider.userRejectedRequest,e),unauthorized:e=>qf(Hf.errorCodes.provider.unauthorized,e),unsupportedMethod:e=>qf(Hf.errorCodes.provider.unsupportedMethod,e),disconnected:e=>qf(Hf.errorCodes.provider.disconnected,e),chainDisconnected:e=>qf(Hf.errorCodes.provider.chainDisconnected,e),custom:e=>{if(!e||"object"!=typeof e||Array.isArray(e))throw new Error("Ethereum Provider custom errors must provide single object argument.");const{code:t,message:n,data:r}=e;if(!n||"string"!=typeof n)throw new Error('"message" must be a nonempty string');return new Ff.EthereumProviderError(t,n,r)}}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getMessageFromCode=e.serializeError=e.EthereumProviderError=e.EthereumRpcError=e.ethErrors=e.errorCodes=void 0;const t=Pf;Object.defineProperty(e,"EthereumRpcError",{enumerable:!0,get:function(){return t.EthereumRpcError}}),Object.defineProperty(e,"EthereumProviderError",{enumerable:!0,get:function(){return t.EthereumProviderError}});const n=$f;Object.defineProperty(e,"serializeError",{enumerable:!0,get:function(){return n.serializeError}}),Object.defineProperty(e,"getMessageFromCode",{enumerable:!0,get:function(){return n.getMessageFromCode}});const r=Uf;Object.defineProperty(e,"ethErrors",{enumerable:!0,get:function(){return r.ethErrors}});const o=jf;Object.defineProperty(e,"errorCodes",{enumerable:!0,get:function(){return o.errorCodes}})}(Lf);const Wf={METAMASK_GETPROVIDERSTATE:"metamask_getProviderState",METAMASK_CONNECTSIGN:"metamask_connectSign",METAMASK_CONNECTWITH:"metamask_connectWith",METAMASK_OPEN:"metamask_open",METAMASK_BATCH:"metamask_batch",PERSONAL_SIGN:"personal_sign",WALLET_REQUESTPERMISSIONS:"wallet_requestPermissions",WALLET_REVOKEPERMISSIONS:"wallet_revokePermissions",WALLET_GETPERMISSIONS:"wallet_getPermissions",WALLET_WATCHASSET:"wallet_watchAsset",WALLET_ADDETHEREUMCHAIN:"wallet_addEthereumChain",WALLET_SWITCHETHETHEREUMCHAIN:"wallet_switchEthereumChain",ETH_REQUESTACCOUNTS:"eth_requestAccounts",ETH_ACCOUNTS:"eth_accounts",ETH_CHAINID:"eth_chainId",ETH_SENDTRANSACTION:"eth_sendTransaction",ETH_SIGNTYPEDDATA:"eth_signTypedData",ETH_SIGNTYPEDDATA_V3:"eth_signTypedData_v3",ETH_SIGNTYPEDDATA_V4:"eth_signTypedData_v4",ETH_SIGNTRANSACTION:"eth_signTransaction",ETH_SIGN:"eth_sign",PERSONAL_EC_RECOVER:"personal_ecRecover"},Gf={[Wf.ETH_REQUESTACCOUNTS]:!0,[Wf.ETH_SENDTRANSACTION]:!0,[Wf.ETH_SIGNTRANSACTION]:!0,[Wf.ETH_SIGN]:!0,[Wf.PERSONAL_SIGN]:!0,[Wf.ETH_ACCOUNTS]:!1,[Wf.ETH_CHAINID]:!1,[Wf.PERSONAL_SIGN]:!0,[Wf.ETH_SIGNTYPEDDATA]:!0,[Wf.ETH_SIGNTYPEDDATA_V3]:!0,[Wf.ETH_SIGNTYPEDDATA_V4]:!0,[Wf.WALLET_REQUESTPERMISSIONS]:!0,[Wf.WALLET_GETPERMISSIONS]:!0,[Wf.WALLET_WATCHASSET]:!0,[Wf.WALLET_ADDETHEREUMCHAIN]:!0,[Wf.WALLET_SWITCHETHETHEREUMCHAIN]:!0,[Wf.METAMASK_CONNECTSIGN]:!0,[Wf.METAMASK_CONNECTWITH]:!0,[Wf.PERSONAL_EC_RECOVER]:!0,[Wf.METAMASK_BATCH]:!0,[Wf.METAMASK_OPEN]:!0},Yf=Object.keys(Gf).map((e=>e.toLowerCase())),Zf=["eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sign"].map((e=>e.toLowerCase())),Jf=".sdk-comm",Xf="providerType",Qf=".MMSDK_cached_address",ep=".MMSDK_cached_chainId",tp={CHAIN_CHANGED:"chainChanged",ACCOUNTS_CHANGED:"accountsChanged",DISCONNECT:"disconnect",CONNECT:"connect",CONNECTED:"connected"};class np{constructor({enabled:e}={enabled:!1}){this.enabled=!1,this.enabled=e}persistChannelConfig(e){return ht(this,void 0,void 0,(function*(){const t=JSON.stringify(e);If(`[StorageManagerWeb: persistChannelConfig()] enabled=${this.enabled}`,e),localStorage.setItem(Jf,t)}))}getPersistedChannelConfig(){return ht(this,void 0,void 0,(function*(){let e;try{if(If(`[StorageManagerWeb: getPersistedChannelConfig()] enabled=${this.enabled}`),e=localStorage.getItem(Jf),If("[StorageManagerWeb: getPersistedChannelConfig()]",e),!e)return;const t=JSON.parse(e);return If("[StorageManagerWeb: getPersistedChannelConfig()] channelConfig",t),t}catch(e){return void console.error("[StorageManagerWeb: getPersistedChannelConfig()] Can't find existing channel config",e)}}))}persistAccounts(e){return ht(this,void 0,void 0,(function*(){If(`[StorageManagerWeb: persistAccounts()] enabled=${this.enabled}`,e);const t=JSON.stringify(e);localStorage.setItem(Qf,t)}))}getCachedAccounts(){return ht(this,void 0,void 0,(function*(){try{const e=localStorage.getItem(Qf);return e?JSON.parse(e):[]}catch(e){throw console.error("[StorageManagerWeb: getCachedAccounts()] Error reading cached accounts",e),e}}))}persistChainId(e){return ht(this,void 0,void 0,(function*(){If(`[StorageManagerWeb: persistChainId()] enabled=${this.enabled}`,e),localStorage.setItem(ep,e)}))}getCachedChainId(){return ht(this,void 0,void 0,(function*(){try{const e=localStorage.getItem(ep);return null!=e?e:void 0}catch(e){throw console.error("[StorageManagerWeb: getCachedChainId()] Error reading cached chainId",e),e}}))}terminate(){return ht(this,void 0,void 0,(function*(){If(`[StorageManagerWeb: terminate()] enabled=${this.enabled}`),localStorage.removeItem(Jf)}))}}const rp=e=>new np(e);class op extends Of{constructor({connectionStream:e,shouldSendMetadata:t,autoRequestAccounts:n=!1}){super(e,{logger:console,maxEventListeners:100,shouldSendMetadata:t}),this.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:"",networkVersion:""},If(`[SDKProvider: constructor()] autoRequestAccounts=${n}`),this.state.autoRequestAccounts=n}forceInitializeState(){return ht(this,void 0,void 0,(function*(){return If(`[SDKProvider: forceInitializeState()] autoRequestAccounts=${this.state.autoRequestAccounts}`),this._initializeStateAsync()}))}_setConnected(){If("[SDKProvider: _setConnected()] Setting connected state"),this._state.isConnected=!0}getState(){return this._state}getSDKProviderState(){return this.state}getSelectedAddress(){var e;const{accounts:t}=this._state;return t&&0!==t.length?(null===(e=t[0])||void 0===e?void 0:e.toLowerCase())||"":(If("[SDKProvider: getSelectedAddress] No accounts found"),null)}getChainId(){return this.state.chainId}getNetworkVersion(){return this.state.networkVersion}setSDKProviderState(e){this.state=Object.assign(Object.assign({},this.state),e)}handleAccountsChanged(e,t){return this._handleAccountsChanged(e,t)}handleDisconnect({terminate:e=!1}){!function({terminate:e=!1,instance:t}){const{state:n}=t;If(`[SDKProvider: handleDisconnect()] cleaning up provider state terminate=${e}`,t),e&&(t._state.accounts=null,t._state.isUnlocked=!1,t._state.isPermanentlyDisconnected=!0,t._state.initialized=!1),t._handleAccountsChanged([]),t._state.isConnected=!1,t.emit("disconnect",Lf.ethErrors.provider.disconnected()),n.providerStateRequested=!1}({terminate:e,instance:this})}_initializeStateAsync(){return ht(this,void 0,void 0,(function*(){return function(e){var t,n;return ht(this,void 0,void 0,(function*(){void 0===e.state&&(e.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:""});const{state:r}=e;let o;if(r.providerStateRequested)If("[SDKProvider: initializeStateAsync()] initialization already in progress");else{let i;r.providerStateRequested=!0;let s=null,a=!1,c=!1;const l=rp({enabled:!0});if(l){const e=yield l.getPersistedChannelConfig({});a=null!==(t=null==e?void 0:e.relayPersistence)&&void 0!==t&&t,i=yield l.getCachedChainId();const n=yield l.getCachedAccounts();n.length>0&&(s=n[0])}if(If(`[SDKProvider: initializeStateAsync()] relayPersistence=${a}`,{relayPersistence:a,cachedChainId:i,cachedSelectedAddress:s}),a)if(i&&s)o={accounts:[s],chainId:i,isUnlocked:!1},c=!0;else try{o=yield e.request({method:"metamask_getProviderState"})}catch(t){return e._log.error("MetaMask: Failed to get initial state. Please report this bug.",t),void(r.providerStateRequested=!1)}if(0===(null===(n=null==o?void 0:o.accounts)||void 0===n?void 0:n.length))if(e.getSelectedAddress())o.accounts=[e.getSelectedAddress()];else{If("[SDKProvider: initializeStateAsync()] Fetch accounts remotely.");const t=yield e.request({method:"eth_requestAccounts",params:[]});o.accounts=t}e._initializeState(o),r.providerStateRequested=!1,c&&(e._state.isConnected=!0,e.emit("connect",{chainId:null==o?void 0:o.chainId}))}}))}(this)}))}_initializeState(e){return If("[SDKProvider: _initializeState()]",e),function(e,t,n){return If("[SDKProvider: initializeState()] set state._initialized to false"),e._state.initialized=!1,t(n)}(this,super._initializeState.bind(this),e)}_handleChainChanged({chainId:e,networkVersion:t}={}){this.state.chainId=e,this.state.networkVersion=t,function({instance:e,chainId:t,networkVersion:n,superHandleChainChanged:r}){If(`[SDKProvider: handleChainChanged()] chainId=${t} networkVersion=${n}`);let o=n;n||(If("[SDKProvider: handleChainChanged()] forced network version to prevent provider error"),o="1"),e._state.isConnected=!0,e.emit("connect",{chainId:t}),r({chainId:t,networkVersion:o})}({instance:this,chainId:e,networkVersion:t,superHandleChainChanged:super._handleChainChanged.bind(this)})}}var ip,sp={name:"@metamask/sdk",version:"0.31.4",description:"",homepage:"https://github.com/MetaMask/metamask-sdk#readme",bugs:{url:"https://github.com/MetaMask/metamask-sdk/issues"},repository:{type:"git",url:"https://github.com/MetaMask/metamask-sdk",directory:"packages/sdk"},main:"dist/node/cjs/metamask-sdk.js",module:"dist/browser/es/metamask-sdk.js",browser:"dist/browser/es/metamask-sdk.js",unpkg:"dist/browser/umd/metamask-sdk.js","react-native":"dist/react-native/es/metamask-sdk.js",types:"dist/types/src/index.d.ts",sideEffects:!1,files:["/dist"],scripts:{"build:types":"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types",build:"yarn build:types && rollup -c --bundleConfigAsCjs","build:clean":"yarn clean && yarn build","build:dev":"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs","build:post-tsc":"echo 'N/A'","build:pre-tsc":"echo 'N/A'",typecheck:"tsc --noEmit",clean:"rimraf ./dist",size:"node bundle-size && size-limit",lint:"yarn lint:eslint && yarn lint:misc --check","lint:changelog":"../../scripts/validate-changelog.sh @metamask/sdk","lint:eslint":"eslint . --cache --ext js,ts","lint:fix":"yarn lint:eslint --fix && yarn lint:misc --write","lint:misc":"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore",prepack:"../../scripts/prepack.sh","publish:preview":"yarn npm publish --tag preview",reset:"yarn clean && rimraf ./node_modules/",test:'jest --testPathIgnorePatterns "/e2e/"',"test:coverage":'jest --coverage --testPathIgnorePatterns "/e2e/"',"test:e2e":'jest --testPathPattern "/e2e/"',"test:ci":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns "/e2e/"',"test:dev":'jest -c ./jest.config.ts --detectOpenHandles --testPathIgnorePatterns "/e2e/"',watch:"rollup -c -w"},dependencies:{"@babel/runtime":"^7.26.0","@metamask/onboarding":"^1.0.1","@metamask/providers":"16.1.0","@metamask/sdk-communication-layer":"workspace:*","@metamask/sdk-install-modal-web":"workspace:*","@paulmillr/qr":"^0.2.1",bowser:"^2.9.0","cross-fetch":"^4.0.0",debug:"^4.3.4",eciesjs:"^0.4.11","eth-rpc-errors":"^4.0.3",eventemitter2:"^6.4.9","obj-multiplex":"^1.0.0",pump:"^3.0.0","readable-stream":"^3.6.2","socket.io-client":"^4.5.1",tslib:"^2.6.0",util:"^0.12.4",uuid:"^8.3.2"},devDependencies:{"@jest/globals":"^29.3.1","@lavamoat/allow-scripts":"^2.3.1","@metamask/auto-changelog":"3.1.0","@metamask/eslint-config":"^6.0.0","@metamask/eslint-config-nodejs":"^6.0.0","@metamask/eslint-config-typescript":"^6.0.0","@react-native-async-storage/async-storage":"^1.19.6","@rollup/plugin-alias":"^5.1.1","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-replace":"^6.0.1","@rollup/plugin-terser":"^0.4.1","@size-limit/preset-big-lib":"^11.0.2","@types/dom-screen-wake-lock":"^1.0.2","@types/node":"^20.1.3","@types/pump":"^1.1.1","@types/qrcode-terminal":"^0.12.0","@types/uuid":"^10.0.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","browserify-zlib":"^0.2.0",buffer:"^6.0.3","crypto-browserify":"^3.12.0",eslint:"^7.30.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.23.4","eslint-plugin-jest":"^24.4.0","eslint-plugin-jsdoc":"^36.1.0","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","https-browserify":"^1.0.0",jest:"^29.3.1","jest-environment-jsdom":"^29.3.1",prettier:"^2.3.0",process:"^0.11.10",rimraf:"^4.4.0",rollup:"^4.26.0","rollup-plugin-analyzer":"^4.0.0","rollup-plugin-jscc":"^2.0.0","rollup-plugin-natives":"^0.7.5","rollup-plugin-node-builtins":"^2.1.2","rollup-plugin-polyfill-node":"^0.13.0","rollup-plugin-sizes":"^1.0.6","rollup-plugin-typescript2":"^0.31.2","rollup-plugin-visualizer":"^5.12.0","size-limit":"^11.0.2","stream-browserify":"^3.0.0","stream-http":"^3.2.0","ts-jest":"^29.0.3","ts-node":"^10.9.1",typescript:"^4.3.2",url:"^0.11.0",webpack:"^5.0.0"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},lavamoat:{allowScripts:{"eciesjs>secp256k1":!1,"socket.io-client>engine.io-client>ws>bufferutil":!1,"socket.io-client>engine.io-client>ws>utf-8-validate":!1,"@metamask/sdk-communication-layer>bufferutil":!1,"@metamask/sdk-communication-layer>eciesjs>secp256k1":!1,"@metamask/sdk-communication-layer>utf-8-validate":!1}}};!function(e){e.INPAGE="metamask-inpage",e.CONTENT_SCRIPT="metamask-contentscript",e.PROVIDER="metamask-provider"}(ip||(ip={}));const ap="direct",cp="https://metamask.app.link/connect",lp="metamask://connect",up={NAME:"MetaMask",RDNS:"io.metamask"},dp=/(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u,hp={Initialized:"initialized",DisplayURI:"display_uri",ProviderUpdate:"provider_update",ConnectWithResponse:"connectWithResponse",ConnectionStatus:"connection_status",ServiceStatus:"service_status"};var fp;!function(e){e.TERMINATE="terminate",e.EXTENSION="extension",e.INITIALIZED="initialized"}(fp||(fp={}));const pp="undefined"!=typeof window&&window.localStorage;function gp({instance:e,msg:t}){return ht(this,void 0,void 0,(function*(){if(e._initialized||(If("[MetaMaskSDK: connectAndSign()] provider not ready -- wait for init()"),yield e.init()),If(`[MetaMaskSDK: connectAndSign()] activeProvider=${e.activeProvider}`),!e.activeProvider)throw new Error("SDK state invalid -- undefined provider");const n=/^0x([0-9A-Fa-f]{2})*$/u.test(t)?t:function(e){let t;if(void 0!==Mt)t=Mt.from(e,"utf8").toString("hex");else if("undefined"!=typeof TextEncoder){const n=(new TextEncoder).encode(e);t=Array.from(n).map((e=>e.toString(16).padStart(2,"0"))).join("")}else{if("object"!=typeof ft||!("Buffer"in ft))throw new Error("Unable to convert string to hex: No available method.");t=ft.Buffer.from(e,"utf8").toString("hex")}return`0x${t}`}(t);return e.activeProvider.request({method:Wf.METAMASK_CONNECTWITH,params:[{method:Wf.PERSONAL_SIGN,params:[n]}]})}))}function mp(e){var t,n;return ht(this,void 0,void 0,(function*(){If("[MetaMaskSDK: connectWithExtensionProvider()] ",e),e.sdkProvider=e.activeProvider,e.activeProvider=window.extension,window.ethereum=window.extension;try{const e=yield null===(t=window.extension)||void 0===t?void 0:t.request({method:"eth_requestAccounts"});If(`[MetaMaskSDK: connectWithExtensionProvider()] accounts=${e}`)}catch(e){return void console.warn("[MetaMaskSDK: connectWithExtensionProvider()] can't request accounts error",e)}localStorage.setItem(Xf,"extension"),e.extensionActive=!0,e.emit(hp.ProviderUpdate,fp.EXTENSION),e.options.enableAnalytics&&(null===(n=e.analytics)||void 0===n||n.send({event:Ma.SDK_USE_EXTENSION}))}))}function yp(e){let t;if(void 0!==Mt)t=Mt.from(e,"utf8").toString("base64");else if("function"==typeof btoa)t=btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/gu,((e,t)=>String.fromCharCode(parseInt(t,16)))));else{if("object"!=typeof ft||!("Buffer"in ft))throw new Error("Unable to base64 encode: No available method.");t=ft.Buffer.from(e,"utf8").toString("base64")}return t}class vp{constructor({shouldSetOnWindow:e,connectionStream:t,shouldSendMetadata:n=!1,shouldShimWeb3:r,sdkInstance:o}){const i=new op({connectionStream:t,shouldSendMetadata:n,shouldSetOnWindow:e,shouldShimWeb3:r,autoRequestAccounts:!1}),s=new Proxy(i,{deleteProperty:()=>!0});if(this.provider=s,this.sdkInstance=o,e&&"undefined"!=typeof window)try{a=i,window.ethereum=a,window.dispatchEvent(new Event("ethereum#initialized"))}catch(e){If("[Ethereum] Unable to set global provider - window.ethereum may be read-only",e)}var a;if(r&&"undefined"!=typeof window)try{!function(e,t=console){let n=!1,r=!1;if(!window.web3){const o="__isMetaMaskShim__";let i={currentProvider:e};Object.defineProperty(i,o,{value:!0,enumerable:!0,configurable:!1,writable:!1}),i=new Proxy(i,{get:(i,s,...a)=>("currentProvider"!==s||n?"currentProvider"===s||s===o||r||(r=!0,t.error("MetaMask no longer injects web3. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3"),e.request({method:"metamask_logWeb3ShimUsage"}).catch((e=>{t.debug("MetaMask: Failed to log web3 shim usage.",e)}))):(n=!0,t.warn("You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3")),Reflect.get(i,s,...a)),set:(...e)=>(t.warn("You are accessing the MetaMask window.web3 shim. This object is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3"),Reflect.set(...e))}),Object.defineProperty(window,"web3",{value:i,enumerable:!1,configurable:!0,writable:!0})}}(this.provider)}catch(e){If("[Ethereum] Unable to shim web3 - window.web3 may be read-only",e)}this.provider.on("display_uri",(e=>{this.sdkInstance.emit(hp.DisplayURI,e)})),this.provider.on("_initialized",(()=>{const e={chainId:this.provider.getChainId(),isConnected:this.provider.isConnected(),isMetaMask:this.provider.isMetaMask,selectedAddress:this.provider.getSelectedAddress(),networkVersion:this.provider.getNetworkVersion()};this.sdkInstance.emit(hp.Initialized,e),If("[Ethereum: constructor()] provider initialized",e)}))}static init(e){var t;return If("[Ethereum: init()] Initializing Ethereum service"),this.instance=new vp(e),null===(t=this.instance)||void 0===t?void 0:t.provider}static destroy(){}static getInstance(){var e;if(!(null===(e=this.instance)||void 0===e?void 0:e.provider))throw new Error("Ethereum instance not intiialized - call Ethereum.factory first.");return this.instance}static getProvider(){var e;if(!(null===(e=this.instance)||void 0===e?void 0:e.provider))throw new Error("Ethereum instance not intiialized - call Ethereum.factory first.");return this.instance.provider}}function bp(e,t,n,r){var o,i,s,a,c,l,u,d,h,f,p,g,m,y,v,b,w,E,_,C;return ht(this,void 0,void 0,(function*(){const n=null===(o=e.state.remote)||void 0===o?void 0:o.isReady(),S=null===(i=e.state.remote)||void 0===i?void 0:i.isConnected(),k=null===(s=e.state.remote)||void 0===s?void 0:s.isPaused(),x=vp.getProvider(),A=null===(a=e.state.remote)||void 0===a?void 0:a.getChannelId(),M=null===(c=e.state.remote)||void 0===c?void 0:c.isAuthorized(),{deeplinkProtocol:R}=e.state,{method:T,data:O,triggeredInstaller:I}=(e=>{var t,n,r,o;let i;Mt.isBuffer(e)?(i=e.toJSON(),i._isBuffer=!0):i=e;const s=null===(t=null==i?void 0:i.data)||void 0===t?void 0:t.method;let a=!1;return"object"==typeof(null===(n=null==i?void 0:i.data)||void 0===n?void 0:n.params)&&!0===(null===(o=null===(r=null==i?void 0:i.data)||void 0===r?void 0:r.params)||void 0===o?void 0:o.__triggeredInstaller)&&(a=!0,i.data.params=i.data.params.wrappedParams),{method:s,data:i,triggeredInstaller:a}})(t);if(If(`[RCPMS: write()] method='${T}' isRemoteReady=${n} channelId=${A} isSocketConnected=${S} isRemotePaused=${k} providerConnected=${x.isConnected()}`,t),!A)return T!==Wf.METAMASK_GETPROVIDERSTATE&&If(`[RCPMS: write()] ${T} --\x3e channelId is undefined`),r(new Error("disconnected"));If(`[RCPMS: write()] remote.isPaused()=${null===(l=e.state.remote)||void 0===l?void 0:l.isPaused()} authorized=${M} ready=${n} socketConnected=${S}`,t);const L=null===(u=e.state.platformManager)||void 0===u?void 0:u.isSecure(),P=null!==(h=null===(d=e.state.platformManager)||void 0===d?void 0:d.isMobileWeb())&&void 0!==h&&h,N=null!==(p=null===(f=e.state.remote)||void 0===f?void 0:f.hasDeeplinkProtocol())&&void 0!==p&&p&&P&&M;try{if(console.warn(`[RCPMS: _write()] triggeredInstaller=${I} activeDeeplinkProtocol=${N}`),I||null===(g=e.state.remote)||void 0===g||g.sendMessage(null==O?void 0:O.data).then((()=>{If(`[RCPMS: _write()] ${T} sent successfully`)})).catch((e=>{If("[RCPMS: _write()] error sending message",e)})),!L)return If(`[RCPMS: _write()] unsecure platform for method ${T} -- return callback`),r();if(I)return If("[RCPMS: _write()] prevent deeplink -- installation completed separately."),r();const t=null!==(v=null===(y=null===(m=e.state.remote)||void 0===m?void 0:m.getKeyInfo())||void 0===y?void 0:y.ecies.public)&&void 0!==v?v:"";let n=encodeURI(`channelId=${A}&pubkey=${t}&comm=socket&t=d&v=2`);if(N){const t=JSON.stringify(null==O?void 0:O.data),o=null===(b=e.state.remote)||void 0===b?void 0:b.encrypt(t);if(!o)return If("[RCPMS: _write()] error encrypting message"),r(new Error("RemoteCommunicationPostMessageStream - disconnected"));n+=`&scheme=${R}&rpc=${yp(o)}`}if(!(null===(w=e.state.platformManager)||void 0===w?void 0:w.isMetaMaskInstalled()))return If("[RCPMS: _write()] prevent deeplink until installation is completed."),r();Gf[T]?(If(`[RCPMS: _write()] redirect link for '${T}' socketConnected=${S} connect?${n}`),null===(E=e.state.platformManager)||void 0===E||E.openDeeplink(`${cp}?${n}`,`${lp}?${n}`,"_self")):(null===(_=e.state.remote)||void 0===_?void 0:_.isPaused())?(If(`[RCPMS: _write()] MM is PAUSED! deeplink with connect! targetMethod=${T}`),null===(C=e.state.platformManager)||void 0===C||C.openDeeplink(`${cp}?redirect=true&${n}`,`${lp}?redirect=true&${n}`,"_self")):If(`[RCPMS: _write()] method ${T} doesn't need redirect.`)}catch(e){return If("[RCPMS: _write()] error sending message",e),r(new Error("RemoteCommunicationPostMessageStream - disconnected"))}return r()}))}class wp extends cf.Duplex{constructor({name:e,remote:t,deeplinkProtocol:n,platformManager:r}){super({objectMode:!0}),this.state={_name:null,remote:null,deeplinkProtocol:!1,platformManager:null},this.state._name=e,this.state.remote=t,this.state.deeplinkProtocol=n,this.state.platformManager=r,this._onMessage=this._onMessage.bind(this),this.state.remote.on(Sa.MESSAGE,this._onMessage)}_write(e,t,n){return ht(this,void 0,void 0,(function*(){return bp(this,e,0,n)}))}_read(){}_onMessage(e){return function(e,t){try{if(If("[RCPMS: onMessage()] message",t),!t||"object"!=typeof t)return;if("object"!=typeof(null==t?void 0:t.data))return;if(!(null==t?void 0:t.name))return void If("[RCPMS: onMessage()] ignore message without name",t);if((null==t?void 0:t.name)!==ip.PROVIDER)return void If(`[RCPMS: onMessage()] ignore message with wrong name message=${t}`);if(Mt.isBuffer(t)){const n=Mt.from(t);e.push(n)}else e.push(t)}catch(e){If(`[RCPMS: onMessage()] ignore message error err=${e}`)}}(this,e)}start(){}}let Ep=1;const _p=e=>new Promise((t=>{setTimeout((()=>{t(!0)}),e)})),Cp=({checkInstallationOnAllCalls:e=!1,communicationLayerPreference:t,injectProvider:n,shouldShimWeb3:r,platformManager:o,installer:i,sdk:a,remoteConnection:c,debug:l})=>ht(void 0,void 0,void 0,(function*(){var u,d;const h=(({name:e,remoteConnection:t})=>{if(!t||!(null==t?void 0:t.getConnector()))throw new Error("Missing remote connection parameter");return new wp({name:e,remote:null==t?void 0:t.getConnector(),deeplinkProtocol:null==t?void 0:t.state.deeplinkProtocol,platformManager:null==t?void 0:t.getPlatformManager()})})({name:ip.INPAGE,target:ip.CONTENT_SCRIPT,platformManager:o,communicationLayerPreference:t,remoteConnection:c}),f=o.getPlatformType(),p=a.options.dappMetadata,g=`Sdk/Javascript SdkVersion/${sp.version} Platform/${f} dApp/${null!==(u=p.url)&&void 0!==u?u:p.name} dAppTitle/${p.name}`;let m=null,y=null;const v=null===(d=a.options.storage)||void 0===d?void 0:d.storageManager;if(v){try{const e=yield v.getCachedAccounts();e.length>0&&(m=e[0])}catch(A){console.error(`[initializeMobileProvider] failed to get cached addresses: ${A}`)}try{const e=yield v.getCachedChainId();e&&(y=e)}catch(A){console.error(`[initializeMobileProvider] failed to parse cached chainId: ${A}`)}}If(`[initializeMobileProvider] cachedAccountAddress: ${m}, cachedChainId: ${y}`);const b=!(!n||f===Ha.NonBrowser||f===Ha.ReactNative),w=vp.init({shouldSetOnWindow:b,connectionStream:h,shouldShimWeb3:r,sdkInstance:a});let E=!1;const _=e=>{E=e},C=()=>E,S=(t,n,r,l)=>ht(void 0,void 0,void 0,(function*(){var u,d,h,f,p,b,w,S,k;const x=vp.getProvider();if(E){x.emit("display_uri",(null==c?void 0:c.state.qrcodeLink)||""),null==c||c.showActiveModal();let e=C();for(;e;){const t=C(),n=null==c?void 0:c.isAuthorized();e=t&&!n,If(`[initializeMobileProvider: sendRequest()] waiting for initialization to complete - initializing: ${t} authorized: ${n}`),yield _p(1e3)}return If("[initializeMobileProvider: sendRequest()] initial method completed -- prevent installation and call provider"),r(...n)}const M=o.isMetaMaskInstalled(),R=null==c?void 0:c.isConnected();let T=null,O=null,I=null;if(T=null!==(u=x.getSelectedAddress())&&void 0!==u?u:m,I=x.getChainId()||y,T&&v&&T!==m&&v.persistAccounts([T]).catch((e=>{console.error(`[initializeMobileProvider] failed to persist account: ${e}`)})),I&&(y=I,v&&v.persistChainId(I).catch((e=>{console.error(`[initializeMobileProvider] failed to persist chainId: ${e}`)}))),If("[initializeMobileProvider: sendRequest()]",{selectedAddress:T,chainId:I}),l&&If(`[initializeMobileProvider: sendRequest()] method=${t} ongoing=${E} selectedAddress=${T} isInstalled=${M} checkInstallationOnAllCalls=${e} socketConnected=${R}`),T&&t.toLowerCase()===Wf.ETH_ACCOUNTS.toLowerCase())return[T];if(I&&t.toLowerCase()===Wf.ETH_CHAINID.toLowerCase())return I;const L=[Wf.ETH_REQUESTACCOUNTS,Wf.WALLET_REQUESTPERMISSIONS,Wf.METAMASK_CONNECTSIGN,Wf.METAMASK_CONNECTWITH],P=!Gf[t],N=null===(d=a.options.readonlyRPCMap)||void 0===d?void 0:d[I];if(N&&P)try{const e=null===(h=null==n?void 0:n[0])||void 0===h?void 0:h.params,r=yield(({rpcEndpoint:e,method:t,sdkInfo:n,params:r})=>ht(void 0,void 0,void 0,(function*(){const o=JSON.stringify({jsonrpc:"2.0",method:t,params:r,id:(Ep+=1,Ep)}),i={Accept:"application/json","Content-Type":"application/json"};let a;e.includes("infura")&&(i["Metamask-Sdk-Info"]=n);try{a=yield s()(e,{method:"POST",headers:i,body:o})}catch(A){throw A instanceof Error?new Error(`Failed to fetch from RPC: ${A.message}`):new Error(`Failed to fetch from RPC: ${A}`)}if(!a.ok)throw new Error(`Server responded with a status of ${a.status}`);return(yield a.json()).result})))({rpcEndpoint:N,sdkInfo:g,method:t,params:e||[]});return l&&If(`initializeProvider::ReadOnlyRPCResponse ${r}`),r}catch(A){console.warn(`[initializeMobileProvider: sendRequest()] method=${t} readOnlyRPCRequest failed:`,A)}if((!M||M&&!R)&&t!==Wf.METAMASK_GETPROVIDERSTATE){const s=(null===(f=null==n?void 0:n[0])||void 0===f?void 0:f.params)||[];if(-1!==L.indexOf(t)||e){_(!0);const o=t===Wf.METAMASK_CONNECTWITH,l=`${Date.now()}`;try{yield i.start({wait:!1,connectWith:o?{method:t,id:l,params:s}:void 0}),yield new Promise(((e,t)=>{(null==c?void 0:c.isAuthorized())&&(If("[initializeMobileProvider: sendRequest()] already authorized"),e(!0)),null==c||c.getConnector().once(Sa.AUTHORIZED,(()=>{e(!0)})),a.once(Sa.PROVIDER_UPDATE,(e=>{If(`[initializeMobileProvider: sendRequest()] PROVIDER_UPDATE --- remote provider request interupted type=${e}`),e===fp.EXTENSION?t(Sa.PROVIDER_UPDATE):t(new Error("Connection Terminated"))}))}))}catch(e){if(fp.EXTENSION===e){if(If(`[initializeMobileProvider: sendRequest()] extension provider detect: re-create ${t} on the active provider`),t.toLowerCase()===Wf.METAMASK_CONNECTSIGN.toLowerCase()){const e=yield null===(p=a.getProvider())||void 0===p?void 0:p.request({method:Wf.ETH_REQUESTACCOUNTS,params:[]});if(!e.length)throw new Error("SDK state invalid -- undefined accounts");const t=yield null===(b=a.getProvider())||void 0===b?void 0:b.request({method:Wf.PERSONAL_SIGN,params:[s[0],e[0]]});return a.emit(hp.ConnectWithResponse,t),t}if(t.toLowerCase()===Wf.METAMASK_CONNECTWITH.toLowerCase()){const[e]=s,t=yield(({method:e,sdk:t,params:n})=>ht(void 0,void 0,void 0,(function*(){var r,o,i,s;if(!t.isExtensionActive())throw new Error("SDK state invalid -- extension is not active");If("[MetaMaskProvider: extensionConnectWithOverwrite()] Overwriting request method",e,n);const a=yield null===(r=t.getProvider())||void 0===r?void 0:r.request({method:Wf.ETH_REQUESTACCOUNTS,params:[]});if(!a.length)throw new Error("SDK state invalid -- undefined accounts");if((null==e?void 0:e.toLowerCase())===Wf.PERSONAL_SIGN.toLowerCase()){const r={method:e,params:[n[0],a[0]]};return yield null===(o=t.getProvider())||void 0===o?void 0:o.request(r)}if((null==e?void 0:e.toLowerCase())===Wf.ETH_SENDTRANSACTION.toLowerCase()){const r={method:e,params:[Object.assign(Object.assign({},n[0]),{from:a[0]})]};return yield null===(i=t.getProvider())||void 0===i?void 0:i.request(r)}return Zf.includes(e.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${e} -- not handled by the extension -- call separately`),a):yield null===(s=t.getProvider())||void 0===s?void 0:s.request({method:e,params:n})})))({method:e.method,sdk:a,params:e.params});return a.emit(hp.ConnectWithResponse,t),t}return If(`[initializeMobileProvider: sendRequest()] sending '${t}' on active provider`,s),yield null===(w=a.getProvider())||void 0===w?void 0:w.request({method:t,params:s})}if(e===Sa.REJECTED)throw null==c||c.closeModal(),null===(S=a.getProvider())||void 0===S||S.handleDisconnect({terminate:!1}),Object.assign(new Error("User rejected connection"),{code:4001});throw If(`[initializeMobileProvider: sendRequest()] failed to start installer: ${e}`),e}finally{_(!1)}if(t===Wf.ETH_REQUESTACCOUNTS)return O=yield new Promise((e=>{const t=setInterval((()=>{const{accounts:n}=x.getState();n&&(clearInterval(t),e(n))}),100)})),If(`[initializeMobileProvider: sendRequest()] selectedAddress: ${T} --- SKIP rpc call`),O;if(t===Wf.METAMASK_CONNECTWITH)try{let e=0;const t=5,n=({resolve:n,reject:r})=>{e+=1;const o=null==c?void 0:c.getConnector().getRPCMethodTracker(),i=null==o?void 0:o[l];return If(`TRACKER: update method ${l}`,i),(null==i?void 0:i.result)?(If("[initializeMobileProvider: sendRequest()] found result",i.result),a.emit(hp.ConnectWithResponse,i.result),void n(i.result)):(null==i?void 0:i.error)?(If("[initializeMobileProvider: sendRequest()] found error",i.error),void r(i.error)):e>=t?(If("[initializeMobileProvider: sendRequest()] max message count reached without result"),void r(new Error("Max message count reached without result"))):void If("[initializeMobileProvider: sendRequest()] not found yet, need to wait for next update")};let r,o;const i=yield new Promise(((e,t)=>{const i=null==c?void 0:c.getConnector().getRPCMethodTracker();If(`TRACKER: method ${l}`,i),(null==i?void 0:i[l].result)?(If("[initializeMobileProvider: sendRequest()] found result",null==i?void 0:i[l].result),e(null==i?void 0:i[l].result)):(null==i?void 0:i[l].error)&&(If("[initializeMobileProvider: sendRequest()] found error",null==i?void 0:i[l].error),t(null==i?void 0:i[l].error)),o=()=>n({resolve:e,reject:t}),r=null==c?void 0:c.getConnector().on(Sa.RPC_UPDATE,o)}));return o&&(null==r||r.off(Sa.RPC_UPDATE,o)),If("TRACKER: result",i),i}catch(A){throw If("[initializeMobileProvider: sendRequest()] error:",A),A}return n[0]&&"object"==typeof n[0]&&(n[0].params={__triggeredInstaller:!0,wrappedParams:n[0].params}),r(...n)}if(o.isSecure()&&Gf[t])return r(...n);if(a.isExtensionActive())return If(`[initializeMobileProvider: sendRequest()] EXTENSION active - redirect request '${t}' to it`,n,s),yield null===(k=a.getProvider())||void 0===k?void 0:k.request({method:t,params:s});throw If(`[initializeMobileProvider: sendRequest()] method=${t} --- skip --- not connected/installed`),new Error("MetaMask is not connected/installed, please call eth_requestAccounts to connect first.")}try{const e=yield r(...n);if(If(`[initializeMobileProvider: sendRequest()] method=${t} rpcResponse`,e),t===Wf.WALLET_REQUESTPERMISSIONS){const t=e.reduce(((e,t)=>{var n;if("eth_accounts"===t.parentCapability){const r=null===(n=t.caveats.find((e=>"restrictReturnedAccounts"===e.type)))||void 0===n?void 0:n.value;r&&e.push(...r)}return e}),[]);If("[initializeMobileProvider: sendRequest()] accountsToPersist:",t),t.length>0&&(x.handleAccountsChanged(t,!1),null==v||v.persistAccounts(t))}return e}catch(A){throw console.error("[initializeMobileProvider: sendRequest()] error:",A),A}})),{request:k}=w;w.request=(...e)=>ht(void 0,void 0,void 0,(function*(){return S(null==e?void 0:e[0].method,e,k,l)}));const{send:x}=w;return w.send=(...e)=>ht(void 0,void 0,void 0,(function*(){return S(null==e?void 0:e[0],e,x,l)})),If("[initializeMobileProvider: sendRequest()] metamaskStream.start()"),h.start(),w}));function Sp(e){var t,n,r,o;return ht(this,void 0,void 0,(function*(){const{options:i}=e,s={communicationLayerPreference:null!==(t=i.communicationLayerPreference)&&void 0!==t?t:Ka.SOCKET,platformManager:e.platformManager,sdk:e,checkInstallationOnAllCalls:i.checkInstallationOnAllCalls,injectProvider:null===(n=i.injectProvider)||void 0===n||n,shouldShimWeb3:null===(r=i.shouldShimWeb3)||void 0===r||r,extensionOnly:null===(o=i.extensionOnly)||void 0===o||o,installer:e.installer,remoteConnection:e.remoteConnection,debug:e.debug},a=yield Cp(s);e.activeProvider=a,function(e){var t,n,r,o;null===(n=null===(t=e.remoteConnection)||void 0===t?void 0:t.getConnector())||void 0===n||n.on(hp.ConnectionStatus,(t=>{e.emit(hp.ConnectionStatus,t)})),null===(o=null===(r=e.remoteConnection)||void 0===r?void 0:r.getConnector())||void 0===o||o.on(hp.ServiceStatus,(t=>{e.emit(hp.ServiceStatus,t)}))}(e)}))}const kp="sdk";class xp{constructor({serverUrl:e,enabled:t,originatorInfo:n}){this.serverURL=ya,this.serverURL=e,this.originatorInfo=n,this.enabled=null==t||t}send({event:e,params:t}){if(!this.enabled)return;const n=Object.assign(Object.assign({id:kp,event:e,sdkVersion:sp.version},this.originatorInfo),{params:t});If(`[Analytics: send()] event: ${e}`,n),pa(n,this.serverURL).catch((e=>{If(`[Analytics: send()] error: ${e}`)}))}}const Ap=()=>{if("undefined"==typeof document)return;let e;const t=document.getElementsByTagName("link");for(let n=0;n{if("state"in e)throw new Error("INVALID EXTENSION PROVIDER");return new Proxy(e,{get:(n,r)=>"request"===r?function(e){var r,o;return ht(this,void 0,void 0,(function*(){If("[wrapExtensionProvider()] Overwriting request method",e);const{method:i,params:s}=e,a=Yf.includes(i.toLowerCase()),{id:c,from:l}=Rp(t);if(a&&(null===(r=t.analytics)||void 0===r||r.send({event:Ma.SDK_RPC_REQUEST,params:{method:i,from:l,id:c}})),i===Wf.METAMASK_BATCH&&Array.isArray(s))return(({target:e,args:t,trackEvent:n,sdkInstance:r})=>ht(void 0,void 0,void 0,(function*(){var o,i;if("metamask_batch"!==t.method)throw new Error("Invalid usage");const s=[],a=null!==(o=null==t?void 0:t.params)&&void 0!==o?o:[];for(const t of a){const n=yield null==e?void 0:e.request({method:t.method,params:t.params});s.push(n)}const{id:c,from:l}=Rp(r);return n&&(null===(i=r.analytics)||void 0===i||i.send({event:Ma.SDK_RPC_REQUEST_DONE,params:{method:t.method,from:l,id:c}})),s})))({target:n,args:e,trackEvent:a,sdkInstance:t});if(i.toLowerCase()===Wf.METAMASK_CONNECTSIGN.toLowerCase()&&Array.isArray(s))return(({target:e,params:t})=>ht(void 0,void 0,void 0,(function*(){const n=yield e.request({method:Wf.ETH_REQUESTACCOUNTS,params:[]});if(!n.length)throw new Error("SDK state invalid -- undefined accounts");return yield e.request({method:Wf.PERSONAL_SIGN,params:[t[0],n[0]]})})))({target:n,params:s});if(i.toLowerCase()===Wf.METAMASK_CONNECTWITH.toLowerCase()&&Array.isArray(s))return(({target:e,params:t})=>ht(void 0,void 0,void 0,(function*(){const[n]=t,r=n.method,o=n.params,i=yield e.request({method:Wf.ETH_REQUESTACCOUNTS,params:[]});if(!i.length)throw new Error("SDK state invalid -- undefined accounts");return(null==r?void 0:r.toLowerCase())===Wf.PERSONAL_SIGN.toLowerCase()?yield e.request({method:r,params:[o[0],i[0]]}):(null==r?void 0:r.toLowerCase())===Wf.ETH_SENDTRANSACTION.toLowerCase()?yield e.request({method:r,params:[Object.assign(Object.assign({},o[0]),{from:i[0]})]}):Zf.includes(r.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${r} -- not handled by the extension -- call separately`),i):yield e.request({method:r,params:o})})))({target:n,params:s});let u;try{return u=yield n.request(e),u}finally{a&&(null===(o=t.analytics)||void 0===o||o.send({event:Ma.SDK_RPC_REQUEST_DONE,params:{method:i,from:l,id:c}}))}}))}:"getChainId"===r?function(){return e.chainId}:"getNetworkVersion"===r?function(){return e.networkVersion}:"getSelectedAddress"===r?function(){return e.selectedAddress}:"isConnected"===r?function(){return e._state.isConnected}:n[r]})};var Op;function Ip({mustBeMetaMask:e,sdkInstance:t}){return ht(this,void 0,void 0,(function*(){if("undefined"==typeof window)throw new Error("window not available");try{const e=yield new Promise(((e,t)=>{const n=setTimeout((()=>{t(new Error("eip6963RequestProvider timed out"))}),500);window.addEventListener(Op.Announce,(t=>{const r=t,{detail:{info:o,provider:i}={}}=r,{name:s,rdns:a,uuid:c}=null!=o?o:{};dp.test(c)&&s.startsWith(up.NAME)&&a===up.RDNS&&(clearTimeout(n),e(i))})),window.dispatchEvent(new Event(Op.Request))}));return Tp({provider:e,sdkInstance:t})}catch(n){if(!e&&window.ethereum)return Tp({provider:window.ethereum,sdkInstance:t});throw new Error("Provider not found")}}))}!function(e){e.Announce="eip6963:announceProvider",e.Request="eip6963:requestProvider"}(Op||(Op={}));const Lp=e=>ht(void 0,void 0,void 0,(function*(){const{options:t}=e,{infuraAPIKey:n}=t;if(!n)return;const r={"0x1":`https://mainnet.infura.io/v3/${n}`,"0x5":`https://goerli.infura.io/v3/${n}`,"0xaa36a7":`https://sepolia.infura.io/v3/${n}`,"0xe708":`https://linea-mainnet.infura.io/v3/${n}`,"0xe704":`https://linea-goerli.infura.io/v3/${n}`,"0x89":`https://polygon-mainnet.infura.io/v3/${n}`,"0x13881":`https://polygon-mumbai.infura.io/v3/${n}`,"0x45":`https://optimism-mainnet.infura.io/v3/${n}`,"0x1a4":`https://optimism-goerli.infura.io/v3/${n}`,"0xa4b1":`https://arbitrum-mainnet.infura.io/v3/${n}`,"0x66eed":`https://arbitrum-goerli.infura.io/v3/${n}`,"0x2a15c308d":`https://palm-mainnet.infura.io/v3/${n}`,"0x2a15c3083":`https://palm-testnet.infura.io/v3/${n}`,"0xa86a":`https://avalanche-mainnet.infura.io/v3/${n}`,"0xa869":`https://avalanche-fuji.infura.io/v3/${n}`,"0x4e454152":`https://aurora-mainnet.infura.io/v3/${n}`,"0x4e454153":`https://aurora-testnet.infura.io/v3/${n}`,"0x534e5f4d41494e":`https://starknet-mainnet.infura.io/v3/${n}`,"0x534e5f474f45524c49":`https://starknet-goerli.infura.io/v3/${n}`,"0x534e5f474f45524c4932":`https://starknet-goerli2.infura.io/v3/${n}`,"0xa4ec":`https://celo-mainnet.infura.io/v3/${n}`,"0xaef3":`https://celo-alfajores.infura.io/v3/${n}`};e.options.readonlyRPCMap?e.options.readonlyRPCMap=Object.assign(Object.assign({},e.options.readonlyRPCMap),r):e.options.readonlyRPCMap=r}));var Pp={exports:{}};Pp.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=90)}({17:function(e,t,n){t.__esModule=!0,t.default=void 0;var r=n(18),o=function(){function e(){}return e.getFirstMatch=function(e,t){var n=t.match(e);return n&&n.length>0&&n[1]||""},e.getSecondMatch=function(e,t){var n=t.match(e);return n&&n.length>1&&n[2]||""},e.matchAndReturnConst=function(e,t,n){if(e.test(t))return n},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,n,r){void 0===r&&(r=!1);var o=e.getVersionPrecision(t),i=e.getVersionPrecision(n),s=Math.max(o,i),a=0,c=e.map([t,n],(function(t){var n=s-e.getVersionPrecision(t),r=t+new Array(n+1).join(".0");return e.map(r.split("."),(function(e){return new Array(20-e.length).join("0")+e})).reverse()}));for(r&&(a=s-Math.min(o,i)),s-=1;s>=a;){if(c[0][s]>c[1][s])return 1;if(c[0][s]===c[1][s]){if(s===a)return 0;s-=1}else if(c[0][s]1?o-1:0),s=1;s0){var s=Object.keys(n),c=a.default.find(s,(function(e){return t.isOS(e)}));if(c){var l=this.satisfies(n[c]);if(void 0!==l)return l}var u=a.default.find(s,(function(e){return t.isPlatform(e)}));if(u){var d=this.satisfies(n[u]);if(void 0!==d)return d}}if(i>0){var h=Object.keys(o),f=a.default.find(h,(function(e){return t.isBrowser(e,!0)}));if(void 0!==f)return this.compareVersion(o[f])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var n=this.getBrowserName().toLowerCase(),r=e.toLowerCase(),o=a.default.getBrowserTypeByAlias(r);return t&&o&&(r=o.toLowerCase()),r===n},t.compareVersion=function(e){var t=[0],n=e,r=!1,o=this.getBrowserVersion();if("string"==typeof o)return">"===e[0]||"<"===e[0]?(n=e.substr(1),"="===e[1]?(r=!0,n=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?n=e.substr(1):"~"===e[0]&&(r=!0,n=e.substr(1)),t.indexOf(a.default.compareVersions(o,n,r))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=l,e.exports=t.default},92:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=/version\/(\d+(\.?_?\d+)+)/i,s=[{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},n=o.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},n=o.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},n=o.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},n=o.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},n=o.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},n=o.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},n=o.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},n=o.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=o.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},n=o.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},n=o.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},n=o.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},n=o.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},n=o.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},n=o.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},n=o.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},n=o.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},n=o.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},n=o.default.getFirstMatch(i,e)||o.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},n=o.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},n=o.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},n=o.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},n=o.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},n=o.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},n=o.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},n=o.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},n=o.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},n=o.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:function(e){var t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe:function(e){var t={name:"Android Browser"},n=o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},n=o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},n=o.default.getFirstMatch(i,e);return n&&(t.version=n),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:o.default.getFirstMatch(t,e),version:o.default.getSecondMatch(t,e)}}}];t.default=s,e.exports=t.default},93:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=n(18),s=[{test:[/Roku\/DVP/],describe:function(e){var t=o.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:i.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=o.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:i.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=o.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=o.default.getWindowsVersionName(t);return{name:i.OS_MAP.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:i.OS_MAP.iOS},n=o.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe:function(e){var t=o.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=o.default.getMacOSVersionName(t),r={name:i.OS_MAP.MacOS,version:t};return n&&(r.versionName=n),r}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=o.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:i.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe:function(e){var t=o.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=o.default.getAndroidVersionName(t),r={name:i.OS_MAP.Android,version:t};return n&&(r.versionName=n),r}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=o.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:i.OS_MAP.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=o.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||o.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||o.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:i.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=o.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:i.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=o.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:i.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:i.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:i.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=o.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:i.OS_MAP.PlayStation4,version:t}}}];t.default=s,e.exports=t.default},94:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=n(18),s=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(e){var t=o.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:i.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:i.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe:function(e){var t=o.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:i.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:i.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:i.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:i.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:i.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.mobile}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:i.PLATFORMS_MAP.tv}}}];t.default=s,e.exports=t.default},95:function(e,t,n){t.__esModule=!0,t.default=void 0;var r,o=(r=n(17))&&r.__esModule?r:{default:r},i=n(18),s=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:i.ENGINE_MAP.Blink};var t=o.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:i.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:i.ENGINE_MAP.Trident},n=o.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:i.ENGINE_MAP.Presto},n=o.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:function(e){var t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe:function(e){var t={name:i.ENGINE_MAP.Gecko},n=o.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:i.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:i.ENGINE_MAP.WebKit},n=o.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}];t.default=s,e.exports=t.default}});var Np=mn(Pp.exports);class Bp{constructor({useDeepLink:e,preferredOpenLink:t,debug:n=!1}){this.state={platformType:void 0,useDeeplink:!1,preferredOpenLink:void 0,debug:!1},this.state.platformType=this.getPlatformType(),this.state.useDeeplink=e,this.state.preferredOpenLink=t,this.state.debug=n}openDeeplink(e,t,n){return function(e,t,n,r){const{state:o}=e;If(`[PlatfformManager: openDeeplink()] universalLink --\x3e ${t}`),If(`[PlatfformManager: openDeeplink()] deepLink --\x3e ${n}`);try{if(o.preferredOpenLink)return void o.preferredOpenLink(o.useDeeplink?n:t,r);if(If(`[PlatfformManager: openDeeplink()] open link now useDeepLink=${o.useDeeplink} link=${o.useDeeplink?n:t}`),o.useDeeplink)"undefined"!=typeof window&&(window.location.href=n);else if("undefined"!=typeof document){const e=document.createElement("a");e.href=t,e.target="_self",e.rel="noreferrer noopener",e.click()}}catch(e){console.log("[PlatfformManager: openDeeplink()] can't open link",e)}}(this,e,t,n)}isReactNative(){var e;return this.isNotBrowser()&&"undefined"!=typeof window&&(null===window||void 0===window?void 0:window.navigator)&&"ReactNative"===(null===(e=window.navigator)||void 0===e?void 0:e.product)}isMetaMaskInstalled(){return function(){const e=vp.getProvider()||(null===window||void 0===window?void 0:window.ethereum);return If(`[PlatfformManager: isMetaMaskInstalled()] isMetaMask=${null==e?void 0:e.isMetaMask} isConnected=${null==e?void 0:e.isConnected()}`),(null==e?void 0:e.isMetaMask)&&(null==e?void 0:e.isConnected())}()}isDesktopWeb(){return this.isBrowser()&&!this.isMobileWeb()}isMobile(){var e,t;const n=Np.parse(window.navigator.userAgent);return"mobile"===(null===(e=null==n?void 0:n.platform)||void 0===e?void 0:e.type)||"tablet"===(null===(t=null==n?void 0:n.platform)||void 0===t?void 0:t.type)}isSecure(){return this.isReactNative()||this.isMobileWeb()}isMetaMaskMobileWebView(){return"undefined"!=typeof window&&Boolean(window.ReactNativeWebView)&&Boolean(navigator.userAgent.endsWith("MetaMaskMobile"))}isMobileWeb(){return this.state.platformType===Ha.MobileWeb}isNotBrowser(){var e;return"undefined"==typeof window||!(null===window||void 0===window?void 0:window.navigator)||void 0!==ft&&"ReactNative"===(null===(e=null==ft?void 0:ft.navigator)||void 0===e?void 0:e.product)||"ReactNative"===(null===navigator||void 0===navigator?void 0:navigator.product)}isNodeJS(){return this.isNotBrowser()&&!this.isReactNative()}isBrowser(){return!this.isNotBrowser()}isUseDeepLink(){return this.state.useDeeplink}getPlatformType(){return function(e){const{state:t}=e;return t.platformType?t.platformType:e.isReactNative()?Ha.ReactNative:e.isNotBrowser()?Ha.NonBrowser:e.isMetaMaskMobileWebView()?Ha.MetaMaskMobileWebview:e.isMobile()?Ha.MobileWeb:Ha.DesktopWeb}(this)}}const Dp=e=>ht(void 0,void 0,void 0,(function*(){const{options:t}=e,{readonlyRPCMap:n}=t;if(n)try{If("[MetaMaskSDK: setupReadOnlyRPCProviders()] Setting up Readonly RPC Providers",n),e.setReadOnlyRPCCalls(!0)}catch(e){throw new Error("Invalid Infura Settings")}}));function $p(e,t,n,r){return new(n||(n=Promise))((function(t,o){function i(e){try{a(r.next(e))}catch(e){o(e)}}function s(e){try{a(r.throw(e))}catch(e){o(e)}}function a(e){var r;e.done?t(e.value):(r=e.value,r instanceof n?r:new n((function(e){e(r)}))).then(i,s)}a((r=r.apply(e,[])).next())}))}function jp(e,t){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(o=2&i[0]?r.return:i[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;switch(r=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,r=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(o=s.trys,!((o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]e.onClose(t))),n.addEventListener("connectWithExtension",e.connectWithExtension),e.parentElement.appendChild(n),setTimeout((()=>this.updateQRCode(e.link)),100)}))}renderPendingModal(e){var t;return ht(this,void 0,void 0,(function*(){this.containers.pending=e.parentElement,yield this.loadComponent("pending");const n=document.createElement("mm-pending-modal");n.sdkVersion=null!==(t=e.sdkVersion)&&void 0!==t?t:this.sdkVersion,n.displayOTP=e.displayOTP,n.addEventListener("close",e.onClose),n.addEventListener("updateOTPValue",(({detail:{otpValue:t}})=>e.updateOTPValue(t))),e.onDisconnect&&n.addEventListener("disconnect",e.onDisconnect),e.parentElement.appendChild(n)}))}updateOTPValue(e){const t=()=>{var t;const n=null===(t=this.containers.pending)||void 0===t?void 0:t.querySelector("mm-pending-modal");return!!n&&(n.otpCode=e,!0)};setTimeout((()=>{t()}),800)}updateQRCode(e){var t,n;const r=null===(t=this.containers.install)||void 0===t?void 0:t.querySelector("mm-install-modal");if(r)r.link=e;else{const t=null===(n=this.containers.select)||void 0===n?void 0:n.querySelector("mm-select-modal");t&&(t.link=e)}}unmount(){Object.entries(this.containers).forEach((([e,t])=>{var n;null===(n=null==t?void 0:t.parentNode)||void 0===n||n.removeChild(t),this.containers[e]=void 0}))}}const Xp=({link:e,debug:t,installer:n,terminate:r,connectWithExtension:o,preferDesktop:i})=>{let s=null,a=null;If("[UI: InstallModal-web: sdkWebInstallModal()] ################## Installing Modal #################"),If(`[UI: InstallModal-web: sdkWebInstallModal()] link=${e}`),If(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open "${e}" --ios`),If(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open "${e}" --android`),If(`[UI: InstallModal-web: sdkWebInstallModal()] adb shell am start -a android.intent.action.VIEW -d "${e}"`);const c=e=>{var t;If("[UI: InstallModal-web: sdkWebInstallModal()] installModal-web unmounting install modal -- shouldTerminate:",e,a),(null==a?void 0:a.parentNode)&&(null===(t=a.parentNode)||void 0===t||t.removeChild(a)),a=null,s=null,!0===e&&(null==r||r())};return{mount:r=>{if(If("[UI: InstallModal-web: sdkWebInstallModal()] installModal-web mounting install modal",a),a)return a.style.display="block",void(null==s||s.updateQRCode(r));s=new Jp({debug:t,sdkVersion:sp.version}),a=document.createElement("div"),document.body.appendChild(a),window.extension?s.renderSelectModal({parentElement:a,connectWithExtension:()=>{c(),null==o||o()},onClose:c,link:e,preferDesktop:null!=i&&i}).catch((e=>{console.error(e)})):s.renderInstallModal({parentElement:a,preferDesktop:null!=i&&i,link:e,metaMaskInstaller:n,onClose:c}).catch((e=>{console.error("[UI: InstallModal-web: sdkWebInstallModal()]",e)}))},unmount:c}},Qp=({onDisconnect:e,debug:t})=>{let n=null,r=null;const o=()=>{If("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web unmount",n),(null==n?void 0:n.parentNode)&&n.parentNode.removeChild(n),n=null,r=null},i=e=>{If("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web updateOTPValue",e),r&&r.updateOTPValue(e)},s=({displayOTP:s}={displayOTP:!0})=>{If("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web mount",n),n?n.style.display="block":(r=new Jp({debug:t,sdkVersion:sp.version}),n=document.createElement("div"),document.body.appendChild(n),r.renderPendingModal({parentElement:n,onClose:o,onDisconnect:e,updateOTPValue:i,displayOTP:s}).catch((e=>{console.error("[UI: pendingModal-web: sdkWebPendingModal()]",e)})))};return s(),{mount:s,unmount:o,updateOTPValue:i}};function eg(e,t){var n,r,o,i;e.connector||(If("[RemoteConnection: initializeConnector()] initialize connector"),e.connector=new rc({platformType:t.platformManager.getPlatformType(),communicationLayerPreference:t.communicationLayerPreference,transports:t.transports,dappMetadata:Object.assign(Object.assign({},t.dappMetadata),{source:t._source}),analytics:t.enableAnalytics,communicationServerUrl:t.communicationServerUrl,sdkVersion:sp.version,context:"dapp",ecies:t.ecies,storage:t.storage,logging:t.logging}),t.timer&&(If("[RemoteConnection: initializeConnector()] reset background timer",t.timer),null===(r=null===(n=t.timer)||void 0===n?void 0:n.stopBackgroundTimer)||void 0===r||r.call(n),null===(i=null===(o=t.timer)||void 0===o?void 0:o.runBackgroundTimer)||void 0===i||i.call(o,(()=>!1),1e4)))}function tg(e){e.listeners.forEach((({event:t,handler:n})=>{var r;null===(r=e.connector)||void 0===r||r.off(t,n)})),e.listeners=[]}function ng(e,t,n){return ht(this,void 0,void 0,(function*(){return new Promise(((r,o)=>{if(!e.connector)return void o(new Error("No connector available"));If("[RemoteConnection: connectWithModalInstaller()]",{state:e,options:t,linkParams:n});const i=`${e.useDeeplink?lp:cp}?${n}`;!function(e,t,n){var r,o,i,s;e.installModal=null===(o=(r=t.modals).install)||void 0===o?void 0:o.call(r,{link:n,preferDesktop:e.preferDesktop,installer:t.getMetaMaskInstaller(),terminate:()=>{If("[RemoteConnection: showInstallModal() => terminate()] terminate connection"),t.sdk.terminate().catch((e=>{console.warn("[MMSDK] failed to terminate connection",e)}))},debug:e.developerMode,connectWithExtension:()=>{var e;return null===(e=t.connectWithExtensionProvider)||void 0===e||e.call(t),!1}}),null===(s=null===(i=e.installModal)||void 0===i?void 0:i.mount)||void 0===s||s.call(i,n)}(e,t,i),t.sdk.once(Sa.PROVIDER_UPDATE,(e=>ht(this,void 0,void 0,(function*(){If("[RemoteConnection: connectWithModalInstaller()] once provider_update -- resolving startConnection promise"),e!==fp.TERMINATE?o(e):o({code:4001,message:"User rejected the request."})})))),e.connector.once(Sa.AUTHORIZED,(()=>{r()})),e.connector.once(Sa.REJECTED,(()=>{o(Sa.REJECTED)})),e.connector.once(Sa.CLIENTS_READY,(()=>ht(this,void 0,void 0,(function*(){If("[RemoteConnection: connectWithModalInstaller()] once clients_ready -- resolving startConnection promise"),r()}))))}))}))}function rg(e,t){function n(t,n){var r;null===(r=e.connector)||void 0===r||r.on(t,n),e.listeners.push({event:t,handler:n})}e.connector&&(tg(e),n(Sa.WALLET_INIT,(({accounts:e,chainId:t})=>ht(this,void 0,void 0,(function*(){If(`[RemoteConnection: setupListeners() => EventType.WALLET_INIT] 'wallet_init' accounts=${e} chainId=${t}`);const n=vp.getProvider();n._setConnected();const r={accounts:e,chainId:t,isUnlocked:!1};n._initializeState(r),n.emit("chainChanged",t),n.emit("accountsChanged",e)})))),n(Sa.AUTHORIZED,(()=>ht(this,void 0,void 0,(function*(){var t,n,r,o;try{If("[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' closing modals",e.pendingModal,e.installModal);const i=vp.getProvider();i._setConnected(),null===(n=null===(t=e.pendingModal)||void 0===t?void 0:t.unmount)||void 0===n||n.call(t),null===(o=null===(r=e.installModal)||void 0===r?void 0:r.unmount)||void 0===o||o.call(r,!1),e.otpAnswer=void 0,e.authorized=!0,If("[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' provider.state",i.getState()),yield i.forceInitializeState()}catch(e){}})))),n(Sa.TERMINATE,(()=>{var t,n,r,o,i;null===(n=null===(t=e.pendingModal)||void 0===t?void 0:t.unmount)||void 0===n||n.call(t),null===(o=null===(r=e.installModal)||void 0===r?void 0:r.unmount)||void 0===o||o.call(r,!0),e.pendingModal=void 0,e.installModal=void 0,e.otpAnswer=void 0,null===(i=e.connector)||void 0===i||i.disconnect({terminate:!0}),e.authorized=!1,vp.getProvider().handleDisconnect({terminate:!0}),tg(e),If("[RemoteConnection: setupListeners()] All listeners cleaned up")})))}function og(e,t,{initialCheck:n,connectWith:r}={}){var o,i,s,a,c,l,u,d,h,f,p,g,m,y,v,b,w,E,_;return ht(this,void 0,void 0,(function*(){try{if(eg(e,t),!e.connector)throw new Error("no connector defined");rg(e);const C=vp.getProvider();e.authorized=!1,C.emit("connecting");const S=yield null===(o=e.connector)||void 0===o?void 0:o.originatorSessionConnect();If(`[RemoteConnection: startConnection()] after originatorSessionConnect initialCheck=${n}`,S);let k=null!==(i=null==S?void 0:S.channelId)&&void 0!==i?i:"",x=null!==(a=null===(s=e.connector.getKeyInfo())||void 0===s?void 0:s.ecies.public)&&void 0!==a?a:"",A=null!==(l=null===(c=e.connector.getKeyInfo())||void 0===c?void 0:c.ecies.private)&&void 0!==l?l:"";if(n&&!S)return Promise.resolve();if(!S&&!n){const t=yield e.connector.generateChannelIdConnect();k=null!==(u=t.channelId)&&void 0!==u?u:"",x=null!==(d=t.pubKey)&&void 0!==d?d:"",A=null!==(h=t.privKey)&&void 0!==h?h:"";const n=Date.now();null===(f=e.connector.state.storageManager)||void 0===f||f.persistChannelConfig({channelId:k,localKey:A,lastActive:n,validUntil:n+ba})}if(n&&(null==S?void 0:S.channelId))return(null===(p=e.connector)||void 0===p?void 0:p.isConnected())||(If(`[RemoteConnection: startConnection()] reconnecting to channel initialCheck=${n}`,S),yield null===(g=e.connector)||void 0===g?void 0:g.connectToChannel({channelId:k})),Promise.resolve();S&&!(null===(m=e.connector)||void 0===m?void 0:m.isConnected())&&(If("[RemoteConnection: startConnection()] reconnecting to channel",S),yield null===(y=e.connector)||void 0===y?void 0:y.connectToChannel({channelId:k}));const M=(null===(v=e.platformManager)||void 0===v?void 0:v.isSecure())?"":"&t=q",R=sp.version,{iconUrl:T,name:O,url:I,scheme:L}=t.dappMetadata||{},P=null===(b=e.platformManager)||void 0===b?void 0:b.getPlatformType();let N="N/A";"undefined"!=typeof window&&window.location&&window.location.hostname?N=window.location.hostname:void 0!==O?N=O:void 0!==I&&(N=I);const B={url:null!=I?I:"",title:null!=O?O:"",icon:T,scheme:null!=L?L:"",apiVersion:R,dappId:N||I||"N/A",platform:null!=P?P:"",source:null!==(w=t._source)&&void 0!==w?w:""},D=yp(JSON.stringify(B));let $=`channelId=${k}&v=2&comm=${null!==(E=e.communicationLayerPreference)&&void 0!==E?E:""}&pubkey=${x}${M}&originatorInfo=${D}`;if(r){$+=`&rpc=${yp(JSON.stringify(r))}`;const t=e.connector.getRPCMethodTracker();t&&(t[`${r.id}`]=Object.assign(Object.assign({},r),{id:`${r.id}`,timestamp:Date.now()}))}const j=encodeURI($),U=`${e.useDeeplink?lp:cp}?${$}`;return e.qrcodeLink=U,e.developerMode&&If(`[RemoteConnection: startConnection()] qrcodeLink=${j}`),C.emit("display_uri",U),(null===(_=e.platformManager)||void 0===_?void 0:_.isSecure())?(yield function(e,t){var n,r;return ht(this,void 0,void 0,(function*(){const o=`${cp}?${t}`,i=`${lp}?${t}`;null===(r=null===(n=e.platformManager)||void 0===n?void 0:n.openDeeplink)||void 0===r||r.call(n,o,i,"_self")}))}(e,j),new Promise(((t,n)=>{var r,o,i;(null===(r=e.connector)||void 0===r?void 0:r.isAuthorized())?t():(null===(o=e.connector)||void 0===o||o.once(Sa.AUTHORIZED,(()=>{t()})),null===(i=e.connector)||void 0===i||i.once(Sa.REJECTED,(()=>{n(Sa.REJECTED)})))}))):ng(e,t,j)}catch(e){throw console.error("[startConnection] error",e),e}}))}class ig{constructor(e){var t,n,r;this.state={connector:void 0,qrcodeLink:void 0,analytics:void 0,developerMode:!1,authorized:!1,reconnection:!1,preferDesktop:!1,deeplinkProtocol:!1,listeners:[],communicationLayerPreference:void 0,platformManager:void 0,pendingModal:void 0,installModal:void 0,otpAnswer:void 0},this.options=e;const o=!0===(null===(t=e.logging)||void 0===t?void 0:t.developerMode)||!0===(null===(n=e.logging)||void 0===n?void 0:n.sdk);this.state.developerMode=o,this.state.analytics=e.analytics,this.state.preferDesktop=null!==(r=e.preferDesktop)&&void 0!==r&&r,this.state.useDeeplink=e.sdk.options.useDeeplink,this.state.communicationLayerPreference=e.communicationLayerPreference,this.state.platformManager=e.platformManager,e.modals.install||(e.modals.install=Xp),e.modals.otp||(e.modals.otp=Qp)}startConnection(e){return ht(this,void 0,void 0,(function*(){return og(this.state,this.options,e)}))}initRemoteCommunication({sdkInstance:e}){var t,n,r;return ht(this,void 0,void 0,(function*(){const o=yield null===(n=null===(t=e.options.storage)||void 0===t?void 0:t.storageManager)||void 0===n?void 0:n.getPersistedChannelConfig();if(!this.options.ecies){const e={privateKey:null==o?void 0:o.localKey};this.options.ecies=e}eg(this.state,this.options),yield null===(r=this.getConnector())||void 0===r?void 0:r.initFromDappStorage(),rg(this.state,this.options)}))}showActiveModal(){return function(e){var t,n,r,o;e.authorized?If("[RemoteConnection: showActiveModal()] already authorized"):e.pendingModal?null===(n=(t=e.pendingModal).mount)||void 0===n||n.call(t):e.installModal&&(null===(o=(r=e.installModal).mount)||void 0===o||o.call(r,e.qrcodeLink||""))}(this.state)}closeModal(){var e,t,n,r;null===(t=null===(e=this.state.pendingModal)||void 0===e?void 0:e.unmount)||void 0===t||t.call(e),null===(r=null===(n=this.state.installModal)||void 0===n?void 0:n.unmount)||void 0===r||r.call(n,!1)}getUniversalLink(){if(!this.state.qrcodeLink)throw new Error("connection not started. run startConnection() first.");return this.state.qrcodeLink}getChannelConfig(){var e;return null===(e=this.state.connector)||void 0===e?void 0:e.getChannelConfig()}getKeyInfo(){var e;return null===(e=this.state.connector)||void 0===e?void 0:e.getKeyInfo()}getConnector(){if(!this.state.connector)throw new Error("invalid remote connector");return this.state.connector}getPlatformManager(){if(!this.state.platformManager)throw new Error("PlatformManager not available");return this.state.platformManager}isConnected(){var e;return(null===(e=this.state.connector)||void 0===e?void 0:e.isReady())||!1}isAuthorized(){var e;return(null===(e=this.state.connector)||void 0===e?void 0:e.isAuthorized())||!1}isPaused(){var e;return null===(e=this.state.connector)||void 0===e?void 0:e.isPaused()}disconnect(e){var t,n,r;If("[RemoteConnection: disconnect()]",e),(null==e?void 0:e.terminate)&&(vp.getProvider().handleDisconnect({terminate:!0}),null===(n=null===(t=this.state.pendingModal)||void 0===t?void 0:t.unmount)||void 0===n||n.call(t),this.state.otpAnswer=void 0),null===(r=this.state.connector)||void 0===r||r.disconnect(e),function(e){If("[RemoteConnection: cleanupConnector()] cleaning up connector"),e.connector&&(tg(e),e.connector.disconnect({terminate:!0}).catch((e=>{If("[RemoteConnection: cleanupConnector()] error disconnecting connector",e)})))}(this.state)}}function sg(e){var t,n,r,o,i,s,a,l,u,d,h;return ht(this,void 0,void 0,(function*(){const{options:f}=e;if(f.logging=null!==(t=f.logging)&&void 0!==t?t:{},f.communicationLayerPreference=null!==(n=f.communicationLayerPreference)&&void 0!==n?n:Ka.SOCKET,void 0!==f.enableDebug&&(c().enable("MM_SDK"),console.warn("enableDebug is removed. Please use enableAnalytics instead.")),f.enableAnalytics=null===(r=f.enableAnalytics)||void 0===r||r,f.injectProvider=null===(o=f.injectProvider)||void 0===o||o,f.shouldShimWeb3=null===(i=f.shouldShimWeb3)||void 0===i||i,f.extensionOnly=null===(s=f.extensionOnly)||void 0===s||s,f.useDeeplink=null===(a=f.useDeeplink)||void 0===a||a,f.storage=null!==(l=f.storage)&&void 0!==l?l:{enabled:!0},f.headless){c()("[MetaMaskSDK: performSDKInitialization()] headless mode enabled");const e=()=>{},t={install:()=>({mount:e,unmount:e})},n={installer:e};f.modals=t,f.ui=n}const p=!0===(null===(u=f.logging)||void 0===u?void 0:u.developerMode);e.debug=(null===(d=f.logging)||void 0===d?void 0:d.sdk)||p,If("[MetaMaskSDK: performSDKInitialization()] options",e.options);const g=Object.assign({},f.logging);p&&(g.sdk=!0,g.eciesLayer=!0,g.keyExchangeLayer=!0,g.remoteLayer=!0,g.serviceLayer=!0,g.plaintext=!0),yield function(e){var t;return ht(this,void 0,void 0,(function*(){const{options:n}=e;e.platformManager=new Bp({useDeepLink:null!==(t=n.useDeeplink)&&void 0!==t&&t,preferredOpenLink:n.openDeeplink,debug:e.debug})}))}(e),yield function(e){var t,n,r,o,i,s,a,c,l;return ht(this,void 0,void 0,(function*(){const{options:u}=e,d=null===(t=e.platformManager)||void 0===t?void 0:t.getPlatformType();e.analytics=new xp({serverUrl:null!==(n=u.communicationServerUrl)&&void 0!==n?n:ya,enabled:u.enableAnalytics,originatorInfo:{url:null!==(r=u.dappMetadata.url)&&void 0!==r?r:"",title:null!==(o=u.dappMetadata.name)&&void 0!==o?o:"",dappId:"undefined"==typeof window||void 0===window.location?null!==(c=null!==(s=null===(i=u.dappMetadata)||void 0===i?void 0:i.name)&&void 0!==s?s:null===(a=u.dappMetadata)||void 0===a?void 0:a.url)&&void 0!==c?c:"N/A":window.location.hostname,platform:null!=d?d:"",source:null!==(l=u._source)&&void 0!==l?l:""}})}))}(e),yield function(e){var t;return ht(this,void 0,void 0,(function*(){const{options:n}=e;!0!==(null===(t=n.storage)||void 0===t?void 0:t.enabled)||n.storage.storageManager||(n.storage.storageManager=rp(n.storage))}))}(e),yield function(e){return ht(this,void 0,void 0,(function*(){const{options:t}=e,n=/^(http|https):\/\/[^\s]*$/;if(t.dappMetadata){t.dappMetadata.iconUrl&&!n.test(t.dappMetadata.iconUrl)&&(console.warn("Invalid dappMetadata.iconUrl: URL must start with http:// or https://"),t.dappMetadata.iconUrl=void 0),t.dappMetadata.base64Icon&&t.dappMetadata.base64Icon.length>Mp&&(console.warn("Invalid dappMetadata.base64Icon: Base64-encoded icon string length must be less than 163400 characters"),t.dappMetadata.base64Icon=void 0),t.dappMetadata.url&&!n.test(t.dappMetadata.url)&&console.warn("Invalid dappMetadata.url: URL must start with http:// or https://");const e=Ap();if(e&&!t.dappMetadata.iconUrl&&!t.dappMetadata.base64Icon){const n=`${window.location.protocol}//${window.location.host}${e}`;t.dappMetadata.iconUrl=n}}e.dappMetadata=t.dappMetadata}))}(e),yield Lp(e),yield Dp(e);const{metamaskBrowserExtension:m,preferExtension:y,shouldReturn:v}=yield function(e){var t,n,r,o;return ht(this,void 0,void 0,(function*(){const{options:i}=e;let s,a=!1,c=!1;if("undefined"!=typeof window&&window.ethereum&&!(null===(t=e.platformManager)||void 0===t?void 0:t.isMetaMaskMobileWebView())){a="extension"===localStorage.getItem(Xf);try{s=yield Ip({mustBeMetaMask:!0,sdkInstance:e}),window.extension=s,s.on(tp.CHAIN_CHANGED,(t=>{If(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE chainChanged chainId=${t}`),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(tp.CHAIN_CHANGED,t)})),s.on(tp.ACCOUNTS_CHANGED,(t=>{If(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE accountsChanged accounts=${t}`);const n=Boolean(e.sdkProvider),r=Boolean(e.extensionActive);n&&e.getMobileProvider().emit(tp.ACCOUNTS_CHANGED,t),r&&0===(null==t?void 0:t.length)&&If("[MetaMaskSDK: setupExtensionPreferences()] permissions were revoked on extension or extension was locked")})),s.on(tp.DISCONNECT,(t=>{If(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE disconnect error=${t}`),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(tp.DISCONNECT,t)})),s.on(tp.CONNECT,(t=>{If(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connect args=${t}`),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(tp.CONNECT,t)})),s.on(tp.CONNECTED,(t=>{If("[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connected",t),Boolean(e.sdkProvider)&&e.getMobileProvider().emit(tp.CONNECTED,t)}))}catch(e){window.extension=void 0}}else(null===(n=e.platformManager)||void 0===n?void 0:n.isMetaMaskMobileWebView())&&(null===(r=e.analytics)||void 0===r||r.send({event:Ma.SDK_USE_INAPP_BROWSER}),e.activeProvider=Tp({provider:window.ethereum,sdkInstance:e}),e._initialized=!0,c=!0);return s&&i.extensionOnly&&(If("[MetaMaskSDK: setupExtensionPreferences()] EXTENSION ONLY --- prevent sdk initialization"),null===(o=e.analytics)||void 0===o||o.send({event:Ma.SDK_USE_EXTENSION}),e.activeProvider=s,e.extensionActive=!0,e.extension=s,e._initialized=!0,c=!0),{preferExtension:a,shouldReturn:c,metamaskBrowserExtension:s}}))}(e);if(v)If("[MetaMaskSDK: performSDKInitialization()] shouldReturn=true --- prevent sdk initialization");else{yield function(e,t){var n,r,o,i,s;return ht(this,void 0,void 0,(function*(){const{options:a}=e,c=Object.assign({},a.logging);e.remoteConnection=new ig({preferDesktop:null!==(n=a.preferDesktop)&&void 0!==n&&n,communicationLayerPreference:null!==(r=a.communicationLayerPreference)&&void 0!==r?r:Ka.SOCKET,analytics:e.analytics,dappMetadata:a.dappMetadata,_source:a._source,enableAnalytics:null===(o=a.enableAnalytics)||void 0===o||o,timer:a.timer,sdk:e,platformManager:e.platformManager,transports:a.transports,communicationServerUrl:a.communicationServerUrl,storage:null!==(i=a.storage)&&void 0!==i?i:{enabled:!0},getMetaMaskInstaller:()=>{if(!e.installer)throw new Error("Invalid SDK status -- installer not initialized");return e.installer},logging:c,connectWithExtensionProvider:void 0===t?void 0:()=>mp(e),modals:Object.assign(Object.assign({},a.modals),{onPendingModalDisconnect:e.terminate.bind(e)})}),yield e.remoteConnection.initRemoteCommunication({sdkInstance:e}),e.installer=new Zp({remote:e.remoteConnection,preferDesktop:null!==(s=a.preferDesktop)&&void 0!==s&&s,platformManager:e.platformManager,debug:e.debug})}))}(e,m),yield Sp(e),yield function(e,t){var n,r;return ht(this,void 0,void 0,(function*(){const{options:o}=e;t?(If("[MetaMaskSDK: handleAutoAndExtensionConnections()] preferExtension is detected -- connect with it."),null===(n=e.analytics)||void 0===n||n.send({event:Ma.SDK_EXTENSION_UTILIZED}),mp(e).catch((e=>{console.warn("Can't connect with MetaMask extension...",e),localStorage.removeItem(Xf)}))):o.checkInstallationImmediately&&((null===(r=e.platformManager)||void 0===r?void 0:r.isDesktopWeb())?(If("[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately"),e.connect().catch((e=>{If(`[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- error on autoconnect _err=${e}`)}))):console.warn("[handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- only for web desktop")),e._initialized=!0}))}(e,y);try{yield null===(h=e.remoteConnection)||void 0===h?void 0:h.startConnection({initialCheck:!0})}catch(e){console.error("[MetaMaskSDK: setupRemoteConnectionAndInstaller()] Error while checking installation",e)}e.emit(hp.ProviderUpdate,fp.INITIALIZED)}}))}class ag extends(u()){constructor(e={storage:{enabled:!0},injectProvider:!0,forceInjectProvider:!1,enableAnalytics:!0,shouldShimWeb3:!0,useDeeplink:!0,extensionOnly:!0,headless:!1,dappMetadata:{name:"",url:"",iconUrl:""},_source:ap,i18nOptions:{enabled:!1}}){var t,n,r;super(),this.extensionActive=!1,this._initialized=!1,this.sdkInitPromise=void 0,this.debug=!1,this.readonlyRPCCalls=!1,this.availableLanguages=["en"],c().disable();const o=!0===(null===(t=e.logging)||void 0===t?void 0:t.developerMode);if(((null===(n=e.logging)||void 0===n?void 0:n.sdk)||o)&&c().enable("MM_SDK"),If("[MetaMaskSDK: constructor()]: begin."),this.setMaxListeners(50),!(null===(r=e.dappMetadata)||void 0===r?void 0:r.url)){if("undefined"==typeof window||"undefined"==typeof document)throw new Error("You must provide dAppMetadata url");e.dappMetadata=Object.assign(Object.assign({},e.dappMetadata),{url:`${window.location.protocol}//${window.location.host}`})}this.options=e,this.options._source||(e._source=ap),this.init().then((()=>{If("[MetaMaskSDK: constructor()]: initialized successfully."),"undefined"!=typeof window&&(window.mmsdk=this)})).catch((e=>{console.error("[MetaMaskSDK: constructor()] error during initialization",e)}))}init(){return ht(this,void 0,void 0,(function*(){return function(e){var t;return ht(this,void 0,void 0,(function*(){if("undefined"!=typeof window&&(null===(t=window.mmsdk)||void 0===t?void 0:t.isInitialized()))return If("[MetaMaskSDK: initializeMetaMaskSDK()] already initialized"),Promise.resolve(window.mmsdk);if(e._initialized)return If("[MetaMaskSDK: initializeMetaMaskSDK()] already initialized"),e.sdkInitPromise;if(e.sdkInitPromise)return If("[MetaMaskSDK: initializeMetaMaskSDK()] already initializing"),e.sdkInitPromise;try{e.sdkInitPromise=sg(e),yield e.sdkInitPromise}catch(e){throw console.error(e),e}return e.sdkInitPromise}))}(this)}))}isExtensionActive(){return this.extensionActive}checkExtensionAvailability(){var e;return"undefined"!=typeof window&&Boolean(null===(e=window.ethereum)||void 0===e?void 0:e.isMetaMask)}connect(){return ht(this,void 0,void 0,(function*(){return function(e){return ht(this,void 0,void 0,(function*(){if(e._initialized||(If("[MetaMaskSDK: connect()] provider not ready -- wait for init()"),yield e.init()),If(`[MetaMaskSDK: connect()] isExtensionActive=${e.isExtensionActive()} activeProvider`,e.activeProvider),!e.activeProvider)throw new Error("SDK state invalid -- undefined provider");const t=e.activeProvider.getSelectedAddress();return t?[t]:e.activeProvider.request({method:Wf.ETH_REQUESTACCOUNTS,params:[]})}))}(this)}))}connectAndSign({msg:e}){return ht(this,void 0,void 0,(function*(){return gp({instance:this,msg:e})}))}connectWith(e){return ht(this,void 0,void 0,(function*(){return function({instance:e,rpc:t}){return ht(this,void 0,void 0,(function*(){if(e._initialized||(If("[MetaMaskSDK: connectWith()] provider not ready -- wait for init()"),yield e.init()),If(`[MetaMaskSDK: connectWith()] method: ${t.method} rpc=${t}`),!e.activeProvider)throw new Error("SDK state invalid -- undefined provider");return e.activeProvider.request({method:Wf.METAMASK_CONNECTWITH,params:[t]})}))}({instance:this,rpc:e})}))}resume(){return function(e){var t,n,r;return ht(this,void 0,void 0,(function*(){if(!(null===(n=null===(t=e.remoteConnection)||void 0===t?void 0:t.getConnector())||void 0===n?void 0:n.isReady()))return If("[MetaMaskSDK: resume()] channel is not ready -- starting connection"),void(null===(r=e.remoteConnection)||void 0===r||r.startConnection());If("[MetaMaskSDK: resume()] channel is ready")}))}(this)}disconnect(){return console.warn("MetaMaskSDK.disconnect() is deprecated, use terminate()"),this.terminate()}isAuthorized(){var e;null===(e=this.remoteConnection)||void 0===e||e.isAuthorized()}terminate(){return function(e){var t,n,r;return ht(this,void 0,void 0,(function*(){if(!(null===(t=e.platformManager)||void 0===t?void 0:t.isMetaMaskMobileWebView())){if(pp&&(window.localStorage.removeItem(Xf),window.localStorage.removeItem(ep),window.localStorage.removeItem(Qf)),e.extensionActive){try{yield null===(n=e.activeProvider)||void 0===n?void 0:n.request({method:Wf.WALLET_REVOKEPERMISSIONS,params:[{eth_accounts:{}}]})}catch(e){If("[MetaMaskSDK: terminate()] error revoking permissions",e)}return e.options.extensionOnly?void If("[MetaMaskSDK: terminate()] extensionOnly --- prevent switching providers"):(e.activeProvider=e.sdkProvider,window.ethereum=e.activeProvider,e.extensionActive=!1,void e.emit(hp.ProviderUpdate,fp.TERMINATE))}e.emit(hp.ProviderUpdate,fp.TERMINATE),If(`[MetaMaskSDK: terminate()] remoteConnection=${e.remoteConnection}`),null===(r=e.remoteConnection)||void 0===r||r.disconnect({terminate:!0,sendMessage:!0})}}))}(this)}isInitialized(){return this._initialized}setReadOnlyRPCCalls(e){this.readonlyRPCCalls=e}hasReadOnlyRPCCalls(){return this.readonlyRPCCalls}getProvider(){if(this.activeProvider)return this.activeProvider;console.warn("MetaMaskSDK: No active provider found")}getMobileProvider(){if(!this.sdkProvider)throw new Error("SDK state invalid -- undefined mobile provider");return this.sdkProvider}getUniversalLink(){var e;const t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getUniversalLink();if(!t)throw new Error("No Universal Link available, please call eth_requestAccounts first.");return t}getChannelId(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getChannelConfig())||void 0===t?void 0:t.channelId}getRPCHistory(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t?void 0:t.getRPCMethodTracker()}getVersion(){return sp.version}getWalletStatus(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t?void 0:t.getConnectionStatus()}_getChannelConfig(){var e;return null===(e=this.remoteConnection)||void 0===e?void 0:e.getChannelConfig()}_ping(){var e,t;null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t||t.ping()}_keyCheck(){var e,t;null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t||t.keyCheck()}_getServiceStatus(){var e,t;return null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t?void 0:t.getServiceStatus()}_getRemoteConnection(){return this.remoteConnection}_getDappMetadata(){return this.dappMetadata}_getKeyInfo(){var e;return null===(e=this.remoteConnection)||void 0===e?void 0:e.getKeyInfo()}_resetKeys(){var e,t;null===(t=null===(e=this.remoteConnection)||void 0===e?void 0:e.getConnector())||void 0===t||t.resetKeys()}_getConnection(){return this.remoteConnection}emit(e,t){return super.emit(e,t)}on(e,t){return super.on(e,t)}}const cg="hydrated",lg=!1,ug=!1,dg=!0;var hg=Object.defineProperty,fg=new WeakMap,pg=e=>fg.get(e),gg=(e,t)=>fg.set(t.$lazyInstance$=e,t),mg=(e,t)=>t in e,yg=(e,t)=>(0,console.error)(e,t),vg=new Map,bg=new Map,wg="slot-fb{display:contents}slot-fb[hidden]{display:none}",Eg="undefined"!=typeof window?window:{},_g=Eg.document||{head:{}},Cg={$flags$:0,$resourcesUrl$:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,r)=>e.addEventListener(t,n,r),rel:(e,t,n,r)=>e.removeEventListener(t,n,r),ce:(e,t)=>new CustomEvent(e,t)},Sg=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),kg=!1,xg=[],Ag=[],Mg=(e,t)=>t=>{e.push(t),kg||(kg=!0,4&Cg.$flags$?Og(Tg):Cg.raf(Tg))},Rg=e=>{for(let t=0;t{Rg(xg),Rg(Ag),(kg=xg.length>0)&&Cg.raf(Tg)},Og=e=>(e=>Promise.resolve(e))().then(e),Ig=Mg(Ag),Lg={},Pg=e=>"object"===(e=typeof e)||"function"===e;function Ng(e){var t,n,r;return null!=(r=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?r:void 0}((e,t)=>{for(var n in t)hg(e,n,{get:t[n],enumerable:!0})})({},{err:()=>Dg,map:()=>$g,ok:()=>Bg,unwrap:()=>Fg,unwrapErr:()=>Kg});var Bg=e=>({isOk:!0,isErr:!1,value:e}),Dg=e=>({isOk:!1,isErr:!0,value:e});function $g(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>Bg(e))):Bg(n)}if(e.isErr){const t=e.value;return Dg(t)}throw"should never get here"}var jg,Ug,Fg=e=>{if(e.isOk)return e.value;throw e.value},Kg=e=>{if(e.isErr)return e.value;throw e.value},Hg=(e,t,...n)=>{let r=null,o=!1,i=!1;const s=[],a=t=>{for(let n=0;ne[t])).join(" "))}if("function"==typeof e)return e(null===t?{}:t,s,Vg);const c=zg(e,null);return c.$attrs$=t,s.length>0&&(c.$children$=s),c},zg=(e,t)=>{const n={$flags$:0,$tag$:e,$text$:t,$elm$:null,$children$:null,$attrs$:null};return n},qg={},Vg={forEach:(e,t)=>e.map(Wg).forEach(t),map:(e,t)=>e.map(Wg).map(t).map(Gg)},Wg=e=>({vattrs:e.$attrs$,vchildren:e.$children$,vkey:e.$key$,vname:e.$name$,vtag:e.$tag$,vtext:e.$text$}),Gg=e=>{if("function"==typeof e.vtag){const t={...e.vattrs};return e.vkey&&(t.key=e.vkey),e.vname&&(t.name=e.vname),Hg(e.vtag,t,...e.vchildren||[])}const t=zg(e.vtag,e.vtext);return t.$attrs$=e.vattrs,t.$children$=e.vchildren,t.$key$=e.vkey,t.$name$=e.vname,t},Yg=e=>pg(e).$hostElement$,Zg=(e,t,n)=>{const r=Yg(e);return{emit:e=>Jg(r,t,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:e})}},Jg=(e,t,n)=>{const r=Cg.ce(t,n);return e.dispatchEvent(r),r},Xg=new WeakMap,Qg=e=>{const t=e.$cmpMeta$,n=e.$hostElement$,r=t.$flags$,o=(t.$tagName$,()=>{}),i=((e,t,n)=>{var r;const o=em(t),i=bg.get(o);if(e=11===e.nodeType?e:_g,i)if("string"==typeof i){e=e.head||e;let n,s=Xg.get(e);if(s||Xg.set(e,s=new Set),!s.has(o)){{n=_g.createElement("style"),n.innerHTML=i;const o=null!=(r=Cg.$nonce$)?r:Ng(_g);if(null!=o&&n.setAttribute("nonce",o),!(1&t.$flags$))if("HEAD"===e.nodeName){const t=e.querySelectorAll("link[rel=preconnect]"),r=t.length>0?t[t.length-1].nextSibling:e.querySelector("style");e.insertBefore(n,r)}else if("host"in e)if(Sg){const t=new CSSStyleSheet;t.replaceSync(i),e.adoptedStyleSheets=[t,...e.adoptedStyleSheets]}else{const t=e.querySelector("style");t?t.innerHTML=i+t.innerHTML:e.prepend(n)}else e.append(n);1&t.$flags$&&"HEAD"!==e.nodeName&&e.insertBefore(n,null)}4&t.$flags$&&(n.innerHTML+=wg),s&&s.add(o)}}else e.adoptedStyleSheets.includes(i)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,i]);return o})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&r&&2&r&&(n["s-sc"]=i,n.classList.add(i+"-h")),o()},em=(e,t)=>"sc-"+e.$tagName$,tm=(e,t,n,r,o,i)=>{if(n!==r){let s=mg(e,t),a=t.toLowerCase();if("class"===t){const t=e.classList,o=rm(n),i=rm(r);t.remove(...o.filter((e=>e&&!i.includes(e)))),t.add(...i.filter((e=>e&&!o.includes(e))))}else if("style"===t){for(const t in n)r&&null!=r[t]||(t.includes("-")?e.style.removeProperty(t):e.style[t]="");for(const t in r)n&&r[t]===n[t]||(t.includes("-")?e.style.setProperty(t,r[t]):e.style[t]=r[t])}else if(s||"o"!==t[0]||"n"!==t[1]){const a=Pg(r);if((s||a&&null!==r)&&!o)try{if(e.tagName.includes("-"))e[t]=r;else{const o=null==r?"":r;"list"===t?s=!1:null!=n&&e[t]==o||("function"==typeof e.__lookupSetter__(t)?e[t]=o:e.setAttribute(t,o))}}catch(e){}null==r||!1===r?!1===r&&""!==e.getAttribute(t)||e.removeAttribute(t):(!s||4&i||o)&&!a&&(r=!0===r?"":r,e.setAttribute(t,r))}else if(t="-"===t[2]?t.slice(3):mg(Eg,a)?a.slice(2):a[2]+t.slice(3),n||r){const o=t.endsWith(om);t=t.replace(im,""),n&&Cg.rel(e,t,n,o),r&&Cg.ael(e,t,r,o)}}},nm=/\s/,rm=e=>e?e.split(nm):[],om="Capture",im=new RegExp(om+"$"),sm=(e,t,n)=>{const r=11===t.$elm$.nodeType&&t.$elm$.host?t.$elm$.host:t.$elm$,o=e&&e.$attrs$||Lg,i=t.$attrs$||Lg;for(const s of am(Object.keys(o)))s in i||tm(r,s,o[s],void 0,n,t.$flags$);for(const s of am(Object.keys(i)))tm(r,s,o[s],i[s],n,t.$flags$)};function am(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var cm=!1,lm=!1,um=(e,t,n,r)=>{const o=t.$children$[n];let i,s,a=0;if(null!==o.$text$)i=o.$elm$=_g.createTextNode(o.$text$);else{if(lm||(lm="svg"===o.$tag$),i=o.$elm$=_g.createElementNS(lm?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",!cm&&ug&&2&o.$flags$?"slot-fb":o.$tag$),lm&&"foreignObject"===o.$tag$&&(lm=!1),sm(null,o,lm),!!i.getRootNode().querySelector("body")&&lg&&(e=>null!=e)(jg)&&i["s-si"]!==jg&&i.classList.add(i["s-si"]=jg),o.$children$)for(a=0;a{let s,a=e;for(a.shadowRoot&&a.tagName===Ug&&(a=a.shadowRoot);o<=i;++o)r[o]&&(s=um(null,n,o),s&&(r[o].$elm$=s,gm(a,s,t)))},hm=(e,t,n)=>{for(let r=t;r<=n;++r){const t=e[r];if(t){const e=t.$elm$;e&&e.remove()}}},fm=(e,t,n=!1)=>e.$tag$===t.$tag$,pm=(e,t,n=!1)=>{const r=t.$elm$=e.$elm$,o=e.$children$,i=t.$children$,s=t.$tag$,a=t.$text$;null===a?(sm(e,t,lm="svg"===s||"foreignObject"!==s&&lm),null!==o&&null!==i?((e,t,n,r,o=!1)=>{let i,s=0,a=0,c=t.length-1,l=t[0],u=t[c],d=r.length-1,h=r[0],f=r[d];for(;s<=c&&a<=d;)null==l?l=t[++s]:null==u?u=t[--c]:null==h?h=r[++a]:null==f?f=r[--d]:fm(l,h,o)?(pm(l,h,o),l=t[++s],h=r[++a]):fm(u,f,o)?(pm(u,f,o),u=t[--c],f=r[--d]):fm(l,f,o)?(pm(l,f,o),gm(e,l.$elm$,u.$elm$.nextSibling),l=t[++s],f=r[--d]):fm(u,h,o)?(pm(u,h,o),gm(e,u.$elm$,l.$elm$),u=t[--c],h=r[++a]):(i=um(t&&t[a],n,a),h=r[++a],i&&gm(l.$elm$.parentNode,i,l.$elm$));s>c?dm(e,null==r[d+1]?null:r[d+1].$elm$,n,r,a,d):a>d&&hm(t,s,c)})(r,o,t,i,n):null!==i?(null!==e.$text$&&(r.textContent=""),dm(r,null,t,i,0,i.length-1)):!n&&dg&&null!==o&&hm(o,0,o.length-1),lm&&"svg"===s&&(lm=!1)):e.$text$!==a&&(r.data=a)},gm=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),mm=(e,t,n=!1)=>{const r=e.$hostElement$,o=e.$cmpMeta$,i=e.$vnode$||zg(null,null),s=(a=t)&&a.$tag$===qg?t:Hg(null,null,t);var a;if(Ug=r.tagName,n&&s.$attrs$)for(const c of Object.keys(s.$attrs$))r.hasAttribute(c)&&!["key","ref","style","class"].includes(c)&&(s.$attrs$[c]=r[c]);s.$tag$=null,s.$flags$|=4,e.$vnode$=s,s.$elm$=i.$elm$=r.shadowRoot||r,jg=r["s-sc"],cm=0!=(1&o.$flags$),pm(i,s,n)},ym=(e,t)=>{t&&!e.$onRenderResolve$&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.$onRenderResolve$=t)))},vm=(e,t)=>{if(e.$flags$|=16,!(4&e.$flags$))return ym(e,e.$ancestorComponent$),Ig((()=>bm(e,t)));e.$flags$|=512},bm=(e,t)=>{const n=e.$hostElement$,r=(e.$cmpMeta$.$tagName$,()=>{}),o=e.$lazyInstance$;if(!o)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);return r(),wm(void 0,(()=>_m(e,o,t)))},wm=(e,t)=>Em(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),Em=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,_m=async(e,t,n)=>{var r;const o=e.$hostElement$,i=(e.$cmpMeta$.$tagName$,()=>{}),s=o["s-rc"];n&&Qg(e);const a=(e.$cmpMeta$.$tagName$,()=>{});Cm(e,t,o,n),s&&(s.map((e=>e())),o["s-rc"]=void 0),a(),i();{const t=null!=(r=o["s-p"])?r:[],n=()=>Sm(e);0===t.length?n():(Promise.all(t).then(n),e.$flags$|=4,t.length=0)}},Cm=(e,t,n,r)=>{try{t=t.render(),e.$flags$&=-17,e.$flags$|=2,mm(e,t,r)}catch(t){yg(t,e.$hostElement$)}return null},Sm=e=>{e.$cmpMeta$.$tagName$;const t=e.$hostElement$,n=()=>{},r=e.$ancestorComponent$;64&e.$flags$?n():(e.$flags$|=64,Am(t),n(),e.$onReadyResolve$(t),r||km()),e.$onRenderResolve$&&(e.$onRenderResolve$(),e.$onRenderResolve$=void 0),512&e.$flags$&&Og((()=>vm(e,!1))),e.$flags$&=-517},km=e=>{Am(_g.documentElement),Og((()=>Jg(Eg,"appload",{detail:{namespace:"sdk-install-modal-web"}})))},xm=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){yg(e)}},Am=e=>{var t;return e.classList.add(null!=(t=cg)?t:"hydrated")},Mm=(e,t,n,r)=>{const o=pg(e);if(!o)throw new Error(`Couldn't find host element for "${r.$tagName$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const i=o.$hostElement$,s=o.$instanceValues$.get(t),a=o.$flags$,c=o.$lazyInstance$;var l,u;l=n,u=r.$members$[t][0],n=null==l||Pg(l)?l:4&u?"false"!==l&&(""===l||!!l):1&u?String(l):l;const d=Number.isNaN(s)&&Number.isNaN(n);if((!(8&a)||void 0===s)&&n!==s&&!d&&(o.$instanceValues$.set(t,n),c)){if(r.$watchers$&&128&a){const e=r.$watchers$[t];e&&e.map((e=>{try{c[e](n,s,t)}catch(e){yg(e,i)}}))}2==(18&a)&&vm(o,!1)}},Rm=(e,t,n)=>{var r,o;const i=e.prototype;if(t.$members$||t.$watchers$||e.watchers){e.watchers&&!t.$watchers$&&(t.$watchers$=e.watchers);const s=Object.entries(null!=(r=t.$members$)?r:{});if(s.map((([e,[r]])=>{(31&r||2&n&&32&r)&&Object.defineProperty(i,e,{get(){return t=e,pg(this).$instanceValues$.get(t);var t},set(n){Mm(this,e,n,t)},configurable:!0,enumerable:!0})})),1&n){const n=new Map;i.attributeChangedCallback=function(e,r,o){Cg.jmp((()=>{var s;const a=n.get(e);if(this.hasOwnProperty(a))o=this[a],delete this[a];else{if(i.hasOwnProperty(a)&&"number"==typeof this[a]&&this[a]==o)return;if(null==a){const n=pg(this),i=null==n?void 0:n.$flags$;if(i&&!(8&i)&&128&i&&o!==r){const i=n.$lazyInstance$,a=null==(s=t.$watchers$)?void 0:s[e];null==a||a.forEach((t=>{null!=i[t]&&i[t].call(i,o,r,e)}))}return}}this[a]=(null!==o||"boolean"!=typeof this[a])&&o}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(o=t.$watchers$)?o:{}),...s.filter((([e,t])=>15&t[0])).map((([e,t])=>{const r=t[1]||e;return n.set(r,e),r}))]))}}return e},Tm=async(e,t,n,r)=>{let o;if(0==(32&t.$flags$)){if(t.$flags$|=32,n.$lazyBundleId$){const r=((e,t,n)=>{const r=e.$tagName$.replace(/-/g,"_"),o=e.$lazyBundleId$;if(!o)return;const i=vg.get(o);if(i)return i[r];{const e=e=>(vg.set(o,e),e[r]);switch(o){case"mm-install-modal":return Promise.resolve().then((function(){return py})).then(e,yg);case"mm-pending-modal":return Promise.resolve().then((function(){return my})).then(e,yg);case"mm-select-modal":return Promise.resolve().then((function(){return wy})).then(e,yg)}}return import(`./${o}.entry.js`).then((e=>(vg.set(o,e),e[r])),yg)})(n);if(r&&"then"in r){const e=()=>{};o=await r,e()}else o=r;if(!o)throw new Error(`Constructor for "${n.$tagName$}#${t.$modeName$}" was not found`);o.isProxied||(n.$watchers$=o.watchers,Rm(o,n,2),o.isProxied=!0);const i=(n.$tagName$,()=>{});t.$flags$|=8;try{new o(t)}catch(e){yg(e)}t.$flags$&=-9,t.$flags$|=128,i(),Om(t.$lazyInstance$)}else{o=e.constructor;const n=e.localName;customElements.whenDefined(n).then((()=>t.$flags$|=128))}if(o&&o.style){let e;"string"==typeof o.style&&(e=o.style);const t=em(n);if(!bg.has(t)){const r=(n.$tagName$,()=>{});((e,t,n)=>{let r=bg.get(e);Sg&&n?(r=r||new CSSStyleSheet,"string"==typeof r?r=t:r.replaceSync(t)):r=t,bg.set(e,r)})(t,e,!!(1&n.$flags$)),r()}}}const i=t.$ancestorComponent$,s=()=>vm(t,!0);i&&i["s-rc"]?i["s-rc"].push(s):s()},Om=e=>{xm(e,"connectedCallback")},Im=e=>{xm(e,"disconnectedCallback")},Lm=(e,t={})=>{var n;const r=()=>{},o=[],i=t.exclude||[],s=Eg.customElements,a=_g.head,c=a.querySelector("meta[charset]"),l=_g.createElement("style"),u=[];let d,h=!0;Object.assign(Cg,t),Cg.$resourcesUrl$=new URL(t.resourcesUrl||"./",_g.baseURI).href;let f=!1;if(e.map((e=>{e[1].map((t=>{var n;const r={$flags$:t[0],$tagName$:t[1],$members$:t[2],$listeners$:t[3]};4&r.$flags$&&(f=!0),r.$members$=t[2],r.$watchers$=null!=(n=t[4])?n:{};const a=r.$tagName$,c=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,t)=>{const n={$flags$:0,$hostElement$:e,$cmpMeta$:t,$instanceValues$:new Map};n.$onReadyPromise$=new Promise((e=>n.$onReadyResolve$=e)),e["s-p"]=[],e["s-rc"]=[],fg.set(e,n)})(e=this,r),1&r.$flags$)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw new Error(`Unable to re-use existing shadow root for ${r.$tagName$}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else e.attachShadow({mode:"open"})}connectedCallback(){pg(this),this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),d&&(clearTimeout(d),d=null),h?u.push(this):Cg.jmp((()=>(e=>{if(0==(1&Cg.$flags$)){const t=pg(e),n=t.$cmpMeta$,r=(n.$tagName$,()=>{});if(1&t.$flags$)(null==t?void 0:t.$lazyInstance$)?Om(t.$lazyInstance$):(null==t?void 0:t.$onReadyPromise$)&&t.$onReadyPromise$.then((()=>Om(t.$lazyInstance$)));else{t.$flags$|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){ym(t,t.$ancestorComponent$=n);break}}n.$members$&&Object.entries(n.$members$).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),Tm(e,t,n)}r()}})(this)))}disconnectedCallback(){Cg.jmp((()=>(async e=>{if(0==(1&Cg.$flags$)){const t=pg(e);(null==t?void 0:t.$lazyInstance$)?Im(t.$lazyInstance$):(null==t?void 0:t.$onReadyPromise$)&&t.$onReadyPromise$.then((()=>Im(t.$lazyInstance$)))}})(this)))}componentOnReady(){return pg(this).$onReadyPromise$}};r.$lazyBundleId$=e[0],i.includes(a)||s.get(a)||(o.push(a),s.define(a,Rm(c,r,1)))}))})),o.length>0&&(f&&(l.textContent+=wg),l.textContent+=o.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",l.innerHTML.length)){l.setAttribute("data-styles","");const e=null!=(n=Cg.$nonce$)?n:Ng(_g);null!=e&&l.setAttribute("nonce",e),a.insertBefore(l,c?c.nextSibling:a.firstChild)}h=!1,u.length?u.map((e=>e.connectedCallback())):Cg.jmp((()=>d=setTimeout(km,30))),r()};!function(){if("undefined"!=typeof window&&void 0!==window.Reflect&&void 0!==window.customElements){var e=HTMLElement;window.HTMLElement=function(){return Reflect.construct(e,[],this.constructor)},HTMLElement.prototype=e.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,e)}}();var Pm=Object.freeze({__proto__:null,defineCustomElements:async(e,t)=>{if("undefined"!=typeof window)return await void 0,Lm([["mm-install-modal",[[1,"mm-install-modal",{link:[1],sdkVersion:[1,"sdk-version"],preferDesktop:[4,"prefer-desktop"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:["updatePreferDesktop"]}]]],["mm-pending-modal",[[1,"mm-pending-modal",{displayOTP:[4,"display-o-t-p"],sdkVersion:[1,"sdk-version"],otpCode:[1,"otp-code"],translationsLoaded:[32]}]]],["mm-select-modal",[[1,"mm-select-modal",{link:[1],sdkVersion:[1,"sdk-version"],preferDesktop:[4,"prefer-desktop"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:["updatePreferDesktop"]}]]]],t)},setNonce:e=>Cg.$nonce$=e});const Nm={fontFamily:"Roboto, sans-serif"},Bm=({className:e},t)=>Hg("div",{style:Nm,class:e},t);function Dm({version:e}){return Hg("div",{style:{textAlign:"center",color:"#BBC0C5",fontSize:"12"}},"SDK Version ",e?`v${e}`:"unknown")}const $m=()=>Hg("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("rect",{width:"16",height:"16",fill:"white"}),Hg("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M2.40554 2.40554C2.94627 1.86482 3.82296 1.86482 4.36369 2.40554L8 6.04186L11.6363 2.40554C12.177 1.86482 13.0537 1.86482 13.5945 2.40554C14.1352 2.94627 14.1352 3.82296 13.5945 4.36369L9.95814 8L13.5945 11.6363C14.1352 12.177 14.1352 13.0537 13.5945 13.5945C13.0537 14.1352 12.177 14.1352 11.6363 13.5945L8 9.95814L4.36369 13.5945C3.82296 14.1352 2.94627 14.1352 2.40554 13.5945C1.86482 13.0537 1.86482 12.177 2.40554 11.6363L6.04186 8L2.40554 4.36369C1.86482 3.82296 1.86482 2.94627 2.40554 2.40554Z",fill:"#BBC0C5"})),jm=()=>Hg("svg",{width:"273",height:"51",viewBox:"0 0 273 51",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M240.882 25.9263C239.472 24.997 237.916 24.3361 236.443 23.5101C235.489 22.9731 234.473 22.4982 233.643 21.8167C232.233 20.6602 232.524 18.3885 233.996 17.3973C236.112 15.993 239.617 16.7777 239.99 19.6483C239.99 19.7102 240.052 19.7515 240.114 19.7515H243.308C243.391 19.7515 243.454 19.6896 243.433 19.607C243.267 17.6244 242.5 15.9723 241.089 14.9191C239.741 13.9072 238.206 13.3702 236.568 13.3702C228.127 13.3702 227.359 22.271 231.901 25.0796C232.42 25.41 236.879 27.6404 238.455 28.611C240.032 29.5816 240.529 31.3576 239.845 32.7619C239.223 34.0423 237.605 34.9303 235.987 34.8271C234.224 34.7238 232.855 33.7738 232.378 32.2869C232.295 32.0185 232.254 31.5022 232.254 31.275C232.254 31.2131 232.192 31.1511 232.129 31.1511H228.666C228.604 31.1511 228.541 31.2131 228.541 31.275C228.541 33.7738 229.164 35.1575 230.864 36.4172C232.461 37.615 234.203 38.1106 236.008 38.1106C240.737 38.1106 243.184 35.4466 243.682 32.6793C244.117 29.974 243.308 27.5371 240.882 25.9263Z",fill:"#24292E"}),Hg("path",{d:"M90.4943 13.8246H88.9595H87.2795C87.2173 13.8246 87.1758 13.8659 87.1551 13.9072L84.3137 23.2416C84.2722 23.3655 84.1063 23.3655 84.0648 23.2416L81.2234 13.9072C81.2026 13.8452 81.1612 13.8246 81.0989 13.8246H79.419H77.8842H75.8102C75.748 13.8246 75.6857 13.8865 75.6857 13.9485V37.7802C75.6857 37.8422 75.748 37.9041 75.8102 37.9041H79.2738C79.336 37.9041 79.3982 37.8422 79.3982 37.7802V19.6689C79.3982 19.5244 79.6056 19.5037 79.6471 19.6276L82.5093 29.024L82.7167 29.6849C82.7374 29.7468 82.7789 29.7675 82.8411 29.7675H85.4959C85.5581 29.7675 85.5996 29.7262 85.6203 29.6849L85.8277 29.024L88.6899 19.6276C88.7313 19.4831 88.9387 19.5244 88.9387 19.6689V37.7802C88.9387 37.8422 89.001 37.9041 89.0632 37.9041H92.5268C92.589 37.9041 92.6513 37.8422 92.6513 37.7802V13.9485C92.6513 13.8865 92.589 13.8246 92.5268 13.8246H90.4943Z",fill:"#24292E"}),Hg("path",{d:"M187.849 13.8246C187.787 13.8246 187.745 13.8659 187.725 13.9072L184.883 23.2416C184.842 23.3655 184.676 23.3655 184.634 23.2416L181.793 13.9072C181.772 13.8452 181.731 13.8246 181.668 13.8246H176.4C176.338 13.8246 176.276 13.8865 176.276 13.9485V37.7802C176.276 37.8422 176.338 37.9041 176.4 37.9041H179.864C179.926 37.9041 179.988 37.8422 179.988 37.7802V19.6689C179.988 19.5244 180.196 19.5037 180.237 19.6276L183.099 29.024L183.307 29.6849C183.328 29.7468 183.369 29.7675 183.431 29.7675H186.086C186.148 29.7675 186.19 29.7262 186.211 29.6849L186.418 29.024L189.28 19.6276C189.322 19.4831 189.529 19.5244 189.529 19.6689V37.7802C189.529 37.8422 189.591 37.9041 189.653 37.9041H193.117C193.179 37.9041 193.241 37.8422 193.241 37.7802V13.9485C193.241 13.8865 193.179 13.8246 193.117 13.8246H187.849Z",fill:"#24292E"}),Hg("path",{d:"M143.174 13.8246H136.724H133.261H126.81C126.748 13.8246 126.686 13.8865 126.686 13.9485V16.9223C126.686 16.9843 126.748 17.0462 126.81 17.0462H133.136V37.7802C133.136 37.8422 133.198 37.9041 133.261 37.9041H136.724C136.786 37.9041 136.849 37.8422 136.849 37.7802V17.0462H143.174C143.237 17.0462 143.299 16.9843 143.299 16.9223V13.9485C143.299 13.8865 143.257 13.8246 143.174 13.8246Z",fill:"#24292E"}),Hg("path",{d:"M163.604 37.9041H166.756C166.839 37.9041 166.901 37.8215 166.881 37.7389L160.368 13.8245C160.347 13.7626 160.306 13.7419 160.244 13.7419H159.041H156.925H155.722C155.66 13.7419 155.619 13.7832 155.598 13.8245L149.085 37.7389C149.065 37.8215 149.127 37.9041 149.21 37.9041H152.362C152.425 37.9041 152.466 37.8628 152.487 37.8215L154.374 30.862C154.395 30.8 154.436 30.7794 154.499 30.7794H161.467C161.53 30.7794 161.571 30.8207 161.592 30.862L163.479 37.8215C163.5 37.8628 163.562 37.9041 163.604 37.9041ZM155.328 27.3719L157.859 18.0581C157.9 17.9342 158.066 17.9342 158.107 18.0581L160.638 27.3719C160.659 27.4545 160.596 27.5371 160.513 27.5371H155.453C155.37 27.5371 155.308 27.4545 155.328 27.3719Z",fill:"#24292E"}),Hg("path",{d:"M217.362 37.9041H220.515C220.598 37.9041 220.66 37.8215 220.639 37.7389L214.127 13.8245C214.106 13.7626 214.065 13.7419 214.002 13.7419H212.8H210.684H209.481C209.419 13.7419 209.377 13.7832 209.357 13.8245L202.844 37.7389C202.823 37.8215 202.886 37.9041 202.969 37.9041H206.121C206.183 37.9041 206.225 37.8628 206.246 37.8215L208.133 30.862C208.154 30.8 208.195 30.7794 208.257 30.7794H215.226C215.288 30.7794 215.33 30.8207 215.351 30.862L217.238 37.8215C217.259 37.8628 217.3 37.9041 217.362 37.9041ZM209.087 27.3719L211.617 18.0581C211.659 17.9342 211.825 17.9342 211.866 18.0581L214.397 27.3719C214.417 27.4545 214.355 27.5371 214.272 27.5371H209.211C209.129 27.5371 209.066 27.4545 209.087 27.3719Z",fill:"#24292E"}),Hg("path",{d:"M106.713 34.3727V26.9795C106.713 26.9176 106.775 26.8556 106.837 26.8556H116.067C116.129 26.8556 116.191 26.7936 116.191 26.7317V23.7579C116.191 23.6959 116.129 23.634 116.067 23.634H106.837C106.775 23.634 106.713 23.572 106.713 23.5101V17.1907C106.713 17.1288 106.775 17.0668 106.837 17.0668H117.332C117.394 17.0668 117.457 17.0049 117.457 16.9429V13.9691C117.457 13.9072 117.394 13.8452 117.332 13.8452H106.713H103.125C103.063 13.8452 103.001 13.9072 103.001 13.9691V17.0668V23.6546V26.8763V34.5173V37.7802C103.001 37.8422 103.063 37.9041 103.125 37.9041H106.713H117.768C117.83 37.9041 117.892 37.8422 117.892 37.7802V34.6412C117.892 34.5792 117.83 34.5173 117.768 34.5173H106.817C106.755 34.4966 106.713 34.4553 106.713 34.3727Z",fill:"#24292E"}),Hg("path",{d:"M272.532 37.6976L260.544 25.3687C260.502 25.3274 260.502 25.2448 260.544 25.2035L271.329 14.0517C271.412 13.9691 271.349 13.8452 271.246 13.8452H266.828C266.787 13.8452 266.766 13.8659 266.745 13.8865L257.599 23.3449C257.516 23.4275 257.391 23.3655 257.391 23.2623V13.9691C257.391 13.9072 257.329 13.8452 257.267 13.8452H253.803C253.741 13.8452 253.679 13.9072 253.679 13.9691V37.8009C253.679 37.8628 253.741 37.9248 253.803 37.9248H257.267C257.329 37.9248 257.391 37.8628 257.391 37.8009V27.3099C257.391 27.2067 257.536 27.1447 257.599 27.2273L267.969 37.8835C267.989 37.9041 268.031 37.9248 268.052 37.9248H272.469C272.552 37.9041 272.615 37.7596 272.532 37.6976Z",fill:"#24292E"}),Hg("path",{d:"M52.021 1L31.0526 16.4886L34.9517 7.36063L52.021 1Z",fill:"#E17726",stroke:"#E17726","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M3.65491 1L24.4366 16.6331L20.7241 7.36063L3.65491 1Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M44.4716 36.9127L38.8925 45.4211L50.8389 48.7047L54.261 37.0986L44.4716 36.9127Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M1.43555 37.0986L4.83695 48.7047L16.7626 45.4211L11.2042 36.9127L1.43555 37.0986Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M16.1197 22.5395L12.8013 27.5371L24.6232 28.074L24.2292 15.3734L16.1197 22.5395Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M39.5561 22.5394L31.3222 15.2288L31.0526 28.0739L42.8746 27.537L39.5561 22.5394Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M16.7626 45.4212L23.918 41.9724L17.7582 37.1813L16.7626 45.4212Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M31.7578 41.9724L38.8925 45.4212L37.9177 37.1813L31.7578 41.9724Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M38.8923 45.4212L31.7577 41.9724L32.3384 46.5983L32.2762 48.5602L38.8923 45.4212Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M16.7625 45.4212L23.3994 48.5602L23.3579 46.5983L23.9179 41.9724L16.7625 45.4212Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M23.5239 34.1249L17.5922 32.3902L21.7818 30.4696L23.5239 34.1249Z",fill:"#233447",stroke:"#233447","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M32.1517 34.1249L33.8939 30.4696L38.1042 32.3902L32.1517 34.1249Z",fill:"#233447",stroke:"#233447","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M16.7626 45.4212L17.7996 36.9128L11.2042 37.0987L16.7626 45.4212Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M37.8761 36.9128L38.8924 45.4212L44.4715 37.0987L37.8761 36.9128Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M42.8745 27.5371L31.0526 28.074L32.1518 34.1249L33.894 30.4696L38.1042 32.3902L42.8745 27.5371Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M17.5922 32.3902L21.7817 30.4696L23.5239 34.1249L24.6232 28.074L12.8012 27.5371L17.5922 32.3902Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M12.8013 27.5371L17.7582 37.1813L17.5923 32.3902L12.8013 27.5371Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M38.1044 32.3902L37.9177 37.1813L42.8746 27.5371L38.1044 32.3902Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M24.6232 28.0741L23.524 34.125L24.9136 41.2703L25.2247 31.8533L24.6232 28.0741Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M31.0526 28.0741L30.4719 31.8327L30.7623 41.2703L32.1519 34.125L31.0526 28.0741Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M32.1519 34.1249L30.7623 41.2702L31.7578 41.9724L37.9177 37.1813L38.1043 32.3901L32.1519 34.1249Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M17.5922 32.3901L17.7581 37.1813L23.918 41.9724L24.9135 41.2702L23.5239 34.1249L17.5922 32.3901Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M32.2763 48.5602L32.3385 46.5983L31.7993 46.1439H23.8765L23.358 46.5983L23.3995 48.5602L16.7626 45.4211L19.0855 47.3211L23.7935 50.5633H31.8615L36.5903 47.3211L38.8924 45.4211L32.2763 48.5602Z",fill:"#C0AC9D",stroke:"#C0AC9D","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M31.7578 41.9724L30.7622 41.2703H24.9135L23.918 41.9724L23.358 46.5983L23.8765 46.144H31.7993L32.3385 46.5983L31.7578 41.9724Z",fill:"#24292E",stroke:"#24292E","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M52.9128 17.5005L54.6757 8.95079L52.021 1L31.7578 15.9723L39.5561 22.5394L50.5692 25.7404L52.9958 22.9111L51.938 22.147L53.618 20.6188L52.3321 19.6276L54.0121 18.3472L52.9128 17.5005Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M1 8.95079L2.78366 17.5005L1.64295 18.3472L3.34365 19.6276L2.05775 20.6188L3.73771 22.147L2.67996 22.9111L5.10657 25.7404L16.1196 22.5394L23.918 15.9723L3.65475 1L1 8.95079Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M50.5692 25.7404L39.5561 22.5394L42.8746 27.5371L37.9177 37.1813L44.4716 37.0987H54.261L50.5692 25.7404Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M16.1196 22.5394L5.10651 25.7404L1.43549 37.0987H11.2041L17.7581 37.1813L12.8011 27.5371L16.1196 22.5394Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M31.0526 28.0741L31.7578 15.9724L34.9518 7.36072H20.7239L23.9179 15.9724L24.6231 28.0741L24.8927 31.8739L24.9135 41.2703H30.7622L30.783 31.8739L31.0526 28.0741Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"})),Um={DESKTOP:"Desktop",MOBILE:"Mobile",META_MASK_MOBILE_APP:"MetaMask mobile app",SCAN_TO_CONNECT:"Scan to connect and sign with",CONNECT_WITH_EXTENSION:"Connect With MetaMask Extension",INSTALL_MODAL:{TRUSTED_BY_USERS:"Trusted by over 30 million users to buy, store, send and swap crypto securely",LEADING_CRYPTO_WALLET:"The leading crypto wallet & gateway to blockchain apps built on Ethereum Mainnet, Polygon, Optimism, and many other networks",CONTROL_DIGITAL_INTERACTIONS:"Puts you in control of your digital interactions by making power of cryptography more accessible",INSTALL_META_MASK_EXTENSION:"Install MetaMask Extension"},PENDING_MODAL:{OPEN_META_MASK_SELECT_CODE:"Please open the MetaMask wallet app and select the code on the screen OR disconnect",OPEN_META_MASK_CONTINUE:"Open the MetaMask app to continue with your session.",NUMBER_AFTER_OPEN_NOTICE:"If a number doesn't appear after opening MetaMask, please click disconnect and re-scan the QRCode.",DISCONNECT:"Disconnect"},SELECT_MODAL:{CRYPTO_TAKE_CONTROL_TEXT:"Take control of your crypto and explore the blockchain with the wallet trusted by over 30 million people worldwide"},META_MASK_MODAL:{ADDRESS_COPIED:"Address copied to clipboard!",DISCONNECT:"Disconnect",ACTIVE_NETWORK:"Active Network"}};class Fm{constructor(e){var t;this.translations=Um,this.supportedLocales=["es","fr","he","it","pt","tr"],this.baseUrl=null!==(t=null==e?void 0:e.baseUrl)&&void 0!==t?t:"https://raw.githubusercontent.com/MetaMask/metamask-sdk/refs/heads/gh-pages/locales"}getBrowserLanguage(){if((navigator.languages||[navigator.language]).some((e=>e.toLowerCase().startsWith("en"))))return"en";const e=navigator.language.toLowerCase().split("-")[0];return this.supportedLocales.includes(e)?e:"en"}async init(e){const t=this.getBrowserLanguage()||e.fallbackLng;await this.loadTranslations(t)}async loadTranslations(e){const t=e.split("-")[0];if("en"!==t&&this.supportedLocales.includes(t))try{const e=`${this.baseUrl}/${t}.json`,n=await fetch(e);if(!n.ok)throw new Error(`HTTP error! status: ${n.status}`);this.translations=await n.json()}catch(e){console.warn(`❌ Failed to load ${t} translations, falling back to English:`,e),this.translations=Um}else this.translations=Um}t(e){return this.getNestedTranslation(e,this.translations)||e}getNestedTranslation(e,t){const n=e.split(".");let r=t;for(const o of n){if("object"!=typeof r)return"";r=r[o]}return"string"==typeof r?r:""}}function Km(e,t){return e.toString(2).padStart(t,"0")}function Hm(e,t){const n=e%t;return n>=0?n:t+n}function zm(e,t){return new Array(e).fill(t)}function qm(...e){let t=0;for(const r of e)t=Math.max(t,r.length);const n=[];for(let r=0;r=t.length||n.push(t[r]);return new Uint8Array(n)}function Vm(e,t,n){if(n<0||n+t.length>e.length)return!1;for(let r=0;re.includes(t),decode:t=>{if(!Array.isArray(t)||t.length&&"string"!=typeof t[0])throw new Error("alphabet.decode input should be array of strings");return t.map((t=>{if("string"!=typeof t)throw new Error(`alphabet.decode: not string element=${t}`);const n=e.indexOf(t);if(-1===n)throw new Error(`Unknown letter: "${t}". Allowed: ${e}`);return n}))},encode:t=>{if(!Array.isArray(t)||t.length&&"number"!=typeof t[0])throw new Error("alphabet.encode input should be an array of numbers");return t.map((t=>{if(function(e){if(!Number.isSafeInteger(e))throw new Error(`Wrong integer: ${e}`)}(t),t<0||t>=e.length)throw new Error(`Digit index outside alphabet: ${t} (alphabet: ${e.length})`);return e[t]}))}}}class Gm{static size(e,t){if("number"==typeof e&&(e={height:e,width:e}),!Number.isSafeInteger(e.height)&&e.height!==1/0)throw new Error(`Bitmap: wrong height=${e.height} (${typeof e.height})`);if(!Number.isSafeInteger(e.width)&&e.width!==1/0)throw new Error(`Bitmap: wrong width=${e.width} (${typeof e.width})`);return void 0!==t&&(e={width:Math.min(e.width,t.width),height:Math.min(e.height,t.height)}),e}static fromString(e){const t=(e=e.replace(/^\n+/g,"").replace(/\n+$/g,"")).split("\n"),n=t.length,r=new Array(n);let o;for(const i of t){const e=i.split("").map((e=>{if("X"===e)return!0;if(" "===e)return!1;if("?"!==e)throw new Error(`Bitmap.fromString: unknown symbol=${e}`)}));if(o&&e.length!==o)throw new Error(`Bitmap.fromString different row sizes: width=${o} cur=${e.length}`);o=e.length,r.push(e)}return o||(o=0),new Gm({height:n,width:o},r)}constructor(e,t){const{height:n,width:r}=Gm.size(e);this.data=t||Array.from({length:n},(()=>zm(r,void 0))),this.height=n,this.width=r}point(e){return this.data[e.y][e.x]}isInside(e){return 0<=e.x&&e.x(n(e,t),t)))}hLine(e,t,n){return this.rect(e,{width:t,height:1},n)}vLine(e,t,n){return this.rect(e,{width:1,height:t},n)}border(e=2,t){const n=this.height+2*e,r=this.width+2*e,o=zm(e,t),i=Array.from({length:e},(()=>zm(r,t)));return new Gm({height:n,width:r},[...i,...this.data.map((e=>[...o,...e,...o])),...i])}embed(e,t){return this.rect(e,t.size(),(({x:e,y:n})=>t.data[n][e]))}rectSlice(e,t=this.size()){const n=new Gm(Gm.size(t,this.size(this.xy(e))));return this.rect(e,t,(({x:e,y:t},r)=>n.data[t][e]=r)),n}inverse(){const{height:e,width:t}=this;return new Gm({height:t,width:e}).rect({x:0,y:0},1/0,(({x:e,y:t})=>this.data[e][t]))}scale(e){if(!Number.isSafeInteger(e)||e>1024)throw new Error(`Wrong scale factor: ${e}`);const{height:t,width:n}=this;return new Gm({height:e*t,width:e*n}).rect({x:0,y:0},1/0,(({x:t,y:n})=>this.data[Math.floor(n/e)][Math.floor(t/e)]))}clone(){return new Gm(this.size()).rect({x:0,y:0},this.size(),(({x:e,y:t})=>this.data[t][e]))}assertDrawn(){this.rectRead(0,1/0,((e,t)=>{if("boolean"!=typeof t)throw new Error("Invalid color type="+typeof t)}))}toString(){return this.data.map((e=>e.map((e=>void 0===e?"?":e?"X":" ")).join(""))).join("\n")}toASCII(){const{height:e,width:t,data:n}=this;let r="";for(let o=0;o=e||n[o+1][i];t||s?!t&&s?r+="▀":t&&!s?r+="▄":t&&s&&(r+=" "):r+="█"}r+="\n"}return r}toTerm(){const e="",t=` ${e}`,n=` ${e}`;return this.data.map((e=>e.map((e=>e?n:t)).join(""))).join("\n")}toSVG(){let e=``;return this.rectRead(0,1/0,(({x:t,y:n},r)=>{r&&(e+=``)})),e+="",e}toGIF(){const e=e=>[255&e,e>>>8&255],t=[...e(this.width),...e(this.height)],n=[];this.rectRead(0,1/0,((e,t)=>n.push(+(!0===t))));const r=126,o=[71,73,70,56,55,97,...t,246,0,0,255,255,255,...zm(381,0),44,0,0,0,0,...t,0,7],i=Math.floor(n.length/r);for(let s=0;s+e)));return o.push(n.length%r+1,128,...n.slice(i*r).map((e=>+e))),o.push(1,129,0,59),new Uint8Array(o)}toImage(e=!1){const{height:t,width:n}=this.size(),r=new Uint8Array(t*n*(e?3:4));let o=0;for(let i=0;i21+4*(e-1),decode:e=>(e-17)/4},sizeType:e=>Math.floor((e+7)/17),alignmentPatterns(e){if(1===e)return[];const t=ey.size.encode(e)-6-1,n=t-6,r=Math.ceil(n/28);let o=Math.floor(n/r);o%2?o+=1:n%r*2>=r&&(o+=2);const i=[6];for(let s=1;s>9);return(n<<10|r)^ey.formatMask},versionBits(e){let t=e;for(let n=0;n<12;n++)t=t<<1^7973*(t>>11);return e<<12|t},alphabet:{numeric:Wm("0123456789"),alphanumerc:Wm("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:")},lengthBits:(e,t)=>({numeric:[10,12,14],alphanumeric:[9,11,13],byte:[8,16,16],kanji:[8,10,12],eci:[0,0,0]}[t][ey.sizeType(e)]),modeBits:{numeric:"0001",alphanumeric:"0010",byte:"0100",kanji:"1000",eci:"0111"},capacity(e,t){const n=Jm[e-1],r=Xm[t][e-1],o=Qm[t][e-1],i=Math.floor(n/o)-r,s=o-n%o;return{words:r,numBlocks:o,shortBlocks:s,blockLen:i,capacity:8*(n-r*o),total:(r+i)*o+o-s}}},ty=[(e,t)=>(e+t)%2==0,(e,t)=>t%2==0,(e,t)=>e%3==0,(e,t)=>(e+t)%3==0,(e,t)=>(Math.floor(t/2)+Math.floor(e/3))%2==0,(e,t)=>e*t%2+e*t%3==0,(e,t)=>(e*t%2+e*t%3)%2==0,(e,t)=>((e+t)%2+e*t%3)%2==0],ny={tables:(e=>{const t=zm(256,0),n=zm(256,0);for(let r=0,o=1;r<256;r++)t[r]=o,n[o]=r,o<<=1,256&o&&(o^=285);return{exp:t,log:n}})(),exp:e=>ny.tables.exp[e],log(e){if(0===e)throw new Error(`GF.log: wrong arg=${e}`);return ny.tables.log[e]%255},mul:(e,t)=>0===e||0===t?0:ny.tables.exp[(ny.tables.log[e]+ny.tables.log[t])%255],add:(e,t)=>e^t,pow:(e,t)=>ny.tables.exp[ny.tables.log[e]*t%255],inv(e){if(0===e)throw new Error(`GF.inverse: wrong arg=${e}`);return ny.tables.exp[255-ny.tables.log[e]]},polynomial(e){if(0==e.length)throw new Error("GF.polymomial: wrong length");if(0!==e[0])return e;let t=0;for(;te.length-1,coefficient:(e,t)=>e[ny.degree(e)-t],mulPoly(e,t){if(0===e[0]||0===t[0])return[0];const n=zm(e.length+t.length-1,0);for(let r=0;rr.length&&([n,r]=[r,n]);let o=zm(r.length,0),i=r.length-n.length,s=r.slice(0,i);for(let a=0;a=n;){let e=r,t=i;if(r=o,i=s,0===r[0])throw new Error("rLast[0] === 0");o=e;let n=[0];const a=ny.inv(r[0]);for(;ny.degree(o)>=ny.degree(r)&&0!==o[0];){const e=ny.degree(o)-ny.degree(r),t=ny.mul(o[0],a);n=ny.addPoly(n,ny.monomial(e,t)),o=ny.addPoly(o,ny.mulPolyMonomial(r,e,t))}if(n=ny.mulPoly(n,i),s=ny.addPoly(n,t),ny.degree(o)>=ny.degree(r))throw new Error(`Division failed r: ${o}, rLast: ${r}`)}const a=ny.coefficient(s,0);if(0==a)throw new Error("sigmaTilde(0) was zero");const c=ny.inv(a);return[ny.mulPolyScalar(s,c),ny.mulPolyScalar(o,c)]}};function ry(e,t){const{words:n,shortBlocks:r,numBlocks:o,blockLen:i,total:s}=ey.capacity(e,t),a=(c=n,{encode(e){const t=ny.divisorPoly(c),n=Array.from(e);return n.push(...t.slice(0,-1).fill(0)),Uint8Array.from(ny.remainderPoly(n,t))},decode(e){const t=e.slice(),n=ny.polynomial(Array.from(e));let r=zm(c,0),o=!1;for(let d=0;dKm(e,8))).join("")}}const{capacity:s}=ey.capacity(e,t),a=Km(i,ey.lengthBits(e,r));let c=ey.modeBits[r]+a+o;if(c.length>s)throw new Error("Capacity overflow");c+="0".repeat(Math.min(4,Math.max(0,s-c.length))),c.length%8&&(c+="0".repeat(8-c.length%8));const l="1110110000010001";for(let d=0;c.length!==s;d++)c+=l[d%16];const u=Uint8Array.from(c.match(/(.{8})/g).map((e=>Number(`0b${e}`))));return ry(e,t).encode(u)}function iy(e,t,n,r,o=!1){const i=function(e,t,n,r=!1){const o=ey.size.encode(e);let i=new Gm(o+2);const s=new Gm(3).rect(0,3,!0).border(1,!1).border(1,!0).border(1,!1);i=i.embed(0,s).embed({x:-s.width,y:0},s).embed({x:0,y:-s.height},s),i=i.rectSlice(1,o);const a=new Gm(1).rect(0,1,!0).border(1,!1).border(1,!0),c=ey.alignmentPatterns(e);for(const l of c)for(const e of c)void 0===i.data[l][e]&&i.embed({x:e-2,y:l-2},a);i=i.hLine({x:0,y:6},1/0,(({x:e},t)=>void 0===t?e%2==0:t)).vLine({x:6,y:0},1/0,(({y:e},t)=>void 0===t?e%2==0:t));{const e=ey.formatBits(t,n),s=t=>!r&&1==(e>>t&1);for(let t=0;t<6;t++)i.data[t][8]=s(t);for(let t=6;t<8;t++)i.data[t+1][8]=s(t);for(let t=8;t<15;t++)i.data[o-15+t][8]=s(t);for(let t=0;t<8;t++)i.data[8][o-t-1]=s(t);for(let t=8;t<9;t++)i.data[8][15-t-1+1]=s(t);for(let t=9;t<15;t++)i.data[8][15-t-1]=s(t);i.data[o-8][8]=!r}if(e>=7){const t=ey.versionBits(e);for(let e=0;e<18;e+=1){const n=!r&&1==(t>>e&1),s=Math.floor(e/3),a=e%3+o-8-3;i.data[s][a]=n,i.data[a][s]=n}}return i}(e,t,r,o);let s=0;const a=8*n.length;if(function(e,t,n){const r=e.height,o=ty[t];let i=-1,s=r-1;for(let a=r-1;a>0;a-=2){for(6==a&&(a=5);;s+=i){for(let t=0;t<2;t+=1){const r=a-t;void 0===e.data[s][r]&&n(r,s,o(r,s))}if(s+i<0||s+i>=r)break}i=-i}}(i,r,((e,t,r)=>{let o=!1;s>>3]>>(7-s&7)&1),s++),i.data[t][e]=o!==r})),s!==a)throw new Error("QR: bytes left after draw");return i}function sy(e){const t=e.inverse(),n=e=>{let t=0;for(let n,r=0,o=1;r=5&&(t+=o-5+3),n=e[r],o=1);return t};let r=0;e.data.forEach((e=>r+=n(e))),t.data.forEach((e=>r+=n(e)));let o=0,i=e.data;const s=e.width-1,a=e.height-1;for(let f=0;f{const t=[!0,!1,!0,!0,!0,!1,!0],n=[!1,!1,!1,!1],r=[...t,...n],o=[...n,...t];let i=0;for(let s=0;su+=t?1:0));const d=u/(e.height*e.width)*100,h=10*Math.floor(Math.abs(d-50)/5);return r+o+l+h}function ay(e,t="raw",n={}){const r=void 0!==n.ecc?n.ecc:"medium";!function(e){if(!Ym.includes(e))throw new Error(`Invalid error correction mode=${e}. Expected: ${Ym}`)}(r);const o=void 0!==n.encoding?n.encoding:function(e){let t="numeric";for(let n of e)if(!ey.alphabet.numeric.has(n)&&(t="alphanumeric",!ey.alphabet.alphanumerc.has(n)))return"byte";return t}(e);!function(e){if(!Zm.includes(e))throw new Error(`Encoding: invalid mode=${e}. Expected: ${Zm}`);if("kanji"===e||"eci"===e)throw new Error(`Encoding: ${e} is not supported (yet?).`)}(o),void 0!==n.mask&&function(e){if(![0,1,2,3,4,5,6,7].includes(e)||!ty[e])throw new Error(`Invalid mask=${e}. Expected number [0..7]`)}(n.mask);let i,s=n.version,a=new Error("Unknown error");if(void 0!==s)!function(e){if(!Number.isSafeInteger(e)||e<1||e>40)throw new Error(`Invalid version=${e}. Expected number [1..40]`)}(s),i=oy(s,r,e,o);else for(let u=1;u<=40;u++)try{i=oy(u,r,e,o),s=u;break}catch(e){a=e}if(!s||!i)throw a;let c=function(e,t,n,r){if(void 0===r){const o=function(){let e,t=1/0;return{add(n,r){n>=t||(e=r,t=n)},get:()=>e,score:()=>t}}();for(let r=0;rHg("div",{class:"flexContainer",style:{padding:"6",flexDirection:"row"}},Hg("div",{class:"flexItem1"},Hg(e,null)),Hg("div",{class:"flexItem11"},Hg("span",{style:{lineHeight:"2",color:"black"}},t))),ly=()=>Hg("svg",{width:"20",height:"18",viewBox:"0 0 20 18",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M20.0002 7.9702V10.0302C20.0002 10.5802 19.5602 11.0302 19.0002 11.0502H17.0402C15.9602 11.0502 14.9702 10.2602 14.8802 9.1802C14.8202 8.5502 15.0602 7.9602 15.4802 7.5502C15.8502 7.1702 16.3602 6.9502 16.9202 6.9502H19.0002C19.5602 6.9702 20.0002 7.4202 20.0002 7.9702Z",fill:"#037DD6"}),Hg("path",{d:"M18.47 12.55H17.04C15.14 12.55 13.54 11.12 13.38 9.3C13.29 8.26 13.67 7.22 14.43 6.48C15.07 5.82 15.96 5.45 16.92 5.45H18.47C18.76 5.45 19 5.21 18.97 4.92C18.75 2.49 17.14 0.83 14.75 0.55C14.51 0.51 14.26 0.5 14 0.5H5C4.72 0.5 4.45 0.52 4.19 0.56C1.64 0.88 0 2.78 0 5.5V12.5C0 15.26 2.24 17.5 5 17.5H14C16.8 17.5 18.73 15.75 18.97 13.08C19 12.79 18.76 12.55 18.47 12.55ZM11 6.75H5C4.59 6.75 4.25 6.41 4.25 6C4.25 5.59 4.59 5.25 5 5.25H11C11.41 5.25 11.75 5.59 11.75 6C11.75 6.41 11.41 6.75 11 6.75Z",fill:"#037DD6"})),uy=()=>Hg("svg",{width:"20",height:"18",viewBox:"0 0 20 18",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M14.44 0.0999756C12.63 0.0999756 11.01 0.979976 10 2.32998C8.99 0.979976 7.37 0.0999756 5.56 0.0999756C2.49 0.0999756 0 2.59998 0 5.68998C0 6.87998 0.19 7.97998 0.52 8.99998C2.1 14 6.97 16.99 9.38 17.81C9.72 17.93 10.28 17.93 10.62 17.81C13.03 16.99 17.9 14 19.48 8.99998C19.81 7.97998 20 6.87998 20 5.68998C20 2.59998 17.51 0.0999756 14.44 0.0999756Z",fill:"#037DD6"})),dy=()=>Hg("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M16.28 7.53V6.28C16.28 3.58 15.63 0 10 0C4.37 0 3.72 3.58 3.72 6.28V7.53C0.92 7.88 0 9.3 0 12.79V14.65C0 18.75 1.25 20 5.35 20H14.65C18.75 20 20 18.75 20 14.65V12.79C20 9.3 19.08 7.88 16.28 7.53ZM10 16.74C8.33 16.74 6.98 15.38 6.98 13.72C6.98 12.05 8.34 10.7 10 10.7C11.66 10.7 13.02 12.06 13.02 13.72C13.02 15.39 11.67 16.74 10 16.74ZM5.35 7.44C5.27 7.44 5.2 7.44 5.12 7.44V6.28C5.12 3.35 5.95 1.4 10 1.4C14.05 1.4 14.88 3.35 14.88 6.28V7.45C14.8 7.45 14.73 7.45 14.65 7.45H5.35V7.44Z",fill:"#037DD6"})),hy=()=>Hg("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M16.4405 8.8999C20.0405 9.2099 21.5105 11.0599 21.5105 15.1099V15.2399C21.5105 19.7099 19.7205 21.4999 15.2505 21.4999H8.74047C4.27047 21.4999 2.48047 19.7099 2.48047 15.2399V15.1099C2.48047 11.0899 3.93047 9.2399 7.47047 8.9099",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M12 2V14.88",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M15.3504 12.6499L12.0004 15.9999L8.65039 12.6499",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),fy=class{constructor(e){gg(this,e),this.close=Zg(this,"close",7),this.startDesktopOnboarding=Zg(this,"startDesktopOnboarding",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.onClose=this.onClose.bind(this),this.onStartDesktopOnboardingHandler=this.onStartDesktopOnboardingHandler.bind(this),this.setTab=this.setTab.bind(this),this.render=this.render.bind(this),this.setTab(this.preferDesktop?1:2),this.i18nInstance=new Fm}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}updatePreferDesktop(e){e?this.setTab(1):this.setTab(2)}onClose(){this.close.emit()}onStartDesktopOnboardingHandler(){this.startDesktopOnboarding.emit()}setTab(e){this.tab=e,this.isDefaultTab=!1}render(){if(!this.translationsLoaded)return null;const e=e=>this.i18nInstance.t(e),t=this.isDefaultTab?this.preferDesktop?1:2:this.tab,n=ay(this.link,"svg",{ecc:"medium",scale:2});return console.log(`Showing modal with link ${this.link} and SVG QRCode ${n}`),Hg(Bm,{className:"install-model"},Hg("div",{class:"backdrop",onClick:this.onClose}),Hg("div",{class:"modal"},Hg("div",{class:"closeButtonContainer"},Hg("div",{class:"right"},Hg("span",{class:"closeButton",onClick:this.onClose},Hg($m,null)))),Hg("div",{class:"logoContainer"},Hg(jm,null)),Hg("div",null,Hg("div",{class:"tabcontainer"},Hg("div",{class:"flexContainer"},Hg("div",{onClick:()=>this.setTab(1),class:"tab flexItem "+(1===t?"tabactive":"")},e("DESKTOP")),Hg("div",{onClick:()=>this.setTab(2),class:"tab flexItem "+(2===t?"tabactive":"")},e("MOBILE")))),Hg("div",{style:{display:1===t?"none":"block"}},Hg("div",{class:"flexContainer"},Hg("div",{class:"flexItem",style:{textAlign:"center",marginTop:"4"}},n&&Hg("div",{id:"sdk-mm-qrcode",class:"center",innerHTML:n}),Hg("div",{class:"connectMobileText"},e("SCAN_TO_CONNECT")," ",Hg("br",null),Hg("span",{class:"blue"},Hg("b",null,e("META_MASK_MOBILE_APP"))))))),Hg("div",{style:{display:2===t?"none":"block"}},Hg("div",{class:"item"},Hg(cy,{Icon:uy,text:e("INSTALL_MODAL.TRUSTED_BY_USERS")})),Hg("div",{class:"item"},Hg(cy,{Icon:ly,text:e("INSTALL_MODAL.LEADING_CRYPTO_WALLET")})),Hg("div",{class:"item"},Hg(cy,{Icon:dy,text:e("INSTALL_MODAL.CONTROL_DIGITAL_INTERACTIONS")})),Hg("button",{class:"button",onClick:this.onStartDesktopOnboardingHandler},Hg(hy,null),Hg("span",{class:"installExtensionText"},e("INSTALL_MODAL.INSTALL_META_MASK_EXTENSION"))))),Hg(Dm,{version:this.sdkVersion})))}get el(){return Yg(this)}static get watchers(){return{preferDesktop:["updatePreferDesktop"]}}};fy.style=".flexContainer {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n}\n\n.flexItem {\n flex: 1;\n justify-content: center;\n align-items: center;\n}\n\n.flexItem11 {\n flex: 11;\n justify-content: center;\n align-items: center;\n}\n\n.flexItem1 {\n flex: 1;\n justify-content: center;\n align-items: center;\n}\n\n.tab {\n padding: 8px;\n cursor: pointer;\n background-color: #F2F4F6;\n font-size: 12px;\n text-align: center;\n color: #24292E;\n}\n\n.tabcontainer {\n padding: 4px;\n background-color: #F2F4F6;\n border-radius: 8px;\n margin-bottom: 30px;\n margin-top: 30px;\n}\n\n.tabactive {\n background-color: white;\n -webkit-transition: background-color 300ms linear;\n -ms-transition: background-color 300ms linear;\n transition: background-color 300ms linear;\n border-radius: 8px;\n}\n\n.item {\n font-size: 12px;\n margin-bottom: 16px;\n border-radius: 8px;\n padding: 10px;\n border: 2px #F2F4F6 solid;\n color: #24292E;\n}\n\n.extensionLabel {\n font-style: normal;\n font-weight: bold;\n font-size: 14px;\n text-align: cetner;\n color: #24272A;\n}\n\n.notice {\n font-size: 12px;\n margin-left: 10px;\n margin-right: 10px;\n color: grey;\n}\n\n.button {\n margin-top: 41.5px;\n margin-bottom: 20px;\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 12px 20px;\n background: #037DD6;\n border-radius: 32px;\n color: white;\n border: 0;\n font-size: 14px;\n cursor: pointer;\n}\n\n.backdrop {\n visibility: visible;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n width: 100%;\n z-index: 99998;\n background: rgba(0, 0, 0, 0.87);\n opacity: 0.3;\n}\n\n.modal {\n visibility: visible;\n position: fixed;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 99999;\n background: white;\n padding: 20px;\n border-radius: 8px;\n top: 50%;\n max-width: 100%;\n width: 460px;\n min-width: 300px;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\n -webkit-font-smoothing: antialiased;\n}\n\n.closeButton {\n color: #BBC0C5;\n cursor: pointer;\n}\n\n.logoContainer {\n margin-left: 24px;\n margin-right: 24px;\n margin-top: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.connectMobileText {\n font-size: 14px;\n color: black;\n margin-top: 28px;\n margin-bottom: 28px;\n line-height: 2;\n}\n\n.blue {\n color: #037DD6;\n font-weight: 700;\n}\n\n.installExtensionText {\n margin-left: 10px;\n}\n\n.center {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.right {\n display: flex;\n align-items: center;\n justify-content: right;\n}\n\n#sdk-mm-qrcode {\n svg {\n width: 50%;\n }\n}";var py=Object.freeze({__proto__:null,mm_install_modal:fy});const gy=class{constructor(e){gg(this,e),this.close=Zg(this,"close",7),this.disconnect=Zg(this,"disconnect",7),this.updateOTPValue=Zg(this,"updateOTPValue",7),this.displayOTP=void 0,this.sdkVersion=void 0,this.otpCode=void 0,this.translationsLoaded=!1,this.i18nInstance=new Fm}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}onClose(){this.close.emit()}onDisconnect(){this.disconnect.emit()}onUpdateOTPValueHandler(e){this.updateOTPValue.emit({otpValue:e})}disconnectedCallback(){this.onClose()}render(){var e;if(!this.translationsLoaded)return null;const t=null===(e=this.displayOTP)||void 0===e||e,n=this.sdkVersion,r=e=>this.i18nInstance.t(e);return Hg(Bm,{className:"pending-modal"},Hg("div",{class:"backdrop",onClick:()=>this.onClose()}),Hg("div",{class:"modal"},Hg("div",{class:"closeButtonContainer"},Hg("div",{class:"right"},Hg("span",{class:"closeButton",onClick:()=>this.onClose()},Hg($m,null)))),Hg("div",{class:"logoContainer"},Hg(jm,null)),Hg("div",null,Hg("div",{class:"flexContainer",style:{flexDirection:"column",color:"black"}},Hg("div",{class:"flexItem",style:{textAlign:"center",marginTop:"30px",marginBottom:"30px",fontSize:"16px"}},r(t?"PENDING_MODAL.OPEN_META_MASK_SELECT_CODE":"PENDING_MODAL.OPEN_META_MASK_CONTINUE")),Hg("div",{id:"sdk-mm-otp-value",style:{padding:"10px",fontSize:"32px",display:this.otpCode?"block":"none"}},this.otpCode),t&&Hg("div",{class:"notice"},"* ",r("PENDING_MODAL.NUMBER_AFTER_OPEN_NOTICE"))),Hg("div",{style:{marginTop:"20px"}},Hg("button",{class:"button blue",style:{marginTop:"5px",color:"#0376C9",borderColor:"#0376C9",borderWidth:"1px",borderStyle:"solid",backgroundColor:"white"},onClick:()=>this.onDisconnect()},r("PENDING_MODAL.DISCONNECT")))),Hg(Dm,{version:n})))}get el(){return Yg(this)}};gy.style=".flexContainer {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n}\n\n.flexItem {\n flex: 1;\n justify-content: center;\n align-items: center;\n}\n\n.flexItem11 {\n flex: 11;\n justify-content: center;\n align-items: center;\n}\n\n.flexItem1 {\n flex: 1;\n justify-content: center;\n align-items: center;\n}\n\n.tab {\n padding: 8px;\n cursor: pointer;\n background-color: #F2F4F6;\n font-size: 12px;\n text-align: center;\n color: #24292E;\n}\n\n.tabcontainer {\n padding: 4px;\n background-color: #F2F4F6;\n border-radius: 8px;\n margin-bottom: 30px;\n margin-top: 30px;\n}\n\n.tabactive {\n background-color: white;\n -webkit-transition: background-color 300ms linear;\n -ms-transition: background-color 300ms linear;\n transition: background-color 300ms linear;\n border-radius: 8px;\n}\n\n.item {\n font-size: 12px;\n margin-bottom: 16px;\n border-radius: 8px;\n padding: 10px;\n border: 2px #F2F4F6 solid;\n color: #24292E;\n}\n\n.extensionLabel {\n font-style: normal;\n font-weight: bold;\n font-size: 14px;\n text-align: cetner;\n color: #24272A;\n}\n\n.notice {\n font-size: 12px;\n margin-left: 10px;\n margin-right: 10px;\n color: grey;\n}\n\n.button {\n margin-top: 41.5px;\n margin-bottom: 20px;\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 12px 20px;\n background: #037DD6;\n border-radius: 32px;\n color: white;\n border: 0;\n font-size: 14px;\n cursor: pointer;\n}\n\n.backdrop {\n visibility: visible;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n width: 100%;\n z-index: 99998;\n background: rgba(0, 0, 0, 0.87);\n opacity: 0.3;\n}\n\n.modal {\n visibility: visible;\n position: fixed;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 99999;\n background: white;\n padding: 20px;\n border-radius: 8px;\n top: 50%;\n max-width: 100%;\n width: 460px;\n min-width: 300px;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\n -webkit-font-smoothing: antialiased;\n}\n\n.closeButton {\n color: #BBC0C5;\n cursor: pointer;\n}\n\n.logoContainer {\n margin-left: 24px;\n margin-right: 24px;\n margin-top: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.connectMobileText {\n font-size: 14px;\n color: black;\n margin-top: 28px;\n margin-bottom: 28px;\n line-height: 2;\n}\n\n.blue {\n color: #037DD6;\n font-weight: 700;\n}\n\n.installExtensionText {\n margin-left: 10px;\n}\n\n.center {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.right {\n display: flex;\n align-items: center;\n justify-content: right;\n}\n\n#sdk-mm-qrcode {\n svg {\n width: 50%;\n }\n}";var my=Object.freeze({__proto__:null,mm_pending_modal:gy});const yy=()=>Hg("svg",{width:"21",height:"15",viewBox:"0 0 21 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M14.1364 14.9851C13.5909 14.9851 13.2273 14.5851 13.2273 13.9851C13.2273 13.3851 13.5909 12.9851 14.1364 12.9851C16.6818 12.9851 18.6818 10.7851 18.6818 7.98508C18.6818 5.18508 16.6818 2.98508 14.1364 2.98508C11.5909 2.98508 9.59091 5.18508 9.59091 7.98508C9.59091 8.58508 9.22727 8.98508 8.68182 8.98508C8.13636 8.98508 7.77273 8.58508 7.77273 7.98508C7.77273 4.08508 10.5909 0.985077 14.1364 0.985077C17.6818 0.985077 20.5 4.08508 20.5 7.98508C20.5 11.8851 17.6818 14.9851 14.1364 14.9851ZM6.68182 14.7851C3.22727 14.7851 0.5 11.6851 0.5 7.98508C0.5 4.28508 3.22727 1.18508 6.68182 1.18508C7.22727 1.18508 7.59091 1.58508 7.59091 2.18508C7.59091 2.78508 7.22727 3.18508 6.68182 3.18508C4.22727 3.18508 2.31818 5.38508 2.31818 7.98508C2.31818 10.5851 4.22727 12.7851 6.68182 12.7851C9.13636 12.7851 11.0455 10.6851 11.0455 7.98508C11.0455 7.38508 11.4091 6.98508 11.9545 6.98508C12.5 6.98508 12.8636 7.38508 12.8636 7.98508C12.7727 11.6851 10.0455 14.7851 6.68182 14.7851Z",fill:"white"})),vy=()=>Hg("svg",{width:"400",height:"300",viewBox:"0 0 467 300",fill:"none",xmlns:"http://www.w3.org/2000/svg"},Hg("path",{d:"M312.387 280.629C312.549 280.583 312.247 280.735 312.387 280.629L339.678 260.425C340.088 260.118 340.132 259.156 340.07 258.647C340.008 258.138 339.573 258.257 339.106 258.084L311.712 247.455C311.292 247.301 311.308 247.402 310.939 247.673C310.569 247.944 310.356 248.21 310.356 248.672L310.459 279.504C310.461 280.025 311.163 280.619 311.614 280.847C311.913 280.996 312.072 280.718 312.387 280.629ZM336.204 259.736L312.979 276.292L313.439 251.139L336.204 259.736Z",fill:"url(#paint0_linear_1356_14057)"}),Hg("path",{d:"M324.639 260.342C324.358 259.547 323.485 258.91 322.707 259.215C319.6 260.432 318.17 262.313 317.287 264.066C316.482 265.665 316.197 267.482 314.188 268.269C312.178 269.055 310.763 268.663 309.162 268.007C307.406 267.287 305.504 266.182 302.397 267.399C299.289 268.616 297.859 270.497 296.976 272.25C296.171 273.849 295.697 274.886 293.685 275.673C291.675 276.459 290.261 276.067 288.659 275.411C286.903 274.691 284.999 273.587 281.894 274.803C278.789 276.019 277.549 278.681 276.666 280.434C275.861 282.034 275.386 283.07 273.374 283.857C272.596 284.161 271.931 285.055 272.211 285.849C272.492 286.644 273.365 287.281 274.143 286.977C277.25 285.76 278.68 283.879 279.563 282.125C280.368 280.526 280.65 278.71 282.662 277.923C284.672 277.136 286.087 277.528 287.688 278.184C289.444 278.904 291.348 280.009 294.453 278.793C297.561 277.576 298.991 275.695 299.874 273.941C300.679 272.342 301.153 271.306 303.165 270.519C305.175 269.732 306.589 270.124 308.191 270.78C309.947 271.5 311.849 272.605 314.956 271.388C318.063 270.172 319.301 267.511 320.184 265.757C320.989 264.158 321.466 263.121 323.476 262.335C324.254 262.032 324.919 261.137 324.639 260.342Z",fill:"url(#paint1_linear_1356_14057)"}),Hg("path",{d:"M389.034 111.124C388.968 112.406 387.342 113.113 386.324 113.549C384.297 114.419 382.089 114.493 379.942 114.5C376.607 114.509 373.215 114.163 369.89 113.976C366.712 113.798 363.156 113.311 360.03 114.232C357.705 114.919 355.667 116.762 353.452 117.739C351.129 118.765 348.957 119.198 346.489 119.687C335.569 121.85 323.587 120.825 312.656 119.977C311.92 119.92 312.539 118.997 313.237 118.981C313.207 118.815 313.001 118.394 313.045 118.201C313.086 118.029 312.781 117.586 312.853 117.421C312.67 117.198 313.316 117.427 313.626 117.204C315.912 115.557 318.721 114.79 321.363 115.041C324.677 115.355 327.293 116.04 330.641 115.781C334.392 115.491 338.125 114.787 341.857 114.312C345.142 113.892 349.09 113.941 352.106 112.28C352.916 111.834 353.137 111.262 353.269 110.287C353.331 109.828 353.672 108.969 353.658 108.511C353.629 107.529 354.191 107.886 355.013 107.298C356.857 105.981 358.274 105.516 360.428 105.784C362.841 106.083 365.264 107.273 367.578 107.953C370.761 108.888 374.328 108.646 377.631 108.477C380.517 108.329 383.141 107.901 385.944 108.653C387.013 108.941 389.104 109.745 389.034 111.124Z",fill:"url(#paint2_linear_1356_14057)"}),Hg("path",{d:"M278.118 85.4414C280.313 83.8186 283.302 83.9 285.853 83.2728C290.501 82.127 295.644 78.4476 300.549 79.1524C301.299 79.2595 300.904 81.0355 300.159 80.9295C300.131 80.9256 300.187 80.9333 300.159 80.9295C300.089 81.0185 299.516 81.1051 299.385 81.1463C294.999 82.515 292.895 87.5083 289.126 89.8598C287.799 90.688 286.771 90.8351 285.258 90.9441C283.515 91.0691 280.964 90.5775 279.269 90.1219C277.15 89.5532 275.965 87.034 278.118 85.4414Z",fill:"url(#paint3_linear_1356_14057)"}),Hg("path",{d:"M122.567 166.093C113.597 172.832 104.535 179.836 99.517 190.092C98.5342 192.099 97.519 195.019 97.9533 197.204C98.9699 202.316 105.76 203.049 110.691 201.96C113.468 201.347 116.325 199.231 115.921 196.319C115.576 193.81 113.158 192.986 112.072 190.73C110.779 188.04 112.35 184.97 114.218 182.62C128.134 165.099 150.074 157.394 171.093 151.607C175.385 150.425 180.897 147.69 180.581 143.099C180.372 140.072 177.118 137.683 174.221 137.383C171.324 137.082 168.481 138.773 165.715 139.776C158.416 142.419 151.17 143.799 143.489 143.526C136.865 143.29 130.976 143.316 129.562 150.781C128.138 158.276 129.53 160.863 122.567 166.093Z",fill:"url(#paint4_linear_1356_14057)"}),Hg("path",{d:"M79.1056 153.531C60.3932 164.378 43.7478 178.354 32.8214 197.415C30.3313 201.76 27.9216 206.554 27.1821 211.512C26.4448 216.47 27.7591 222.525 30.8133 226.337C34.908 231.446 41.6938 232.915 48.1811 233.125C50.7248 233.208 53.0035 233.066 55.3316 231.947C57.6602 230.83 59.7548 228.359 59.5978 225.742C59.3303 221.315 54.5491 219.665 50.9271 217.34C42.6566 212.037 40.4958 199.493 44.2381 190.032C47.9803 180.57 55.8228 173.173 63.2316 166.338C67.229 162.651 71.5194 158.372 76.777 157.522C79.9167 157.015 83.4706 157.589 86.6295 157.252C93.9004 156.479 99.64 151.404 105.588 146.912C115.048 139.765 126.045 134.283 137.501 132.093C141.913 131.248 146.293 130.493 149.682 127.831C151.37 126.507 150.803 123.567 148.726 123.93C138.542 125.713 128.652 131.135 119.142 134.758C105.627 139.914 91.7133 146.223 79.1056 153.531Z",fill:"url(#paint5_linear_1356_14057)"}),Hg("path",{d:"M96.3677 117.321C96.0315 116.64 95.2914 116.612 94.6293 116.975C91.9858 118.417 91.5452 120.509 90.9466 122.178C90.4004 123.702 89.3647 124.67 87.6542 125.604C85.9437 126.538 85.0983 126.316 83.5956 125.91C81.9481 125.465 79.8603 125.424 77.2168 126.866C74.5734 128.309 74.1348 130.401 73.5341 132.07C72.9879 133.593 71.9522 134.562 70.2417 135.496C68.5313 136.43 67.6859 136.208 66.1832 135.801C64.5357 135.357 62.2569 134.538 59.6128 135.978C56.9694 137.42 56.5308 139.512 55.9301 141.181C55.3839 142.705 54.5398 144.454 52.8293 145.388C52.1667 145.748 52.1006 146.485 52.439 147.165C52.7752 147.845 53.5153 147.874 54.1773 147.511C56.8208 146.069 57.2594 143.977 57.86 142.307C58.4062 140.784 59.4419 139.815 61.1524 138.881C62.8629 137.948 63.7083 138.17 65.211 138.576C66.8585 139.021 68.9458 139.059 71.5898 137.619C74.2333 136.177 74.6718 134.085 75.2725 132.416C75.8187 130.892 76.8544 129.924 78.5649 128.99C80.2754 128.056 81.1207 128.278 82.6235 128.684C84.2709 129.129 86.5503 129.95 89.1938 128.507C91.8373 127.065 92.2779 124.973 92.8765 123.304C93.4227 121.78 94.2663 120.03 95.9773 119.098C96.6378 118.738 96.7039 118.001 96.3677 117.321Z",fill:"#FBC49D"}),Hg("path",{d:"M391.827 164.699C392.04 164.639 392.39 164.573 392.6 164.481C393.87 163.921 395.363 162.429 395.893 161.051C396.421 159.673 396.237 158.321 395.712 156.931C394.629 154.061 391.777 152.62 389.155 153.775C386.531 154.931 384.962 158.455 386.042 161.325C387.038 163.963 389.369 165.392 391.827 164.699ZM394.166 157.367C394.529 158.332 394.52 159.751 394.156 160.706C393.792 161.662 393.1 162.534 392.218 162.921C390.398 163.723 388.338 162.878 387.589 160.889C387.226 159.925 387.234 158.506 387.599 157.55C387.963 156.594 388.654 155.723 389.536 155.336C391.356 154.534 393.416 155.376 394.166 157.367Z",fill:"#86E29B"}),Hg("path",{d:"M62.7198 108.691C64.4912 108.191 66.6152 106.609 67.5596 104.824C68.4273 103.187 68.465 101.455 67.9609 99.7066C67.4547 97.9586 66.0792 96.5141 64.4963 95.6786C62.9135 94.843 61.2077 94.8578 59.4756 95.4255C57.7435 95.9933 56.2768 97.4364 55.409 99.074C53.6185 102.456 55.2032 106.494 58.4723 108.22C60.0142 109.035 61.1315 109.138 62.7198 108.691ZM60.6304 96.7682C61.819 96.4332 63.0232 96.8871 64.1048 97.4571C65.2463 98.0603 66.0495 98.8796 66.4145 100.142C66.7791 101.403 66.4488 103.299 65.8224 104.48C64.5299 106.919 61.2212 107.686 58.8638 106.441C56.5063 105.197 55.8538 101.858 57.1462 99.4185C57.7726 98.2375 58.6059 97.3957 59.8573 96.9862C59.9214 96.9635 60.5631 96.7872 60.6304 96.7682Z",fill:"#FFB0EB"}),Hg("path",{d:"M77.0217 242.979C75.9542 243.28 75.1664 242.151 74.9029 241.074C74.6394 239.996 75 239.378 76.0676 239.077C77.1351 238.776 78.5053 238.907 78.7688 239.984C79.0323 241.061 78.0893 242.678 77.0217 242.979Z",fill:"url(#paint6_linear_1356_14057)"}),Hg("path",{d:"M380.506 184.577C379.439 184.878 378.651 183.749 378.387 182.672C378.124 181.594 378.484 180.976 379.552 180.675C380.619 180.374 381.99 180.505 382.253 181.582C382.517 182.659 381.574 184.276 380.506 184.577Z",fill:"url(#paint7_linear_1356_14057)"}),Hg("path",{d:"M348.82 246.969C347.752 247.27 346.382 247.14 346.119 246.063C345.855 244.985 346.798 243.369 347.866 243.068C348.933 242.767 349.721 243.896 349.985 244.973C350.248 246.05 349.888 246.669 348.82 246.969Z",fill:"url(#paint8_linear_1356_14057)"}),Hg("path",{d:"M140.419 282.412C139.351 282.713 138.754 282.365 138.491 281.288C138.227 280.21 138.397 278.812 139.464 278.511C140.532 278.21 142.093 279.121 142.357 280.198C142.62 281.275 141.486 282.111 140.419 282.412Z",fill:"url(#paint9_linear_1356_14057)"}),Hg("path",{d:"M121.462 101.679C120.395 101.979 119.798 101.631 119.534 100.554C119.271 99.4764 119.44 98.0779 120.508 97.777C121.575 97.4761 123.136 98.3868 123.4 99.4642C123.663 100.542 122.53 101.378 121.462 101.679Z",fill:"url(#paint10_linear_1356_14057)"}),Hg("path",{d:"M370.749 159.005C369.682 159.306 368.311 159.175 368.048 158.098C367.784 157.021 368.727 155.404 369.795 155.103C370.863 154.802 371.65 155.931 371.914 157.008C372.177 158.086 371.817 158.704 370.749 159.005Z",fill:"url(#paint11_linear_1356_14057)"}),Hg("path",{d:"M384.211 245.345C383.143 245.646 381.773 245.515 381.51 244.438C381.246 243.361 382.189 241.744 383.257 241.443C384.324 241.142 385.112 242.271 385.376 243.348C385.639 244.426 385.278 245.044 384.211 245.345Z",fill:"url(#paint12_linear_1356_14057)"}),Hg("path",{d:"M364.771 41.3873C363.063 41.8687 361.337 40.8616 360.915 39.1378C360.493 37.414 361.536 35.6263 363.244 35.1449C364.953 34.6634 366.679 35.6706 367.101 37.3944C367.522 39.1182 366.479 40.9059 364.771 41.3873Z",fill:"url(#paint13_linear_1356_14057)"}),Hg("path",{d:"M404.311 77.905C404.602 77.8231 404.875 77.9236 405.084 77.6871C405.437 77.2908 404.814 76.6385 404.703 76.1265L401.277 58.7418C401.149 58.163 400.687 57.5371 400.123 57.3991C399.558 57.2611 398.969 57.3812 398.576 57.835L385.784 73.1179C385.395 73.564 385.199 74.3453 385.393 74.8964C385.585 75.4481 385.978 76.1646 386.548 76.2391L403.538 78.123C403.744 78.1479 404.114 77.9607 404.311 77.905ZM398.948 62.7348L401.811 74.4394L389.841 72.8085L398.948 62.7348Z",fill:"#FFB0EB"}),Hg("path",{d:"M97.5393 295.311C97.7108 295.263 97.4284 295.461 97.5393 295.311L108.785 280.464C108.975 280.211 108.718 279.972 108.594 279.684C108.47 279.396 108.124 279.917 107.821 279.902L88.5106 278.672C88.2101 278.659 87.895 278.62 87.7374 278.89C87.5798 279.159 87.7755 279.402 87.9283 279.67L96.5753 294.749C96.7102 294.99 97.2696 295.297 97.5393 295.311C97.6283 295.319 97.4556 295.335 97.5393 295.311ZM106.465 281.118L96.9667 292.97L90.6295 280.577L106.465 281.118Z",fill:"#86E29B"}),Hg("path",{d:"M393.699 108.848C389.518 104.446 414.629 114.366 413.945 120.659C413.259 126.952 401.355 129.102 403.894 123.491C406.042 118.747 400.376 115.876 393.699 108.848Z",fill:"#FBC49D"}),Hg("path",{d:"M139.414 115.959C139.434 115.953 139.392 115.965 139.414 115.959C141.963 115.2 143.436 111.976 142.717 109.189C142.37 107.839 141.526 107.199 140.408 106.504C139.289 105.808 138.171 105.449 136.933 105.815C135.698 106.182 134.85 107.033 134.222 108.247C133.595 109.461 133.282 111.234 133.63 112.585C133.978 113.935 134.821 114.574 135.94 115.27C137.04 115.952 138.199 116.301 139.414 115.959ZM137.315 107.375C138.222 107.12 139.005 106.994 139.825 107.502C140.661 108.02 140.912 108.618 141.171 109.625C141.708 111.704 140.935 113.834 139.032 114.398C138.11 114.675 137.356 114.791 136.522 114.272C135.686 113.753 135.436 113.155 135.176 112.149C134.917 111.142 134.718 109.714 135.186 108.81C135.654 107.905 136.394 107.649 137.315 107.375C137.329 107.371 137.299 107.38 137.315 107.375Z",fill:"#75C4FD"}),Hg("path",{d:"M308.981 78.7519C310.052 78.4043 311.158 78.7096 312.265 78.6613C313.655 78.6006 314.936 78.517 316.323 78.3531C319.497 77.9795 322.798 77.4906 325.984 77.3012C329.309 77.1025 332.514 76.8551 335.836 77.0295C338.809 77.1842 342.163 77.3405 345.105 77.7558C352.129 78.7468 359.331 79.0578 366.347 80.1158C372.252 81.008 377.93 82.1319 383.722 83.5644C385.925 84.0054 388.267 85.0754 389.126 85.3792C389.421 85.4833 389.37 85.8347 389.317 86.1595C389.306 86.2271 389.353 86.1146 389.317 86.1595C388.269 87.414 386.564 86.8124 385.259 86.4677C384.406 86.241 381.488 85.9494 381.011 85.9957C380.14 86.0815 379.277 86.014 379.656 87.2114C380.122 88.6824 382.391 89.7375 383.704 90.2419C385.883 91.0803 388.771 91.2561 390.845 92.4015C392.968 92.821 395.425 93.5002 397.022 93.9986C402.83 95.8103 407.806 98.8678 413.033 102.002C415.503 103.482 417.829 104.764 419.973 106.72C421.647 108.248 423.771 109.882 424.595 112.091C425.113 113.482 424.451 115.471 422.848 115.085C420.353 114.488 419.638 111.665 418.227 109.714C415.003 105.251 410.067 102.067 405.118 100.06C402.64 99.0556 399.803 98.729 397.204 98.1176C394.411 97.4613 391.597 97.0442 388.707 97.1736C385.646 97.3097 382.846 97.5534 379.819 98.0078C377.027 98.4264 374.252 98.4441 371.514 97.8441C368.766 97.2421 366.276 96.7553 363.6 95.9021C361.662 95.2848 359.013 94.5583 357.232 93.5247C355.699 92.6339 355.631 91.2381 357.241 90.186C359.87 88.4656 362.778 89.8021 365.546 90.3497C365.561 90.3527 365.532 90.3468 365.546 90.3497C367.858 90.804 369.649 90.098 371.923 89.3884C372.489 89.2128 373.255 89.0482 373.47 88.953C374.383 88.5432 375.895 87.8227 375.407 86.7394C374.868 85.5457 372.659 84.8846 371.55 84.4891C369.74 83.8428 368.053 82.9215 366.147 82.6743C365.654 82.6095 365.109 83.1606 364.6 83.1097C363.36 83.1121 361.769 83.348 360.543 83.418C357.43 83.5916 354.583 83.6228 351.464 83.4719C348.714 83.3377 346.432 82.8542 343.741 82.3102C340.773 81.7101 337.52 81.5879 334.471 81.5839C331.393 81.5811 328.6 81.7214 325.583 82.4181C322.758 83.0702 319.757 83.6198 316.887 84.0326C314.698 84.3481 312.467 84.6054 310.319 84.2137C309.079 83.9871 306.994 83.3394 306.461 81.9635C305.846 80.3659 307.736 79.1556 308.981 78.7519Z",fill:"url(#paint14_linear_1356_14057)"}),Hg("path",{d:"M242.269 242.95C242.295 242.947 242.244 242.955 242.269 242.95C244.934 242.606 247.53 241.858 250.2 241.574C253.133 241.264 256.006 240.56 258.906 239.982C263.26 239.117 268.026 238.52 272.254 237.097C274.429 236.365 276.067 235.298 278.251 234.592C280.361 233.909 283.058 233.12 285.216 232.652C289.317 231.764 293.049 231.66 297.016 230.198C301.109 228.69 305.088 226.673 308.819 224.409C312.645 222.086 316.282 219.769 320.622 218.62C322.381 218.154 323.919 218.219 325.65 218.886C327.016 219.413 327.739 220.337 327.196 221.79C326.557 223.504 324.659 224.7 323.131 225.423C320.854 226.5 319.53 227.184 317.134 227.927C314.619 228.707 311.888 229.24 309.395 230.083C308.226 230.947 307.17 232.522 306.105 233.501C303.996 235.441 301.666 237.03 298.945 237.996C292.934 240.129 286.354 238.602 280.183 239.056C279.661 239.095 279.162 239.442 278.635 239.487C275.592 240.135 272.2 240.63 269.156 241.294C264.546 242.299 260.456 243.409 255.808 244.179C251.971 244.814 243.815 245.854 243.815 245.854L242.074 245.505C240.575 245.281 240.751 243.152 242.269 242.95Z",fill:"url(#paint15_linear_1356_14057)"}),Hg("path",{d:"M432.985 171.626C438.212 165.465 445.109 153.64 442.906 144.649C442.162 137.999 433.671 132.912 424.963 135.518C420.16 136.957 416.435 142.146 419.724 144.498C420.656 145.164 422.187 145.591 423.391 145.969C434.204 149.375 434.925 162.538 425.069 169.683C421.087 172.569 416.347 174.292 411.914 176.719C400.151 183.162 399.887 196.847 387.7 202.712C382.326 205.298 375.761 206.838 370.297 209.275C359.98 213.88 352.555 221.733 342.241 226.341C337.225 228.584 330.266 231.632 323.483 234.12C321.475 234.855 321.999 237.058 324.056 236.46C324.098 236.449 324.017 236.474 324.056 236.46C329.079 234.971 334.437 233.161 339.331 231.33C352.278 226.48 365.28 220.971 377.43 214.775C401.78 202.367 416.881 190.609 432.985 171.626Z",fill:"url(#paint16_linear_1356_14057)"}),Hg("path",{d:"M343.644 241.104C348.002 234.144 357.126 232.455 364.343 231.134C368.176 230.431 372.406 229.878 376.137 228.662C380.691 227.175 384.558 224.095 388.327 221.077C389.452 220.177 391.204 218.466 392.393 217.436C393.185 216.748 393.644 216.026 394.33 215.225C396 213.275 399.599 209.812 401.687 208.16C403.263 206.914 407.779 204.758 408.259 207.986C408.611 210.359 406.379 213.087 404.961 214.747C402.224 217.953 398.998 221.079 395.475 223.243C391.749 225.531 387.701 227.439 383.674 229.051C381.672 229.853 379.519 230.073 377.486 230.785C376.001 231.307 374.486 232.236 373.037 232.866C371.034 233.738 368.99 234.28 367.041 235.38C364.436 236.849 361.782 238.783 359.108 240.105C356.331 241.477 353.823 242.691 350.791 243.27C348.6 243.687 345.501 243.641 343.836 241.884C343.526 241.554 343.389 241.51 343.644 241.104Z",fill:"url(#paint17_linear_1356_14057)"}),Hg("path",{d:"M190.163 273.219C222.905 268.849 232.64 262.943 213.962 259.057C195.285 255.172 187.5 262.08 188.434 266.2C189.366 270.32 180.381 271.326 169.286 272.39C158.193 273.454 157.141 276.354 190.163 273.219Z",fill:"url(#paint18_linear_1356_14057)"}),Hg("path",{d:"M295.952 95.4242L241.395 135.226L251.54 111.77L295.952 95.4242Z",fill:"#E17726",stroke:"#E17726","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M170.111 95.4242L224.181 135.598L214.522 111.77L170.111 95.4242Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M276.309 187.712L261.793 209.576L292.876 218.014L301.78 188.189L276.309 187.712Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M164.336 188.189L173.186 218.014L204.215 209.576L189.753 187.712L164.336 188.189Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M202.542 150.776L193.908 163.618L224.667 164.998L223.642 132.36L202.542 150.776Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M263.52 150.775L242.097 131.989L241.395 164.998L272.154 163.618L263.52 150.775Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M204.215 209.576L222.832 200.714L206.805 188.402L204.215 209.576Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M243.23 200.714L261.793 209.576L259.257 188.402L243.23 200.714Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M261.793 209.576L243.23 200.714L244.741 212.601L244.579 217.643L261.793 209.576Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M204.215 209.576L221.483 217.643L221.375 212.601L222.832 200.714L204.215 209.576Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M221.807 180.547L206.373 176.09L217.274 171.154L221.807 180.547Z",fill:"#233447",stroke:"#233447","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M244.255 180.547L248.788 171.154L259.742 176.09L244.255 180.547Z",fill:"#233447",stroke:"#233447","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M204.215 209.576L206.913 187.712L189.753 188.189L204.215 209.576Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M259.149 187.712L261.793 209.576L276.309 188.189L259.149 187.712Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M272.154 163.618L241.395 164.998L244.255 180.547L248.788 171.154L259.742 176.09L272.154 163.618Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M206.373 176.09L217.274 171.154L221.807 180.547L224.667 164.998L193.908 163.618L206.373 176.09Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M193.908 163.618L206.805 188.402L206.373 176.09L193.908 163.618Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M259.743 176.09L259.257 188.402L272.154 163.618L259.743 176.09Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M224.667 164.998L221.807 180.548L225.422 198.909L226.232 174.71L224.667 164.998Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M241.395 164.998L239.884 174.657L240.64 198.909L244.255 180.548L241.395 164.998Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M244.255 180.547L240.64 198.909L243.23 200.714L259.257 188.402L259.743 176.09L244.255 180.547Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M206.373 176.09L206.805 188.402L222.832 200.714L225.422 198.909L221.807 180.547L206.373 176.09Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M244.579 217.643L244.741 212.601L243.338 211.434H222.724L221.375 212.601L221.483 217.643L204.215 209.576L210.259 214.459L222.508 222.791H243.5L255.803 214.459L261.793 209.576L244.579 217.643Z",fill:"#C0AC9D",stroke:"#C0AC9D","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M243.23 200.714L240.64 198.909H225.422L222.832 200.714L221.375 212.601L222.724 211.434H243.338L244.741 212.601L243.23 200.714Z",fill:"#161616",stroke:"#161616","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M298.272 137.827L302.859 115.856L295.952 95.4242L243.23 133.899L263.52 150.775L292.174 159.001L298.488 151.731L295.736 149.767L300.107 145.84L296.761 143.293L301.132 140.002L298.272 137.827Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M163.203 115.856L167.844 137.827L164.876 140.002L169.301 143.293L165.955 145.84L170.326 149.767L167.574 151.731L173.888 159.001L202.542 150.775L222.832 133.899L170.11 95.4242L163.203 115.856Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M292.175 159.001L263.52 150.775L272.154 163.618L259.257 188.402L276.309 188.189H301.78L292.175 159.001Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M202.542 150.775L173.888 159.001L164.336 188.189H189.753L206.805 188.402L193.908 163.618L202.542 150.775Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("path",{d:"M241.395 164.998L243.23 133.9L251.54 111.77H214.522L222.832 133.9L224.667 164.998L225.368 174.763L225.422 198.909H240.64L240.694 174.763L241.395 164.998Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),Hg("defs",null,Hg("linearGradient",{id:"paint0_linear_1356_14057",x1:"335.991",y1:"250.487",x2:"303.873",y2:"266.801",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})),Hg("linearGradient",{id:"paint1_linear_1356_14057",x1:"276.993",y1:"303.722",x2:"205.254",y2:"401.574",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"0.0929","stop-color":"#81C2F6"}),Hg("stop",{offset:"1","stop-color":"#F0B8BD"})),Hg("linearGradient",{id:"paint2_linear_1356_14057",x1:"271.074",y1:"119.924",x2:"553.077",y2:"104.53",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})),Hg("linearGradient",{id:"paint3_linear_1356_14057",x1:"264.209",y1:"91.0943",x2:"357.834",y2:"72.8792",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})),Hg("linearGradient",{id:"paint4_linear_1356_14057",x1:"212.46",y1:"121.997",x2:"92.6119",y2:"183.406",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})),Hg("linearGradient",{id:"paint5_linear_1356_14057",x1:"23.0498",y1:"204.411",x2:"161.86",y2:"163.003",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"0.0929","stop-color":"#81C2F6"}),Hg("stop",{offset:"1","stop-color":"#F0B8BD"})),Hg("linearGradient",{id:"paint6_linear_1356_14057",x1:"78.8647",y1:"240.375",x2:"74.9655",y2:"241.328",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint7_linear_1356_14057",x1:"382.349",y1:"181.971",x2:"378.45",y2:"182.925",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint8_linear_1356_14057",x1:"349.889",y1:"244.583",x2:"345.99",y2:"245.537",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint9_linear_1356_14057",x1:"142.262",y1:"279.808",x2:"138.362",y2:"280.762",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint10_linear_1356_14057",x1:"123.305",y1:"99.0746",x2:"119.406",y2:"100.028",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint11_linear_1356_14057",x1:"371.818",y1:"156.617",x2:"367.919",y2:"157.571",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint12_linear_1356_14057",x1:"385.281",y1:"242.958",x2:"381.382",y2:"243.911",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint13_linear_1356_14057",x1:"367.125",y1:"37.5052",x2:"360.843",y2:"38.8076",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"1","stop-color":"#75C3FC"})),Hg("linearGradient",{id:"paint14_linear_1356_14057",x1:"300.182",y1:"91.321",x2:"479.464",y2:"104.041",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})),Hg("linearGradient",{id:"paint15_linear_1356_14057",x1:"363.434",y1:"201.232",x2:"102.977",y2:"302.269",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})),Hg("linearGradient",{id:"paint16_linear_1356_14057",x1:"447.962",y1:"165.159",x2:"313.049",y2:"197.95",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"0.0929","stop-color":"#81C2F6"}),Hg("stop",{offset:"1","stop-color":"#F0B8BD"})),Hg("linearGradient",{id:"paint17_linear_1356_14057",x1:"410.211",y1:"215.859",x2:"341.378",y2:"232.788",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#75C3FC"}),Hg("stop",{offset:"0.0929","stop-color":"#81C2F6"}),Hg("stop",{offset:"1","stop-color":"#F0B8BD"})),Hg("linearGradient",{id:"paint18_linear_1356_14057",x1:"222.282",y1:"258.986",x2:"162.257",y2:"273.774",gradientUnits:"userSpaceOnUse"},Hg("stop",{"stop-color":"#FFE466"}),Hg("stop",{offset:"1","stop-color":"#FFAFEA"})))),by=class{constructor(e){gg(this,e),this.close=Zg(this,"close",7),this.connectWithExtension=Zg(this,"connectWithExtension",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.i18nInstance=new Fm,this.setTab(this.preferDesktop?1:2)}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}onClose(e=!1){this.close.emit({shouldTerminate:e})}connectWithExtensionHandler(){this.connectWithExtension.emit()}setTab(e){this.tab=e,this.isDefaultTab=!1}disconnectedCallback(){this.onClose()}updatePreferDesktop(e){e?this.setTab(1):this.setTab(2)}render(){if(!this.translationsLoaded)return null;const e=e=>this.i18nInstance.t(e),t=this.sdkVersion,n=this.isDefaultTab?this.preferDesktop?1:2:this.tab,r=ay(this.link,"svg",{ecc:"medium",scale:2});return Hg(Bm,{className:"select-modal"},Hg("div",{class:"backdrop",onClick:()=>this.onClose(!0)}),Hg("div",{class:"modal"},Hg("div",{class:"closeButtonContainer"},Hg("div",{class:"right"},Hg("span",{class:"closeButton",onClick:()=>this.onClose(!0)},Hg($m,null)))),Hg("div",{class:"logoContainer"},Hg(jm,null)),Hg("div",null,Hg("div",{class:"tabcontainer"},Hg("div",{class:"flexContainer"},Hg("div",{onClick:()=>this.setTab(1),class:"tab flexItem "+(1===n?"tabactive":"")},e("DESKTOP")),Hg("div",{onClick:()=>this.setTab(2),class:"tab flexItem "+(2===n?"tabactive":"")},e("MOBILE")))),Hg("div",{style:{display:1===n?"none":"block"}},Hg("div",{class:"flexContainer"},Hg("div",{class:"flexItem",style:{textAlign:"center",marginTop:"4"}},Hg("div",{class:"center",id:"sdk-mm-qrcode",innerHTML:r}),Hg("div",{class:"connectMobileText"},e("SCAN_TO_CONNECT"),Hg("br",null),Hg("span",{class:"blue"},Hg("b",null,e("META_MASK_MOBILE_APP"))))))),Hg("div",{style:{display:2===n?"none":"block"}},Hg("div",{style:{display:"flex",justifyContent:"center",height:"300",marginTop:"-20"}},Hg(vy,null)),Hg("div",{class:"extensionLabel"},e("SELECT_MODAL.CRYPTO_TAKE_CONTROL_TEXT")),Hg("button",{class:"button",onClick:this.connectWithExtensionHandler},Hg(yy,null),Hg("span",{class:"installExtensionText"},e("CONNECT_WITH_EXTENSION"))))),Hg(Dm,{version:t})))}get el(){return Yg(this)}static get watchers(){return{preferDesktop:["updatePreferDesktop"]}}};by.style=".flexContainer {\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: row;\n}\n\n.flexItem {\n flex: 1;\n justify-content: center;\n align-items: center;\n}\n\n.flexItem11 {\n flex: 11;\n justify-content: center;\n align-items: center;\n}\n\n.flexItem1 {\n flex: 1;\n justify-content: center;\n align-items: center;\n}\n\n.tab {\n padding: 8px;\n cursor: pointer;\n background-color: #F2F4F6;\n font-size: 12px;\n text-align: center;\n color: #24292E;\n}\n\n.tabcontainer {\n padding: 4px;\n background-color: #F2F4F6;\n border-radius: 8px;\n margin-bottom: 30px;\n margin-top: 30px;\n}\n\n.tabactive {\n background-color: white;\n -webkit-transition: background-color 300ms linear;\n -ms-transition: background-color 300ms linear;\n transition: background-color 300ms linear;\n border-radius: 8px;\n}\n\n.item {\n font-size: 12px;\n margin-bottom: 16px;\n border-radius: 8px;\n padding: 10px;\n border: 2px #F2F4F6 solid;\n color: #24292E;\n}\n\n.extensionLabel {\n font-style: normal;\n font-weight: bold;\n font-size: 14px;\n text-align: cetner;\n color: #24272A;\n}\n\n.notice {\n font-size: 12px;\n margin-left: 10px;\n margin-right: 10px;\n color: grey;\n}\n\n.button {\n margin-top: 41.5px;\n margin-bottom: 20px;\n width: 100%;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n padding: 12px 20px;\n background: #037DD6;\n border-radius: 32px;\n color: white;\n border: 0;\n font-size: 14px;\n cursor: pointer;\n}\n\n.backdrop {\n visibility: visible;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n width: 100%;\n z-index: 99998;\n background: rgba(0, 0, 0, 0.87);\n opacity: 0.3;\n}\n\n.modal {\n visibility: visible;\n position: fixed;\n left: 50%;\n transform: translate(-50%, -50%);\n z-index: 99999;\n background: white;\n padding: 20px;\n border-radius: 8px;\n top: 50%;\n max-width: 100%;\n width: 460px;\n min-width: 300px;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\n -webkit-font-smoothing: antialiased;\n}\n\n.closeButton {\n color: #BBC0C5;\n cursor: pointer;\n}\n\n.logoContainer {\n margin-left: 24px;\n margin-right: 24px;\n margin-top: 24px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.connectMobileText {\n font-size: 14px;\n color: black;\n margin-top: 28px;\n margin-bottom: 28px;\n line-height: 2;\n}\n\n.blue {\n color: #037DD6;\n font-weight: 700;\n}\n\n.installExtensionText {\n margin-left: 10px;\n}\n\n.center {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.right {\n display: flex;\n align-items: center;\n justify-content: right;\n}\n\n#sdk-mm-qrcode {\n svg {\n width: 50%;\n }\n}";var wy=Object.freeze({__proto__:null,mm_select_modal:by})},4188:function(e,t,n){"use strict";n.d(t,{Bj:function(){return i},Fl:function(){return Fe},IU:function(){return Te},Jd:function(){return S},PG:function(){return xe},Um:function(){return Ce},WL:function(){return je},X$:function(){return M},X3:function(){return Re},Xl:function(){return Oe},dq:function(){return Be},j:function(){return x},lk:function(){return k},nZ:function(){return a},qj:function(){return _e},qq:function(){return w},yT:function(){return Me}});n(7658);var r=n(4887);let o;class i{constructor(e=!1){this.detached=e,this._active=!0,this.effects=[],this.cleanups=[],this.parent=o,!e&&o&&(this.index=(o.scopes||(o.scopes=[])).push(this)-1)}get active(){return this._active}run(e){if(this._active){const t=o;try{return o=this,e()}finally{o=t}}else 0}on(){o=this}off(){o=this.parent}stop(e){if(this._active){let t,n;for(t=0,n=this.effects.length;t{const t=new Set(e);return t.w=0,t.n=0,t},l=e=>(e.w&g)>0,u=e=>(e.n&g)>0,d=({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{("length"===n||n>=e)&&l.push(t)}))}else switch(void 0!==n&&l.push(a.get(n)),t){case"add":(0,r.kJ)(e)?(0,r.S0)(n)&&l.push(a.get("length")):(l.push(a.get(v)),(0,r._N)(e)&&l.push(a.get(b)));break;case"delete":(0,r.kJ)(e)||(l.push(a.get(v)),(0,r._N)(e)&&l.push(a.get(b)));break;case"set":(0,r._N)(e)&&l.push(a.get(v));break}if(1===l.length)l[0]&&R(l[0]);else{const e=[];for(const t of l)t&&e.push(...t);R(c(e))}}function R(e,t){const n=(0,r.kJ)(e)?e:[...e];for(const r of n)r.computed&&T(r,t);for(const r of n)r.computed||T(r,t)}function T(e,t){(e!==y||e.allowRecurse)&&(e.scheduler?e.scheduler():e.run())}const O=(0,r.fY)("__proto__,__v_isRef,__isVue"),I=new Set(Object.getOwnPropertyNames(Symbol).filter((e=>"arguments"!==e&&"caller"!==e)).map((e=>Symbol[e])).filter(r.yk)),L=j(),P=j(!1,!0),N=j(!0),B=D();function D(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Te(this);for(let t=0,o=this.length;t{e[t]=function(...e){S();const n=Te(this)[t].apply(this,e);return k(),n}})),e}function $(e){const t=Te(this);return x(t,"has",e),t.hasOwnProperty(e)}function j(e=!1,t=!1){return function(n,o,i){if("__v_isReactive"===o)return!e;if("__v_isReadonly"===o)return e;if("__v_isShallow"===o)return t;if("__v_raw"===o&&i===(e?t?be:ve:t?ye:me).get(n))return n;const s=(0,r.kJ)(n);if(!e){if(s&&(0,r.RI)(B,o))return Reflect.get(B,o,i);if("hasOwnProperty"===o)return $}const a=Reflect.get(n,o,i);return((0,r.yk)(o)?I.has(o):O(o))?a:(e||x(n,"get",o),t?a:Be(a)?s&&(0,r.S0)(o)?a:a.value:(0,r.Kn)(a)?e?Se(a):_e(a):a)}}const U=K(),F=K(!0);function K(e=!1){return function(t,n,o,i){let s=t[n];if(Ae(s)&&Be(s)&&!Be(o))return!1;if(!e&&(Me(o)||Ae(o)||(s=Te(s),o=Te(o)),!(0,r.kJ)(t)&&Be(s)&&!Be(o)))return s.value=o,!0;const a=(0,r.kJ)(t)&&(0,r.S0)(n)?Number(n)e,Z=e=>Reflect.getPrototypeOf(e);function J(e,t,n=!1,r=!1){e=e["__v_raw"];const o=Te(e),i=Te(t);n||(t!==i&&x(o,"get",t),x(o,"get",i));const{has:s}=Z(o),a=r?Y:n?Le:Ie;return s.call(o,t)?a(e.get(t)):s.call(o,i)?a(e.get(i)):void(e!==o&&e.get(t))}function X(e,t=!1){const n=this["__v_raw"],r=Te(n),o=Te(e);return t||(e!==o&&x(r,"has",e),x(r,"has",o)),e===o?n.has(e):n.has(e)||n.has(o)}function Q(e,t=!1){return e=e["__v_raw"],!t&&x(Te(e),"iterate",v),Reflect.get(e,"size",e)}function ee(e){e=Te(e);const t=Te(this),n=Z(t),r=n.has.call(t,e);return r||(t.add(e),M(t,"add",e,e)),this}function te(e,t){t=Te(t);const n=Te(this),{has:o,get:i}=Z(n);let s=o.call(n,e);s||(e=Te(e),s=o.call(n,e));const a=i.call(n,e);return n.set(e,t),s?(0,r.aU)(t,a)&&M(n,"set",e,t,a):M(n,"add",e,t),this}function ne(e){const t=Te(this),{has:n,get:r}=Z(t);let o=n.call(t,e);o||(e=Te(e),o=n.call(t,e));const i=r?r.call(t,e):void 0,s=t.delete(e);return o&&M(t,"delete",e,void 0,i),s}function re(){const e=Te(this),t=0!==e.size,n=void 0,r=e.clear();return t&&M(e,"clear",void 0,void 0,n),r}function oe(e,t){return function(n,r){const o=this,i=o["__v_raw"],s=Te(i),a=t?Y:e?Le:Ie;return!e&&x(s,"iterate",v),i.forEach(((e,t)=>n.call(r,a(e),a(t),o)))}}function ie(e,t,n){return function(...o){const i=this["__v_raw"],s=Te(i),a=(0,r._N)(s),c="entries"===e||e===Symbol.iterator&&a,l="keys"===e&&a,u=i[e](...o),d=n?Y:t?Le:Ie;return!t&&x(s,"iterate",l?b:v),{next(){const{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:c?[d(e[0]),d(e[1])]:d(e),done:t}},[Symbol.iterator](){return this}}}}function se(e){return function(...t){return"delete"!==e&&this}}function ae(){const e={get(e){return J(this,e)},get size(){return Q(this)},has:X,add:ee,set:te,delete:ne,clear:re,forEach:oe(!1,!1)},t={get(e){return J(this,e,!1,!0)},get size(){return Q(this)},has:X,add:ee,set:te,delete:ne,clear:re,forEach:oe(!1,!0)},n={get(e){return J(this,e,!0)},get size(){return Q(this,!0)},has(e){return X.call(this,e,!0)},add:se("add"),set:se("set"),delete:se("delete"),clear:se("clear"),forEach:oe(!0,!1)},r={get(e){return J(this,e,!0,!0)},get size(){return Q(this,!0)},has(e){return X.call(this,e,!0)},add:se("add"),set:se("set"),delete:se("delete"),clear:se("clear"),forEach:oe(!0,!0)},o=["keys","values","entries",Symbol.iterator];return o.forEach((o=>{e[o]=ie(o,!1,!1),n[o]=ie(o,!0,!1),t[o]=ie(o,!1,!0),r[o]=ie(o,!0,!0)})),[e,n,t,r]}const[ce,le,ue,de]=ae();function he(e,t){const n=t?e?de:ue:e?le:ce;return(t,o,i)=>"__v_isReactive"===o?!e:"__v_isReadonly"===o?e:"__v_raw"===o?t:Reflect.get((0,r.RI)(n,o)&&o in t?n:t,o,i)}const fe={get:he(!1,!1)},pe={get:he(!1,!0)},ge={get:he(!0,!1)};const me=new WeakMap,ye=new WeakMap,ve=new WeakMap,be=new WeakMap;function we(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Ee(e){return e["__v_skip"]||!Object.isExtensible(e)?0:we((0,r.W7)(e))}function _e(e){return Ae(e)?e:ke(e,!1,V,fe,me)}function Ce(e){return ke(e,!1,G,pe,ye)}function Se(e){return ke(e,!0,W,ge,ve)}function ke(e,t,n,o,i){if(!(0,r.Kn)(e))return e;if(e["__v_raw"]&&(!t||!e["__v_isReactive"]))return e;const s=i.get(e);if(s)return s;const a=Ee(e);if(0===a)return e;const c=new Proxy(e,2===a?o:n);return i.set(e,c),c}function xe(e){return Ae(e)?xe(e["__v_raw"]):!(!e||!e["__v_isReactive"])}function Ae(e){return!(!e||!e["__v_isReadonly"])}function Me(e){return!(!e||!e["__v_isShallow"])}function Re(e){return xe(e)||Ae(e)}function Te(e){const t=e&&e["__v_raw"];return t?Te(t):e}function Oe(e){return(0,r.Nj)(e,"__v_skip",!0),e}const Ie=e=>(0,r.Kn)(e)?_e(e):e,Le=e=>(0,r.Kn)(e)?Se(e):e;function Pe(e){_&&y&&(e=Te(e),A(e.dep||(e.dep=c())))}function Ne(e,t){e=Te(e);const n=e.dep;n&&R(n)}function Be(e){return!(!e||!0!==e.__v_isRef)}function De(e){return Be(e)?e.value:e}const $e={get:(e,t,n)=>De(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Be(o)&&!Be(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function je(e){return xe(e)?e:new Proxy(e,$e)}class Ue{constructor(e,t,n,r){this._setter=t,this.dep=void 0,this.__v_isRef=!0,this["__v_isReadonly"]=!1,this._dirty=!0,this.effect=new w(e,(()=>{this._dirty||(this._dirty=!0,Ne(this))})),this.effect.computed=this,this.effect.active=this._cacheable=!r,this["__v_isReadonly"]=n}get value(){const e=Te(this);return Pe(e),!e._dirty&&e._cacheable||(e._dirty=!1,e._value=e.effect.run()),e._value}set value(e){this._setter(e)}}function Fe(e,t,n=!1){let o,i;const s=(0,r.mf)(e);s?(o=e,i=r.dG):(o=e.get,i=e.set);const a=new Ue(o,i,s||!i,n);return a}},8473:function(e,t,n){"use strict";n.d(t,{$d:function(){return s},Cn:function(){return B},FN:function(){return mn},HY:function(){return Nt},Ko:function(){return De},P$:function(){return oe},Q6:function(){return ue},U2:function(){return se},Us:function(){return Rt},Wm:function(){return en},Y8:function(){return ee},_:function(){return Qt},dD:function(){return N},h:function(){return Bn},iD:function(){return Vt},ic:function(){return ke},kq:function(){return sn},nJ:function(){return ne},nK:function(){return le},up:function(){return Le},wg:function(){return Ft},wy:function(){return X}});n(7658);var r=n(4188),o=n(4887);function i(e,t,n,r){let o;try{o=r?e(...r):e()}catch(i){a(i,t,n)}return o}function s(e,t,n,r){if((0,o.mf)(e)){const s=i(e,t,n,r);return s&&(0,o.tI)(s)&&s.catch((e=>{a(e,t,n)})),s}const c=[];for(let o=0;o>>1,o=x(d[r]);oh&&d.splice(t,1)}function C(e){(0,o.kJ)(e)?f.push(...e):p&&p.includes(e,e.allowRecurse?g+1:g)||f.push(e),E()}function S(e,t=(l?h+1:0)){for(0;tx(e)-x(t))),g=0;gnull==e.id?1/0:e.id,A=(e,t)=>{const n=x(e)-x(t);if(0===n){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function M(e){u=!1,l=!0,d.sort(A);o.dG;try{for(h=0;h(0,o.HD)(e)?e.trim():e))),t&&(i=n.map(o.h5))}let l;let u=r[l=(0,o.hR)(t)]||r[l=(0,o.hR)((0,o._A)(t))];!u&&a&&(u=r[l=(0,o.hR)((0,o.rs)(t))]),u&&s(u,e,6,i);const d=r[l+"Once"];if(d){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,s(d,e,6,i)}}function T(e,t,n=!1){const r=t.emitsCache,i=r.get(e);if(void 0!==i)return i;const s=e.emits;let a={},c=!1;if(!(0,o.mf)(e)){const r=e=>{const n=T(e,t,!0);n&&(c=!0,(0,o.l7)(a,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return s||c?((0,o.kJ)(s)?s.forEach((e=>a[e]=null)):(0,o.l7)(a,s),(0,o.Kn)(e)&&r.set(e,a),a):((0,o.Kn)(e)&&r.set(e,null),null)}function O(e,t){return!(!e||!(0,o.F7)(t))&&(t=t.slice(2).replace(/Once$/,""),(0,o.RI)(e,t[0].toLowerCase()+t.slice(1))||(0,o.RI)(e,(0,o.rs)(t))||(0,o.RI)(e,t))}let I=null,L=null;function P(e){const t=I;return I=e,L=e&&e.type.__scopeId||null,t}function N(e){L=e}function B(){L=null}function D(e,t=I,n){if(!t)return e;if(e._n)return e;const r=(...n)=>{r._d&&zt(-1);const o=P(t);let i;try{i=e(...n)}finally{P(o),r._d&&zt(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function $(e){const{type:t,vnode:n,proxy:r,withProxy:i,props:s,propsOptions:[c],slots:l,attrs:u,emit:d,render:h,renderCache:f,data:p,setupState:g,ctx:m,inheritAttrs:y}=e;let v,b;const w=P(e);try{if(4&n.shapeFlag){const e=i||r;v=an(h.call(e,e,f,s,g,p,m)),b=u}else{const e=t;0,v=an(e.length>1?e(s,{attrs:u,slots:l,emit:d}):e(s,null)),b=t.props?u:j(u)}}catch(_){jt.length=0,a(_,e,1),v=en(Dt)}let E=v;if(b&&!1!==y){const e=Object.keys(b),{shapeFlag:t}=E;e.length&&7&t&&(c&&e.some(o.tR)&&(b=U(b,c)),E=rn(E,b))}return n.dirs&&(E=rn(E),E.dirs=E.dirs?E.dirs.concat(n.dirs):n.dirs),n.transition&&(E.transition=n.transition),v=E,P(w),v}const j=e=>{let t;for(const n in e)("class"===n||"style"===n||(0,o.F7)(n))&&((t||(t={}))[n]=e[n]);return t},U=(e,t)=>{const n={};for(const r in e)(0,o.tR)(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function F(e,t,n){const{props:r,children:o,component:i}=e,{props:s,children:a,patchFlag:c}=t,l=i.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&c>=0))return!(!o&&!a||a&&a.$stable)||r!==s&&(r?!s||K(r,s,l):!!s);if(1024&c)return!0;if(16&c)return r?K(r,s,l):!!s;if(8&c){const e=t.dynamicProps;for(let t=0;te.__isSuspense;function q(e,t){t&&t.pendingBranch?(0,o.kJ)(e)?t.effects.push(...e):t.effects.push(e):C(e)}const V={};function W(e,t,n){return G(e,t,n)}function G(e,t,{immediate:n,deep:a,flush:c,onTrack:l,onTrigger:u}=o.kT){var d;const h=(0,r.nZ)()===(null==(d=gn)?void 0:d.scope)?gn:null;let f,p,g=!1,m=!1;if((0,r.dq)(e)?(f=()=>e.value,g=(0,r.yT)(e)):(0,r.PG)(e)?(f=()=>e,a=!0):(0,o.kJ)(e)?(m=!0,g=e.some((e=>(0,r.PG)(e)||(0,r.yT)(e))),f=()=>e.map((e=>(0,r.dq)(e)?e.value:(0,r.PG)(e)?J(e):(0,o.mf)(e)?i(e,h,2):void 0))):f=(0,o.mf)(e)?t?()=>i(e,h,2):()=>{if(!h||!h.isUnmounted)return p&&p(),s(e,h,3,[v])}:o.dG,t&&a){const e=f;f=()=>J(e())}let y,v=e=>{p=C.onStop=()=>{i(e,h,4)}};if(kn){if(v=o.dG,t?n&&s(t,h,3,[f(),m?[]:void 0,v]):f(),"sync"!==c)return o.dG;{const e=$n();y=e.__watcherHandles||(e.__watcherHandles=[])}}let b=m?new Array(e.length).fill(V):V;const E=()=>{if(C.active)if(t){const e=C.run();(a||g||(m?e.some(((e,t)=>(0,o.aU)(e,b[t]))):(0,o.aU)(e,b)))&&(p&&p(),s(t,h,3,[e,b===V?void 0:m&&b[0]===V?[]:b,v]),b=e)}else C.run()};let _;E.allowRecurse=!!t,"sync"===c?_=E:"post"===c?_=()=>Mt(E,h&&h.suspense):(E.pre=!0,h&&(E.id=h.uid),_=()=>w(E));const C=new r.qq(f,_);t?n?E():b=C.run():"post"===c?Mt(C.run.bind(C),h&&h.suspense):C.run();const S=()=>{C.stop(),h&&h.scope&&(0,o.Od)(h.scope.effects,C)};return y&&y.push(S),S}function Y(e,t,n){const r=this.proxy,i=(0,o.HD)(e)?e.includes(".")?Z(r,e):()=>r[e]:e.bind(r,r);let s;(0,o.mf)(t)?s=t:(s=t.handler,n=t);const a=gn;wn(this);const c=G(i,s.bind(r),n);return a?wn(a):En(),c}function Z(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e{J(e,t)}));else if((0,o.PO)(e))for(const n in e)J(e[n],t);return e}function X(e,t){const n=I;if(null===n)return e;const r=In(n)||n.proxy,i=e.dirs||(e.dirs=[]);for(let s=0;s{e.isMounted=!0})),xe((()=>{e.isUnmounting=!0})),e}const te=[Function,Array],ne={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:te,onEnter:te,onAfterEnter:te,onEnterCancelled:te,onBeforeLeave:te,onLeave:te,onAfterLeave:te,onLeaveCancelled:te,onBeforeAppear:te,onAppear:te,onAfterAppear:te,onAppearCancelled:te},re={name:"BaseTransition",props:ne,setup(e,{slots:t}){const n=mn(),o=ee();let i;return()=>{const s=t.default&&ue(t.default(),!0);if(!s||!s.length)return;let a=s[0];if(s.length>1){let e=!1;for(const t of s)if(t.type!==Dt){0,a=t,e=!0;break}}const c=(0,r.IU)(e),{mode:l}=c;if(o.isLeaving)return ae(a);const u=ce(a);if(!u)return ae(a);const d=se(u,c,o,n);le(u,d);const h=n.subTree,f=h&&ce(h);let p=!1;const{getTransitionKey:g}=u.type;if(g){const e=g();void 0===i?i=e:e!==i&&(i=e,p=!0)}if(f&&f.type!==Dt&&(!Yt(u,f)||p)){const e=se(f,c,o,n);if(le(f,e),"out-in"===l)return o.isLeaving=!0,e.afterLeave=()=>{o.isLeaving=!1,!1!==n.update.active&&n.update()},ae(a);"in-out"===l&&u.type!==Dt&&(e.delayLeave=(e,t,n)=>{const r=ie(o,f);r[String(f.key)]=f,e._leaveCb=()=>{t(),e._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=n})}return a}}},oe=re;function ie(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function se(e,t,n,r){const{appear:i,mode:a,persisted:c=!1,onBeforeEnter:l,onEnter:u,onAfterEnter:d,onEnterCancelled:h,onBeforeLeave:f,onLeave:p,onAfterLeave:g,onLeaveCancelled:m,onBeforeAppear:y,onAppear:v,onAfterAppear:b,onAppearCancelled:w}=t,E=String(e.key),_=ie(n,e),C=(e,t)=>{e&&s(e,r,9,t)},S=(e,t)=>{const n=t[1];C(e,t),(0,o.kJ)(e)?e.every((e=>e.length<=1))&&n():e.length<=1&&n()},k={mode:a,persisted:c,beforeEnter(t){let r=l;if(!n.isMounted){if(!i)return;r=y||l}t._leaveCb&&t._leaveCb(!0);const o=_[E];o&&Yt(e,o)&&o.el._leaveCb&&o.el._leaveCb(),C(r,[t])},enter(e){let t=u,r=d,o=h;if(!n.isMounted){if(!i)return;t=v||u,r=b||d,o=w||h}let s=!1;const a=e._enterCb=t=>{s||(s=!0,C(t?o:r,[e]),k.delayedLeave&&k.delayedLeave(),e._enterCb=void 0)};t?S(t,[e,a]):a()},leave(t,r){const o=String(e.key);if(t._enterCb&&t._enterCb(!0),n.isUnmounting)return r();C(f,[t]);let i=!1;const s=t._leaveCb=n=>{i||(i=!0,r(),C(n?m:g,[t]),t._leaveCb=void 0,_[o]===e&&delete _[o])};_[o]=e,p?S(p,[t,s]):s()},clone(e){return se(e,t,n,r)}};return k}function ae(e){if(he(e))return e=rn(e),e.children=null,e}function ce(e){return he(e)?e.children?e.children[0]:void 0:e}function le(e,t){6&e.shapeFlag&&e.component?le(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ue(e,t=!1,n){let r=[],o=0;for(let i=0;i1)for(let i=0;i!!e.type.__asyncLoader;const he=e=>e.type.__isKeepAlive;RegExp,RegExp;function fe(e,t){return(0,o.kJ)(e)?e.some((e=>fe(e,t))):(0,o.HD)(e)?e.split(",").includes(t):!!(0,o.Kj)(e)&&e.test(t)}function pe(e,t){me(e,"a",t)}function ge(e,t){me(e,"da",t)}function me(e,t,n=gn){const r=e.__wdc||(e.__wdc=()=>{let t=n;while(t){if(t.isDeactivated)return;t=t.parent}return e()});if(we(t,r,n),n){let e=n.parent;while(e&&e.parent)he(e.parent.vnode)&&ye(r,t,n,e),e=e.parent}}function ye(e,t,n,r){const i=we(t,e,r,!0);Ae((()=>{(0,o.Od)(r[t],i)}),n)}function ve(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function be(e){return 128&e.shapeFlag?e.ssContent:e}function we(e,t,n=gn,o=!1){if(n){const i=n[e]||(n[e]=[]),a=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;(0,r.Jd)(),wn(n);const i=s(t,n,e,o);return En(),(0,r.lk)(),i});return o?i.unshift(a):i.push(a),a}}const Ee=e=>(t,n=gn)=>(!kn||"sp"===e)&&we(e,((...e)=>t(...e)),n),_e=Ee("bm"),Ce=Ee("m"),Se=Ee("bu"),ke=Ee("u"),xe=Ee("bum"),Ae=Ee("um"),Me=Ee("sp"),Re=Ee("rtg"),Te=Ee("rtc");function Oe(e,t=gn){we("ec",e,t)}const Ie="components";function Le(e,t){return Ne(Ie,e,!0,t)||e}const Pe=Symbol.for("v-ndc");function Ne(e,t,n=!0,r=!1){const i=I||gn;if(i){const n=i.type;if(e===Ie){const e=Ln(n,!1);if(e&&(e===t||e===(0,o._A)(t)||e===(0,o.kC)((0,o._A)(t))))return n}const s=Be(i[e]||n[e],t)||Be(i.appContext[e],t);return!s&&r?n:s}}function Be(e,t){return e&&(e[t]||e[(0,o._A)(t)]||e[(0,o.kC)((0,o._A)(t))])}function De(e,t,n,r){let i;const s=n&&n[r];if((0,o.kJ)(e)||(0,o.HD)(e)){i=new Array(e.length);for(let n=0,r=e.length;nt(e,n,void 0,s&&s[n])));else{const n=Object.keys(e);i=new Array(n.length);for(let r=0,o=n.length;re?_n(e)?In(e)||e.proxy:$e(e.parent):null,je=(0,o.l7)(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>$e(e.parent),$root:e=>$e(e.root),$emit:e=>e.emit,$options:e=>Ge(e),$forceUpdate:e=>e.f||(e.f=()=>w(e.update)),$nextTick:e=>e.n||(e.n=v.bind(e.proxy)),$watch:e=>Y.bind(e)}),Ue=(e,t)=>e!==o.kT&&!e.__isScriptSetup&&(0,o.RI)(e,t),Fe={get({_:e},t){const{ctx:n,setupState:i,data:s,props:a,accessCache:c,type:l,appContext:u}=e;let d;if("$"!==t[0]){const r=c[t];if(void 0!==r)switch(r){case 1:return i[t];case 2:return s[t];case 4:return n[t];case 3:return a[t]}else{if(Ue(i,t))return c[t]=1,i[t];if(s!==o.kT&&(0,o.RI)(s,t))return c[t]=2,s[t];if((d=e.propsOptions[0])&&(0,o.RI)(d,t))return c[t]=3,a[t];if(n!==o.kT&&(0,o.RI)(n,t))return c[t]=4,n[t];He&&(c[t]=0)}}const h=je[t];let f,p;return h?("$attrs"===t&&(0,r.j)(e,"get",t),h(e)):(f=l.__cssModules)&&(f=f[t])?f:n!==o.kT&&(0,o.RI)(n,t)?(c[t]=4,n[t]):(p=u.config.globalProperties,(0,o.RI)(p,t)?p[t]:void 0)},set({_:e},t,n){const{data:r,setupState:i,ctx:s}=e;return Ue(i,t)?(i[t]=n,!0):r!==o.kT&&(0,o.RI)(r,t)?(r[t]=n,!0):!(0,o.RI)(e.props,t)&&(("$"!==t[0]||!(t.slice(1)in e))&&(s[t]=n,!0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:i,propsOptions:s}},a){let c;return!!n[a]||e!==o.kT&&(0,o.RI)(e,a)||Ue(t,a)||(c=s[0])&&(0,o.RI)(c,a)||(0,o.RI)(r,a)||(0,o.RI)(je,a)||(0,o.RI)(i.config.globalProperties,a)},defineProperty(e,t,n){return null!=n.get?e._.accessCache[t]=0:(0,o.RI)(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ke(e){return(0,o.kJ)(e)?e.reduce(((e,t)=>(e[t]=null,e)),{}):e}let He=!0;function ze(e){const t=Ge(e),n=e.proxy,i=e.ctx;He=!1,t.beforeCreate&&Ve(t.beforeCreate,e,"bc");const{data:s,computed:a,methods:c,watch:l,provide:u,inject:d,created:h,beforeMount:f,mounted:p,beforeUpdate:g,updated:m,activated:y,deactivated:v,beforeDestroy:b,beforeUnmount:w,destroyed:E,unmounted:_,render:C,renderTracked:S,renderTriggered:k,errorCaptured:x,serverPrefetch:A,expose:M,inheritAttrs:R,components:T,directives:O,filters:I}=t,L=null;if(d&&qe(d,i,L),c)for(const r in c){const e=c[r];(0,o.mf)(e)&&(i[r]=e.bind(n))}if(s){0;const t=s.call(n,n);0,(0,o.Kn)(t)&&(e.data=(0,r.qj)(t))}if(He=!0,a)for(const r in a){const e=a[r],t=(0,o.mf)(e)?e.bind(n,n):(0,o.mf)(e.get)?e.get.bind(n,n):o.dG;0;const s=!(0,o.mf)(e)&&(0,o.mf)(e.set)?e.set.bind(n):o.dG,c=Nn({get:t,set:s});Object.defineProperty(i,r,{enumerable:!0,configurable:!0,get:()=>c.value,set:e=>c.value=e})}if(l)for(const r in l)We(l[r],i,n,r);if(u){const e=(0,o.mf)(u)?u.call(n):u;Reflect.ownKeys(e).forEach((t=>{ct(t,e[t])}))}function P(e,t){(0,o.kJ)(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(h&&Ve(h,e,"c"),P(_e,f),P(Ce,p),P(Se,g),P(ke,m),P(pe,y),P(ge,v),P(Oe,x),P(Te,S),P(Re,k),P(xe,w),P(Ae,_),P(Me,A),(0,o.kJ)(M))if(M.length){const t=e.exposed||(e.exposed={});M.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});C&&e.render===o.dG&&(e.render=C),null!=R&&(e.inheritAttrs=R),T&&(e.components=T),O&&(e.directives=O)}function qe(e,t,n=o.dG){(0,o.kJ)(e)&&(e=Qe(e));for(const i in e){const n=e[i];let s;s=(0,o.Kn)(n)?"default"in n?lt(n.from||i,n.default,!0):lt(n.from||i):lt(n),(0,r.dq)(s)?Object.defineProperty(t,i,{enumerable:!0,configurable:!0,get:()=>s.value,set:e=>s.value=e}):t[i]=s}}function Ve(e,t,n){s((0,o.kJ)(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function We(e,t,n,r){const i=r.includes(".")?Z(n,r):()=>n[r];if((0,o.HD)(e)){const n=t[e];(0,o.mf)(n)&&W(i,n)}else if((0,o.mf)(e))W(i,e.bind(n));else if((0,o.Kn)(e))if((0,o.kJ)(e))e.forEach((e=>We(e,t,n,r)));else{const r=(0,o.mf)(e.handler)?e.handler.bind(n):t[e.handler];(0,o.mf)(r)&&W(i,r,e)}else 0}function Ge(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:i,optionsCache:s,config:{optionMergeStrategies:a}}=e.appContext,c=s.get(t);let l;return c?l=c:i.length||n||r?(l={},i.length&&i.forEach((e=>Ye(l,e,a,!0))),Ye(l,t,a)):l=t,(0,o.Kn)(t)&&s.set(t,l),l}function Ye(e,t,n,r=!1){const{mixins:o,extends:i}=t;i&&Ye(e,i,n,!0),o&&o.forEach((t=>Ye(e,t,n,!0)));for(const s in t)if(r&&"expose"===s);else{const r=Ze[s]||n&&n[s];e[s]=r?r(e[s],t[s]):t[s]}return e}const Ze={data:Je,props:nt,emits:nt,methods:tt,computed:tt,beforeCreate:et,created:et,beforeMount:et,mounted:et,beforeUpdate:et,updated:et,beforeDestroy:et,beforeUnmount:et,destroyed:et,unmounted:et,activated:et,deactivated:et,errorCaptured:et,serverPrefetch:et,components:tt,directives:tt,watch:rt,provide:Je,inject:Xe};function Je(e,t){return t?e?function(){return(0,o.l7)((0,o.mf)(e)?e.call(this,this):e,(0,o.mf)(t)?t.call(this,this):t)}:t:e}function Xe(e,t){return tt(Qe(e),Qe(t))}function Qe(e){if((0,o.kJ)(e)){const t={};for(let n=0;n1)return n&&(0,o.mf)(t)?t.call(r&&r.proxy):t}else 0}function ut(e,t,n,i=!1){const s={},a={};(0,o.Nj)(a,Zt,1),e.propsDefaults=Object.create(null),ht(e,t,s,a);for(const r in e.propsOptions[0])r in s||(s[r]=void 0);n?e.props=i?s:(0,r.Um)(s):e.type.props?e.props=s:e.props=a,e.attrs=a}function dt(e,t,n,i){const{props:s,attrs:a,vnode:{patchFlag:c}}=e,l=(0,r.IU)(s),[u]=e.propsOptions;let d=!1;if(!(i||c>0)||16&c){let r;ht(e,t,s,a)&&(d=!0);for(const i in l)t&&((0,o.RI)(t,i)||(r=(0,o.rs)(i))!==i&&(0,o.RI)(t,r))||(u?!n||void 0===n[i]&&void 0===n[r]||(s[i]=ft(u,l,i,void 0,e,!0)):delete s[i]);if(a!==l)for(const e in a)t&&(0,o.RI)(t,e)||(delete a[e],d=!0)}else if(8&c){const n=e.vnode.dynamicProps;for(let r=0;r{l=!0;const[n,r]=pt(e,t,!0);(0,o.l7)(a,n),r&&c.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!s&&!l)return(0,o.Kn)(e)&&r.set(e,o.Z6),o.Z6;if((0,o.kJ)(s))for(let d=0;d-1,r[1]=n<0||e-1||(0,o.RI)(r,"default"))&&c.push(t)}}}}const u=[a,c];return(0,o.Kn)(e)&&r.set(e,u),u}function gt(e){return"$"!==e[0]}function mt(e){const t=e&&e.toString().match(/^\s*(function|class) (\w+)/);return t?t[2]:null===e?"null":""}function yt(e,t){return mt(e)===mt(t)}function vt(e,t){return(0,o.kJ)(t)?t.findIndex((t=>yt(t,e))):(0,o.mf)(t)&&yt(t,e)?0:-1}const bt=e=>"_"===e[0]||"$stable"===e,wt=e=>(0,o.kJ)(e)?e.map(an):[an(e)],Et=(e,t,n)=>{if(t._n)return t;const r=D(((...e)=>wt(t(...e))),n);return r._c=!1,r},_t=(e,t,n)=>{const r=e._ctx;for(const i in e){if(bt(i))continue;const n=e[i];if((0,o.mf)(n))t[i]=Et(i,n,r);else if(null!=n){0;const e=wt(n);t[i]=()=>e}}},Ct=(e,t)=>{const n=wt(t);e.slots.default=()=>n},St=(e,t)=>{if(32&e.vnode.shapeFlag){const n=t._;n?(e.slots=(0,r.IU)(t),(0,o.Nj)(t,"_",n)):_t(t,e.slots={})}else e.slots={},t&&Ct(e,t);(0,o.Nj)(e.slots,Zt,1)},kt=(e,t,n)=>{const{vnode:r,slots:i}=e;let s=!0,a=o.kT;if(32&r.shapeFlag){const e=t._;e?n&&1===e?s=!1:((0,o.l7)(i,t),n||1!==e||delete i._):(s=!t.$stable,_t(t,i)),a=t}else t&&(Ct(e,t),a={default:1});if(s)for(const o in i)bt(o)||o in a||delete i[o]};function xt(e,t,n,s,a=!1){if((0,o.kJ)(e))return void e.forEach(((e,r)=>xt(e,t&&((0,o.kJ)(t)?t[r]:t),n,s,a)));if(de(s)&&!a)return;const c=4&s.shapeFlag?In(s.component)||s.component.proxy:s.el,l=a?null:c,{i:u,r:d}=e;const h=t&&t.r,f=u.refs===o.kT?u.refs={}:u.refs,p=u.setupState;if(null!=h&&h!==d&&((0,o.HD)(h)?(f[h]=null,(0,o.RI)(p,h)&&(p[h]=null)):(0,r.dq)(h)&&(h.value=null)),(0,o.mf)(d))i(d,u,12,[l,f]);else{const t=(0,o.HD)(d),i=(0,r.dq)(d);if(t||i){const r=()=>{if(e.f){const n=t?(0,o.RI)(p,d)?p[d]:f[d]:d.value;a?(0,o.kJ)(n)&&(0,o.Od)(n,c):(0,o.kJ)(n)?n.includes(c)||n.push(c):t?(f[d]=[c],(0,o.RI)(p,d)&&(p[d]=f[d])):(d.value=[c],e.k&&(f[e.k]=d.value))}else t?(f[d]=l,(0,o.RI)(p,d)&&(p[d]=l)):i&&(d.value=l,e.k&&(f[e.k]=l))};l?(r.id=-1,Mt(r,n)):r()}else 0}}function At(){}const Mt=q;function Rt(e){return Tt(e)}function Tt(e,t){At();const n=(0,o.E9)();n.__VUE__=!0;const{insert:i,remove:s,patchProp:a,createElement:c,createText:l,createComment:u,setText:d,setElementText:h,parentNode:f,nextSibling:p,setScopeId:g=o.dG,insertStaticContent:m}=e,y=(e,t,n,r=null,o=null,i=null,s=!1,a=null,c=!!t.dynamicChildren)=>{if(e===t)return;e&&!Yt(e,t)&&(r=X(e),W(e,o,i,!0),e=null),-2===t.patchFlag&&(c=!1,t.dynamicChildren=null);const{type:l,ref:u,shapeFlag:d}=t;switch(l){case Bt:v(e,t,n,r);break;case Dt:b(e,t,n,r);break;case $t:null==e&&E(t,n,r,s);break;case Nt:P(e,t,n,r,o,i,s,a,c);break;default:1&d?A(e,t,n,r,o,i,s,a,c):6&d?N(e,t,n,r,o,i,s,a,c):(64&d||128&d)&&l.process(e,t,n,r,o,i,s,a,c,te)}null!=u&&o&&xt(u,e&&e.ref,i,t||e,!t)},v=(e,t,n,r)=>{if(null==e)i(t.el=l(t.children),n,r);else{const n=t.el=e.el;t.children!==e.children&&d(n,t.children)}},b=(e,t,n,r)=>{null==e?i(t.el=u(t.children||""),n,r):t.el=e.el},E=(e,t,n,r)=>{[e.el,e.anchor]=m(e.children,t,n,r,e.el,e.anchor)},C=({el:e,anchor:t},n,r)=>{let o;while(e&&e!==t)o=p(e),i(e,n,r),e=o;i(t,n,r)},x=({el:e,anchor:t})=>{let n;while(e&&e!==t)n=p(e),s(e),e=n;s(t)},A=(e,t,n,r,o,i,s,a,c)=>{s=s||"svg"===t.type,null==e?M(t,n,r,o,i,s,a,c):O(e,t,o,i,s,a,c)},M=(e,t,n,r,s,l,u,d)=>{let f,p;const{type:g,props:m,shapeFlag:y,transition:v,dirs:b}=e;if(f=e.el=c(e.type,l,m&&m.is,m),8&y?h(f,e.children):16&y&&T(e.children,f,null,r,s,l&&"foreignObject"!==g,u,d),b&&Q(e,null,r,"created"),R(f,e,e.scopeId,u,r),m){for(const t in m)"value"===t||(0,o.Gg)(t)||a(f,t,null,m[t],l,e.children,r,s,J);"value"in m&&a(f,"value",null,m.value),(p=m.onVnodeBeforeMount)&&dn(p,r,e)}b&&Q(e,null,r,"beforeMount");const w=(!s||s&&!s.pendingBranch)&&v&&!v.persisted;w&&v.beforeEnter(f),i(f,t,n),((p=m&&m.onVnodeMounted)||w||b)&&Mt((()=>{p&&dn(p,r,e),w&&v.enter(f),b&&Q(e,null,r,"mounted")}),s)},R=(e,t,n,r,o)=>{if(n&&g(e,n),r)for(let i=0;i{for(let l=c;l{const l=t.el=e.el;let{patchFlag:u,dynamicChildren:d,dirs:f}=t;u|=16&e.patchFlag;const p=e.props||o.kT,g=t.props||o.kT;let m;n&&Ot(n,!1),(m=g.onVnodeBeforeUpdate)&&dn(m,n,t,e),f&&Q(t,e,n,"beforeUpdate"),n&&Ot(n,!0);const y=i&&"foreignObject"!==t.type;if(d?I(e.dynamicChildren,d,l,n,r,y,s):c||K(e,t,l,null,n,r,y,s,!1),u>0){if(16&u)L(l,t,p,g,n,r,i);else if(2&u&&p.class!==g.class&&a(l,"class",null,g.class,i),4&u&&a(l,"style",p.style,g.style,i),8&u){const o=t.dynamicProps;for(let t=0;t{m&&dn(m,n,t,e),f&&Q(t,e,n,"updated")}),r)},I=(e,t,n,r,o,i,s)=>{for(let a=0;a{if(n!==r){if(n!==o.kT)for(const l in n)(0,o.Gg)(l)||l in r||a(e,l,n[l],null,c,t.children,i,s,J);for(const l in r){if((0,o.Gg)(l))continue;const u=r[l],d=n[l];u!==d&&"value"!==l&&a(e,l,d,u,c,t.children,i,s,J)}"value"in r&&a(e,"value",n.value,r.value)}},P=(e,t,n,r,o,s,a,c,u)=>{const d=t.el=e?e.el:l(""),h=t.anchor=e?e.anchor:l("");let{patchFlag:f,dynamicChildren:p,slotScopeIds:g}=t;g&&(c=c?c.concat(g):g),null==e?(i(d,n,r),i(h,n,r),T(t.children,n,h,o,s,a,c,u)):f>0&&64&f&&p&&e.dynamicChildren?(I(e.dynamicChildren,p,n,o,s,a,c),(null!=t.key||o&&t===o.subTree)&&It(e,t,!0)):K(e,t,n,h,o,s,a,c,u)},N=(e,t,n,r,o,i,s,a,c)=>{t.slotScopeIds=a,null==e?512&t.shapeFlag?o.ctx.activate(t,n,r,s,c):B(t,n,r,o,i,s,c):D(e,t,c)},B=(e,t,n,r,o,i,s)=>{const a=e.component=pn(e,r,o);if(he(e)&&(a.ctx.renderer=te),xn(a),a.asyncDep){if(o&&o.registerDep(a,j),!e.el){const e=a.subTree=en(Dt);b(null,e,t,n)}}else j(a,e,t,n,o,i,s)},D=(e,t,n)=>{const r=t.component=e.component;if(F(e,t,n)){if(r.asyncDep&&!r.asyncResolved)return void U(r,t,n);r.next=t,_(r.update),r.update()}else t.el=e.el,r.vnode=t},j=(e,t,n,i,s,a,c)=>{const l=()=>{if(e.isMounted){let t,{next:n,bu:r,u:i,parent:l,vnode:u}=e,d=n;0,Ot(e,!1),n?(n.el=u.el,U(e,n,c)):n=u,r&&(0,o.ir)(r),(t=n.props&&n.props.onVnodeBeforeUpdate)&&dn(t,l,n,u),Ot(e,!0);const h=$(e);0;const p=e.subTree;e.subTree=h,y(p,h,f(p.el),X(p),e,s,a),n.el=h.el,null===d&&H(e,h.el),i&&Mt(i,s),(t=n.props&&n.props.onVnodeUpdated)&&Mt((()=>dn(t,l,n,u)),s)}else{let r;const{el:c,props:l}=t,{bm:u,m:d,parent:h}=e,f=de(t);if(Ot(e,!1),u&&(0,o.ir)(u),!f&&(r=l&&l.onVnodeBeforeMount)&&dn(r,h,t),Ot(e,!0),c&&re){const n=()=>{e.subTree=$(e),re(c,e.subTree,e,s,null)};f?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{0;const r=e.subTree=$(e);0,y(null,r,n,i,e,s,a),t.el=r.el}if(d&&Mt(d,s),!f&&(r=l&&l.onVnodeMounted)){const e=t;Mt((()=>dn(r,h,e)),s)}(256&t.shapeFlag||h&&de(h.vnode)&&256&h.vnode.shapeFlag)&&e.a&&Mt(e.a,s),e.isMounted=!0,t=n=i=null}},u=e.effect=new r.qq(l,(()=>w(d)),e.scope),d=e.update=()=>u.run();d.id=e.uid,Ot(e,!0),d()},U=(e,t,n)=>{t.component=e;const o=e.vnode.props;e.vnode=t,e.next=null,dt(e,t.props,o,n),kt(e,t.children,n),(0,r.Jd)(),S(),(0,r.lk)()},K=(e,t,n,r,o,i,s,a,c=!1)=>{const l=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:f,shapeFlag:p}=t;if(f>0){if(128&f)return void q(l,d,n,r,o,i,s,a,c);if(256&f)return void z(l,d,n,r,o,i,s,a,c)}8&p?(16&u&&J(l,o,i),d!==l&&h(n,d)):16&u?16&p?q(l,d,n,r,o,i,s,a,c):J(l,o,i,!0):(8&u&&h(n,""),16&p&&T(d,n,r,o,i,s,a,c))},z=(e,t,n,r,i,s,a,c,l)=>{e=e||o.Z6,t=t||o.Z6;const u=e.length,d=t.length,h=Math.min(u,d);let f;for(f=0;fd?J(e,i,s,!0,!1,h):T(t,n,r,i,s,a,c,l,h)},q=(e,t,n,r,i,s,a,c,l)=>{let u=0;const d=t.length;let h=e.length-1,f=d-1;while(u<=h&&u<=f){const r=e[u],o=t[u]=l?cn(t[u]):an(t[u]);if(!Yt(r,o))break;y(r,o,n,null,i,s,a,c,l),u++}while(u<=h&&u<=f){const r=e[h],o=t[f]=l?cn(t[f]):an(t[f]);if(!Yt(r,o))break;y(r,o,n,null,i,s,a,c,l),h--,f--}if(u>h){if(u<=f){const e=f+1,o=ef)while(u<=h)W(e[u],i,s,!0),u++;else{const p=u,g=u,m=new Map;for(u=g;u<=f;u++){const e=t[u]=l?cn(t[u]):an(t[u]);null!=e.key&&m.set(e.key,u)}let v,b=0;const w=f-g+1;let E=!1,_=0;const C=new Array(w);for(u=0;u=w){W(r,i,s,!0);continue}let o;if(null!=r.key)o=m.get(r.key);else for(v=g;v<=f;v++)if(0===C[v-g]&&Yt(r,t[v])){o=v;break}void 0===o?W(r,i,s,!0):(C[o-g]=u+1,o>=_?_=o:E=!0,y(r,t[o],n,null,i,s,a,c,l),b++)}const S=E?Lt(C):o.Z6;for(v=S.length-1,u=w-1;u>=0;u--){const e=g+u,o=t[e],h=e+1{const{el:s,type:a,transition:c,children:l,shapeFlag:u}=e;if(6&u)return void V(e.component.subTree,t,n,r);if(128&u)return void e.suspense.move(t,n,r);if(64&u)return void a.move(e,t,n,te);if(a===Nt){i(s,t,n);for(let e=0;ec.enter(s)),o);else{const{leave:e,delayLeave:r,afterLeave:o}=c,a=()=>i(s,t,n),l=()=>{e(s,(()=>{a(),o&&o()}))};r?r(s,a,l):l()}else i(s,t,n)},W=(e,t,n,r=!1,o=!1)=>{const{type:i,props:s,ref:a,children:c,dynamicChildren:l,shapeFlag:u,patchFlag:d,dirs:h}=e;if(null!=a&&xt(a,null,n,e,!0),256&u)return void t.ctx.deactivate(e);const f=1&u&&h,p=!de(e);let g;if(p&&(g=s&&s.onVnodeBeforeUnmount)&&dn(g,t,e),6&u)Z(e.component,n,r);else{if(128&u)return void e.suspense.unmount(n,r);f&&Q(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,o,te,r):l&&(i!==Nt||d>0&&64&d)?J(l,t,n,!1,!0):(i===Nt&&384&d||!o&&16&u)&&J(c,t,n),r&&G(e)}(p&&(g=s&&s.onVnodeUnmounted)||f)&&Mt((()=>{g&&dn(g,t,e),f&&Q(e,null,t,"unmounted")}),n)},G=e=>{const{type:t,el:n,anchor:r,transition:o}=e;if(t===Nt)return void Y(n,r);if(t===$t)return void x(e);const i=()=>{s(n),o&&!o.persisted&&o.afterLeave&&o.afterLeave()};if(1&e.shapeFlag&&o&&!o.persisted){const{leave:t,delayLeave:r}=o,s=()=>t(n,i);r?r(e.el,i,s):s()}else i()},Y=(e,t)=>{let n;while(e!==t)n=p(e),s(e),e=n;s(t)},Z=(e,t,n)=>{const{bum:r,scope:i,update:s,subTree:a,um:c}=e;r&&(0,o.ir)(r),i.stop(),s&&(s.active=!1,W(a,e,t,n)),c&&Mt(c,t),Mt((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve())},J=(e,t,n,r=!1,o=!1,i=0)=>{for(let s=i;s6&e.shapeFlag?X(e.component.subTree):128&e.shapeFlag?e.suspense.next():p(e.anchor||e.el),ee=(e,t,n)=>{null==e?t._vnode&&W(t._vnode,null,null,!0):y(t._vnode||null,e,t,null,null,null,n),S(),k(),t._vnode=e},te={p:y,um:W,m:V,r:G,mt:B,mc:T,pc:K,pbc:I,n:X,o:e};let ne,re;return t&&([ne,re]=t(te)),{render:ee,hydrate:ne,createApp:st(ee,ne)}}function Ot({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function It(e,t,n=!1){const r=e.children,i=t.children;if((0,o.kJ)(r)&&(0,o.kJ)(i))for(let o=0;o>1,e[n[a]]0&&(t[r]=n[i-1]),n[i]=r)}}i=n.length,s=n[i-1];while(i-- >0)n[i]=s,s=t[s];return n}const Pt=e=>e.__isTeleport;const Nt=Symbol.for("v-fgt"),Bt=Symbol.for("v-txt"),Dt=Symbol.for("v-cmt"),$t=Symbol.for("v-stc"),jt=[];let Ut=null;function Ft(e=!1){jt.push(Ut=e?null:[])}function Kt(){jt.pop(),Ut=jt[jt.length-1]||null}let Ht=1;function zt(e){Ht+=e}function qt(e){return e.dynamicChildren=Ht>0?Ut||o.Z6:null,Kt(),Ht>0&&Ut&&Ut.push(e),e}function Vt(e,t,n,r,o,i){return qt(Qt(e,t,n,r,o,i,!0))}function Wt(e,t,n,r,o){return qt(en(e,t,n,r,o,!0))}function Gt(e){return!!e&&!0===e.__v_isVNode}function Yt(e,t){return e.type===t.type&&e.key===t.key}const Zt="__vInternal",Jt=({key:e})=>null!=e?e:null,Xt=({ref:e,ref_key:t,ref_for:n})=>("number"===typeof e&&(e=""+e),null!=e?(0,o.HD)(e)||(0,r.dq)(e)||(0,o.mf)(e)?{i:I,r:e,k:t,f:!!n}:e:null);function Qt(e,t=null,n=null,r=0,i=null,s=(e===Nt?0:1),a=!1,c=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Jt(t),ref:t&&Xt(t),scopeId:L,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:r,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:I};return c?(ln(l,n),128&s&&e.normalize(l)):n&&(l.shapeFlag|=(0,o.HD)(n)?8:16),Ht>0&&!a&&Ut&&(l.patchFlag>0||6&s)&&32!==l.patchFlag&&Ut.push(l),l}const en=tn;function tn(e,t=null,n=null,i=0,s=null,a=!1){if(e&&e!==Pe||(e=Dt),Gt(e)){const r=rn(e,t,!0);return n&&ln(r,n),Ht>0&&!a&&Ut&&(6&r.shapeFlag?Ut[Ut.indexOf(e)]=r:Ut.push(r)),r.patchFlag|=-2,r}if(Pn(e)&&(e=e.__vccOpts),t){t=nn(t);let{class:e,style:n}=t;e&&!(0,o.HD)(e)&&(t.class=(0,o.C_)(e)),(0,o.Kn)(n)&&((0,r.X3)(n)&&!(0,o.kJ)(n)&&(n=(0,o.l7)({},n)),t.style=(0,o.j5)(n))}const c=(0,o.HD)(e)?1:z(e)?128:Pt(e)?64:(0,o.Kn)(e)?4:(0,o.mf)(e)?2:0;return Qt(e,t,n,i,s,c,a,!0)}function nn(e){return e?(0,r.X3)(e)||Zt in e?(0,o.l7)({},e):e:null}function rn(e,t,n=!1){const{props:r,ref:i,patchFlag:s,children:a}=e,c=t?un(r||{},t):r,l={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&Jt(c),ref:t&&t.ref?n&&i?(0,o.kJ)(i)?i.concat(Xt(t)):[i,Xt(t)]:Xt(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Nt?-1===s?16:16|s:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&rn(e.ssContent),ssFallback:e.ssFallback&&rn(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l}function on(e=" ",t=0){return en(Bt,null,e,t)}function sn(e="",t=!1){return t?(Ft(),Wt(Dt,null,e)):en(Dt,null,e)}function an(e){return null==e||"boolean"===typeof e?en(Dt):(0,o.kJ)(e)?en(Nt,null,e.slice()):"object"===typeof e?cn(e):en(Bt,null,String(e))}function cn(e){return null===e.el&&-1!==e.patchFlag||e.memo?e:rn(e)}function ln(e,t){let n=0;const{shapeFlag:r}=e;if(null==t)t=null;else if((0,o.kJ)(t))n=16;else if("object"===typeof t){if(65&r){const n=t.default;return void(n&&(n._c&&(n._d=!1),ln(e,n()),n._c&&(n._d=!0)))}{n=32;const r=t._;r||Zt in t?3===r&&I&&(1===I.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=I}}else(0,o.mf)(t)?(t={default:t,_ctx:I},n=32):(t=String(t),64&r?(n=16,t=[on(t)]):n=8);e.children=t,e.shapeFlag|=n}function un(...e){const t={};for(let n=0;ngn||I;let yn,vn,bn="__VUE_INSTANCE_SETTERS__";(vn=(0,o.E9)()[bn])||(vn=(0,o.E9)()[bn]=[]),vn.push((e=>gn=e)),yn=e=>{vn.length>1?vn.forEach((t=>t(e))):vn[0](e)};const wn=e=>{yn(e),e.scope.on()},En=()=>{gn&&gn.scope.off(),yn(null)};function _n(e){return 4&e.vnode.shapeFlag}let Cn,Sn,kn=!1;function xn(e,t=!1){kn=t;const{props:n,children:r}=e.vnode,o=_n(e);ut(e,n,o,t),St(e,r);const i=o?An(e,t):void 0;return kn=!1,i}function An(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=(0,r.Xl)(new Proxy(e.ctx,Fe));const{setup:s}=n;if(s){const n=e.setupContext=s.length>1?On(e):null;wn(e),(0,r.Jd)();const c=i(s,e,0,[e.props,n]);if((0,r.lk)(),En(),(0,o.tI)(c)){if(c.then(En,En),t)return c.then((n=>{Mn(e,n,t)})).catch((t=>{a(t,e,0)}));e.asyncDep=c}else Mn(e,c,t)}else Rn(e,t)}function Mn(e,t,n){(0,o.mf)(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:(0,o.Kn)(t)&&(e.setupState=(0,r.WL)(t)),Rn(e,n)}function Rn(e,t,n){const i=e.type;if(!e.render){if(!t&&Cn&&!i.render){const t=i.template||Ge(e).template;if(t){0;const{isCustomElement:n,compilerOptions:r}=e.appContext.config,{delimiters:s,compilerOptions:a}=i,c=(0,o.l7)((0,o.l7)({isCustomElement:n,delimiters:s},r),a);i.render=Cn(t,c)}}e.render=i.render||o.dG,Sn&&Sn(e)}wn(e),(0,r.Jd)(),ze(e),(0,r.lk)(),En()}function Tn(e){return e.attrsProxy||(e.attrsProxy=new Proxy(e.attrs,{get(t,n){return(0,r.j)(e,"get","$attrs"),t[n]}}))}function On(e){const t=t=>{e.exposed=t||{}};return{get attrs(){return Tn(e)},slots:e.slots,emit:e.emit,expose:t}}function In(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy((0,r.WL)((0,r.Xl)(e.exposed)),{get(t,n){return n in t?t[n]:n in je?je[n](e):void 0},has(e,t){return t in e||t in je}}))}function Ln(e,t=!0){return(0,o.mf)(e)?e.displayName||e.name:e.name||t&&e.__name}function Pn(e){return(0,o.mf)(e)&&"__vccOpts"in e}const Nn=(e,t)=>(0,r.Fl)(e,t,kn);function Bn(e,t,n){const r=arguments.length;return 2===r?(0,o.Kn)(t)&&!(0,o.kJ)(t)?Gt(t)?en(e,null,[t]):en(e,t):en(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&Gt(n)&&(n=[n]),en(e,t,n))}const Dn=Symbol.for("v-scx"),$n=()=>{{const e=lt(Dn);return e}};const jn="3.3.4"},9197:function(e,t,n){"use strict";n.d(t,{bM:function(){return se},ri:function(){return he}});n(7658);var r=n(4887),o=n(8473),i=n(4188);const s="http://www.w3.org/2000/svg",a="undefined"!==typeof document?document:null,c=a&&a.createElement("template"),l={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t?a.createElementNS(s,e):a.createElement(e,n?{is:n}:void 0);return"select"===e&&r&&null!=r.multiple&&o.setAttribute("multiple",r.multiple),o},createText:e=>a.createTextNode(e),createComment:e=>a.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>a.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,i){const s=n?n.previousSibling:t.lastChild;if(o&&(o===i||o.nextSibling)){while(1)if(t.insertBefore(o.cloneNode(!0),n),o===i||!(o=o.nextSibling))break}else{c.innerHTML=r?`${e}`:e;const o=c.content;if(r){const e=o.firstChild;while(e.firstChild)o.appendChild(e.firstChild);o.removeChild(e)}t.insertBefore(o,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}};function u(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}function d(e,t,n){const o=e.style,i=(0,r.HD)(n);if(n&&!i){if(t&&!(0,r.HD)(t))for(const e in t)null==n[e]&&f(o,e,"");for(const e in n)f(o,e,n[e])}else{const r=o.display;i?t!==n&&(o.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(o.display=r)}}const h=/\s*!important$/;function f(e,t,n){if((0,r.kJ)(n))n.forEach((n=>f(e,t,n)));else if(null==n&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const o=m(e,t);h.test(n)?e.setProperty((0,r.rs)(o),n.replace(h,""),"important"):e[o]=n}}const p=["Webkit","Moz","ms"],g={};function m(e,t){const n=g[t];if(n)return n;let o=(0,r._A)(t);if("filter"!==o&&o in e)return g[t]=o;o=(0,r.kC)(o);for(let r=0;rk||(x.then((()=>k=0)),k=Date.now());function M(e,t){const n=e=>{if(e._vts){if(e._vts<=n.attached)return}else e._vts=Date.now();(0,o.$d)(R(e,n.value),t,5,[e])};return n.value=e,n.attached=A(),n}function R(e,t){if((0,r.kJ)(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}return t}const T=/^on[a-z]/,O=(e,t,n,o,i=!1,s,a,c,l)=>{"class"===t?u(e,o,i):"style"===t?d(e,n,o):(0,r.F7)(t)?(0,r.tR)(t)||_(e,t,n,o,a):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):I(e,t,o,i))?b(e,t,o,s,a,c,l):("true-value"===t?e._trueValue=o:"false-value"===t&&(e._falseValue=o),v(e,t,o,i))};function I(e,t,n,o){return o?"innerHTML"===t||"textContent"===t||!!(t in e&&T.test(t)&&(0,r.mf)(n)):"spellcheck"!==t&&"draggable"!==t&&"translate"!==t&&("form"!==t&&(("list"!==t||"INPUT"!==e.tagName)&&(("type"!==t||"TEXTAREA"!==e.tagName)&&((!T.test(t)||!(0,r.HD)(n))&&t in e))))}"undefined"!==typeof HTMLElement&&HTMLElement;const L="transition",P="animation",N=(e,{slots:t})=>(0,o.h)(o.P$,U(e),t);N.displayName="Transition";const B={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},D=N.props=(0,r.l7)({},o.nJ,B),$=(e,t=[])=>{(0,r.kJ)(e)?e.forEach((e=>e(...t))):e&&e(...t)},j=e=>!!e&&((0,r.kJ)(e)?e.some((e=>e.length>1)):e.length>1);function U(e){const t={};for(const r in e)r in B||(t[r]=e[r]);if(!1===e.css)return t;const{name:n="v",type:o,duration:i,enterFromClass:s=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:c=`${n}-enter-to`,appearFromClass:l=s,appearActiveClass:u=a,appearToClass:d=c,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,g=F(i),m=g&&g[0],y=g&&g[1],{onBeforeEnter:v,onEnter:b,onEnterCancelled:w,onLeave:E,onLeaveCancelled:_,onBeforeAppear:C=v,onAppear:S=b,onAppearCancelled:k=w}=t,x=(e,t,n)=>{z(e,t?d:c),z(e,t?u:a),n&&n()},A=(e,t)=>{e._isLeaving=!1,z(e,h),z(e,p),z(e,f),t&&t()},M=e=>(t,n)=>{const r=e?S:b,i=()=>x(t,e,n);$(r,[t,i]),q((()=>{z(t,e?l:s),H(t,e?d:c),j(r)||W(t,o,m,i)}))};return(0,r.l7)(t,{onBeforeEnter(e){$(v,[e]),H(e,s),H(e,a)},onBeforeAppear(e){$(C,[e]),H(e,l),H(e,u)},onEnter:M(!1),onAppear:M(!0),onLeave(e,t){e._isLeaving=!0;const n=()=>A(e,t);H(e,h),J(),H(e,f),q((()=>{e._isLeaving&&(z(e,h),H(e,p),j(E)||W(e,o,y,n))})),$(E,[e,n])},onEnterCancelled(e){x(e,!1),$(w,[e])},onAppearCancelled(e){x(e,!0),$(k,[e])},onLeaveCancelled(e){A(e),$(_,[e])}})}function F(e){if(null==e)return null;if((0,r.Kn)(e))return[K(e.enter),K(e.leave)];{const t=K(e);return[t,t]}}function K(e){const t=(0,r.He)(e);return t}function H(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e._vtc||(e._vtc=new Set)).add(t)}function z(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function q(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let V=0;function W(e,t,n,r){const o=e._endId=++V,i=()=>{o===e._endId&&r()};if(n)return setTimeout(i,n);const{type:s,timeout:a,propCount:c}=G(e,t);if(!s)return r();const l=s+"end";let u=0;const d=()=>{e.removeEventListener(l,h),i()},h=t=>{t.target===e&&++u>=c&&d()};setTimeout((()=>{u(n[e]||"").split(", "),o=r(`${L}Delay`),i=r(`${L}Duration`),s=Y(o,i),a=r(`${P}Delay`),c=r(`${P}Duration`),l=Y(a,c);let u=null,d=0,h=0;t===L?s>0&&(u=L,d=s,h=i.length):t===P?l>0&&(u=P,d=l,h=c.length):(d=Math.max(s,l),u=d>0?s>l?L:P:null,h=u?u===L?i.length:c.length:0);const f=u===L&&/\b(transform|all)(,|$)/.test(r(`${L}Property`).toString());return{type:u,timeout:d,propCount:h,hasTransform:f}}function Y(e,t){while(e.lengthZ(t)+Z(e[n]))))}function Z(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function J(){return document.body.offsetHeight}const X=new WeakMap,Q=new WeakMap,ee={name:"TransitionGroup",props:(0,r.l7)({},D,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=(0,o.FN)(),r=(0,o.Y8)();let s,a;return(0,o.ic)((()=>{if(!s.length)return;const t=e.moveClass||`${e.name||"v"}-move`;if(!oe(s[0].el,n.vnode.el,t))return;s.forEach(te),s.forEach(ne);const r=s.filter(re);J(),r.forEach((e=>{const n=e.el,r=n.style;H(n,t),r.transform=r.webkitTransform=r.transitionDuration="";const o=n._moveCb=e=>{e&&e.target!==n||e&&!/transform$/.test(e.propertyName)||(n.removeEventListener("transitionend",o),n._moveCb=null,z(n,t))};n.addEventListener("transitionend",o)}))})),()=>{const c=(0,i.IU)(e),l=U(c);let u=c.tag||o.HY;s=a,a=t.default?(0,o.Q6)(t.default()):[];for(let e=0;e{e.split(/\s+/).forEach((e=>e&&r.classList.remove(e)))})),n.split(/\s+/).forEach((e=>e&&r.classList.add(e))),r.style.display="none";const o=1===t.nodeType?t:t.parentNode;o.appendChild(r);const{hasTransform:i}=G(r);return o.removeChild(r),i}const ie=e=>{const t=e.props["onUpdate:modelValue"]||!1;return(0,r.kJ)(t)?e=>(0,r.ir)(t,e):t};const se={deep:!0,created(e,{value:t,modifiers:{number:n}},o){const i=(0,r.DM)(t);w(e,"change",(()=>{const t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?(0,r.h5)(ce(e)):ce(e)));e._assign(e.multiple?i?new Set(t):t:t[0])})),e._assign=ie(o)},mounted(e,{value:t}){ae(e,t)},beforeUpdate(e,t,n){e._assign=ie(n)},updated(e,{value:t}){ae(e,t)}};function ae(e,t){const n=e.multiple;if(!n||(0,r.kJ)(t)||(0,r.DM)(t)){for(let o=0,i=e.options.length;o-1:i.selected=t.has(s);else if((0,r.WV)(ce(i),t))return void(e.selectedIndex!==o&&(e.selectedIndex=o))}n||-1===e.selectedIndex||(e.selectedIndex=-1)}}function ce(e){return"_value"in e?e._value:e.value}const le=(0,r.l7)({patchProp:O},l);let ue;function de(){return ue||(ue=(0,o.Us)(le))}const he=(...e)=>{const t=de().createApp(...e);const{mount:n}=t;return t.mount=e=>{const o=fe(e);if(!o)return;const i=t._component;(0,r.mf)(i)||i.render||i.template||(i.template=o.innerHTML),o.innerHTML="";const s=n(o,!1,o instanceof SVGElement);return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),s},t};function fe(e){if((0,r.HD)(e)){const t=document.querySelector(e);return t}return e}},4887:function(e,t,n){"use strict";n.d(t,{C_:function(){return X},DM:function(){return y},E9:function(){return z},F7:function(){return l},Gg:function(){return T},HD:function(){return E},He:function(){return K},Kj:function(){return b},Kn:function(){return C},NO:function(){return a},Nj:function(){return U},Od:function(){return h},PO:function(){return M},Pq:function(){return ee},RI:function(){return p},S0:function(){return R},W7:function(){return A},WV:function(){return re},Z6:function(){return i},_A:function(){return L},_N:function(){return m},aU:function(){return $},dG:function(){return s},e1:function(){return V},fY:function(){return r},h5:function(){return F},hR:function(){return D},hq:function(){return oe},ir:function(){return j},j5:function(){return W},kC:function(){return B},kJ:function(){return g},kT:function(){return o},l7:function(){return d},mf:function(){return w},rs:function(){return N},tI:function(){return S},tR:function(){return u},yA:function(){return te},yk:function(){return _},zw:function(){return ie}});n(7658);function r(e,t){const n=Object.create(null),r=e.split(",");for(let o=0;o!!n[e.toLowerCase()]:e=>!!n[e]}const o={},i=[],s=()=>{},a=()=>!1,c=/^on[^a-z]/,l=e=>c.test(e),u=e=>e.startsWith("onUpdate:"),d=Object.assign,h=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},f=Object.prototype.hasOwnProperty,p=(e,t)=>f.call(e,t),g=Array.isArray,m=e=>"[object Map]"===x(e),y=e=>"[object Set]"===x(e),v=e=>"[object Date]"===x(e),b=e=>"[object RegExp]"===x(e),w=e=>"function"===typeof e,E=e=>"string"===typeof e,_=e=>"symbol"===typeof e,C=e=>null!==e&&"object"===typeof e,S=e=>C(e)&&w(e.then)&&w(e.catch),k=Object.prototype.toString,x=e=>k.call(e),A=e=>x(e).slice(8,-1),M=e=>"[object Object]"===x(e),R=e=>E(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,T=r(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),O=e=>{const t=Object.create(null);return n=>{const r=t[n];return r||(t[n]=e(n))}},I=/-(\w)/g,L=O((e=>e.replace(I,((e,t)=>t?t.toUpperCase():"")))),P=/\B([A-Z])/g,N=O((e=>e.replace(P,"-$1").toLowerCase())),B=O((e=>e.charAt(0).toUpperCase()+e.slice(1))),D=O((e=>e?`on${B(e)}`:"")),$=(e,t)=>!Object.is(e,t),j=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},F=e=>{const t=parseFloat(e);return isNaN(t)?e:t},K=e=>{const t=E(e)?Number(e):NaN;return isNaN(t)?e:t};let H;const z=()=>H||(H="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:"undefined"!==typeof n.g?n.g:{});const q="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console",V=r(q);function W(e){if(g(e)){const t={};for(let n=0;n{if(e){const n=e.split(Y);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function X(e){let t="";if(E(e))t=e;else if(g(e))for(let n=0;nre(e,t)))}const ie=e=>E(e)?e:null==e?"":g(e)||C(e)&&(e.toString===k||!w(e.toString))?JSON.stringify(e,se,2):String(e),se=(e,t)=>t&&t.__v_isRef?se(e,t.value):m(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n])=>(e[`${t} =>`]=n,e)),{})}:y(t)?{[`Set(${t.size})`]:[...t.values()]}:!C(t)||g(t)||M(t)?t:String(t)},4505:function(e,t,n){"use strict";n(1439),n(7585),n(5315),n(7658),t.byteLength=u,t.toByteArray=h,t.fromByteArray=g;for(var r=[],o=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,s="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,c=s.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");-1===n&&(n=t);var r=n===t?0:4-n%4;return[n,r]}function u(e){var t=l(e),n=t[0],r=t[1];return 3*(n+r)/4-r}function d(e,t,n){return 3*(t+n)/4-n}function h(e){var t,n,r=l(e),s=r[0],a=r[1],c=new i(d(e,s,a)),u=0,h=a>0?s-4:s;for(n=0;n>16&255,c[u++]=t>>8&255,c[u++]=255&t;return 2===a&&(t=o[e.charCodeAt(n)]<<2|o[e.charCodeAt(n+1)]>>4,c[u++]=255&t),1===a&&(t=o[e.charCodeAt(n)]<<10|o[e.charCodeAt(n+1)]<<4|o[e.charCodeAt(n+2)]>>2,c[u++]=t>>8&255,c[u++]=255&t),c}function f(e){return r[e>>18&63]+r[e>>12&63]+r[e>>6&63]+r[63&e]}function p(e,t,n){for(var r,o=[],i=t;ic?c:a+s));return 1===o?(t=e[n-1],i.push(r[t>>2]+r[t<<4&63]+"==")):2===o&&(t=(e[n-2]<<8)+e[n-1],i.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),i.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},7162:function(e,t,n){"use strict"; +/*! + * The buffer module from node.js, for the browser. + * + * @author Feross Aboukhadijeh + * @license MIT + */n(1439),n(7585),n(5315),n(7658);const r=n(4505),o=n(9934),i="function"===typeof Symbol&&"function"===typeof Symbol["for"]?Symbol["for"]("nodejs.util.inspect.custom"):null;t.Buffer=l,t.SlowBuffer=w,t.INSPECT_MAX_BYTES=50;const s=2147483647;function a(){try{const e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),42===e.foo()}catch(e){return!1}}function c(e){if(e>s)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,l.prototype),t}function l(e,t,n){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return f(e)}return u(e,t,n)}function u(e,t,n){if("string"===typeof e)return p(e,t);if(ArrayBuffer.isView(e))return m(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(se(e,ArrayBuffer)||e&&se(e.buffer,ArrayBuffer))return y(e,t,n);if("undefined"!==typeof SharedArrayBuffer&&(se(e,SharedArrayBuffer)||e&&se(e.buffer,SharedArrayBuffer)))return y(e,t,n);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const r=e.valueOf&&e.valueOf();if(null!=r&&r!==e)return l.from(r,t,n);const o=v(e);if(o)return o;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return l.from(e[Symbol.toPrimitive]("string"),t,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function d(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function h(e,t,n){return d(e),e<=0?c(e):void 0!==t?"string"===typeof n?c(e).fill(t,n):c(e).fill(t):c(e)}function f(e){return d(e),c(e<0?0:0|b(e))}function p(e,t){if("string"===typeof t&&""!==t||(t="utf8"),!l.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const n=0|E(e,t);let r=c(n);const o=r.write(e,t);return o!==n&&(r=r.slice(0,o)),r}function g(e){const t=e.length<0?0:0|b(e.length),n=c(t);for(let r=0;r=s)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+s.toString(16)+" bytes");return 0|e}function w(e){return+e!=e&&(e=0),l.alloc(+e)}function E(e,t){if(l.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||se(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;let o=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return te(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return oe(e).length;default:if(o)return r?-1:te(e).length;t=(""+t).toLowerCase(),o=!0}}function _(e,t,n){let r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if(n>>>=0,t>>>=0,n<=t)return"";e||(e="utf8");while(1)switch(e){case"hex":return D(this,t,n);case"utf8":case"utf-8":return I(this,t,n);case"ascii":return N(this,t,n);case"latin1":case"binary":return B(this,t,n);case"base64":return O(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return $(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function C(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function S(e,t,n,r,o){if(0===e.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,ae(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"===typeof t&&(t=l.from(t,r)),l.isBuffer(t))return 0===t.length?-1:k(e,t,n,r,o);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):k(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function k(e,t,n,r,o){let i,s=1,a=e.length,c=t.length;if(void 0!==r&&(r=String(r).toLowerCase(),"ucs2"===r||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,a/=2,c/=2,n/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(o){let r=-1;for(i=n;ia&&(n=a-c),i=n;i>=0;i--){let n=!0;for(let r=0;ro&&(r=o)):r=o;const i=t.length;let s;for(r>i/2&&(r=i/2),s=0;s239?4:t>223?3:t>191?2:1;if(o+s<=n){let n,r,a,c;switch(s){case 1:t<128&&(i=t);break;case 2:n=e[o+1],128===(192&n)&&(c=(31&t)<<6|63&n,c>127&&(i=c));break;case 3:n=e[o+1],r=e[o+2],128===(192&n)&&128===(192&r)&&(c=(15&t)<<12|(63&n)<<6|63&r,c>2047&&(c<55296||c>57343)&&(i=c));break;case 4:n=e[o+1],r=e[o+2],a=e[o+3],128===(192&n)&&128===(192&r)&&128===(192&a)&&(c=(15&t)<<18|(63&n)<<12|(63&r)<<6|63&a,c>65535&&c<1114112&&(i=c))}}null===i?(i=65533,s=1):i>65535&&(i-=65536,r.push(i>>>10&1023|55296),i=56320|1023&i),r.push(i),o+=s}return P(r)}t.kMaxLength=s,l.TYPED_ARRAY_SUPPORT=a(),l.TYPED_ARRAY_SUPPORT||"undefined"===typeof console||"function"!==typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(l.prototype,"parent",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.buffer}}),Object.defineProperty(l.prototype,"offset",{enumerable:!0,get:function(){if(l.isBuffer(this))return this.byteOffset}}),l.poolSize=8192,l.from=function(e,t,n){return u(e,t,n)},Object.setPrototypeOf(l.prototype,Uint8Array.prototype),Object.setPrototypeOf(l,Uint8Array),l.alloc=function(e,t,n){return h(e,t,n)},l.allocUnsafe=function(e){return f(e)},l.allocUnsafeSlow=function(e){return f(e)},l.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==l.prototype},l.compare=function(e,t){if(se(e,Uint8Array)&&(e=l.from(e,e.offset,e.byteLength)),se(t,Uint8Array)&&(t=l.from(t,t.offset,t.byteLength)),!l.isBuffer(e)||!l.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;let n=e.length,r=t.length;for(let o=0,i=Math.min(n,r);or.length?(l.isBuffer(t)||(t=l.from(t)),t.copy(r,o)):Uint8Array.prototype.set.call(r,t,o);else{if(!l.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(r,o)}o+=t.length}return r},l.byteLength=E,l.prototype._isBuffer=!0,l.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tn&&(e+=" ... "),""},i&&(l.prototype[i]=l.prototype.inspect),l.prototype.compare=function(e,t,n,r,o){if(se(e,Uint8Array)&&(e=l.from(e,e.offset,e.byteLength)),!l.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(t>>>=0,n>>>=0,r>>>=0,o>>>=0,this===e)return 0;let i=o-r,s=n-t;const a=Math.min(i,s),c=this.slice(r,o),u=e.slice(t,n);for(let l=0;l>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}const o=this.length-t;if((void 0===n||n>o)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");let i=!1;for(;;)switch(r){case"hex":return x(this,e,t,n);case"utf8":case"utf-8":return A(this,e,t,n);case"ascii":case"latin1":case"binary":return M(this,e,t,n);case"base64":return R(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const L=4096;function P(e){const t=e.length;if(t<=L)return String.fromCharCode.apply(String,e);let n="",r=0;while(rr)&&(n=r);let o="";for(let i=t;in)throw new RangeError("Trying to access beyond buffer length")}function U(e,t,n,r,o,i){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function F(e,t,n,r,o){Z(t,r,o,e,n,7);let i=Number(t&BigInt(4294967295));e[n++]=i,i>>=8,e[n++]=i,i>>=8,e[n++]=i,i>>=8,e[n++]=i;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[n++]=s,s>>=8,e[n++]=s,s>>=8,e[n++]=s,s>>=8,e[n++]=s,n}function K(e,t,n,r,o){Z(t,r,o,e,n,7);let i=Number(t&BigInt(4294967295));e[n+7]=i,i>>=8,e[n+6]=i,i>>=8,e[n+5]=i,i>>=8,e[n+4]=i;let s=Number(t>>BigInt(32)&BigInt(4294967295));return e[n+3]=s,s>>=8,e[n+2]=s,s>>=8,e[n+1]=s,s>>=8,e[n]=s,n+8}function H(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function z(e,t,n,r,i){return t=+t,n>>>=0,i||H(e,t,n,4,34028234663852886e22,-34028234663852886e22),o.write(e,t,n,r,23,4),n+4}function q(e,t,n,r,i){return t=+t,n>>>=0,i||H(e,t,n,8,17976931348623157e292,-17976931348623157e292),o.write(e,t,n,r,52,8),n+8}l.prototype.slice=function(e,t){const n=this.length;e=~~e,t=void 0===t?n:~~t,e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),t>>=0,t>>>=0,n||j(e,t,this.length);let r=this[e],o=1,i=0;while(++i>>=0,t>>>=0,n||j(e,t,this.length);let r=this[e+--t],o=1;while(t>0&&(o*=256))r+=this[e+--t]*o;return r},l.prototype.readUint8=l.prototype.readUInt8=function(e,t){return e>>>=0,t||j(e,1,this.length),this[e]},l.prototype.readUint16LE=l.prototype.readUInt16LE=function(e,t){return e>>>=0,t||j(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUint16BE=l.prototype.readUInt16BE=function(e,t){return e>>>=0,t||j(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUint32LE=l.prototype.readUInt32LE=function(e,t){return e>>>=0,t||j(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUint32BE=l.prototype.readUInt32BE=function(e,t){return e>>>=0,t||j(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readBigUInt64LE=le((function(e){e>>>=0,J(e,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||X(e,this.length-8);const r=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,o=this[++e]+256*this[++e]+65536*this[++e]+n*2**24;return BigInt(r)+(BigInt(o)<>>=0,J(e,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||X(e,this.length-8);const r=t*2**24+65536*this[++e]+256*this[++e]+this[++e],o=this[++e]*2**24+65536*this[++e]+256*this[++e]+n;return(BigInt(r)<>>=0,t>>>=0,n||j(e,t,this.length);let r=this[e],o=1,i=0;while(++i=o&&(r-=Math.pow(2,8*t)),r},l.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||j(e,t,this.length);let r=t,o=1,i=this[e+--r];while(r>0&&(o*=256))i+=this[e+--r]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*t)),i},l.prototype.readInt8=function(e,t){return e>>>=0,t||j(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){e>>>=0,t||j(e,2,this.length);const n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt16BE=function(e,t){e>>>=0,t||j(e,2,this.length);const n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt32LE=function(e,t){return e>>>=0,t||j(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return e>>>=0,t||j(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readBigInt64LE=le((function(e){e>>>=0,J(e,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||X(e,this.length-8);const r=this[e+4]+256*this[e+5]+65536*this[e+6]+(n<<24);return(BigInt(r)<>>=0,J(e,"offset");const t=this[e],n=this[e+7];void 0!==t&&void 0!==n||X(e,this.length-8);const r=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(r)<>>=0,t||j(e,4,this.length),o.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return e>>>=0,t||j(e,4,this.length),o.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return e>>>=0,t||j(e,8,this.length),o.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return e>>>=0,t||j(e,8,this.length),o.read(this,e,!1,52,8)},l.prototype.writeUintLE=l.prototype.writeUIntLE=function(e,t,n,r){if(e=+e,t>>>=0,n>>>=0,!r){const r=Math.pow(2,8*n)-1;U(this,e,t,n,r,0)}let o=1,i=0;this[t]=255&e;while(++i>>=0,n>>>=0,!r){const r=Math.pow(2,8*n)-1;U(this,e,t,n,r,0)}let o=n-1,i=1;this[t+o]=255&e;while(--o>=0&&(i*=256))this[t+o]=e/i&255;return t+n},l.prototype.writeUint8=l.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,1,255,0),this[t]=255&e,t+1},l.prototype.writeUint16LE=l.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},l.prototype.writeUint16BE=l.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},l.prototype.writeUint32LE=l.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},l.prototype.writeUint32BE=l.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},l.prototype.writeBigUInt64LE=le((function(e,t=0){return F(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),l.prototype.writeBigUInt64BE=le((function(e,t=0){return K(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),l.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){const r=Math.pow(2,8*n-1);U(this,e,t,n,r-1,-r)}let o=0,i=1,s=0;this[t]=255&e;while(++o>0)-s&255;return t+n},l.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){const r=Math.pow(2,8*n-1);U(this,e,t,n,r-1,-r)}let o=n-1,i=1,s=0;this[t+o]=255&e;while(--o>=0&&(i*=256))e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/i>>0)-s&255;return t+n},l.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},l.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},l.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},l.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||U(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},l.prototype.writeBigInt64LE=le((function(e,t=0){return F(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),l.prototype.writeBigInt64BE=le((function(e,t=0){return K(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),l.prototype.writeFloatLE=function(e,t,n){return z(this,e,t,!0,n)},l.prototype.writeFloatBE=function(e,t,n){return z(this,e,t,!1,n)},l.prototype.writeDoubleLE=function(e,t,n){return q(this,e,t,!0,n)},l.prototype.writeDoubleBE=function(e,t,n){return q(this,e,t,!1,n)},l.prototype.copy=function(e,t,n,r){if(!l.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"===typeof e)for(o=t;o=r+4;n-=3)t=`_${e.slice(n-3,n)}${t}`;return`${e.slice(0,n)}${t}`}function Y(e,t,n){J(t,"offset"),void 0!==e[t]&&void 0!==e[t+n]||X(t,e.length-(n+1))}function Z(e,t,n,r,o,i){if(e>n||e3?0===t||t===BigInt(0)?`>= 0${r} and < 2${r} ** ${8*(i+1)}${r}`:`>= -(2${r} ** ${8*(i+1)-1}${r}) and < 2 ** ${8*(i+1)-1}${r}`:`>= ${t}${r} and <= ${n}${r}`,new V.ERR_OUT_OF_RANGE("value",o,e)}Y(r,o,i)}function J(e,t){if("number"!==typeof e)throw new V.ERR_INVALID_ARG_TYPE(t,"number",e)}function X(e,t,n){if(Math.floor(e)!==e)throw J(e,n),new V.ERR_OUT_OF_RANGE(n||"offset","an integer",e);if(t<0)throw new V.ERR_BUFFER_OUT_OF_BOUNDS;throw new V.ERR_OUT_OF_RANGE(n||"offset",`>= ${n?1:0} and <= ${t}`,e)}W("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),W("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),W("ERR_OUT_OF_RANGE",(function(e,t,n){let r=`The value of "${e}" is out of range.`,o=n;return Number.isInteger(n)&&Math.abs(n)>2**32?o=G(String(n)):"bigint"===typeof n&&(o=String(n),(n>BigInt(2)**BigInt(32)||n<-(BigInt(2)**BigInt(32)))&&(o=G(o)),o+="n"),r+=` It must be ${t}. Received ${o}`,r}),RangeError);const Q=/[^+/0-9A-Za-z-_]/g;function ee(e){if(e=e.split("=")[0],e=e.trim().replace(Q,""),e.length<2)return"";while(e.length%4!==0)e+="=";return e}function te(e,t){let n;t=t||1/0;const r=e.length;let o=null;const i=[];for(let s=0;s55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function ne(e){const t=[];for(let n=0;n>8,o=n%256,i.push(o),i.push(r)}return i}function oe(e){return r.toByteArray(ee(e))}function ie(e,t,n,r){let o;for(o=0;o=t.length||o>=e.length)break;t[o+n]=e[o]}return o}function se(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function ae(e){return e!==e}const ce=function(){const e="0123456789abcdef",t=new Array(256);for(let n=0;n<16;++n){const r=16*n;for(let o=0;o<16;++o)t[r+o]=e[n]+e[o]}return t}();function le(e){return"undefined"===typeof BigInt?ue:e}function ue(){throw new Error("BigInt not supported")}},4003:function(e,t,n){n(2801),n(7658),n(1439),n(7585),n(5315),n(6229),n(7330),n(2062);var r="undefined"!==typeof globalThis&&globalThis||"undefined"!==typeof self&&self||"undefined"!==typeof n.g&&n.g,o=function(){function e(){this.fetch=!1,this.DOMException=r.DOMException}return e.prototype=r,new e}();(function(e){(function(t){var n="undefined"!==typeof e&&e||"undefined"!==typeof self&&self||"undefined"!==typeof n&&n,r={searchParams:"URLSearchParams"in n,iterable:"Symbol"in n&&"iterator"in Symbol,blob:"FileReader"in n&&"Blob"in n&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in n,arrayBuffer:"ArrayBuffer"in n};function o(e){return e&&DataView.prototype.isPrototypeOf(e)}if(r.arrayBuffer)var i=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],s=ArrayBuffer.isView||function(e){return e&&i.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 new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function c(e){return"string"!==typeof e&&(e=String(e)),e}function l(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return r.iterable&&(t[Symbol.iterator]=function(){return t}),t}function u(e){this.map={},e instanceof u?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function d(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function h(e){return new Promise((function(t,n){e.onload=function(){t(e.result)},e.onerror=function(){n(e.error)}}))}function f(e){var t=new FileReader,n=h(t);return t.readAsArrayBuffer(e),n}function p(e){var t=new FileReader,n=h(t);return t.readAsText(e),n}function g(e){for(var t=new Uint8Array(e),n=new Array(t.length),r=0;r-1?t:e}function w(e,t){if(!(this instanceof w))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');t=t||{};var n=t.body;if(e instanceof w){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new u(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 u(t.headers)),this.method=b(t.method||this.method||"GET"),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw new 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 r=/([?&])_=[^&]*/;if(r.test(this.url))this.url=this.url.replace(r,"$1_="+(new Date).getTime());else{var o=/\?/;this.url+=(o.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var n=e.split("="),r=n.shift().replace(/\+/g," "),o=n.join("=").replace(/\+/g," ");t.append(decodeURIComponent(r),decodeURIComponent(o))}})),t}function _(e){var t=new u,n=e.replace(/\r?\n[\t ]+/g," ");return n.split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var n=e.split(":"),r=n.shift().trim();if(r){var o=n.join(":").trim();t.append(r,o)}})),t}function C(e,t){if(!(this instanceof C))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new u(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},y.call(w.prototype),y.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new u(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:0,statusText:""});return e.type="error",e};var S=[301,302,303,307,308];C.redirect=function(e,t){if(-1===S.indexOf(t))throw new RangeError("Invalid status code");return new C(null,{status:t,headers:{location:e}})},t.DOMException=n.DOMException;try{new t.DOMException}catch(x){t.DOMException=function(e,t){this.message=e,this.name=t;var n=Error(e);this.stack=n.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function k(e,o){return new Promise((function(i,s){var a=new w(e,o);if(a.signal&&a.signal.aborted)return s(new t.DOMException("Aborted","AbortError"));var l=new XMLHttpRequest;function d(){l.abort()}function h(e){try{return""===e&&n.location.href?n.location.href:e}catch(t){return e}}l.onload=function(){var e={status:l.status,statusText:l.statusText,headers:_(l.getAllResponseHeaders()||"")};e.url="responseURL"in l?l.responseURL:e.headers.get("X-Request-URL");var t="response"in l?l.response:l.responseText;setTimeout((function(){i(new C(t,e))}),0)},l.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},l.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},l.onabort=function(){setTimeout((function(){s(new t.DOMException("Aborted","AbortError"))}),0)},l.open(a.method,h(a.url),!0),"include"===a.credentials?l.withCredentials=!0:"omit"===a.credentials&&(l.withCredentials=!1),"responseType"in l&&(r.blob?l.responseType="blob":r.arrayBuffer&&a.headers.get("Content-Type")&&-1!==a.headers.get("Content-Type").indexOf("application/octet-stream")&&(l.responseType="arraybuffer")),!o||"object"!==typeof o.headers||o.headers instanceof u?a.headers.forEach((function(e,t){l.setRequestHeader(t,e)})):Object.getOwnPropertyNames(o.headers).forEach((function(e){l.setRequestHeader(e,c(o.headers[e]))})),a.signal&&(a.signal.addEventListener("abort",d),l.onreadystatechange=function(){4===l.readyState&&a.signal.removeEventListener("abort",d)}),l.send("undefined"===typeof a._bodyInit?null:a._bodyInit)}))}k.polyfill=!0,n.fetch||(n.fetch=k,n.Headers=u,n.Request=w,n.Response=C),t.Headers=u,t.Request=w,t.Response=C,t.fetch=k})({})})(o),o.fetch.ponyfill=!0,delete o.fetch.polyfill;var i=r.fetch?r:o;t=i.fetch,t["default"]=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t},8266:function(e){var t=1e3,n=60*t,r=60*n,o=24*r,i=7*o,s=365.25*o;function a(e){if(e=String(e),!(e.length>100)){var a=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(a){var c=parseFloat(a[1]),l=(a[2]||"ms").toLowerCase();switch(l){case"years":case"year":case"yrs":case"yr":case"y":return c*s;case"weeks":case"week":case"w":return c*i;case"days":case"day":case"d":return c*o;case"hours":case"hour":case"hrs":case"hr":case"h":return c*r;case"minutes":case"minute":case"mins":case"min":case"m":return c*n;case"seconds":case"second":case"secs":case"sec":case"s":return c*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return c;default:return}}}}function c(e){var i=Math.abs(e);return i>=o?Math.round(e/o)+"d":i>=r?Math.round(e/r)+"h":i>=n?Math.round(e/n)+"m":i>=t?Math.round(e/t)+"s":e+"ms"}function l(e){var i=Math.abs(e);return i>=o?u(e,i,o,"day"):i>=r?u(e,i,r,"hour"):i>=n?u(e,i,n,"minute"):i>=t?u(e,i,t,"second"):e+" ms"}function u(e,t,n,r){var o=t>=1.5*n;return Math.round(e/n)+" "+r+(o?"s":"")}e.exports=function(e,t){t=t||{};var n=typeof e;if("string"===n&&e.length>0)return a(e);if("number"===n&&isFinite(e))return t.long?l(e):c(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},5047:function(e,t,n){function r(){return!("undefined"===typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"===typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!==typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!==typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!==typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))}function o(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,o=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{"%%"!==e&&(r++,"%c"===e&&(o=r))})),t.splice(o,0,n)}function i(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(n){}}function s(){let e;try{e=t.storage.getItem("debug")}catch(n){}return!e&&"undefined"!==typeof process&&"env"in process&&(e={NODE_ENV:"production",BASE_URL:""}.DEBUG),e}function a(){try{return localStorage}catch(e){}}t.formatArgs=o,t.save=i,t.load=s,t.useColors=r,t.storage=a(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=n(2859)(t);const{formatters:c}=e.exports;c.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}},2859:function(e,t,n){function r(e){function t(e){let t=0;for(let n=0;n{if("%%"===t)return"%";s++;const i=r.formatters[o];if("function"===typeof i){const r=e[s];t=i.call(n,r),e.splice(s,1),s--}return t})),r.formatArgs.call(n,e);const c=n.log||r.log;c.apply(n,e)}return a.namespace=e,a.useColors=r.useColors(),a.color=r.selectColor(e),a.extend=o,a.destroy=r.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(n!==r.namespaces&&(n=r.namespaces,i=r.enabled(e)),i),set:e=>{s=e}}),"function"===typeof r.init&&r.init(a),a}function o(e,t){const n=r(this.namespace+("undefined"===typeof t?":":t)+e);return n.log=this.log,n}function i(e){let t;r.save(e),r.namespaces=e,r.names=[],r.skips=[];const n=("string"===typeof e?e:"").split(/[\s,]+/),o=n.length;for(t=0;t"-"+e))].join(",");return r.enable(""),e}function a(e){if("*"===e[e.length-1])return!0;let t,n;for(t=0,n=r.skips.length;t{r[t]=e[t]})),r.names=[],r.skips=[],r.formatters={},r.selectColor=t,r.enable(r.load()),r}n(7658),e.exports=r},5792:function(e,t,n){var r;n(4633),n(7658),function(o){var i=Object.hasOwnProperty,s=Array.isArray?Array.isArray:function(e){return"[object Array]"===Object.prototype.toString.call(e)},a=10,c="object"==typeof process&&"function"==typeof process.nextTick,l="function"===typeof Symbol,u="object"===typeof Reflect,d="function"===typeof setImmediate,h=d?setImmediate:setTimeout,f=l?u&&"function"===typeof Reflect.ownKeys?Reflect.ownKeys:function(e){var t=Object.getOwnPropertyNames(e);return t.push.apply(t,Object.getOwnPropertySymbols(e)),t}:Object.keys;function p(){this._events={},this._conf&&g.call(this,this._conf)}function g(e){e&&(this._conf=e,e.delimiter&&(this.delimiter=e.delimiter),e.maxListeners!==o&&(this._maxListeners=e.maxListeners),e.wildcard&&(this.wildcard=e.wildcard),e.newListener&&(this._newListener=e.newListener),e.removeListener&&(this._removeListener=e.removeListener),e.verboseMemoryLeak&&(this.verboseMemoryLeak=e.verboseMemoryLeak),e.ignoreErrors&&(this.ignoreErrors=e.ignoreErrors),this.wildcard&&(this.listenerTree={}))}function m(e,t){var n="(node) warning: possible EventEmitter memory leak detected. "+e+" listeners added. Use emitter.setMaxListeners() to increase limit.";if(this.verboseMemoryLeak&&(n+=" Event name: "+t+"."),"undefined"!==typeof process&&process.emitWarning){var r=new Error(n);r.name="MaxListenersExceededWarning",r.emitter=this,r.count=e,process.emitWarning(r)}else console.error(n),console.trace&&console.trace()}var y=function(e,t,n){var r=arguments.length;switch(r){case 0:return[];case 1:return[e];case 2:return[e,t];case 3:return[e,t,n];default:var o=new Array(r);while(r--)o[r]=arguments[r];return o}};function v(e,t){for(var n,r={},i=e.length,s=t?t.length:0,a=0;a0)if(i===e[s])return r;o(t)}}Object.assign(b.prototype,{subscribe:function(e,t,n){var r=this,o=this._target,i=this._emitter,s=this._listeners,a=function(){var r=y.apply(null,arguments),s={data:r,name:t,original:e};if(n){var a=n.call(o,s);!1!==a&&i.emit.apply(i,[s.name].concat(r))}else i.emit.apply(i,[t].concat(r))};if(s[e])throw Error("Event '"+e+"' is already listening");this._listenersCount++,i._newListener&&i._removeListener&&!r._onNewListener?(this._onNewListener=function(n){n===t&&null===s[e]&&(s[e]=a,r._on.call(o,e,a))},i.on("newListener",this._onNewListener),this._onRemoveListener=function(n){n===t&&!i.hasListeners(n)&&s[e]&&(s[e]=null,r._off.call(o,e,a))},s[e]=null,i.on("removeListener",this._onRemoveListener)):(s[e]=a,r._on.call(o,e,a))},unsubscribe:function(e){var t,n,r,o=this,i=this._listeners,s=this._emitter,a=this._off,c=this._target;if(e&&"string"!==typeof e)throw TypeError("event must be a string");function l(){o._onNewListener&&(s.off("newListener",o._onNewListener),s.off("removeListener",o._onRemoveListener),o._onNewListener=null,o._onRemoveListener=null);var e=x.call(s,o);s._observers.splice(e,1)}if(e){if(t=i[e],!t)return;a.call(c,e,t),delete i[e],--this._listenersCount||l()}else{n=f(i),r=n.length;while(r-- >0)e=n[r],a.call(c,e,i[e]);this._listeners={},this._listenersCount=0,l()}}});var C=_(["function"]),S=_(["object","function"]);function k(e,t,n){var r,o,i,s=0,a=new e((function(c,l,u){function d(){o&&(o=null),s&&(clearTimeout(s),s=0)}n=w(n,{timeout:0,overload:!1},{timeout:function(e,t){return e*=1,("number"!==typeof e||e<0||!Number.isFinite(e))&&t("timeout must be a positive number"),e}}),r=!n.overload&&"function"===typeof e.prototype.cancel&&"function"===typeof u;var h=function(e){d(),c(e)},f=function(e){d(),l(e)};r?t(h,f,u):(o=[function(e){f(e||Error("canceled"))}],t(h,f,(function(e){if(i)throw Error("Unable to subscribe on cancel event asynchronously");if("function"!==typeof e)throw TypeError("onCancel callback must be a function");o.push(e)})),i=!0),n.timeout>0&&(s=setTimeout((function(){var e=Error("timeout");e.code="ETIMEDOUT",s=0,a.cancel(e),l(e)}),n.timeout))}));return r||(a.cancel=function(e){if(o){for(var t=o.length,n=1;n0)h=v[a],"_listeners"!==h&&(b=A(e,t,n[h],r+1,o),b&&(w?w.push.apply(w,b):w=b));return w}if("**"===E){y=r+1===o||r+2===o&&"*"===_,y&&n._listeners&&(w=A(e,t,n,o,o)),v=f(n),a=v.length;while(a-- >0)h=v[a],"_listeners"!==h&&("*"===h||"**"===h?(n[h]._listeners&&!y&&(b=A(e,t,n[h],o,o),b&&(w?w.push.apply(w,b):w=b)),b=A(e,t,n[h],r,o)):b=A(e,t,n[h],h===_?r+2:r,o),b&&(w?w.push.apply(w,b):w=b));return w}n[E]&&(w=A(e,t,n[E],r+1,o))}if(p=n["*"],p&&A(e,t,p,r+1,o),g=n["**"],g)if(r0)h=v[a],"_listeners"!==h&&(h===_?A(e,t,g[h],r+2,o):h===E?A(e,t,g[h],r+1,o):(m={},m[h]=g[h],A(e,t,{"**":m},r+1,o)))}else g._listeners?A(e,t,g,o,o):g["*"]&&g["*"]._listeners&&A(e,t,g["*"],o,o);return w}function M(e,t,n){var r,o,i=0,s=0,a=this.delimiter,c=a.length;if("string"===typeof e)if(-1!==(r=e.indexOf(a))){o=new Array(5);do{o[i++]=e.slice(s,r),s=r+c}while(-1!==(r=e.indexOf(a,s)));o[i++]=e.slice(s)}else o=[e],i=1;else o=e,i=e.length;if(i>1)for(r=0;r+10&&u._listeners.length>this._maxListeners&&(u._listeners.warned=!0,m.call(this,u._listeners.length,l))):u._listeners=t,!0;return!0}function R(e,t,n,r){var o,i,s,a,c=f(e),l=c.length,u=e["_listeners"];while(l-- >0)i=c[l],o=e[i],s="_listeners"===i?n:n?n.concat(i):[i],a=r||"symbol"===typeof i,u&&t.push(a?s:s.join(this.delimiter)),"object"===typeof o&&R.call(this,o,t,s,a);return t}function T(e){var t,n,r,o=f(e),i=o.length;while(i-- >0)n=o[i],t=e[n],t&&(r=!0,"_listeners"===n||T(t)||delete e[n]);return r}function O(e,t,n){this.emitter=e,this.event=t,this.listener=n}function I(e,t,n){if(!0===n)i=!0;else if(!1===n)r=!0;else{if(!n||"object"!==typeof n)throw TypeError("options should be an object or true");var r=n.async,i=n.promisify,s=n.nextTick,a=n.objectify}if(r||s||i){var l=t,u=t._origin||t;if(s&&!c)throw Error("process.nextTick is not supported");i===o&&(i="AsyncFunction"===t.constructor.name),t=function(){var e=arguments,t=this,n=this.event;return i?s?Promise.resolve():new Promise((function(e){h(e)})).then((function(){return t.event=n,l.apply(t,e)})):(s?process.nextTick:h)((function(){t.event=n,l.apply(t,e)}))},t._async=!0,t._origin=u}return[t,a?new O(this,e,t):this]}function L(e){this._events={},this._newListener=!1,this._removeListener=!1,this.verboseMemoryLeak=!1,g.call(this,e)}function P(e,t,n){n=w(n,{Promise:Promise,timeout:0,overload:!1},{Promise:E});var r=n.Promise;return k(r,(function(n,r,o){var i;if("function"===typeof e.addEventListener)return i=function(){n(y.apply(null,arguments))},o((function(){e.removeEventListener(t,i)})),void e.addEventListener(t,i,{once:!0});var s,a=function(){s&&e.removeListener("error",s),n(y.apply(null,arguments))};"error"!==t&&(s=function(n){e.removeListener(t,a),r(n)},e.once("error",s)),o((function(){s&&e.removeListener("error",s),e.removeListener(t,a)})),e.once(t,a)}),{timeout:n.timeout,overload:n.overload})}O.prototype.off=function(){return this.emitter.off(this.event,this.listener),this},L.EventEmitter2=L,L.prototype.listenTo=function(e,t,n){if("object"!==typeof e)throw TypeError("target musts be an object");var r=this;function i(t){if("object"!==typeof t)throw TypeError("events must be an object");var o,i=n.reducers,s=x.call(r,e);o=-1===s?new b(r,e,n):r._observers[s];for(var a,c=f(t),l=c.length,u="function"===typeof i,d=0;d0)r=n[o],e&&r._target!==e||(r.unsubscribe(t),i=!0);return i},L.prototype.delimiter=".",L.prototype.setMaxListeners=function(e){e!==o&&(this._maxListeners=e,this._conf||(this._conf={}),this._conf.maxListeners=e)},L.prototype.getMaxListeners=function(){return this._maxListeners},L.prototype.event="",L.prototype.once=function(e,t,n){return this._once(e,t,!1,n)},L.prototype.prependOnceListener=function(e,t,n){return this._once(e,t,!0,n)},L.prototype._once=function(e,t,n,r){return this._many(e,1,t,n,r)},L.prototype.many=function(e,t,n,r){return this._many(e,t,n,!1,r)},L.prototype.prependMany=function(e,t,n,r){return this._many(e,t,n,!0,r)},L.prototype._many=function(e,t,n,r,o){var i=this;if("function"!==typeof n)throw new Error("many only accepts instances of Function");function s(){return 0===--t&&i.off(e,s),n.apply(this,arguments)}return s._origin=n,this._on(e,s,r,o)},L.prototype.emit=function(){if(!this._events&&!this._all)return!1;this._events||p.call(this);var e,t,n,r,o,i,s=arguments[0],a=this.wildcard;if("newListener"===s&&!this._newListener&&!this._events.newListener)return!1;if(a&&(e=s,"newListener"!==s&&"removeListener"!==s&&"object"===typeof s)){if(n=s.length,l)for(r=0;r3)for(t=new Array(u-1),o=1;o3)for(n=new Array(d-1),i=1;i0&&this._events[e].length>this._maxListeners&&(this._events[e].warned=!0,m.call(this,this._events[e].length,e))):this._events[e]=t,s)},L.prototype.off=function(e,t){if("function"!==typeof t)throw new Error("removeListener only takes instances of Function");var n,r=[];if(this.wildcard){var o="string"===typeof e?e.split(this.delimiter):e.slice();if(r=A.call(this,null,o,this.listenerTree,0),!r)return this}else{if(!this._events[e])return this;n=this._events[e],r.push({_listeners:n})}for(var i=0;i0){for(t=this._all,n=0,r=t.length;n0)n=a[t[i]],"function"===typeof n?r.push(n):r.push.apply(r,n);return r}if(this.wildcard){if(s=this.listenerTree,!s)return[];var c=[],l="string"===typeof e?e.split(this.delimiter):e.slice();return A.call(this,c,l,s,0),c}return a?(n=a[e],n?"function"===typeof n?[n]:n:[]):[]},L.prototype.eventNames=function(e){var t=this._events;return this.wildcard?R.call(this,this.listenerTree,[],null,e):t?f(t):[]},L.prototype.listenerCount=function(e){return this.listeners(e).length},L.prototype.hasListeners=function(e){if(this.wildcard){var t=[],n="string"===typeof e?e.split(this.delimiter):e.slice();return A.call(this,t,n,this.listenerTree,0),t.length>0}var r=this._events,i=this._all;return!!(i&&i.length||r&&(e===o?f(r).length:r[e]))},L.prototype.listenersAny=function(){return this._all?this._all:[]},L.prototype.waitFor=function(e,t){var n=this,r=typeof t;return"number"===r?t={timeout:t}:"function"===r&&(t={filter:t}),t=w(t,{timeout:0,filter:o,handleError:!1,Promise:Promise,overload:!1},{filter:C,Promise:E}),k(t.Promise,(function(r,o,i){function s(){var i=t.filter;if(!i||i.apply(n,arguments))if(n.off(e,s),t.handleError){var a=arguments[0];a?o(a):r(y.apply(null,arguments).slice(1))}else r(y.apply(null,arguments))}i((function(){n.off(e,s)})),n._on(e,s,!1)}),{timeout:t.timeout,overload:t.overload})};var N=L.prototype;Object.defineProperties(L,{defaultMaxListeners:{get:function(){return N._maxListeners},set:function(e){if("number"!==typeof e||e<0||Number.isNaN(e))throw TypeError("n must be a non-negative number");N._maxListeners=e},enumerable:!0},once:{value:P,writable:!0,configurable:!0}}),Object.defineProperties(N,{_maxListeners:{value:a,writable:!0,configurable:!0},_observers:{value:null,writable:!0,configurable:!0}}),r=function(){return L}.call(t,n,t,e),r===o||(e.exports=r)}()},9934:function(e,t){ +/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ +t.read=function(e,t,n,r,o){var i,s,a=8*o-r-1,c=(1<>1,u=-7,d=n?o-1:0,h=n?-1:1,f=e[t+d];for(d+=h,i=f&(1<<-u)-1,f>>=-u,u+=a;u>0;i=256*i+e[t+d],d+=h,u-=8);for(s=i&(1<<-u)-1,i>>=-u,u+=r;u>0;s=256*s+e[t+d],d+=h,u-=8);if(0===i)i=1-l;else{if(i===c)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,r),i-=l}return(f?-1:1)*s*Math.pow(2,i-r)},t.write=function(e,t,n,r,o,i){var s,a,c,l=8*i-o-1,u=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:i-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,s=u):(s=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-s))<1&&(s--,c*=2),t+=s+d>=1?h/c:h*Math.pow(2,1-d),t*c>=2&&(s++,c/=2),s+d>=u?(a=0,s=u):s+d>=1?(a=(t*c-1)*Math.pow(2,o),s+=d):(a=t*Math.pow(2,d-1)*Math.pow(2,o),s=0));o>=8;e[n+f]=255&a,f+=p,a/=256,o-=8);for(s=s<0;e[n+f]=255&s,f+=p,s/=256,l-=8);e[n+f-p]|=128*g}},5312:function(e,t){"use strict";t.Z=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n}}}]); +//# sourceMappingURL=chunk-vendors.42967328.js.map \ No newline at end of file diff --git a/main/packages/examples/vuejs/build/js/chunk-vendors.42967328.js.map b/main/packages/examples/vuejs/build/js/chunk-vendors.42967328.js.map new file mode 100644 index 000000000..9d5f13e13 --- /dev/null +++ b/main/packages/examples/vuejs/build/js/chunk-vendors.42967328.js.map @@ -0,0 +1 @@ +{"version":3,"file":"js/chunk-vendors.42967328.js","mappings":"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","sources":["webpack://metamasksdk_vuejs/./node_modules/core-js/internals/a-callable.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/a-possible-prototype.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/an-instance.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/an-object.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-buffer-basic-detection.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-buffer-view-core.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-from-constructor-and-list.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-includes.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-set-length.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-slice.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-to-reversed.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/array-with.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/classof-raw.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/classof.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/copy-constructor-properties.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/create-non-enumerable-property.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/create-property-descriptor.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/define-built-in-accessor.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/define-built-in.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/define-global-property.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/descriptors.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/document-all.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/document-create-element.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/does-not-exceed-safe-integer.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/dom-exception-constants.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/engine-is-bun.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/engine-is-ios.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/engine-is-node.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/engine-user-agent.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/engine-v8-version.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/enum-bug-keys.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/error-stack-clear.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/export.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/fails.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-apply.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-bind-context.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-bind-native.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-call.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-name.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-uncurry-this-accessor.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-uncurry-this-clause.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/function-uncurry-this.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/get-built-in.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/get-method.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/global.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/has-own-property.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/hidden-keys.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/html.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/ie8-dom-define.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/indexed-object.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/inherit-if-required.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/inspect-source.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/internal-state.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-array.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-big-int-array.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-callable.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-forced.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-null-or-undefined.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-object.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-pure.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/is-symbol.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/length-of-array-like.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/make-built-in.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/math-trunc.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/normalize-string-argument.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-define-property.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-get-own-property-names.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-is-prototype-of.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-keys-internal.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-property-is-enumerable.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/object-set-prototype-of.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/ordinary-to-primitive.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/own-keys.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/regexp-flags.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/require-object-coercible.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/schedulers-fix.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/shared-key.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/shared-store.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/shared.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/symbol-constructor-detection.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/task.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-absolute-index.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-big-int.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-indexed-object.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-integer-or-infinity.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-length.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-object.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-primitive.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-property-key.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-string-tag-support.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/to-string.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/try-to-string.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/uid.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/use-symbol-as-uid.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/v8-prototype-define-bug.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/validate-arguments-length.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/weak-map-basic-detection.js","webpack://metamasksdk_vuejs/./node_modules/core-js/internals/well-known-symbol.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/es.array.push.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/es.regexp.flags.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/es.typed-array.to-reversed.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/es.typed-array.to-sorted.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/es.typed-array.with.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.clear-immediate.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.dom-exception.stack.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.immediate.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.set-immediate.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.url-search-params.delete.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.url-search-params.has.js","webpack://metamasksdk_vuejs/./node_modules/core-js/modules/web.url-search-params.size.js","webpack://metamasksdk_vuejs/./node_modules/uuid/dist/esm-browser/rng.js","webpack://metamasksdk_vuejs/./node_modules/uuid/dist/esm-browser/regex.js","webpack://metamasksdk_vuejs/./node_modules/uuid/dist/esm-browser/validate.js","webpack://metamasksdk_vuejs/./node_modules/uuid/dist/esm-browser/stringify.js","webpack://metamasksdk_vuejs/./node_modules/uuid/dist/esm-browser/v4.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-parser/build/esm/commons.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-parser/build/esm/encodePacket.browser.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-parser/build/esm/decodePacket.browser.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-parser/build/esm/index.js","webpack://metamasksdk_vuejs/./node_modules/@socket.io/component-emitter/index.mjs","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/globalThis.browser.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/util.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/contrib/parseqs.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transport.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/contrib/yeast.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/contrib/has-cors.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transports/xmlhttprequest.browser.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transports/polling.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transports/websocket-constructor.browser.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transports/websocket.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transports/webtransport.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/transports/index.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/contrib/parseuri.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/socket.js","webpack://metamasksdk_vuejs/./node_modules/engine.io-client/build/esm/index.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-client/build/esm/url.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-parser/build/esm/is-binary.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-parser/build/esm/binary.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-parser/build/esm/index.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-client/build/esm/on.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-client/build/esm/socket.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-client/build/esm/contrib/backo2.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-client/build/esm/manager.js","webpack://metamasksdk_vuejs/./node_modules/socket.io-client/build/esm/index.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/_assert.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/utils.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/consts.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/config.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/crypto.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/webcrypto.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/_assert.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/crypto.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/utils.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/_md.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/_u64.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/sha512.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/utils.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/modular.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/curve.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/edwards.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/hash-to-curve.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/montgomery.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/ed25519.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/sha256.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/hmac.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/abstract/weierstrass.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/_shortw_utils.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/curves/secp256k1.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/utils/hex.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/utils/elliptic.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/hashes/hkdf.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/utils/hash.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/_polyval.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/aes.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@ecies/ciphers/dist/aes/noble.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/_arx.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/_poly1305.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@noble/ciphers/chacha.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/@ecies/ciphers/dist/chacha/noble.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/utils/index.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/utils/symmetric.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/keys/PublicKey.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/keys/PrivateKey.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/keys/index.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/node_modules/eciesjs/dist/index.js","webpack://metamasksdk_vuejs/../../../../sdk-communication-layer/dist/browser/es/metamask-sdk-communication-layer.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-I6HXGZRD.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-ZGDQ3IYD.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-5FL6VRJJ.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/json-rpc-engine/dist/chunk-6XXPTZV6.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/json-rpc-engine/dist/chunk-R7LKI5H5.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/json-rpc-engine/dist/chunk-XUI43LEZ.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/rpc-errors/dist/chunk-MIW4NMY6.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/utils/dist/chunk-H4YFDLB7.mjs","webpack://metamasksdk_vuejs/../../../node_modules/superstruct/dist/index.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/utils/dist/chunk-74DGVJVE.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/utils/dist/chunk-XYGUOY6N.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/utils/dist/chunk-6C35XQOF.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/rpc-errors/dist/chunk-MPU3CVX3.mjs","webpack://metamasksdk_vuejs/../../../node_modules/fast-safe-stringify/index.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/rpc-errors/dist/chunk-XSKO3GXZ.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/rpc-errors/dist/chunk-KYP27U3C.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/safe-event-emitter/index.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/json-rpc-engine/dist/chunk-5HCYV4FV.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-ZN7WV55J.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-55ZQ55PO.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-X66SUIEF.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/node_modules/@metamask/safe-event-emitter/dist/esm/index.mjs","webpack://metamasksdk_vuejs/../../../node_modules/fast-deep-equal/index.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-OGPA5Q76.mjs","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/destroy.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/errors-browser.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/state.js","webpack://metamasksdk_vuejs/../../../node_modules/util-deprecate/browser.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/_stream_writable.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/_stream_duplex.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/_stream_readable.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/_stream_transform.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/lib/_stream_passthrough.js","webpack://metamasksdk_vuejs/../../../node_modules/readable-stream/readable-browser.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/json-rpc-middleware-stream/dist/chunk-446QYOBP.mjs","webpack://metamasksdk_vuejs/../../../node_modules/wrappy/wrappy.js","webpack://metamasksdk_vuejs/../../../node_modules/once/once.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/object-multiplex/dist/Substream.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/object-multiplex/dist/ObjectMultiplex.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/object-multiplex/dist/index.js","webpack://metamasksdk_vuejs/../../../node_modules/is-stream/index.js","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-URMSZO7Z.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-UTROHXPT.mjs","webpack://metamasksdk_vuejs/../../../src/utils/logger.ts","webpack://metamasksdk_vuejs/../../../node_modules/eth-rpc-errors/dist/classes.js","webpack://metamasksdk_vuejs/../../../node_modules/eth-rpc-errors/dist/error-constants.js","webpack://metamasksdk_vuejs/../../../node_modules/eth-rpc-errors/dist/utils.js","webpack://metamasksdk_vuejs/../../../node_modules/eth-rpc-errors/dist/errors.js","webpack://metamasksdk_vuejs/../../../node_modules/eth-rpc-errors/dist/index.js","webpack://metamasksdk_vuejs/../../../src/config.ts","webpack://metamasksdk_vuejs/../../../src/storage-manager/StorageManagerWeb.ts","webpack://metamasksdk_vuejs/../../../src/storage-manager/getStorageManager.ts","webpack://metamasksdk_vuejs/../../../src/provider/SDKProvider.ts","webpack://metamasksdk_vuejs/../../../src/services/SDKProvider/ConnectionManager/handleDisconnect.ts","webpack://metamasksdk_vuejs/../../../src/services/SDKProvider/InitializationManager/initializeStateAsync.ts","webpack://metamasksdk_vuejs/../../../src/services/SDKProvider/InitializationManager/initializeState.ts","webpack://metamasksdk_vuejs/../../../src/services/SDKProvider/ChainManager/handleChainChanged.ts","webpack://metamasksdk_vuejs/../../../src/constants.ts","webpack://metamasksdk_vuejs/../../../src/types/MetaMaskSDKEvents.ts","webpack://metamasksdk_vuejs/../../../src/types/ProviderUpdateType.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/ConnectionManager/terminate.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/ConnectionManager/connectAndSign.ts","webpack://metamasksdk_vuejs/../../../src/utils/hex.utils.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/ProviderManager/connectWithExtensionProvider.ts","webpack://metamasksdk_vuejs/../../../src/utils/base64.ts","webpack://metamasksdk_vuejs/../../../src/services/Ethereum.ts","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-LF2KN6ZT.mjs","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/providers/dist/chunk-F2Z5ZMH3.mjs","webpack://metamasksdk_vuejs/../../../src/services/RemoteCommunicationPostMessageStream/write.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteCommunicationPostMessageStream/extractMethod.ts","webpack://metamasksdk_vuejs/../../../src/PostMessageStream/RemoteCommunicationPostMessageStream.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteCommunicationPostMessageStream/onMessage.ts","webpack://metamasksdk_vuejs/../../../src/services/rpc-requests/RPCRequestHandler.ts","webpack://metamasksdk_vuejs/../../../src/utils/wait.ts","webpack://metamasksdk_vuejs/../../../src/provider/initializeMobileProvider.ts","webpack://metamasksdk_vuejs/../../../src/PostMessageStream/getPostMessageStream.ts","webpack://metamasksdk_vuejs/../../../src/provider/extensionConnectWithOverwrite.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/initializeProviderAndEventListeners.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/initEventListeners.ts","webpack://metamasksdk_vuejs/../../../src/services/Analytics.ts","webpack://metamasksdk_vuejs/../../../src/utils/extractFavicon.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupDappMetadata.ts","webpack://metamasksdk_vuejs/../../../src/provider/extensionProviderHelpers/handleUuid.ts","webpack://metamasksdk_vuejs/../../../src/provider/extensionProviderHelpers/handleBatchMethod.ts","webpack://metamasksdk_vuejs/../../../src/provider/wrapExtensionProvider.ts","webpack://metamasksdk_vuejs/../../../src/provider/extensionProviderHelpers/handleConnectSignMethod.ts","webpack://metamasksdk_vuejs/../../../src/provider/extensionProviderHelpers/handleConnectWithMethod.ts","webpack://metamasksdk_vuejs/../../../src/utils/eip6963RequestProvider.ts","webpack://metamasksdk_vuejs/../../../src/utils/get-browser-extension.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupInfuraProvider.ts","webpack://metamasksdk_vuejs/../../../node_modules/bowser/es5.js","webpack://metamasksdk_vuejs/../../../src/Platform/PlatfformManager.ts","webpack://metamasksdk_vuejs/../../../src/services/PlatfformManager/openDeeplink.ts","webpack://metamasksdk_vuejs/../../../src/services/PlatfformManager/isMetaMaskInstalled.ts","webpack://metamasksdk_vuejs/../../../src/services/PlatfformManager/getPlatformType.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupReadOnlyRPCProviders.ts","webpack://metamasksdk_vuejs/../../../node_modules/@metamask/onboarding/dist/metamask-onboarding.es.js","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskInstaller/startInstaller.ts","webpack://metamasksdk_vuejs/../../../src/Platform/MetaMaskInstaller.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskInstaller/startDesktopOnboarding.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskInstaller/redirectToProperInstall.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskInstaller/checkInstallation.ts","webpack://metamasksdk_vuejs/../../../src/ui/InstallModal/Modal-web.ts","webpack://metamasksdk_vuejs/../../../src/ui/InstallModal/InstallModal-web.ts","webpack://metamasksdk_vuejs/../../../src/ui/InstallModal/pendingModal-web.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ConnectionInitializer/initializeConnector.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/EventListeners/cleanupListeners.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ConnectionManager/connectWithModalInstaller.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ModalManager/showInstallModal.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/EventListeners/setupListeners.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ConnectionManager/startConnection.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ConnectionManager/connectWithDeeplink.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/RemoteConnection.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ModalManager/showActiveModal.ts","webpack://metamasksdk_vuejs/../../../src/services/RemoteConnection/ConnectionInitializer/cleanupConnector.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/performSDKInitialization.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupPlatformManager.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupAnalytics.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupStorage.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupExtensionPreferences.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/setupRemoteConnectionAndInstaller.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/handleAutoAndExtensionConnections.ts","webpack://metamasksdk_vuejs/../../../src/sdk.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/InitializerManager/initializeMetaMaskSDK.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/ConnectionManager/connect.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/ConnectionManager/connectWith.ts","webpack://metamasksdk_vuejs/../../../src/services/MetaMaskSDK/ConnectionManager/resume.ts","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/index-a83c417f.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/loader/index.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/loader.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/simple-i18n-50218fcb.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/index-f0bfb0c3.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/mm-install-modal.entry.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/mm-pending-modal.entry.js","webpack://metamasksdk_vuejs/../../../../sdk-install-modal-web/dist/esm/mm-select-modal.entry.js","webpack://metamasksdk_vuejs/./node_modules/@vue/reactivity/dist/reactivity.esm-bundler.js","webpack://metamasksdk_vuejs/./node_modules/@vue/runtime-core/dist/runtime-core.esm-bundler.js","webpack://metamasksdk_vuejs/./node_modules/@vue/runtime-dom/dist/runtime-dom.esm-bundler.js","webpack://metamasksdk_vuejs/./node_modules/@vue/shared/dist/shared.esm-bundler.js","webpack://metamasksdk_vuejs/./node_modules/base64-js/index.js","webpack://metamasksdk_vuejs/./node_modules/buffer/index.js","webpack://metamasksdk_vuejs/./node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://metamasksdk_vuejs/./node_modules/debug/node_modules/ms/index.js","webpack://metamasksdk_vuejs/./node_modules/debug/src/browser.js","webpack://metamasksdk_vuejs/./node_modules/debug/src/common.js","webpack://metamasksdk_vuejs/./node_modules/eventemitter2/lib/eventemitter2.js","webpack://metamasksdk_vuejs/./node_modules/ieee754/index.js","webpack://metamasksdk_vuejs/./node_modules/vue-loader/dist/exportHelper.js"],"sourcesContent":["'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\n// eslint-disable-next-line es/no-typed-arrays -- safe\nmodule.exports = typeof ArrayBuffer != 'undefined' && typeof DataView != 'undefined';\n","'use strict';\nvar NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-basic-detection');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar classof = require('../internals/classof');\nvar tryToString = require('../internals/try-to-string');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar uid = require('../internals/uid');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar Int8Array = global.Int8Array;\nvar Int8ArrayPrototype = Int8Array && Int8Array.prototype;\nvar Uint8ClampedArray = global.Uint8ClampedArray;\nvar Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype;\nvar TypedArray = Int8Array && getPrototypeOf(Int8Array);\nvar TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype);\nvar ObjectPrototype = Object.prototype;\nvar TypeError = global.TypeError;\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');\nvar TYPED_ARRAY_CONSTRUCTOR = 'TypedArrayConstructor';\n// Fixing native typed arrays in Opera Presto crashes the browser, see #595\nvar NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';\nvar TYPED_ARRAY_TAG_REQUIRED = false;\nvar NAME, Constructor, Prototype;\n\nvar TypedArrayConstructorsList = {\n Int8Array: 1,\n Uint8Array: 1,\n Uint8ClampedArray: 1,\n Int16Array: 2,\n Uint16Array: 2,\n Int32Array: 4,\n Uint32Array: 4,\n Float32Array: 4,\n Float64Array: 8\n};\n\nvar BigIntArrayConstructorsList = {\n BigInt64Array: 8,\n BigUint64Array: 8\n};\n\nvar isView = function isView(it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return klass === 'DataView'\n || hasOwn(TypedArrayConstructorsList, klass)\n || hasOwn(BigIntArrayConstructorsList, klass);\n};\n\nvar getTypedArrayConstructor = function (it) {\n var proto = getPrototypeOf(it);\n if (!isObject(proto)) return;\n var state = getInternalState(proto);\n return (state && hasOwn(state, TYPED_ARRAY_CONSTRUCTOR)) ? state[TYPED_ARRAY_CONSTRUCTOR] : getTypedArrayConstructor(proto);\n};\n\nvar isTypedArray = function (it) {\n if (!isObject(it)) return false;\n var klass = classof(it);\n return hasOwn(TypedArrayConstructorsList, klass)\n || hasOwn(BigIntArrayConstructorsList, klass);\n};\n\nvar aTypedArray = function (it) {\n if (isTypedArray(it)) return it;\n throw TypeError('Target is not a typed array');\n};\n\nvar aTypedArrayConstructor = function (C) {\n if (isCallable(C) && (!setPrototypeOf || isPrototypeOf(TypedArray, C))) return C;\n throw TypeError(tryToString(C) + ' is not a typed array constructor');\n};\n\nvar exportTypedArrayMethod = function (KEY, property, forced, options) {\n if (!DESCRIPTORS) return;\n if (forced) for (var ARRAY in TypedArrayConstructorsList) {\n var TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && hasOwn(TypedArrayConstructor.prototype, KEY)) try {\n delete TypedArrayConstructor.prototype[KEY];\n } catch (error) {\n // old WebKit bug - some methods are non-configurable\n try {\n TypedArrayConstructor.prototype[KEY] = property;\n } catch (error2) { /* empty */ }\n }\n }\n if (!TypedArrayPrototype[KEY] || forced) {\n defineBuiltIn(TypedArrayPrototype, KEY, forced ? property\n : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property, options);\n }\n};\n\nvar exportTypedArrayStaticMethod = function (KEY, property, forced) {\n var ARRAY, TypedArrayConstructor;\n if (!DESCRIPTORS) return;\n if (setPrototypeOf) {\n if (forced) for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && hasOwn(TypedArrayConstructor, KEY)) try {\n delete TypedArrayConstructor[KEY];\n } catch (error) { /* empty */ }\n }\n if (!TypedArray[KEY] || forced) {\n // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable\n try {\n return defineBuiltIn(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && TypedArray[KEY] || property);\n } catch (error) { /* empty */ }\n } else return;\n }\n for (ARRAY in TypedArrayConstructorsList) {\n TypedArrayConstructor = global[ARRAY];\n if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {\n defineBuiltIn(TypedArrayConstructor, KEY, property);\n }\n }\n};\n\nfor (NAME in TypedArrayConstructorsList) {\n Constructor = global[NAME];\n Prototype = Constructor && Constructor.prototype;\n if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;\n else NATIVE_ARRAY_BUFFER_VIEWS = false;\n}\n\nfor (NAME in BigIntArrayConstructorsList) {\n Constructor = global[NAME];\n Prototype = Constructor && Constructor.prototype;\n if (Prototype) enforceInternalState(Prototype)[TYPED_ARRAY_CONSTRUCTOR] = Constructor;\n}\n\n// WebKit bug - typed arrays constructors prototype is Object.prototype\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !isCallable(TypedArray) || TypedArray === Function.prototype) {\n // eslint-disable-next-line no-shadow -- safe\n TypedArray = function TypedArray() {\n throw TypeError('Incorrect invocation');\n };\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME], TypedArray);\n }\n}\n\nif (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) {\n TypedArrayPrototype = TypedArray.prototype;\n if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) {\n if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype);\n }\n}\n\n// WebKit bug - one more object in Uint8ClampedArray prototype chain\nif (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) {\n setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype);\n}\n\nif (DESCRIPTORS && !hasOwn(TypedArrayPrototype, TO_STRING_TAG)) {\n TYPED_ARRAY_TAG_REQUIRED = true;\n defineBuiltInAccessor(TypedArrayPrototype, TO_STRING_TAG, {\n configurable: true,\n get: function () {\n return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;\n }\n });\n for (NAME in TypedArrayConstructorsList) if (global[NAME]) {\n createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);\n }\n}\n\nmodule.exports = {\n NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,\n TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQUIRED && TYPED_ARRAY_TAG,\n aTypedArray: aTypedArray,\n aTypedArrayConstructor: aTypedArrayConstructor,\n exportTypedArrayMethod: exportTypedArrayMethod,\n exportTypedArrayStaticMethod: exportTypedArrayStaticMethod,\n getTypedArrayConstructor: getTypedArrayConstructor,\n isView: isView,\n isTypedArray: isTypedArray,\n TypedArray: TypedArray,\n TypedArrayPrototype: TypedArrayPrototype\n};\n","'use strict';\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\nmodule.exports = function (Constructor, list) {\n var index = 0;\n var length = lengthOfArrayLike(list);\n var result = new Constructor(length);\n while (length > index) result[index] = list[index++];\n return result;\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar isArray = require('../internals/is-array');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Safari < 13 does not throw an error in this case\nvar SILENT_ON_NON_WRITABLE_LENGTH_SET = DESCRIPTORS && !function () {\n // makes no sense without proper strict mode support\n if (this !== undefined) return true;\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).length = 1;\n } catch (error) {\n return error instanceof TypeError;\n }\n}();\n\nmodule.exports = SILENT_ON_NON_WRITABLE_LENGTH_SET ? function (O, length) {\n if (isArray(O) && !getOwnPropertyDescriptor(O, 'length').writable) {\n throw $TypeError('Cannot set read only .length');\n } return O.length = length;\n} : function (O, length) {\n return O.length = length;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.toReversed\n// https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.toReversed\nmodule.exports = function (O, C) {\n var len = lengthOfArrayLike(O);\n var A = new C(len);\n var k = 0;\n for (; k < len; k++) A[k] = O[len - k - 1];\n return A;\n};\n","'use strict';\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar $RangeError = RangeError;\n\n// https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.with\n// https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.with\nmodule.exports = function (O, C, index, value) {\n var len = lengthOfArrayLike(O);\n var relativeIndex = toIntegerOrInfinity(index);\n var actualIndex = relativeIndex < 0 ? len + relativeIndex : relativeIndex;\n if (actualIndex >= len || actualIndex < 0) throw $RangeError('Incorrect index');\n var A = new C(len);\n var k = 0;\n for (; k < len; k++) A[k] = k === actualIndex ? value : O[k];\n return A;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nmodule.exports = {\n IndexSizeError: { s: 'INDEX_SIZE_ERR', c: 1, m: 1 },\n DOMStringSizeError: { s: 'DOMSTRING_SIZE_ERR', c: 2, m: 0 },\n HierarchyRequestError: { s: 'HIERARCHY_REQUEST_ERR', c: 3, m: 1 },\n WrongDocumentError: { s: 'WRONG_DOCUMENT_ERR', c: 4, m: 1 },\n InvalidCharacterError: { s: 'INVALID_CHARACTER_ERR', c: 5, m: 1 },\n NoDataAllowedError: { s: 'NO_DATA_ALLOWED_ERR', c: 6, m: 0 },\n NoModificationAllowedError: { s: 'NO_MODIFICATION_ALLOWED_ERR', c: 7, m: 1 },\n NotFoundError: { s: 'NOT_FOUND_ERR', c: 8, m: 1 },\n NotSupportedError: { s: 'NOT_SUPPORTED_ERR', c: 9, m: 1 },\n InUseAttributeError: { s: 'INUSE_ATTRIBUTE_ERR', c: 10, m: 1 },\n InvalidStateError: { s: 'INVALID_STATE_ERR', c: 11, m: 1 },\n SyntaxError: { s: 'SYNTAX_ERR', c: 12, m: 1 },\n InvalidModificationError: { s: 'INVALID_MODIFICATION_ERR', c: 13, m: 1 },\n NamespaceError: { s: 'NAMESPACE_ERR', c: 14, m: 1 },\n InvalidAccessError: { s: 'INVALID_ACCESS_ERR', c: 15, m: 1 },\n ValidationError: { s: 'VALIDATION_ERR', c: 16, m: 0 },\n TypeMismatchError: { s: 'TYPE_MISMATCH_ERR', c: 17, m: 1 },\n SecurityError: { s: 'SECURITY_ERR', c: 18, m: 1 },\n NetworkError: { s: 'NETWORK_ERR', c: 19, m: 1 },\n AbortError: { s: 'ABORT_ERR', c: 20, m: 1 },\n URLMismatchError: { s: 'URL_MISMATCH_ERR', c: 21, m: 1 },\n QuotaExceededError: { s: 'QUOTA_EXCEEDED_ERR', c: 22, m: 1 },\n TimeoutError: { s: 'TIMEOUT_ERR', c: 23, m: 1 },\n InvalidNodeTypeError: { s: 'INVALID_NODE_TYPE_ERR', c: 24, m: 1 },\n DataCloneError: { s: 'DATA_CLONE_ERR', c: 25, m: 1 }\n};\n","'use strict';\n/* global Bun -- Deno case */\nmodule.exports = typeof Bun == 'function' && Bun && typeof Bun.version == 'string';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar $Error = Error;\nvar replace = uncurryThis(''.replace);\n\nvar TEST = (function (arg) { return String($Error(arg).stack); })('zxcasd');\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar V8_OR_CHAKRA_STACK_ENTRY = /\\n\\s*at [^:]*:[^\\n]*/;\nvar IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);\n\nmodule.exports = function (stack, dropEntries) {\n if (IS_V8_OR_CHAKRA_STACK && typeof stack == 'string' && !$Error.prepareStackTrace) {\n while (dropEntries--) stack = replace(stack, V8_OR_CHAKRA_STACK_ENTRY, '');\n } return stack;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || this || Function('return this')();\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar classof = require('../internals/classof');\n\nmodule.exports = function (it) {\n var klass = classof(it);\n return klass === 'BigInt64Array' || klass === 'BigUint64Array';\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nmodule.exports = false;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar toString = require('../internals/to-string');\n\nmodule.exports = function (argument, $default) {\n return argument === undefined ? arguments.length < 2 ? '' : $default : toString(argument);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar isCallable = require('../internals/is-callable');\nvar ENGINE_IS_BUN = require('../internals/engine-is-bun');\nvar USER_AGENT = require('../internals/engine-user-agent');\nvar arraySlice = require('../internals/array-slice');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\n\nvar Function = global.Function;\n// dirty IE9- and Bun 0.3.0- checks\nvar WRAP = /MSIE .\\./.test(USER_AGENT) || ENGINE_IS_BUN && (function () {\n var version = global.Bun.version.split('.');\n return version.length < 3 || version[0] === '0' && (version[1] < 3 || version[1] === '3' && version[2] === '0');\n})();\n\n// IE9- / Bun 0.3.0- setTimeout / setInterval / setImmediate additional parameters fix\n// https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#timers\n// https://github.com/oven-sh/bun/issues/1633\nmodule.exports = function (scheduler, hasTimeArg) {\n var firstParamIndex = hasTimeArg ? 2 : 1;\n return WRAP ? function (handler, timeout /* , ...arguments */) {\n var boundArgs = validateArgumentsLength(arguments.length, 1) > firstParamIndex;\n var fn = isCallable(handler) ? handler : Function(handler);\n var params = boundArgs ? arraySlice(arguments, firstParamIndex) : [];\n var callback = boundArgs ? function () {\n apply(fn, this, params);\n } : fn;\n return hasTimeArg ? scheduler(callback, timeout) : scheduler(callback);\n } : scheduler;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.32.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.32.1/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\n\nvar $TypeError = TypeError;\n\n// `ToBigInt` abstract operation\n// https://tc39.es/ecma262/#sec-tobigint\nmodule.exports = function (argument) {\n var prim = toPrimitive(argument, 'number');\n if (typeof prim == 'number') throw $TypeError(\"Can't convert number to bigint\");\n // eslint-disable-next-line es/no-bigint -- safe\n return BigInt(prim);\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar setArrayLength = require('../internals/array-set-length');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar fails = require('../internals/fails');\n\nvar INCORRECT_TO_LENGTH = fails(function () {\n return [].push.call({ length: 0x100000000 }, 1) !== 4294967297;\n});\n\n// V8 and Safari <= 15.4, FF < 23 throws InternalError\n// https://bugs.chromium.org/p/v8/issues/detail?id=12681\nvar properErrorOnNonWritableLength = function () {\n try {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty([], 'length', { writable: false }).push();\n } catch (error) {\n return error instanceof TypeError;\n }\n};\n\nvar FORCED = INCORRECT_TO_LENGTH || !properErrorOnNonWritableLength();\n\n// `Array.prototype.push` method\n// https://tc39.es/ecma262/#sec-array.prototype.push\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n push: function push(item) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var argCount = arguments.length;\n doesNotExceedSafeInteger(len + argCount);\n for (var i = 0; i < argCount; i++) {\n O[len] = arguments[i];\n len++;\n }\n setArrayLength(O, len);\n return len;\n }\n});\n","'use strict';\nvar global = require('../internals/global');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar regExpFlags = require('../internals/regexp-flags');\nvar fails = require('../internals/fails');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 'd') -> /./d and it causes SyntaxError\nvar RegExp = global.RegExp;\nvar RegExpPrototype = RegExp.prototype;\n\nvar FORCED = DESCRIPTORS && fails(function () {\n var INDICES_SUPPORT = true;\n try {\n RegExp('.', 'd');\n } catch (error) {\n INDICES_SUPPORT = false;\n }\n\n var O = {};\n // modern V8 bug\n var calls = '';\n var expected = INDICES_SUPPORT ? 'dgimsy' : 'gimsy';\n\n var addGetter = function (key, chr) {\n // eslint-disable-next-line es/no-object-defineproperty -- safe\n Object.defineProperty(O, key, { get: function () {\n calls += chr;\n return true;\n } });\n };\n\n var pairs = {\n dotAll: 's',\n global: 'g',\n ignoreCase: 'i',\n multiline: 'm',\n sticky: 'y'\n };\n\n if (INDICES_SUPPORT) pairs.hasIndices = 'd';\n\n for (var key in pairs) addGetter(key, pairs[key]);\n\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n var result = Object.getOwnPropertyDescriptor(RegExpPrototype, 'flags').get.call(O);\n\n return result !== expected || calls !== expected;\n});\n\n// `RegExp.prototype.flags` getter\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nif (FORCED) defineBuiltInAccessor(RegExpPrototype, 'flags', {\n configurable: true,\n get: regExpFlags\n});\n","'use strict';\nvar arrayToReversed = require('../internals/array-to-reversed');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\n\n// `%TypedArray%.prototype.toReversed` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.toreversed\nexportTypedArrayMethod('toReversed', function toReversed() {\n return arrayToReversed(aTypedArray(this), getTypedArrayConstructor(this));\n});\n","'use strict';\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\nvar sort = uncurryThis(ArrayBufferViewCore.TypedArrayPrototype.sort);\n\n// `%TypedArray%.prototype.toSorted` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tosorted\nexportTypedArrayMethod('toSorted', function toSorted(compareFn) {\n if (compareFn !== undefined) aCallable(compareFn);\n var O = aTypedArray(this);\n var A = arrayFromConstructorAndList(getTypedArrayConstructor(O), O);\n return sort(A, compareFn);\n});\n","'use strict';\nvar arrayWith = require('../internals/array-with');\nvar ArrayBufferViewCore = require('../internals/array-buffer-view-core');\nvar isBigIntArray = require('../internals/is-big-int-array');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toBigInt = require('../internals/to-big-int');\n\nvar aTypedArray = ArrayBufferViewCore.aTypedArray;\nvar getTypedArrayConstructor = ArrayBufferViewCore.getTypedArrayConstructor;\nvar exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;\n\nvar PROPER_ORDER = !!function () {\n try {\n // eslint-disable-next-line no-throw-literal, es/no-typed-arrays, es/no-array-prototype-with -- required for testing\n new Int8Array(1)['with'](2, { valueOf: function () { throw 8; } });\n } catch (error) {\n // some early implementations, like WebKit, does not follow the final semantic\n // https://github.com/tc39/proposal-change-array-by-copy/pull/86\n return error === 8;\n }\n}();\n\n// `%TypedArray%.prototype.with` method\n// https://tc39.es/ecma262/#sec-%typedarray%.prototype.with\nexportTypedArrayMethod('with', { 'with': function (index, value) {\n var O = aTypedArray(this);\n var relativeIndex = toIntegerOrInfinity(index);\n var actualValue = isBigIntArray(O) ? toBigInt(value) : +value;\n return arrayWith(O, getTypedArrayConstructor(O), relativeIndex, actualValue);\n} }['with'], !PROPER_ORDER);\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar clearImmediate = require('../internals/task').clear;\n\n// `clearImmediate` method\n// http://w3c.github.io/setImmediate/#si-clearImmediate\n$({ global: true, bind: true, enumerable: true, forced: global.clearImmediate !== clearImmediate }, {\n clearImmediate: clearImmediate\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar getBuiltIn = require('../internals/get-built-in');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar anInstance = require('../internals/an-instance');\nvar inheritIfRequired = require('../internals/inherit-if-required');\nvar normalizeStringArgument = require('../internals/normalize-string-argument');\nvar DOMExceptionConstants = require('../internals/dom-exception-constants');\nvar clearErrorStack = require('../internals/error-stack-clear');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IS_PURE = require('../internals/is-pure');\n\nvar DOM_EXCEPTION = 'DOMException';\nvar Error = getBuiltIn('Error');\nvar NativeDOMException = getBuiltIn(DOM_EXCEPTION);\n\nvar $DOMException = function DOMException() {\n anInstance(this, DOMExceptionPrototype);\n var argumentsLength = arguments.length;\n var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);\n var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');\n var that = new NativeDOMException(message, name);\n var error = Error(message);\n error.name = DOM_EXCEPTION;\n defineProperty(that, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));\n inheritIfRequired(that, this, $DOMException);\n return that;\n};\n\nvar DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;\n\nvar ERROR_HAS_STACK = 'stack' in Error(DOM_EXCEPTION);\nvar DOM_EXCEPTION_HAS_STACK = 'stack' in new NativeDOMException(1, 2);\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar descriptor = NativeDOMException && DESCRIPTORS && Object.getOwnPropertyDescriptor(global, DOM_EXCEPTION);\n\n// Bun ~ 0.1.1 DOMException have incorrect descriptor and we can't redefine it\n// https://github.com/Jarred-Sumner/bun/issues/399\nvar BUGGY_DESCRIPTOR = !!descriptor && !(descriptor.writable && descriptor.configurable);\n\nvar FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !BUGGY_DESCRIPTOR && !DOM_EXCEPTION_HAS_STACK;\n\n// `DOMException` constructor patch for `.stack` where it's required\n// https://webidl.spec.whatwg.org/#es-DOMException-specialness\n$({ global: true, constructor: true, forced: IS_PURE || FORCED_CONSTRUCTOR }, { // TODO: fix export logic\n DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException\n});\n\nvar PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);\nvar PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;\n\nif (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {\n if (!IS_PURE) {\n defineProperty(PolyfilledDOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, PolyfilledDOMException));\n }\n\n for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {\n var constant = DOMExceptionConstants[key];\n var constantName = constant.s;\n if (!hasOwn(PolyfilledDOMException, constantName)) {\n defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));\n }\n }\n}\n","'use strict';\n// TODO: Remove this module from `core-js@4` since it's split to modules listed below\nrequire('../modules/web.clear-immediate');\nrequire('../modules/web.set-immediate');\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar setTask = require('../internals/task').set;\nvar schedulersFix = require('../internals/schedulers-fix');\n\n// https://github.com/oven-sh/bun/issues/1633\nvar setImmediate = global.setImmediate ? schedulersFix(setTask, false) : setTask;\n\n// `setImmediate` method\n// http://w3c.github.io/setImmediate/#si-setImmediate\n$({ global: true, bind: true, enumerable: true, forced: global.setImmediate !== setImmediate }, {\n setImmediate: setImmediate\n});\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\n\nvar $URLSearchParams = URLSearchParams;\nvar URLSearchParamsPrototype = $URLSearchParams.prototype;\nvar append = uncurryThis(URLSearchParamsPrototype.append);\nvar $delete = uncurryThis(URLSearchParamsPrototype['delete']);\nvar forEach = uncurryThis(URLSearchParamsPrototype.forEach);\nvar push = uncurryThis([].push);\nvar params = new $URLSearchParams('a=1&a=2&b=3');\n\nparams['delete']('a', 1);\n// `undefined` case is a Chromium 117 bug\n// https://bugs.chromium.org/p/v8/issues/detail?id=14222\nparams['delete']('b', undefined);\n\nif (params + '' !== 'a=2') {\n defineBuiltIn(URLSearchParamsPrototype, 'delete', function (name /* , value */) {\n var length = arguments.length;\n var $value = length < 2 ? undefined : arguments[1];\n if (length && $value === undefined) return $delete(this, name);\n var entries = [];\n forEach(this, function (v, k) { // also validates `this`\n push(entries, { key: k, value: v });\n });\n validateArgumentsLength(length, 1);\n var key = toString(name);\n var value = toString($value);\n var index = 0;\n var dindex = 0;\n var found = false;\n var entriesLength = entries.length;\n var entry;\n while (index < entriesLength) {\n entry = entries[index++];\n if (found || entry.key === key) {\n found = true;\n $delete(this, entry.key);\n } else dindex++;\n }\n while (dindex < entriesLength) {\n entry = entries[dindex++];\n if (!(entry.key === key && entry.value === value)) append(this, entry.key, entry.value);\n }\n }, { enumerable: true, unsafe: true });\n}\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\n\nvar $URLSearchParams = URLSearchParams;\nvar URLSearchParamsPrototype = $URLSearchParams.prototype;\nvar getAll = uncurryThis(URLSearchParamsPrototype.getAll);\nvar $has = uncurryThis(URLSearchParamsPrototype.has);\nvar params = new $URLSearchParams('a=1');\n\n// `undefined` case is a Chromium 117 bug\n// https://bugs.chromium.org/p/v8/issues/detail?id=14222\nif (params.has('a', 2) || !params.has('a', undefined)) {\n defineBuiltIn(URLSearchParamsPrototype, 'has', function has(name /* , value */) {\n var length = arguments.length;\n var $value = length < 2 ? undefined : arguments[1];\n if (length && $value === undefined) return $has(this, name);\n var values = getAll(this, name); // also validates `this`\n validateArgumentsLength(length, 1);\n var value = toString($value);\n var index = 0;\n while (index < values.length) {\n if (values[index++] === value) return true;\n } return false;\n }, { enumerable: true, unsafe: true });\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar URLSearchParamsPrototype = URLSearchParams.prototype;\nvar forEach = uncurryThis(URLSearchParamsPrototype.forEach);\n\n// `URLSearchParams.prototype.size` getter\n// https://github.com/whatwg/url/pull/734\nif (DESCRIPTORS && !('size' in URLSearchParamsPrototype)) {\n defineBuiltInAccessor(URLSearchParamsPrototype, 'size', {\n get: function size() {\n var count = 0;\n forEach(this, function () { count++; });\n return count;\n },\n configurable: true,\n enumerable: true\n });\n}\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nvar getRandomValues;\nvar rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation. Also,\n // find the complete implementation of crypto (msCrypto) on IE11.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nvar byteToHex = [];\n\nfor (var i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (var i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","const PACKET_TYPES = Object.create(null); // no Map = no polyfill\nPACKET_TYPES[\"open\"] = \"0\";\nPACKET_TYPES[\"close\"] = \"1\";\nPACKET_TYPES[\"ping\"] = \"2\";\nPACKET_TYPES[\"pong\"] = \"3\";\nPACKET_TYPES[\"message\"] = \"4\";\nPACKET_TYPES[\"upgrade\"] = \"5\";\nPACKET_TYPES[\"noop\"] = \"6\";\nconst PACKET_TYPES_REVERSE = Object.create(null);\nObject.keys(PACKET_TYPES).forEach(key => {\n PACKET_TYPES_REVERSE[PACKET_TYPES[key]] = key;\n});\nconst ERROR_PACKET = { type: \"error\", data: \"parser error\" };\nexport { PACKET_TYPES, PACKET_TYPES_REVERSE, ERROR_PACKET };\n","import { PACKET_TYPES } from \"./commons.js\";\nconst withNativeBlob = typeof Blob === \"function\" ||\n (typeof Blob !== \"undefined\" &&\n Object.prototype.toString.call(Blob) === \"[object BlobConstructor]\");\nconst withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\n// ArrayBuffer.isView method is not defined in IE10\nconst isView = obj => {\n return typeof ArrayBuffer.isView === \"function\"\n ? ArrayBuffer.isView(obj)\n : obj && obj.buffer instanceof ArrayBuffer;\n};\nconst encodePacket = ({ type, data }, supportsBinary, callback) => {\n if (withNativeBlob && data instanceof Blob) {\n if (supportsBinary) {\n return callback(data);\n }\n else {\n return encodeBlobAsBase64(data, callback);\n }\n }\n else if (withNativeArrayBuffer &&\n (data instanceof ArrayBuffer || isView(data))) {\n if (supportsBinary) {\n return callback(data);\n }\n else {\n return encodeBlobAsBase64(new Blob([data]), callback);\n }\n }\n // plain string\n return callback(PACKET_TYPES[type] + (data || \"\"));\n};\nconst encodeBlobAsBase64 = (data, callback) => {\n const fileReader = new FileReader();\n fileReader.onload = function () {\n const content = fileReader.result.split(\",\")[1];\n callback(\"b\" + (content || \"\"));\n };\n return fileReader.readAsDataURL(data);\n};\nfunction toArray(data) {\n if (data instanceof Uint8Array) {\n return data;\n }\n else if (data instanceof ArrayBuffer) {\n return new Uint8Array(data);\n }\n else {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength);\n }\n}\nlet TEXT_ENCODER;\nexport function encodePacketToBinary(packet, callback) {\n if (withNativeBlob && packet.data instanceof Blob) {\n return packet.data\n .arrayBuffer()\n .then(toArray)\n .then(callback);\n }\n else if (withNativeArrayBuffer &&\n (packet.data instanceof ArrayBuffer || isView(packet.data))) {\n return callback(toArray(packet.data));\n }\n encodePacket(packet, false, encoded => {\n if (!TEXT_ENCODER) {\n TEXT_ENCODER = new TextEncoder();\n }\n callback(TEXT_ENCODER.encode(encoded));\n });\n}\nexport { encodePacket };\n","// imported from https://github.com/socketio/base64-arraybuffer\nconst chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';\n// Use a lookup table to find the index.\nconst lookup = typeof Uint8Array === 'undefined' ? [] : new Uint8Array(256);\nfor (let i = 0; i < chars.length; i++) {\n lookup[chars.charCodeAt(i)] = i;\n}\nexport const encode = (arraybuffer) => {\n let bytes = new Uint8Array(arraybuffer), i, len = bytes.length, base64 = '';\n for (i = 0; i < len; i += 3) {\n base64 += chars[bytes[i] >> 2];\n base64 += chars[((bytes[i] & 3) << 4) | (bytes[i + 1] >> 4)];\n base64 += chars[((bytes[i + 1] & 15) << 2) | (bytes[i + 2] >> 6)];\n base64 += chars[bytes[i + 2] & 63];\n }\n if (len % 3 === 2) {\n base64 = base64.substring(0, base64.length - 1) + '=';\n }\n else if (len % 3 === 1) {\n base64 = base64.substring(0, base64.length - 2) + '==';\n }\n return base64;\n};\nexport const decode = (base64) => {\n let bufferLength = base64.length * 0.75, len = base64.length, i, p = 0, encoded1, encoded2, encoded3, encoded4;\n if (base64[base64.length - 1] === '=') {\n bufferLength--;\n if (base64[base64.length - 2] === '=') {\n bufferLength--;\n }\n }\n const arraybuffer = new ArrayBuffer(bufferLength), bytes = new Uint8Array(arraybuffer);\n for (i = 0; i < len; i += 4) {\n encoded1 = lookup[base64.charCodeAt(i)];\n encoded2 = lookup[base64.charCodeAt(i + 1)];\n encoded3 = lookup[base64.charCodeAt(i + 2)];\n encoded4 = lookup[base64.charCodeAt(i + 3)];\n bytes[p++] = (encoded1 << 2) | (encoded2 >> 4);\n bytes[p++] = ((encoded2 & 15) << 4) | (encoded3 >> 2);\n bytes[p++] = ((encoded3 & 3) << 6) | (encoded4 & 63);\n }\n return arraybuffer;\n};\n","import { ERROR_PACKET, PACKET_TYPES_REVERSE } from \"./commons.js\";\nimport { decode } from \"./contrib/base64-arraybuffer.js\";\nconst withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\nexport const decodePacket = (encodedPacket, binaryType) => {\n if (typeof encodedPacket !== \"string\") {\n return {\n type: \"message\",\n data: mapBinary(encodedPacket, binaryType)\n };\n }\n const type = encodedPacket.charAt(0);\n if (type === \"b\") {\n return {\n type: \"message\",\n data: decodeBase64Packet(encodedPacket.substring(1), binaryType)\n };\n }\n const packetType = PACKET_TYPES_REVERSE[type];\n if (!packetType) {\n return ERROR_PACKET;\n }\n return encodedPacket.length > 1\n ? {\n type: PACKET_TYPES_REVERSE[type],\n data: encodedPacket.substring(1)\n }\n : {\n type: PACKET_TYPES_REVERSE[type]\n };\n};\nconst decodeBase64Packet = (data, binaryType) => {\n if (withNativeArrayBuffer) {\n const decoded = decode(data);\n return mapBinary(decoded, binaryType);\n }\n else {\n return { base64: true, data }; // fallback for old browsers\n }\n};\nconst mapBinary = (data, binaryType) => {\n switch (binaryType) {\n case \"blob\":\n if (data instanceof Blob) {\n // from WebSocket + binaryType \"blob\"\n return data;\n }\n else {\n // from HTTP long-polling or WebTransport\n return new Blob([data]);\n }\n case \"arraybuffer\":\n default:\n if (data instanceof ArrayBuffer) {\n // from HTTP long-polling (base64) or WebSocket + binaryType \"arraybuffer\"\n return data;\n }\n else {\n // from WebTransport (Uint8Array)\n return data.buffer;\n }\n }\n};\n","import { encodePacket, encodePacketToBinary } from \"./encodePacket.js\";\nimport { decodePacket } from \"./decodePacket.js\";\nimport { ERROR_PACKET } from \"./commons.js\";\nconst SEPARATOR = String.fromCharCode(30); // see https://en.wikipedia.org/wiki/Delimiter#ASCII_delimited_text\nconst encodePayload = (packets, callback) => {\n // some packets may be added to the array while encoding, so the initial length must be saved\n const length = packets.length;\n const encodedPackets = new Array(length);\n let count = 0;\n packets.forEach((packet, i) => {\n // force base64 encoding for binary packets\n encodePacket(packet, false, encodedPacket => {\n encodedPackets[i] = encodedPacket;\n if (++count === length) {\n callback(encodedPackets.join(SEPARATOR));\n }\n });\n });\n};\nconst decodePayload = (encodedPayload, binaryType) => {\n const encodedPackets = encodedPayload.split(SEPARATOR);\n const packets = [];\n for (let i = 0; i < encodedPackets.length; i++) {\n const decodedPacket = decodePacket(encodedPackets[i], binaryType);\n packets.push(decodedPacket);\n if (decodedPacket.type === \"error\") {\n break;\n }\n }\n return packets;\n};\nexport function createPacketEncoderStream() {\n return new TransformStream({\n transform(packet, controller) {\n encodePacketToBinary(packet, encodedPacket => {\n const payloadLength = encodedPacket.length;\n let header;\n // inspired by the WebSocket format: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_servers#decoding_payload_length\n if (payloadLength < 126) {\n header = new Uint8Array(1);\n new DataView(header.buffer).setUint8(0, payloadLength);\n }\n else if (payloadLength < 65536) {\n header = new Uint8Array(3);\n const view = new DataView(header.buffer);\n view.setUint8(0, 126);\n view.setUint16(1, payloadLength);\n }\n else {\n header = new Uint8Array(9);\n const view = new DataView(header.buffer);\n view.setUint8(0, 127);\n view.setBigUint64(1, BigInt(payloadLength));\n }\n // first bit indicates whether the payload is plain text (0) or binary (1)\n if (packet.data && typeof packet.data !== \"string\") {\n header[0] |= 0x80;\n }\n controller.enqueue(header);\n controller.enqueue(encodedPacket);\n });\n }\n });\n}\nlet TEXT_DECODER;\nfunction totalLength(chunks) {\n return chunks.reduce((acc, chunk) => acc + chunk.length, 0);\n}\nfunction concatChunks(chunks, size) {\n if (chunks[0].length === size) {\n return chunks.shift();\n }\n const buffer = new Uint8Array(size);\n let j = 0;\n for (let i = 0; i < size; i++) {\n buffer[i] = chunks[0][j++];\n if (j === chunks[0].length) {\n chunks.shift();\n j = 0;\n }\n }\n if (chunks.length && j < chunks[0].length) {\n chunks[0] = chunks[0].slice(j);\n }\n return buffer;\n}\nexport function createPacketDecoderStream(maxPayload, binaryType) {\n if (!TEXT_DECODER) {\n TEXT_DECODER = new TextDecoder();\n }\n const chunks = [];\n let state = 0 /* READ_HEADER */;\n let expectedLength = -1;\n let isBinary = false;\n return new TransformStream({\n transform(chunk, controller) {\n chunks.push(chunk);\n while (true) {\n if (state === 0 /* READ_HEADER */) {\n if (totalLength(chunks) < 1) {\n break;\n }\n const header = concatChunks(chunks, 1);\n isBinary = (header[0] & 0x80) === 0x80;\n expectedLength = header[0] & 0x7f;\n if (expectedLength < 126) {\n state = 3 /* READ_PAYLOAD */;\n }\n else if (expectedLength === 126) {\n state = 1 /* READ_EXTENDED_LENGTH_16 */;\n }\n else {\n state = 2 /* READ_EXTENDED_LENGTH_64 */;\n }\n }\n else if (state === 1 /* READ_EXTENDED_LENGTH_16 */) {\n if (totalLength(chunks) < 2) {\n break;\n }\n const headerArray = concatChunks(chunks, 2);\n expectedLength = new DataView(headerArray.buffer, headerArray.byteOffset, headerArray.length).getUint16(0);\n state = 3 /* READ_PAYLOAD */;\n }\n else if (state === 2 /* READ_EXTENDED_LENGTH_64 */) {\n if (totalLength(chunks) < 8) {\n break;\n }\n const headerArray = concatChunks(chunks, 8);\n const view = new DataView(headerArray.buffer, headerArray.byteOffset, headerArray.length);\n const n = view.getUint32(0);\n if (n > Math.pow(2, 53 - 32) - 1) {\n // the maximum safe integer in JavaScript is 2^53 - 1\n controller.enqueue(ERROR_PACKET);\n break;\n }\n expectedLength = n * Math.pow(2, 32) + view.getUint32(4);\n state = 3 /* READ_PAYLOAD */;\n }\n else {\n if (totalLength(chunks) < expectedLength) {\n break;\n }\n const data = concatChunks(chunks, expectedLength);\n controller.enqueue(decodePacket(isBinary ? data : TEXT_DECODER.decode(data), binaryType));\n state = 0 /* READ_HEADER */;\n }\n if (expectedLength === 0 || expectedLength > maxPayload) {\n controller.enqueue(ERROR_PACKET);\n break;\n }\n }\n }\n });\n}\nexport const protocol = 4;\nexport { encodePacket, encodePayload, decodePacket, decodePayload };\n","/**\n * Initialize a new `Emitter`.\n *\n * @api public\n */\n\nexport function Emitter(obj) {\n if (obj) return mixin(obj);\n}\n\n/**\n * Mixin the emitter properties.\n *\n * @param {Object} obj\n * @return {Object}\n * @api private\n */\n\nfunction mixin(obj) {\n for (var key in Emitter.prototype) {\n obj[key] = Emitter.prototype[key];\n }\n return obj;\n}\n\n/**\n * Listen on the given `event` with `fn`.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.on =\nEmitter.prototype.addEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n (this._callbacks['$' + event] = this._callbacks['$' + event] || [])\n .push(fn);\n return this;\n};\n\n/**\n * Adds an `event` listener that will be invoked a single\n * time then automatically removed.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.once = function(event, fn){\n function on() {\n this.off(event, on);\n fn.apply(this, arguments);\n }\n\n on.fn = fn;\n this.on(event, on);\n return this;\n};\n\n/**\n * Remove the given callback for `event` or all\n * registered callbacks.\n *\n * @param {String} event\n * @param {Function} fn\n * @return {Emitter}\n * @api public\n */\n\nEmitter.prototype.off =\nEmitter.prototype.removeListener =\nEmitter.prototype.removeAllListeners =\nEmitter.prototype.removeEventListener = function(event, fn){\n this._callbacks = this._callbacks || {};\n\n // all\n if (0 == arguments.length) {\n this._callbacks = {};\n return this;\n }\n\n // specific event\n var callbacks = this._callbacks['$' + event];\n if (!callbacks) return this;\n\n // remove all handlers\n if (1 == arguments.length) {\n delete this._callbacks['$' + event];\n return this;\n }\n\n // remove specific handler\n var cb;\n for (var i = 0; i < callbacks.length; i++) {\n cb = callbacks[i];\n if (cb === fn || cb.fn === fn) {\n callbacks.splice(i, 1);\n break;\n }\n }\n\n // Remove event specific arrays for event types that no\n // one is subscribed for to avoid memory leak.\n if (callbacks.length === 0) {\n delete this._callbacks['$' + event];\n }\n\n return this;\n};\n\n/**\n * Emit `event` with the given args.\n *\n * @param {String} event\n * @param {Mixed} ...\n * @return {Emitter}\n */\n\nEmitter.prototype.emit = function(event){\n this._callbacks = this._callbacks || {};\n\n var args = new Array(arguments.length - 1)\n , callbacks = this._callbacks['$' + event];\n\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n\n if (callbacks) {\n callbacks = callbacks.slice(0);\n for (var i = 0, len = callbacks.length; i < len; ++i) {\n callbacks[i].apply(this, args);\n }\n }\n\n return this;\n};\n\n// alias used for reserved events (protected method)\nEmitter.prototype.emitReserved = Emitter.prototype.emit;\n\n/**\n * Return array of callbacks for `event`.\n *\n * @param {String} event\n * @return {Array}\n * @api public\n */\n\nEmitter.prototype.listeners = function(event){\n this._callbacks = this._callbacks || {};\n return this._callbacks['$' + event] || [];\n};\n\n/**\n * Check if this emitter has `event` handlers.\n *\n * @param {String} event\n * @return {Boolean}\n * @api public\n */\n\nEmitter.prototype.hasListeners = function(event){\n return !! this.listeners(event).length;\n};\n","export const globalThisShim = (() => {\n if (typeof self !== \"undefined\") {\n return self;\n }\n else if (typeof window !== \"undefined\") {\n return window;\n }\n else {\n return Function(\"return this\")();\n }\n})();\n","import { globalThisShim as globalThis } from \"./globalThis.js\";\nexport function pick(obj, ...attr) {\n return attr.reduce((acc, k) => {\n if (obj.hasOwnProperty(k)) {\n acc[k] = obj[k];\n }\n return acc;\n }, {});\n}\n// Keep a reference to the real timeout functions so they can be used when overridden\nconst NATIVE_SET_TIMEOUT = globalThis.setTimeout;\nconst NATIVE_CLEAR_TIMEOUT = globalThis.clearTimeout;\nexport function installTimerFunctions(obj, opts) {\n if (opts.useNativeTimers) {\n obj.setTimeoutFn = NATIVE_SET_TIMEOUT.bind(globalThis);\n obj.clearTimeoutFn = NATIVE_CLEAR_TIMEOUT.bind(globalThis);\n }\n else {\n obj.setTimeoutFn = globalThis.setTimeout.bind(globalThis);\n obj.clearTimeoutFn = globalThis.clearTimeout.bind(globalThis);\n }\n}\n// base64 encoded buffers are about 33% bigger (https://en.wikipedia.org/wiki/Base64)\nconst BASE64_OVERHEAD = 1.33;\n// we could also have used `new Blob([obj]).size`, but it isn't supported in IE9\nexport function byteLength(obj) {\n if (typeof obj === \"string\") {\n return utf8Length(obj);\n }\n // arraybuffer or blob\n return Math.ceil((obj.byteLength || obj.size) * BASE64_OVERHEAD);\n}\nfunction utf8Length(str) {\n let c = 0, length = 0;\n for (let i = 0, l = str.length; i < l; i++) {\n c = str.charCodeAt(i);\n if (c < 0x80) {\n length += 1;\n }\n else if (c < 0x800) {\n length += 2;\n }\n else if (c < 0xd800 || c >= 0xe000) {\n length += 3;\n }\n else {\n i++;\n length += 4;\n }\n }\n return length;\n}\n","// imported from https://github.com/galkn/querystring\n/**\n * Compiles a querystring\n * Returns string representation of the object\n *\n * @param {Object}\n * @api private\n */\nexport function encode(obj) {\n let str = '';\n for (let i in obj) {\n if (obj.hasOwnProperty(i)) {\n if (str.length)\n str += '&';\n str += encodeURIComponent(i) + '=' + encodeURIComponent(obj[i]);\n }\n }\n return str;\n}\n/**\n * Parses a simple querystring into an object\n *\n * @param {String} qs\n * @api private\n */\nexport function decode(qs) {\n let qry = {};\n let pairs = qs.split('&');\n for (let i = 0, l = pairs.length; i < l; i++) {\n let pair = pairs[i].split('=');\n qry[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);\n }\n return qry;\n}\n","import { decodePacket } from \"engine.io-parser\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { installTimerFunctions } from \"./util.js\";\nimport { encode } from \"./contrib/parseqs.js\";\nclass TransportError extends Error {\n constructor(reason, description, context) {\n super(reason);\n this.description = description;\n this.context = context;\n this.type = \"TransportError\";\n }\n}\nexport class Transport extends Emitter {\n /**\n * Transport abstract constructor.\n *\n * @param {Object} opts - options\n * @protected\n */\n constructor(opts) {\n super();\n this.writable = false;\n installTimerFunctions(this, opts);\n this.opts = opts;\n this.query = opts.query;\n this.socket = opts.socket;\n }\n /**\n * Emits an error.\n *\n * @param {String} reason\n * @param description\n * @param context - the error context\n * @return {Transport} for chaining\n * @protected\n */\n onError(reason, description, context) {\n super.emitReserved(\"error\", new TransportError(reason, description, context));\n return this;\n }\n /**\n * Opens the transport.\n */\n open() {\n this.readyState = \"opening\";\n this.doOpen();\n return this;\n }\n /**\n * Closes the transport.\n */\n close() {\n if (this.readyState === \"opening\" || this.readyState === \"open\") {\n this.doClose();\n this.onClose();\n }\n return this;\n }\n /**\n * Sends multiple packets.\n *\n * @param {Array} packets\n */\n send(packets) {\n if (this.readyState === \"open\") {\n this.write(packets);\n }\n else {\n // this might happen if the transport was silently closed in the beforeunload event handler\n }\n }\n /**\n * Called upon open\n *\n * @protected\n */\n onOpen() {\n this.readyState = \"open\";\n this.writable = true;\n super.emitReserved(\"open\");\n }\n /**\n * Called with data.\n *\n * @param {String} data\n * @protected\n */\n onData(data) {\n const packet = decodePacket(data, this.socket.binaryType);\n this.onPacket(packet);\n }\n /**\n * Called with a decoded packet.\n *\n * @protected\n */\n onPacket(packet) {\n super.emitReserved(\"packet\", packet);\n }\n /**\n * Called upon close.\n *\n * @protected\n */\n onClose(details) {\n this.readyState = \"closed\";\n super.emitReserved(\"close\", details);\n }\n /**\n * Pauses the transport, in order not to lose packets during an upgrade.\n *\n * @param onPause\n */\n pause(onPause) { }\n createUri(schema, query = {}) {\n return (schema +\n \"://\" +\n this._hostname() +\n this._port() +\n this.opts.path +\n this._query(query));\n }\n _hostname() {\n const hostname = this.opts.hostname;\n return hostname.indexOf(\":\") === -1 ? hostname : \"[\" + hostname + \"]\";\n }\n _port() {\n if (this.opts.port &&\n ((this.opts.secure && Number(this.opts.port !== 443)) ||\n (!this.opts.secure && Number(this.opts.port) !== 80))) {\n return \":\" + this.opts.port;\n }\n else {\n return \"\";\n }\n }\n _query(query) {\n const encodedQuery = encode(query);\n return encodedQuery.length ? \"?\" + encodedQuery : \"\";\n }\n}\n","// imported from https://github.com/unshiftio/yeast\n'use strict';\nconst alphabet = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_'.split(''), length = 64, map = {};\nlet seed = 0, i = 0, prev;\n/**\n * Return a string representing the specified number.\n *\n * @param {Number} num The number to convert.\n * @returns {String} The string representation of the number.\n * @api public\n */\nexport function encode(num) {\n let encoded = '';\n do {\n encoded = alphabet[num % length] + encoded;\n num = Math.floor(num / length);\n } while (num > 0);\n return encoded;\n}\n/**\n * Return the integer value specified by the given string.\n *\n * @param {String} str The string to convert.\n * @returns {Number} The integer value represented by the string.\n * @api public\n */\nexport function decode(str) {\n let decoded = 0;\n for (i = 0; i < str.length; i++) {\n decoded = decoded * length + map[str.charAt(i)];\n }\n return decoded;\n}\n/**\n * Yeast: A tiny growing id generator.\n *\n * @returns {String} A unique id.\n * @api public\n */\nexport function yeast() {\n const now = encode(+new Date());\n if (now !== prev)\n return seed = 0, prev = now;\n return now + '.' + encode(seed++);\n}\n//\n// Map each character to its index.\n//\nfor (; i < length; i++)\n map[alphabet[i]] = i;\n","// imported from https://github.com/component/has-cors\nlet value = false;\ntry {\n value = typeof XMLHttpRequest !== 'undefined' &&\n 'withCredentials' in new XMLHttpRequest();\n}\ncatch (err) {\n // if XMLHttp support is disabled in IE then it will throw\n // when trying to create\n}\nexport const hasCORS = value;\n","// browser shim for xmlhttprequest module\nimport { hasCORS } from \"../contrib/has-cors.js\";\nimport { globalThisShim as globalThis } from \"../globalThis.js\";\nexport function XHR(opts) {\n const xdomain = opts.xdomain;\n // XMLHttpRequest can be disabled on IE\n try {\n if (\"undefined\" !== typeof XMLHttpRequest && (!xdomain || hasCORS)) {\n return new XMLHttpRequest();\n }\n }\n catch (e) { }\n if (!xdomain) {\n try {\n return new globalThis[[\"Active\"].concat(\"Object\").join(\"X\")](\"Microsoft.XMLHTTP\");\n }\n catch (e) { }\n }\n}\nexport function createCookieJar() { }\n","import { Transport } from \"../transport.js\";\nimport { yeast } from \"../contrib/yeast.js\";\nimport { encodePayload, decodePayload } from \"engine.io-parser\";\nimport { createCookieJar, XHR as XMLHttpRequest, } from \"./xmlhttprequest.js\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { installTimerFunctions, pick } from \"../util.js\";\nimport { globalThisShim as globalThis } from \"../globalThis.js\";\nfunction empty() { }\nconst hasXHR2 = (function () {\n const xhr = new XMLHttpRequest({\n xdomain: false,\n });\n return null != xhr.responseType;\n})();\nexport class Polling extends Transport {\n /**\n * XHR Polling constructor.\n *\n * @param {Object} opts\n * @package\n */\n constructor(opts) {\n super(opts);\n this.polling = false;\n if (typeof location !== \"undefined\") {\n const isSSL = \"https:\" === location.protocol;\n let port = location.port;\n // some user agents have empty `location.port`\n if (!port) {\n port = isSSL ? \"443\" : \"80\";\n }\n this.xd =\n (typeof location !== \"undefined\" &&\n opts.hostname !== location.hostname) ||\n port !== opts.port;\n }\n /**\n * XHR supports binary\n */\n const forceBase64 = opts && opts.forceBase64;\n this.supportsBinary = hasXHR2 && !forceBase64;\n if (this.opts.withCredentials) {\n this.cookieJar = createCookieJar();\n }\n }\n get name() {\n return \"polling\";\n }\n /**\n * Opens the socket (triggers polling). We write a PING message to determine\n * when the transport is open.\n *\n * @protected\n */\n doOpen() {\n this.poll();\n }\n /**\n * Pauses polling.\n *\n * @param {Function} onPause - callback upon buffers are flushed and transport is paused\n * @package\n */\n pause(onPause) {\n this.readyState = \"pausing\";\n const pause = () => {\n this.readyState = \"paused\";\n onPause();\n };\n if (this.polling || !this.writable) {\n let total = 0;\n if (this.polling) {\n total++;\n this.once(\"pollComplete\", function () {\n --total || pause();\n });\n }\n if (!this.writable) {\n total++;\n this.once(\"drain\", function () {\n --total || pause();\n });\n }\n }\n else {\n pause();\n }\n }\n /**\n * Starts polling cycle.\n *\n * @private\n */\n poll() {\n this.polling = true;\n this.doPoll();\n this.emitReserved(\"poll\");\n }\n /**\n * Overloads onData to detect payloads.\n *\n * @protected\n */\n onData(data) {\n const callback = (packet) => {\n // if its the first message we consider the transport open\n if (\"opening\" === this.readyState && packet.type === \"open\") {\n this.onOpen();\n }\n // if its a close packet, we close the ongoing requests\n if (\"close\" === packet.type) {\n this.onClose({ description: \"transport closed by the server\" });\n return false;\n }\n // otherwise bypass onData and handle the message\n this.onPacket(packet);\n };\n // decode payload\n decodePayload(data, this.socket.binaryType).forEach(callback);\n // if an event did not trigger closing\n if (\"closed\" !== this.readyState) {\n // if we got data we're not polling\n this.polling = false;\n this.emitReserved(\"pollComplete\");\n if (\"open\" === this.readyState) {\n this.poll();\n }\n else {\n }\n }\n }\n /**\n * For polling, send a close packet.\n *\n * @protected\n */\n doClose() {\n const close = () => {\n this.write([{ type: \"close\" }]);\n };\n if (\"open\" === this.readyState) {\n close();\n }\n else {\n // in case we're trying to close while\n // handshaking is in progress (GH-164)\n this.once(\"open\", close);\n }\n }\n /**\n * Writes a packets payload.\n *\n * @param {Array} packets - data packets\n * @protected\n */\n write(packets) {\n this.writable = false;\n encodePayload(packets, (data) => {\n this.doWrite(data, () => {\n this.writable = true;\n this.emitReserved(\"drain\");\n });\n });\n }\n /**\n * Generates uri for connection.\n *\n * @private\n */\n uri() {\n const schema = this.opts.secure ? \"https\" : \"http\";\n const query = this.query || {};\n // cache busting is forced\n if (false !== this.opts.timestampRequests) {\n query[this.opts.timestampParam] = yeast();\n }\n if (!this.supportsBinary && !query.sid) {\n query.b64 = 1;\n }\n return this.createUri(schema, query);\n }\n /**\n * Creates a request.\n *\n * @param {String} method\n * @private\n */\n request(opts = {}) {\n Object.assign(opts, { xd: this.xd, cookieJar: this.cookieJar }, this.opts);\n return new Request(this.uri(), opts);\n }\n /**\n * Sends data.\n *\n * @param {String} data to send.\n * @param {Function} called upon flush.\n * @private\n */\n doWrite(data, fn) {\n const req = this.request({\n method: \"POST\",\n data: data,\n });\n req.on(\"success\", fn);\n req.on(\"error\", (xhrStatus, context) => {\n this.onError(\"xhr post error\", xhrStatus, context);\n });\n }\n /**\n * Starts a poll cycle.\n *\n * @private\n */\n doPoll() {\n const req = this.request();\n req.on(\"data\", this.onData.bind(this));\n req.on(\"error\", (xhrStatus, context) => {\n this.onError(\"xhr poll error\", xhrStatus, context);\n });\n this.pollXhr = req;\n }\n}\nexport class Request extends Emitter {\n /**\n * Request constructor\n *\n * @param {Object} options\n * @package\n */\n constructor(uri, opts) {\n super();\n installTimerFunctions(this, opts);\n this.opts = opts;\n this.method = opts.method || \"GET\";\n this.uri = uri;\n this.data = undefined !== opts.data ? opts.data : null;\n this.create();\n }\n /**\n * Creates the XHR object and sends the request.\n *\n * @private\n */\n create() {\n var _a;\n const opts = pick(this.opts, \"agent\", \"pfx\", \"key\", \"passphrase\", \"cert\", \"ca\", \"ciphers\", \"rejectUnauthorized\", \"autoUnref\");\n opts.xdomain = !!this.opts.xd;\n const xhr = (this.xhr = new XMLHttpRequest(opts));\n try {\n xhr.open(this.method, this.uri, true);\n try {\n if (this.opts.extraHeaders) {\n xhr.setDisableHeaderCheck && xhr.setDisableHeaderCheck(true);\n for (let i in this.opts.extraHeaders) {\n if (this.opts.extraHeaders.hasOwnProperty(i)) {\n xhr.setRequestHeader(i, this.opts.extraHeaders[i]);\n }\n }\n }\n }\n catch (e) { }\n if (\"POST\" === this.method) {\n try {\n xhr.setRequestHeader(\"Content-type\", \"text/plain;charset=UTF-8\");\n }\n catch (e) { }\n }\n try {\n xhr.setRequestHeader(\"Accept\", \"*/*\");\n }\n catch (e) { }\n (_a = this.opts.cookieJar) === null || _a === void 0 ? void 0 : _a.addCookies(xhr);\n // ie6 check\n if (\"withCredentials\" in xhr) {\n xhr.withCredentials = this.opts.withCredentials;\n }\n if (this.opts.requestTimeout) {\n xhr.timeout = this.opts.requestTimeout;\n }\n xhr.onreadystatechange = () => {\n var _a;\n if (xhr.readyState === 3) {\n (_a = this.opts.cookieJar) === null || _a === void 0 ? void 0 : _a.parseCookies(xhr);\n }\n if (4 !== xhr.readyState)\n return;\n if (200 === xhr.status || 1223 === xhr.status) {\n this.onLoad();\n }\n else {\n // make sure the `error` event handler that's user-set\n // does not throw in the same tick and gets caught here\n this.setTimeoutFn(() => {\n this.onError(typeof xhr.status === \"number\" ? xhr.status : 0);\n }, 0);\n }\n };\n xhr.send(this.data);\n }\n catch (e) {\n // Need to defer since .create() is called directly from the constructor\n // and thus the 'error' event can only be only bound *after* this exception\n // occurs. Therefore, also, we cannot throw here at all.\n this.setTimeoutFn(() => {\n this.onError(e);\n }, 0);\n return;\n }\n if (typeof document !== \"undefined\") {\n this.index = Request.requestsCount++;\n Request.requests[this.index] = this;\n }\n }\n /**\n * Called upon error.\n *\n * @private\n */\n onError(err) {\n this.emitReserved(\"error\", err, this.xhr);\n this.cleanup(true);\n }\n /**\n * Cleans up house.\n *\n * @private\n */\n cleanup(fromError) {\n if (\"undefined\" === typeof this.xhr || null === this.xhr) {\n return;\n }\n this.xhr.onreadystatechange = empty;\n if (fromError) {\n try {\n this.xhr.abort();\n }\n catch (e) { }\n }\n if (typeof document !== \"undefined\") {\n delete Request.requests[this.index];\n }\n this.xhr = null;\n }\n /**\n * Called upon load.\n *\n * @private\n */\n onLoad() {\n const data = this.xhr.responseText;\n if (data !== null) {\n this.emitReserved(\"data\", data);\n this.emitReserved(\"success\");\n this.cleanup();\n }\n }\n /**\n * Aborts the request.\n *\n * @package\n */\n abort() {\n this.cleanup();\n }\n}\nRequest.requestsCount = 0;\nRequest.requests = {};\n/**\n * Aborts pending requests when unloading the window. This is needed to prevent\n * memory leaks (e.g. when using IE) and to ensure that no spurious error is\n * emitted.\n */\nif (typeof document !== \"undefined\") {\n // @ts-ignore\n if (typeof attachEvent === \"function\") {\n // @ts-ignore\n attachEvent(\"onunload\", unloadHandler);\n }\n else if (typeof addEventListener === \"function\") {\n const terminationEvent = \"onpagehide\" in globalThis ? \"pagehide\" : \"unload\";\n addEventListener(terminationEvent, unloadHandler, false);\n }\n}\nfunction unloadHandler() {\n for (let i in Request.requests) {\n if (Request.requests.hasOwnProperty(i)) {\n Request.requests[i].abort();\n }\n }\n}\n","import { globalThisShim as globalThis } from \"../globalThis.js\";\nexport const nextTick = (() => {\n const isPromiseAvailable = typeof Promise === \"function\" && typeof Promise.resolve === \"function\";\n if (isPromiseAvailable) {\n return (cb) => Promise.resolve().then(cb);\n }\n else {\n return (cb, setTimeoutFn) => setTimeoutFn(cb, 0);\n }\n})();\nexport const WebSocket = globalThis.WebSocket || globalThis.MozWebSocket;\nexport const usingBrowserWebSocket = true;\nexport const defaultBinaryType = \"arraybuffer\";\n","import { Transport } from \"../transport.js\";\nimport { yeast } from \"../contrib/yeast.js\";\nimport { pick } from \"../util.js\";\nimport { nextTick, usingBrowserWebSocket, WebSocket, } from \"./websocket-constructor.js\";\nimport { encodePacket } from \"engine.io-parser\";\n// detect ReactNative environment\nconst isReactNative = typeof navigator !== \"undefined\" &&\n typeof navigator.product === \"string\" &&\n navigator.product.toLowerCase() === \"reactnative\";\nexport class WS extends Transport {\n /**\n * WebSocket transport constructor.\n *\n * @param {Object} opts - connection options\n * @protected\n */\n constructor(opts) {\n super(opts);\n this.supportsBinary = !opts.forceBase64;\n }\n get name() {\n return \"websocket\";\n }\n doOpen() {\n if (!this.check()) {\n // let probe timeout\n return;\n }\n const uri = this.uri();\n const protocols = this.opts.protocols;\n // React Native only supports the 'headers' option, and will print a warning if anything else is passed\n const opts = isReactNative\n ? {}\n : pick(this.opts, \"agent\", \"perMessageDeflate\", \"pfx\", \"key\", \"passphrase\", \"cert\", \"ca\", \"ciphers\", \"rejectUnauthorized\", \"localAddress\", \"protocolVersion\", \"origin\", \"maxPayload\", \"family\", \"checkServerIdentity\");\n if (this.opts.extraHeaders) {\n opts.headers = this.opts.extraHeaders;\n }\n try {\n this.ws =\n usingBrowserWebSocket && !isReactNative\n ? protocols\n ? new WebSocket(uri, protocols)\n : new WebSocket(uri)\n : new WebSocket(uri, protocols, opts);\n }\n catch (err) {\n return this.emitReserved(\"error\", err);\n }\n this.ws.binaryType = this.socket.binaryType;\n this.addEventListeners();\n }\n /**\n * Adds event listeners to the socket\n *\n * @private\n */\n addEventListeners() {\n this.ws.onopen = () => {\n if (this.opts.autoUnref) {\n this.ws._socket.unref();\n }\n this.onOpen();\n };\n this.ws.onclose = (closeEvent) => this.onClose({\n description: \"websocket connection closed\",\n context: closeEvent,\n });\n this.ws.onmessage = (ev) => this.onData(ev.data);\n this.ws.onerror = (e) => this.onError(\"websocket error\", e);\n }\n write(packets) {\n this.writable = false;\n // encodePacket efficient as it uses WS framing\n // no need for encodePayload\n for (let i = 0; i < packets.length; i++) {\n const packet = packets[i];\n const lastPacket = i === packets.length - 1;\n encodePacket(packet, this.supportsBinary, (data) => {\n // always create a new object (GH-437)\n const opts = {};\n if (!usingBrowserWebSocket) {\n if (packet.options) {\n opts.compress = packet.options.compress;\n }\n if (this.opts.perMessageDeflate) {\n const len = \n // @ts-ignore\n \"string\" === typeof data ? Buffer.byteLength(data) : data.length;\n if (len < this.opts.perMessageDeflate.threshold) {\n opts.compress = false;\n }\n }\n }\n // Sometimes the websocket has already been closed but the browser didn't\n // have a chance of informing us about it yet, in that case send will\n // throw an error\n try {\n if (usingBrowserWebSocket) {\n // TypeError is thrown when passing the second argument on Safari\n this.ws.send(data);\n }\n else {\n this.ws.send(data, opts);\n }\n }\n catch (e) {\n }\n if (lastPacket) {\n // fake drain\n // defer to next tick to allow Socket to clear writeBuffer\n nextTick(() => {\n this.writable = true;\n this.emitReserved(\"drain\");\n }, this.setTimeoutFn);\n }\n });\n }\n }\n doClose() {\n if (typeof this.ws !== \"undefined\") {\n this.ws.close();\n this.ws = null;\n }\n }\n /**\n * Generates uri for connection.\n *\n * @private\n */\n uri() {\n const schema = this.opts.secure ? \"wss\" : \"ws\";\n const query = this.query || {};\n // append timestamp to URI\n if (this.opts.timestampRequests) {\n query[this.opts.timestampParam] = yeast();\n }\n // communicate binary support capabilities\n if (!this.supportsBinary) {\n query.b64 = 1;\n }\n return this.createUri(schema, query);\n }\n /**\n * Feature detection for WebSocket.\n *\n * @return {Boolean} whether this transport is available.\n * @private\n */\n check() {\n return !!WebSocket;\n }\n}\n","import { Transport } from \"../transport.js\";\nimport { nextTick } from \"./websocket-constructor.js\";\nimport { createPacketDecoderStream, createPacketEncoderStream, } from \"engine.io-parser\";\nexport class WT extends Transport {\n get name() {\n return \"webtransport\";\n }\n doOpen() {\n // @ts-ignore\n if (typeof WebTransport !== \"function\") {\n return;\n }\n // @ts-ignore\n this.transport = new WebTransport(this.createUri(\"https\"), this.opts.transportOptions[this.name]);\n this.transport.closed\n .then(() => {\n this.onClose();\n })\n .catch((err) => {\n this.onError(\"webtransport error\", err);\n });\n // note: we could have used async/await, but that would require some additional polyfills\n this.transport.ready.then(() => {\n this.transport.createBidirectionalStream().then((stream) => {\n const decoderStream = createPacketDecoderStream(Number.MAX_SAFE_INTEGER, this.socket.binaryType);\n const reader = stream.readable.pipeThrough(decoderStream).getReader();\n const encoderStream = createPacketEncoderStream();\n encoderStream.readable.pipeTo(stream.writable);\n this.writer = encoderStream.writable.getWriter();\n const read = () => {\n reader\n .read()\n .then(({ done, value }) => {\n if (done) {\n return;\n }\n this.onPacket(value);\n read();\n })\n .catch((err) => {\n });\n };\n read();\n const packet = { type: \"open\" };\n if (this.query.sid) {\n packet.data = `{\"sid\":\"${this.query.sid}\"}`;\n }\n this.writer.write(packet).then(() => this.onOpen());\n });\n });\n }\n write(packets) {\n this.writable = false;\n for (let i = 0; i < packets.length; i++) {\n const packet = packets[i];\n const lastPacket = i === packets.length - 1;\n this.writer.write(packet).then(() => {\n if (lastPacket) {\n nextTick(() => {\n this.writable = true;\n this.emitReserved(\"drain\");\n }, this.setTimeoutFn);\n }\n });\n }\n }\n doClose() {\n var _a;\n (_a = this.transport) === null || _a === void 0 ? void 0 : _a.close();\n }\n}\n","import { Polling } from \"./polling.js\";\nimport { WS } from \"./websocket.js\";\nimport { WT } from \"./webtransport.js\";\nexport const transports = {\n websocket: WS,\n webtransport: WT,\n polling: Polling,\n};\n","// imported from https://github.com/galkn/parseuri\n/**\n * Parses a URI\n *\n * Note: we could also have used the built-in URL object, but it isn't supported on all platforms.\n *\n * See:\n * - https://developer.mozilla.org/en-US/docs/Web/API/URL\n * - https://caniuse.com/url\n * - https://www.rfc-editor.org/rfc/rfc3986#appendix-B\n *\n * History of the parse() method:\n * - first commit: https://github.com/socketio/socket.io-client/commit/4ee1d5d94b3906a9c052b459f1a818b15f38f91c\n * - export into its own module: https://github.com/socketio/engine.io-client/commit/de2c561e4564efeb78f1bdb1ba39ef81b2822cb3\n * - reimport: https://github.com/socketio/engine.io-client/commit/df32277c3f6d622eec5ed09f493cae3f3391d242\n *\n * @author Steven Levithan (MIT license)\n * @api private\n */\nconst re = /^(?:(?![^:@\\/?#]+:[^:@\\/]*@)(http|https|ws|wss):\\/\\/)?((?:(([^:@\\/?#]*)(?::([^:@\\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\\/?#]*)(?::(\\d*))?)(((\\/(?:[^?#](?![^?#\\/]*\\.[^?#\\/.]+(?:[?#]|$)))*\\/?)?([^?#\\/]*))(?:\\?([^#]*))?(?:#(.*))?)/;\nconst parts = [\n 'source', 'protocol', 'authority', 'userInfo', 'user', 'password', 'host', 'port', 'relative', 'path', 'directory', 'file', 'query', 'anchor'\n];\nexport function parse(str) {\n const src = str, b = str.indexOf('['), e = str.indexOf(']');\n if (b != -1 && e != -1) {\n str = str.substring(0, b) + str.substring(b, e).replace(/:/g, ';') + str.substring(e, str.length);\n }\n let m = re.exec(str || ''), uri = {}, i = 14;\n while (i--) {\n uri[parts[i]] = m[i] || '';\n }\n if (b != -1 && e != -1) {\n uri.source = src;\n uri.host = uri.host.substring(1, uri.host.length - 1).replace(/;/g, ':');\n uri.authority = uri.authority.replace('[', '').replace(']', '').replace(/;/g, ':');\n uri.ipv6uri = true;\n }\n uri.pathNames = pathNames(uri, uri['path']);\n uri.queryKey = queryKey(uri, uri['query']);\n return uri;\n}\nfunction pathNames(obj, path) {\n const regx = /\\/{2,9}/g, names = path.replace(regx, \"/\").split(\"/\");\n if (path.slice(0, 1) == '/' || path.length === 0) {\n names.splice(0, 1);\n }\n if (path.slice(-1) == '/') {\n names.splice(names.length - 1, 1);\n }\n return names;\n}\nfunction queryKey(uri, query) {\n const data = {};\n query.replace(/(?:^|&)([^&=]*)=?([^&]*)/g, function ($0, $1, $2) {\n if ($1) {\n data[$1] = $2;\n }\n });\n return data;\n}\n","import { transports } from \"./transports/index.js\";\nimport { installTimerFunctions, byteLength } from \"./util.js\";\nimport { decode } from \"./contrib/parseqs.js\";\nimport { parse } from \"./contrib/parseuri.js\";\nimport { Emitter } from \"@socket.io/component-emitter\";\nimport { protocol } from \"engine.io-parser\";\nimport { defaultBinaryType } from \"./transports/websocket-constructor.js\";\nexport class Socket extends Emitter {\n /**\n * Socket constructor.\n *\n * @param {String|Object} uri - uri or options\n * @param {Object} opts - options\n */\n constructor(uri, opts = {}) {\n super();\n this.binaryType = defaultBinaryType;\n this.writeBuffer = [];\n if (uri && \"object\" === typeof uri) {\n opts = uri;\n uri = null;\n }\n if (uri) {\n uri = parse(uri);\n opts.hostname = uri.host;\n opts.secure = uri.protocol === \"https\" || uri.protocol === \"wss\";\n opts.port = uri.port;\n if (uri.query)\n opts.query = uri.query;\n }\n else if (opts.host) {\n opts.hostname = parse(opts.host).host;\n }\n installTimerFunctions(this, opts);\n this.secure =\n null != opts.secure\n ? opts.secure\n : typeof location !== \"undefined\" && \"https:\" === location.protocol;\n if (opts.hostname && !opts.port) {\n // if no port is specified manually, use the protocol default\n opts.port = this.secure ? \"443\" : \"80\";\n }\n this.hostname =\n opts.hostname ||\n (typeof location !== \"undefined\" ? location.hostname : \"localhost\");\n this.port =\n opts.port ||\n (typeof location !== \"undefined\" && location.port\n ? location.port\n : this.secure\n ? \"443\"\n : \"80\");\n this.transports = opts.transports || [\n \"polling\",\n \"websocket\",\n \"webtransport\",\n ];\n this.writeBuffer = [];\n this.prevBufferLen = 0;\n this.opts = Object.assign({\n path: \"/engine.io\",\n agent: false,\n withCredentials: false,\n upgrade: true,\n timestampParam: \"t\",\n rememberUpgrade: false,\n addTrailingSlash: true,\n rejectUnauthorized: true,\n perMessageDeflate: {\n threshold: 1024,\n },\n transportOptions: {},\n closeOnBeforeunload: false,\n }, opts);\n this.opts.path =\n this.opts.path.replace(/\\/$/, \"\") +\n (this.opts.addTrailingSlash ? \"/\" : \"\");\n if (typeof this.opts.query === \"string\") {\n this.opts.query = decode(this.opts.query);\n }\n // set on handshake\n this.id = null;\n this.upgrades = null;\n this.pingInterval = null;\n this.pingTimeout = null;\n // set on heartbeat\n this.pingTimeoutTimer = null;\n if (typeof addEventListener === \"function\") {\n if (this.opts.closeOnBeforeunload) {\n // Firefox closes the connection when the \"beforeunload\" event is emitted but not Chrome. This event listener\n // ensures every browser behaves the same (no \"disconnect\" event at the Socket.IO level when the page is\n // closed/reloaded)\n this.beforeunloadEventListener = () => {\n if (this.transport) {\n // silently close the transport\n this.transport.removeAllListeners();\n this.transport.close();\n }\n };\n addEventListener(\"beforeunload\", this.beforeunloadEventListener, false);\n }\n if (this.hostname !== \"localhost\") {\n this.offlineEventListener = () => {\n this.onClose(\"transport close\", {\n description: \"network connection lost\",\n });\n };\n addEventListener(\"offline\", this.offlineEventListener, false);\n }\n }\n this.open();\n }\n /**\n * Creates transport of the given type.\n *\n * @param {String} name - transport name\n * @return {Transport}\n * @private\n */\n createTransport(name) {\n const query = Object.assign({}, this.opts.query);\n // append engine.io protocol identifier\n query.EIO = protocol;\n // transport name\n query.transport = name;\n // session id if we already have one\n if (this.id)\n query.sid = this.id;\n const opts = Object.assign({}, this.opts, {\n query,\n socket: this,\n hostname: this.hostname,\n secure: this.secure,\n port: this.port,\n }, this.opts.transportOptions[name]);\n return new transports[name](opts);\n }\n /**\n * Initializes transport to use and starts probe.\n *\n * @private\n */\n open() {\n let transport;\n if (this.opts.rememberUpgrade &&\n Socket.priorWebsocketSuccess &&\n this.transports.indexOf(\"websocket\") !== -1) {\n transport = \"websocket\";\n }\n else if (0 === this.transports.length) {\n // Emit error on next tick so it can be listened to\n this.setTimeoutFn(() => {\n this.emitReserved(\"error\", \"No transports available\");\n }, 0);\n return;\n }\n else {\n transport = this.transports[0];\n }\n this.readyState = \"opening\";\n // Retry with the next transport if the transport is disabled (jsonp: false)\n try {\n transport = this.createTransport(transport);\n }\n catch (e) {\n this.transports.shift();\n this.open();\n return;\n }\n transport.open();\n this.setTransport(transport);\n }\n /**\n * Sets the current transport. Disables the existing one (if any).\n *\n * @private\n */\n setTransport(transport) {\n if (this.transport) {\n this.transport.removeAllListeners();\n }\n // set up transport\n this.transport = transport;\n // set up transport listeners\n transport\n .on(\"drain\", this.onDrain.bind(this))\n .on(\"packet\", this.onPacket.bind(this))\n .on(\"error\", this.onError.bind(this))\n .on(\"close\", (reason) => this.onClose(\"transport close\", reason));\n }\n /**\n * Probes a transport.\n *\n * @param {String} name - transport name\n * @private\n */\n probe(name) {\n let transport = this.createTransport(name);\n let failed = false;\n Socket.priorWebsocketSuccess = false;\n const onTransportOpen = () => {\n if (failed)\n return;\n transport.send([{ type: \"ping\", data: \"probe\" }]);\n transport.once(\"packet\", (msg) => {\n if (failed)\n return;\n if (\"pong\" === msg.type && \"probe\" === msg.data) {\n this.upgrading = true;\n this.emitReserved(\"upgrading\", transport);\n if (!transport)\n return;\n Socket.priorWebsocketSuccess = \"websocket\" === transport.name;\n this.transport.pause(() => {\n if (failed)\n return;\n if (\"closed\" === this.readyState)\n return;\n cleanup();\n this.setTransport(transport);\n transport.send([{ type: \"upgrade\" }]);\n this.emitReserved(\"upgrade\", transport);\n transport = null;\n this.upgrading = false;\n this.flush();\n });\n }\n else {\n const err = new Error(\"probe error\");\n // @ts-ignore\n err.transport = transport.name;\n this.emitReserved(\"upgradeError\", err);\n }\n });\n };\n function freezeTransport() {\n if (failed)\n return;\n // Any callback called by transport should be ignored since now\n failed = true;\n cleanup();\n transport.close();\n transport = null;\n }\n // Handle any error that happens while probing\n const onerror = (err) => {\n const error = new Error(\"probe error: \" + err);\n // @ts-ignore\n error.transport = transport.name;\n freezeTransport();\n this.emitReserved(\"upgradeError\", error);\n };\n function onTransportClose() {\n onerror(\"transport closed\");\n }\n // When the socket is closed while we're probing\n function onclose() {\n onerror(\"socket closed\");\n }\n // When the socket is upgraded while we're probing\n function onupgrade(to) {\n if (transport && to.name !== transport.name) {\n freezeTransport();\n }\n }\n // Remove all listeners on the transport and on self\n const cleanup = () => {\n transport.removeListener(\"open\", onTransportOpen);\n transport.removeListener(\"error\", onerror);\n transport.removeListener(\"close\", onTransportClose);\n this.off(\"close\", onclose);\n this.off(\"upgrading\", onupgrade);\n };\n transport.once(\"open\", onTransportOpen);\n transport.once(\"error\", onerror);\n transport.once(\"close\", onTransportClose);\n this.once(\"close\", onclose);\n this.once(\"upgrading\", onupgrade);\n if (this.upgrades.indexOf(\"webtransport\") !== -1 &&\n name !== \"webtransport\") {\n // favor WebTransport\n this.setTimeoutFn(() => {\n if (!failed) {\n transport.open();\n }\n }, 200);\n }\n else {\n transport.open();\n }\n }\n /**\n * Called when connection is deemed open.\n *\n * @private\n */\n onOpen() {\n this.readyState = \"open\";\n Socket.priorWebsocketSuccess = \"websocket\" === this.transport.name;\n this.emitReserved(\"open\");\n this.flush();\n // we check for `readyState` in case an `open`\n // listener already closed the socket\n if (\"open\" === this.readyState && this.opts.upgrade) {\n let i = 0;\n const l = this.upgrades.length;\n for (; i < l; i++) {\n this.probe(this.upgrades[i]);\n }\n }\n }\n /**\n * Handles a packet.\n *\n * @private\n */\n onPacket(packet) {\n if (\"opening\" === this.readyState ||\n \"open\" === this.readyState ||\n \"closing\" === this.readyState) {\n this.emitReserved(\"packet\", packet);\n // Socket is live - any packet counts\n this.emitReserved(\"heartbeat\");\n this.resetPingTimeout();\n switch (packet.type) {\n case \"open\":\n this.onHandshake(JSON.parse(packet.data));\n break;\n case \"ping\":\n this.sendPacket(\"pong\");\n this.emitReserved(\"ping\");\n this.emitReserved(\"pong\");\n break;\n case \"error\":\n const err = new Error(\"server error\");\n // @ts-ignore\n err.code = packet.data;\n this.onError(err);\n break;\n case \"message\":\n this.emitReserved(\"data\", packet.data);\n this.emitReserved(\"message\", packet.data);\n break;\n }\n }\n else {\n }\n }\n /**\n * Called upon handshake completion.\n *\n * @param {Object} data - handshake obj\n * @private\n */\n onHandshake(data) {\n this.emitReserved(\"handshake\", data);\n this.id = data.sid;\n this.transport.query.sid = data.sid;\n this.upgrades = this.filterUpgrades(data.upgrades);\n this.pingInterval = data.pingInterval;\n this.pingTimeout = data.pingTimeout;\n this.maxPayload = data.maxPayload;\n this.onOpen();\n // In case open handler closes socket\n if (\"closed\" === this.readyState)\n return;\n this.resetPingTimeout();\n }\n /**\n * Sets and resets ping timeout timer based on server pings.\n *\n * @private\n */\n resetPingTimeout() {\n this.clearTimeoutFn(this.pingTimeoutTimer);\n this.pingTimeoutTimer = this.setTimeoutFn(() => {\n this.onClose(\"ping timeout\");\n }, this.pingInterval + this.pingTimeout);\n if (this.opts.autoUnref) {\n this.pingTimeoutTimer.unref();\n }\n }\n /**\n * Called on `drain` event\n *\n * @private\n */\n onDrain() {\n this.writeBuffer.splice(0, this.prevBufferLen);\n // setting prevBufferLen = 0 is very important\n // for example, when upgrading, upgrade packet is sent over,\n // and a nonzero prevBufferLen could cause problems on `drain`\n this.prevBufferLen = 0;\n if (0 === this.writeBuffer.length) {\n this.emitReserved(\"drain\");\n }\n else {\n this.flush();\n }\n }\n /**\n * Flush write buffers.\n *\n * @private\n */\n flush() {\n if (\"closed\" !== this.readyState &&\n this.transport.writable &&\n !this.upgrading &&\n this.writeBuffer.length) {\n const packets = this.getWritablePackets();\n this.transport.send(packets);\n // keep track of current length of writeBuffer\n // splice writeBuffer and callbackBuffer on `drain`\n this.prevBufferLen = packets.length;\n this.emitReserved(\"flush\");\n }\n }\n /**\n * Ensure the encoded size of the writeBuffer is below the maxPayload value sent by the server (only for HTTP\n * long-polling)\n *\n * @private\n */\n getWritablePackets() {\n const shouldCheckPayloadSize = this.maxPayload &&\n this.transport.name === \"polling\" &&\n this.writeBuffer.length > 1;\n if (!shouldCheckPayloadSize) {\n return this.writeBuffer;\n }\n let payloadSize = 1; // first packet type\n for (let i = 0; i < this.writeBuffer.length; i++) {\n const data = this.writeBuffer[i].data;\n if (data) {\n payloadSize += byteLength(data);\n }\n if (i > 0 && payloadSize > this.maxPayload) {\n return this.writeBuffer.slice(0, i);\n }\n payloadSize += 2; // separator + packet type\n }\n return this.writeBuffer;\n }\n /**\n * Sends a message.\n *\n * @param {String} msg - message.\n * @param {Object} options.\n * @param {Function} callback function.\n * @return {Socket} for chaining.\n */\n write(msg, options, fn) {\n this.sendPacket(\"message\", msg, options, fn);\n return this;\n }\n send(msg, options, fn) {\n this.sendPacket(\"message\", msg, options, fn);\n return this;\n }\n /**\n * Sends a packet.\n *\n * @param {String} type: packet type.\n * @param {String} data.\n * @param {Object} options.\n * @param {Function} fn - callback function.\n * @private\n */\n sendPacket(type, data, options, fn) {\n if (\"function\" === typeof data) {\n fn = data;\n data = undefined;\n }\n if (\"function\" === typeof options) {\n fn = options;\n options = null;\n }\n if (\"closing\" === this.readyState || \"closed\" === this.readyState) {\n return;\n }\n options = options || {};\n options.compress = false !== options.compress;\n const packet = {\n type: type,\n data: data,\n options: options,\n };\n this.emitReserved(\"packetCreate\", packet);\n this.writeBuffer.push(packet);\n if (fn)\n this.once(\"flush\", fn);\n this.flush();\n }\n /**\n * Closes the connection.\n */\n close() {\n const close = () => {\n this.onClose(\"forced close\");\n this.transport.close();\n };\n const cleanupAndClose = () => {\n this.off(\"upgrade\", cleanupAndClose);\n this.off(\"upgradeError\", cleanupAndClose);\n close();\n };\n const waitForUpgrade = () => {\n // wait for upgrade to finish since we can't send packets while pausing a transport\n this.once(\"upgrade\", cleanupAndClose);\n this.once(\"upgradeError\", cleanupAndClose);\n };\n if (\"opening\" === this.readyState || \"open\" === this.readyState) {\n this.readyState = \"closing\";\n if (this.writeBuffer.length) {\n this.once(\"drain\", () => {\n if (this.upgrading) {\n waitForUpgrade();\n }\n else {\n close();\n }\n });\n }\n else if (this.upgrading) {\n waitForUpgrade();\n }\n else {\n close();\n }\n }\n return this;\n }\n /**\n * Called upon transport error\n *\n * @private\n */\n onError(err) {\n Socket.priorWebsocketSuccess = false;\n this.emitReserved(\"error\", err);\n this.onClose(\"transport error\", err);\n }\n /**\n * Called upon transport close.\n *\n * @private\n */\n onClose(reason, description) {\n if (\"opening\" === this.readyState ||\n \"open\" === this.readyState ||\n \"closing\" === this.readyState) {\n // clear timers\n this.clearTimeoutFn(this.pingTimeoutTimer);\n // stop event from firing again for transport\n this.transport.removeAllListeners(\"close\");\n // ensure transport won't stay open\n this.transport.close();\n // ignore further transport communication\n this.transport.removeAllListeners();\n if (typeof removeEventListener === \"function\") {\n removeEventListener(\"beforeunload\", this.beforeunloadEventListener, false);\n removeEventListener(\"offline\", this.offlineEventListener, false);\n }\n // set ready state\n this.readyState = \"closed\";\n // clear session id\n this.id = null;\n // emit close event\n this.emitReserved(\"close\", reason, description);\n // clean buffers after, so users can still\n // grab the buffers on `close` event\n this.writeBuffer = [];\n this.prevBufferLen = 0;\n }\n }\n /**\n * Filters upgrades, returning only those matching client transports.\n *\n * @param {Array} upgrades - server upgrades\n * @private\n */\n filterUpgrades(upgrades) {\n const filteredUpgrades = [];\n let i = 0;\n const j = upgrades.length;\n for (; i < j; i++) {\n if (~this.transports.indexOf(upgrades[i]))\n filteredUpgrades.push(upgrades[i]);\n }\n return filteredUpgrades;\n }\n}\nSocket.protocol = protocol;\n","import { Socket } from \"./socket.js\";\nexport { Socket };\nexport const protocol = Socket.protocol;\nexport { Transport } from \"./transport.js\";\nexport { transports } from \"./transports/index.js\";\nexport { installTimerFunctions } from \"./util.js\";\nexport { parse } from \"./contrib/parseuri.js\";\nexport { nextTick } from \"./transports/websocket-constructor.js\";\n","import { parse } from \"engine.io-client\";\n/**\n * URL parser.\n *\n * @param uri - url\n * @param path - the request path of the connection\n * @param loc - An object meant to mimic window.location.\n * Defaults to window.location.\n * @public\n */\nexport function url(uri, path = \"\", loc) {\n let obj = uri;\n // default to window.location\n loc = loc || (typeof location !== \"undefined\" && location);\n if (null == uri)\n uri = loc.protocol + \"//\" + loc.host;\n // relative path support\n if (typeof uri === \"string\") {\n if (\"/\" === uri.charAt(0)) {\n if (\"/\" === uri.charAt(1)) {\n uri = loc.protocol + uri;\n }\n else {\n uri = loc.host + uri;\n }\n }\n if (!/^(https?|wss?):\\/\\//.test(uri)) {\n if (\"undefined\" !== typeof loc) {\n uri = loc.protocol + \"//\" + uri;\n }\n else {\n uri = \"https://\" + uri;\n }\n }\n // parse\n obj = parse(uri);\n }\n // make sure we treat `localhost:80` and `localhost` equally\n if (!obj.port) {\n if (/^(http|ws)$/.test(obj.protocol)) {\n obj.port = \"80\";\n }\n else if (/^(http|ws)s$/.test(obj.protocol)) {\n obj.port = \"443\";\n }\n }\n obj.path = obj.path || \"/\";\n const ipv6 = obj.host.indexOf(\":\") !== -1;\n const host = ipv6 ? \"[\" + obj.host + \"]\" : obj.host;\n // define unique id\n obj.id = obj.protocol + \"://\" + host + \":\" + obj.port + path;\n // define href\n obj.href =\n obj.protocol +\n \"://\" +\n host +\n (loc && loc.port === obj.port ? \"\" : \":\" + obj.port);\n return obj;\n}\n","const withNativeArrayBuffer = typeof ArrayBuffer === \"function\";\nconst isView = (obj) => {\n return typeof ArrayBuffer.isView === \"function\"\n ? ArrayBuffer.isView(obj)\n : obj.buffer instanceof ArrayBuffer;\n};\nconst toString = Object.prototype.toString;\nconst withNativeBlob = typeof Blob === \"function\" ||\n (typeof Blob !== \"undefined\" &&\n toString.call(Blob) === \"[object BlobConstructor]\");\nconst withNativeFile = typeof File === \"function\" ||\n (typeof File !== \"undefined\" &&\n toString.call(File) === \"[object FileConstructor]\");\n/**\n * Returns true if obj is a Buffer, an ArrayBuffer, a Blob or a File.\n *\n * @private\n */\nexport function isBinary(obj) {\n return ((withNativeArrayBuffer && (obj instanceof ArrayBuffer || isView(obj))) ||\n (withNativeBlob && obj instanceof Blob) ||\n (withNativeFile && obj instanceof File));\n}\nexport function hasBinary(obj, toJSON) {\n if (!obj || typeof obj !== \"object\") {\n return false;\n }\n if (Array.isArray(obj)) {\n for (let i = 0, l = obj.length; i < l; i++) {\n if (hasBinary(obj[i])) {\n return true;\n }\n }\n return false;\n }\n if (isBinary(obj)) {\n return true;\n }\n if (obj.toJSON &&\n typeof obj.toJSON === \"function\" &&\n arguments.length === 1) {\n return hasBinary(obj.toJSON(), true);\n }\n for (const key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key) && hasBinary(obj[key])) {\n return true;\n }\n }\n return false;\n}\n","import { isBinary } from \"./is-binary.js\";\n/**\n * Replaces every Buffer | ArrayBuffer | Blob | File in packet with a numbered placeholder.\n *\n * @param {Object} packet - socket.io event packet\n * @return {Object} with deconstructed packet and list of buffers\n * @public\n */\nexport function deconstructPacket(packet) {\n const buffers = [];\n const packetData = packet.data;\n const pack = packet;\n pack.data = _deconstructPacket(packetData, buffers);\n pack.attachments = buffers.length; // number of binary 'attachments'\n return { packet: pack, buffers: buffers };\n}\nfunction _deconstructPacket(data, buffers) {\n if (!data)\n return data;\n if (isBinary(data)) {\n const placeholder = { _placeholder: true, num: buffers.length };\n buffers.push(data);\n return placeholder;\n }\n else if (Array.isArray(data)) {\n const newData = new Array(data.length);\n for (let i = 0; i < data.length; i++) {\n newData[i] = _deconstructPacket(data[i], buffers);\n }\n return newData;\n }\n else if (typeof data === \"object\" && !(data instanceof Date)) {\n const newData = {};\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n newData[key] = _deconstructPacket(data[key], buffers);\n }\n }\n return newData;\n }\n return data;\n}\n/**\n * Reconstructs a binary packet from its placeholder packet and buffers\n *\n * @param {Object} packet - event packet with placeholders\n * @param {Array} buffers - binary buffers to put in placeholder positions\n * @return {Object} reconstructed packet\n * @public\n */\nexport function reconstructPacket(packet, buffers) {\n packet.data = _reconstructPacket(packet.data, buffers);\n delete packet.attachments; // no longer useful\n return packet;\n}\nfunction _reconstructPacket(data, buffers) {\n if (!data)\n return data;\n if (data && data._placeholder === true) {\n const isIndexValid = typeof data.num === \"number\" &&\n data.num >= 0 &&\n data.num < buffers.length;\n if (isIndexValid) {\n return buffers[data.num]; // appropriate buffer (should be natural order anyway)\n }\n else {\n throw new Error(\"illegal attachments\");\n }\n }\n else if (Array.isArray(data)) {\n for (let i = 0; i < data.length; i++) {\n data[i] = _reconstructPacket(data[i], buffers);\n }\n }\n else if (typeof data === \"object\") {\n for (const key in data) {\n if (Object.prototype.hasOwnProperty.call(data, key)) {\n data[key] = _reconstructPacket(data[key], buffers);\n }\n }\n }\n return data;\n}\n","import { Emitter } from \"@socket.io/component-emitter\";\nimport { deconstructPacket, reconstructPacket } from \"./binary.js\";\nimport { isBinary, hasBinary } from \"./is-binary.js\";\n/**\n * These strings must not be used as event names, as they have a special meaning.\n */\nconst RESERVED_EVENTS = [\n \"connect\",\n \"connect_error\",\n \"disconnect\",\n \"disconnecting\",\n \"newListener\",\n \"removeListener\", // used by the Node.js EventEmitter\n];\n/**\n * Protocol version.\n *\n * @public\n */\nexport const protocol = 5;\nexport var PacketType;\n(function (PacketType) {\n PacketType[PacketType[\"CONNECT\"] = 0] = \"CONNECT\";\n PacketType[PacketType[\"DISCONNECT\"] = 1] = \"DISCONNECT\";\n PacketType[PacketType[\"EVENT\"] = 2] = \"EVENT\";\n PacketType[PacketType[\"ACK\"] = 3] = \"ACK\";\n PacketType[PacketType[\"CONNECT_ERROR\"] = 4] = \"CONNECT_ERROR\";\n PacketType[PacketType[\"BINARY_EVENT\"] = 5] = \"BINARY_EVENT\";\n PacketType[PacketType[\"BINARY_ACK\"] = 6] = \"BINARY_ACK\";\n})(PacketType || (PacketType = {}));\n/**\n * A socket.io Encoder instance\n */\nexport class Encoder {\n /**\n * Encoder constructor\n *\n * @param {function} replacer - custom replacer to pass down to JSON.parse\n */\n constructor(replacer) {\n this.replacer = replacer;\n }\n /**\n * Encode a packet as a single string if non-binary, or as a\n * buffer sequence, depending on packet type.\n *\n * @param {Object} obj - packet object\n */\n encode(obj) {\n if (obj.type === PacketType.EVENT || obj.type === PacketType.ACK) {\n if (hasBinary(obj)) {\n return this.encodeAsBinary({\n type: obj.type === PacketType.EVENT\n ? PacketType.BINARY_EVENT\n : PacketType.BINARY_ACK,\n nsp: obj.nsp,\n data: obj.data,\n id: obj.id,\n });\n }\n }\n return [this.encodeAsString(obj)];\n }\n /**\n * Encode packet as string.\n */\n encodeAsString(obj) {\n // first is type\n let str = \"\" + obj.type;\n // attachments if we have them\n if (obj.type === PacketType.BINARY_EVENT ||\n obj.type === PacketType.BINARY_ACK) {\n str += obj.attachments + \"-\";\n }\n // if we have a namespace other than `/`\n // we append it followed by a comma `,`\n if (obj.nsp && \"/\" !== obj.nsp) {\n str += obj.nsp + \",\";\n }\n // immediately followed by the id\n if (null != obj.id) {\n str += obj.id;\n }\n // json data\n if (null != obj.data) {\n str += JSON.stringify(obj.data, this.replacer);\n }\n return str;\n }\n /**\n * Encode packet as 'buffer sequence' by removing blobs, and\n * deconstructing packet into object with placeholders and\n * a list of buffers.\n */\n encodeAsBinary(obj) {\n const deconstruction = deconstructPacket(obj);\n const pack = this.encodeAsString(deconstruction.packet);\n const buffers = deconstruction.buffers;\n buffers.unshift(pack); // add packet info to beginning of data list\n return buffers; // write all the buffers\n }\n}\n// see https://stackoverflow.com/questions/8511281/check-if-a-value-is-an-object-in-javascript\nfunction isObject(value) {\n return Object.prototype.toString.call(value) === \"[object Object]\";\n}\n/**\n * A socket.io Decoder instance\n *\n * @return {Object} decoder\n */\nexport class Decoder extends Emitter {\n /**\n * Decoder constructor\n *\n * @param {function} reviver - custom reviver to pass down to JSON.stringify\n */\n constructor(reviver) {\n super();\n this.reviver = reviver;\n }\n /**\n * Decodes an encoded packet string into packet JSON.\n *\n * @param {String} obj - encoded packet\n */\n add(obj) {\n let packet;\n if (typeof obj === \"string\") {\n if (this.reconstructor) {\n throw new Error(\"got plaintext data when reconstructing a packet\");\n }\n packet = this.decodeString(obj);\n const isBinaryEvent = packet.type === PacketType.BINARY_EVENT;\n if (isBinaryEvent || packet.type === PacketType.BINARY_ACK) {\n packet.type = isBinaryEvent ? PacketType.EVENT : PacketType.ACK;\n // binary packet's json\n this.reconstructor = new BinaryReconstructor(packet);\n // no attachments, labeled binary but no binary data to follow\n if (packet.attachments === 0) {\n super.emitReserved(\"decoded\", packet);\n }\n }\n else {\n // non-binary full packet\n super.emitReserved(\"decoded\", packet);\n }\n }\n else if (isBinary(obj) || obj.base64) {\n // raw binary data\n if (!this.reconstructor) {\n throw new Error(\"got binary data when not reconstructing a packet\");\n }\n else {\n packet = this.reconstructor.takeBinaryData(obj);\n if (packet) {\n // received final buffer\n this.reconstructor = null;\n super.emitReserved(\"decoded\", packet);\n }\n }\n }\n else {\n throw new Error(\"Unknown type: \" + obj);\n }\n }\n /**\n * Decode a packet String (JSON data)\n *\n * @param {String} str\n * @return {Object} packet\n */\n decodeString(str) {\n let i = 0;\n // look up type\n const p = {\n type: Number(str.charAt(0)),\n };\n if (PacketType[p.type] === undefined) {\n throw new Error(\"unknown packet type \" + p.type);\n }\n // look up attachments if type binary\n if (p.type === PacketType.BINARY_EVENT ||\n p.type === PacketType.BINARY_ACK) {\n const start = i + 1;\n while (str.charAt(++i) !== \"-\" && i != str.length) { }\n const buf = str.substring(start, i);\n if (buf != Number(buf) || str.charAt(i) !== \"-\") {\n throw new Error(\"Illegal attachments\");\n }\n p.attachments = Number(buf);\n }\n // look up namespace (if any)\n if (\"/\" === str.charAt(i + 1)) {\n const start = i + 1;\n while (++i) {\n const c = str.charAt(i);\n if (\",\" === c)\n break;\n if (i === str.length)\n break;\n }\n p.nsp = str.substring(start, i);\n }\n else {\n p.nsp = \"/\";\n }\n // look up id\n const next = str.charAt(i + 1);\n if (\"\" !== next && Number(next) == next) {\n const start = i + 1;\n while (++i) {\n const c = str.charAt(i);\n if (null == c || Number(c) != c) {\n --i;\n break;\n }\n if (i === str.length)\n break;\n }\n p.id = Number(str.substring(start, i + 1));\n }\n // look up json data\n if (str.charAt(++i)) {\n const payload = this.tryParse(str.substr(i));\n if (Decoder.isPayloadValid(p.type, payload)) {\n p.data = payload;\n }\n else {\n throw new Error(\"invalid payload\");\n }\n }\n return p;\n }\n tryParse(str) {\n try {\n return JSON.parse(str, this.reviver);\n }\n catch (e) {\n return false;\n }\n }\n static isPayloadValid(type, payload) {\n switch (type) {\n case PacketType.CONNECT:\n return isObject(payload);\n case PacketType.DISCONNECT:\n return payload === undefined;\n case PacketType.CONNECT_ERROR:\n return typeof payload === \"string\" || isObject(payload);\n case PacketType.EVENT:\n case PacketType.BINARY_EVENT:\n return (Array.isArray(payload) &&\n (typeof payload[0] === \"number\" ||\n (typeof payload[0] === \"string\" &&\n RESERVED_EVENTS.indexOf(payload[0]) === -1)));\n case PacketType.ACK:\n case PacketType.BINARY_ACK:\n return Array.isArray(payload);\n }\n }\n /**\n * Deallocates a parser's resources\n */\n destroy() {\n if (this.reconstructor) {\n this.reconstructor.finishedReconstruction();\n this.reconstructor = null;\n }\n }\n}\n/**\n * A manager of a binary event's 'buffer sequence'. Should\n * be constructed whenever a packet of type BINARY_EVENT is\n * decoded.\n *\n * @param {Object} packet\n * @return {BinaryReconstructor} initialized reconstructor\n */\nclass BinaryReconstructor {\n constructor(packet) {\n this.packet = packet;\n this.buffers = [];\n this.reconPack = packet;\n }\n /**\n * Method to be called when binary data received from connection\n * after a BINARY_EVENT packet.\n *\n * @param {Buffer | ArrayBuffer} binData - the raw binary data received\n * @return {null | Object} returns null if more binary data is expected or\n * a reconstructed packet object if all buffers have been received.\n */\n takeBinaryData(binData) {\n this.buffers.push(binData);\n if (this.buffers.length === this.reconPack.attachments) {\n // done with buffer list\n const packet = reconstructPacket(this.reconPack, this.buffers);\n this.finishedReconstruction();\n return packet;\n }\n return null;\n }\n /**\n * Cleans up binary packet reconstruction variables.\n */\n finishedReconstruction() {\n this.reconPack = null;\n this.buffers = [];\n }\n}\n","export function on(obj, ev, fn) {\n obj.on(ev, fn);\n return function subDestroy() {\n obj.off(ev, fn);\n };\n}\n","import { PacketType } from \"socket.io-parser\";\nimport { on } from \"./on.js\";\nimport { Emitter, } from \"@socket.io/component-emitter\";\n/**\n * Internal events.\n * These events can't be emitted by the user.\n */\nconst RESERVED_EVENTS = Object.freeze({\n connect: 1,\n connect_error: 1,\n disconnect: 1,\n disconnecting: 1,\n // EventEmitter reserved events: https://nodejs.org/api/events.html#events_event_newlistener\n newListener: 1,\n removeListener: 1,\n});\n/**\n * A Socket is the fundamental class for interacting with the server.\n *\n * A Socket belongs to a certain Namespace (by default /) and uses an underlying {@link Manager} to communicate.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(\"connected\");\n * });\n *\n * // send an event to the server\n * socket.emit(\"foo\", \"bar\");\n *\n * socket.on(\"foobar\", () => {\n * // an event was received from the server\n * });\n *\n * // upon disconnection\n * socket.on(\"disconnect\", (reason) => {\n * console.log(`disconnected due to ${reason}`);\n * });\n */\nexport class Socket extends Emitter {\n /**\n * `Socket` constructor.\n */\n constructor(io, nsp, opts) {\n super();\n /**\n * Whether the socket is currently connected to the server.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(socket.connected); // true\n * });\n *\n * socket.on(\"disconnect\", () => {\n * console.log(socket.connected); // false\n * });\n */\n this.connected = false;\n /**\n * Whether the connection state was recovered after a temporary disconnection. In that case, any missed packets will\n * be transmitted by the server.\n */\n this.recovered = false;\n /**\n * Buffer for packets received before the CONNECT packet\n */\n this.receiveBuffer = [];\n /**\n * Buffer for packets that will be sent once the socket is connected\n */\n this.sendBuffer = [];\n /**\n * The queue of packets to be sent with retry in case of failure.\n *\n * Packets are sent one by one, each waiting for the server acknowledgement, in order to guarantee the delivery order.\n * @private\n */\n this._queue = [];\n /**\n * A sequence to generate the ID of the {@link QueuedPacket}.\n * @private\n */\n this._queueSeq = 0;\n this.ids = 0;\n this.acks = {};\n this.flags = {};\n this.io = io;\n this.nsp = nsp;\n if (opts && opts.auth) {\n this.auth = opts.auth;\n }\n this._opts = Object.assign({}, opts);\n if (this.io._autoConnect)\n this.open();\n }\n /**\n * Whether the socket is currently disconnected\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"connect\", () => {\n * console.log(socket.disconnected); // false\n * });\n *\n * socket.on(\"disconnect\", () => {\n * console.log(socket.disconnected); // true\n * });\n */\n get disconnected() {\n return !this.connected;\n }\n /**\n * Subscribe to open, close and packet events\n *\n * @private\n */\n subEvents() {\n if (this.subs)\n return;\n const io = this.io;\n this.subs = [\n on(io, \"open\", this.onopen.bind(this)),\n on(io, \"packet\", this.onpacket.bind(this)),\n on(io, \"error\", this.onerror.bind(this)),\n on(io, \"close\", this.onclose.bind(this)),\n ];\n }\n /**\n * Whether the Socket will try to reconnect when its Manager connects or reconnects.\n *\n * @example\n * const socket = io();\n *\n * console.log(socket.active); // true\n *\n * socket.on(\"disconnect\", (reason) => {\n * if (reason === \"io server disconnect\") {\n * // the disconnection was initiated by the server, you need to manually reconnect\n * console.log(socket.active); // false\n * }\n * // else the socket will automatically try to reconnect\n * console.log(socket.active); // true\n * });\n */\n get active() {\n return !!this.subs;\n }\n /**\n * \"Opens\" the socket.\n *\n * @example\n * const socket = io({\n * autoConnect: false\n * });\n *\n * socket.connect();\n */\n connect() {\n if (this.connected)\n return this;\n this.subEvents();\n if (!this.io[\"_reconnecting\"])\n this.io.open(); // ensure open\n if (\"open\" === this.io._readyState)\n this.onopen();\n return this;\n }\n /**\n * Alias for {@link connect()}.\n */\n open() {\n return this.connect();\n }\n /**\n * Sends a `message` event.\n *\n * This method mimics the WebSocket.send() method.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/send\n *\n * @example\n * socket.send(\"hello\");\n *\n * // this is equivalent to\n * socket.emit(\"message\", \"hello\");\n *\n * @return self\n */\n send(...args) {\n args.unshift(\"message\");\n this.emit.apply(this, args);\n return this;\n }\n /**\n * Override `emit`.\n * If the event is in `events`, it's emitted normally.\n *\n * @example\n * socket.emit(\"hello\", \"world\");\n *\n * // all serializable datastructures are supported (no need to call JSON.stringify)\n * socket.emit(\"hello\", 1, \"2\", { 3: [\"4\"], 5: Uint8Array.from([6]) });\n *\n * // with an acknowledgement from the server\n * socket.emit(\"hello\", \"world\", (val) => {\n * // ...\n * });\n *\n * @return self\n */\n emit(ev, ...args) {\n if (RESERVED_EVENTS.hasOwnProperty(ev)) {\n throw new Error('\"' + ev.toString() + '\" is a reserved event name');\n }\n args.unshift(ev);\n if (this._opts.retries && !this.flags.fromQueue && !this.flags.volatile) {\n this._addToQueue(args);\n return this;\n }\n const packet = {\n type: PacketType.EVENT,\n data: args,\n };\n packet.options = {};\n packet.options.compress = this.flags.compress !== false;\n // event ack callback\n if (\"function\" === typeof args[args.length - 1]) {\n const id = this.ids++;\n const ack = args.pop();\n this._registerAckCallback(id, ack);\n packet.id = id;\n }\n const isTransportWritable = this.io.engine &&\n this.io.engine.transport &&\n this.io.engine.transport.writable;\n const discardPacket = this.flags.volatile && (!isTransportWritable || !this.connected);\n if (discardPacket) {\n }\n else if (this.connected) {\n this.notifyOutgoingListeners(packet);\n this.packet(packet);\n }\n else {\n this.sendBuffer.push(packet);\n }\n this.flags = {};\n return this;\n }\n /**\n * @private\n */\n _registerAckCallback(id, ack) {\n var _a;\n const timeout = (_a = this.flags.timeout) !== null && _a !== void 0 ? _a : this._opts.ackTimeout;\n if (timeout === undefined) {\n this.acks[id] = ack;\n return;\n }\n // @ts-ignore\n const timer = this.io.setTimeoutFn(() => {\n delete this.acks[id];\n for (let i = 0; i < this.sendBuffer.length; i++) {\n if (this.sendBuffer[i].id === id) {\n this.sendBuffer.splice(i, 1);\n }\n }\n ack.call(this, new Error(\"operation has timed out\"));\n }, timeout);\n this.acks[id] = (...args) => {\n // @ts-ignore\n this.io.clearTimeoutFn(timer);\n ack.apply(this, [null, ...args]);\n };\n }\n /**\n * Emits an event and waits for an acknowledgement\n *\n * @example\n * // without timeout\n * const response = await socket.emitWithAck(\"hello\", \"world\");\n *\n * // with a specific timeout\n * try {\n * const response = await socket.timeout(1000).emitWithAck(\"hello\", \"world\");\n * } catch (err) {\n * // the server did not acknowledge the event in the given delay\n * }\n *\n * @return a Promise that will be fulfilled when the server acknowledges the event\n */\n emitWithAck(ev, ...args) {\n // the timeout flag is optional\n const withErr = this.flags.timeout !== undefined || this._opts.ackTimeout !== undefined;\n return new Promise((resolve, reject) => {\n args.push((arg1, arg2) => {\n if (withErr) {\n return arg1 ? reject(arg1) : resolve(arg2);\n }\n else {\n return resolve(arg1);\n }\n });\n this.emit(ev, ...args);\n });\n }\n /**\n * Add the packet to the queue.\n * @param args\n * @private\n */\n _addToQueue(args) {\n let ack;\n if (typeof args[args.length - 1] === \"function\") {\n ack = args.pop();\n }\n const packet = {\n id: this._queueSeq++,\n tryCount: 0,\n pending: false,\n args,\n flags: Object.assign({ fromQueue: true }, this.flags),\n };\n args.push((err, ...responseArgs) => {\n if (packet !== this._queue[0]) {\n // the packet has already been acknowledged\n return;\n }\n const hasError = err !== null;\n if (hasError) {\n if (packet.tryCount > this._opts.retries) {\n this._queue.shift();\n if (ack) {\n ack(err);\n }\n }\n }\n else {\n this._queue.shift();\n if (ack) {\n ack(null, ...responseArgs);\n }\n }\n packet.pending = false;\n return this._drainQueue();\n });\n this._queue.push(packet);\n this._drainQueue();\n }\n /**\n * Send the first packet of the queue, and wait for an acknowledgement from the server.\n * @param force - whether to resend a packet that has not been acknowledged yet\n *\n * @private\n */\n _drainQueue(force = false) {\n if (!this.connected || this._queue.length === 0) {\n return;\n }\n const packet = this._queue[0];\n if (packet.pending && !force) {\n return;\n }\n packet.pending = true;\n packet.tryCount++;\n this.flags = packet.flags;\n this.emit.apply(this, packet.args);\n }\n /**\n * Sends a packet.\n *\n * @param packet\n * @private\n */\n packet(packet) {\n packet.nsp = this.nsp;\n this.io._packet(packet);\n }\n /**\n * Called upon engine `open`.\n *\n * @private\n */\n onopen() {\n if (typeof this.auth == \"function\") {\n this.auth((data) => {\n this._sendConnectPacket(data);\n });\n }\n else {\n this._sendConnectPacket(this.auth);\n }\n }\n /**\n * Sends a CONNECT packet to initiate the Socket.IO session.\n *\n * @param data\n * @private\n */\n _sendConnectPacket(data) {\n this.packet({\n type: PacketType.CONNECT,\n data: this._pid\n ? Object.assign({ pid: this._pid, offset: this._lastOffset }, data)\n : data,\n });\n }\n /**\n * Called upon engine or manager `error`.\n *\n * @param err\n * @private\n */\n onerror(err) {\n if (!this.connected) {\n this.emitReserved(\"connect_error\", err);\n }\n }\n /**\n * Called upon engine `close`.\n *\n * @param reason\n * @param description\n * @private\n */\n onclose(reason, description) {\n this.connected = false;\n delete this.id;\n this.emitReserved(\"disconnect\", reason, description);\n }\n /**\n * Called with socket packet.\n *\n * @param packet\n * @private\n */\n onpacket(packet) {\n const sameNamespace = packet.nsp === this.nsp;\n if (!sameNamespace)\n return;\n switch (packet.type) {\n case PacketType.CONNECT:\n if (packet.data && packet.data.sid) {\n this.onconnect(packet.data.sid, packet.data.pid);\n }\n else {\n this.emitReserved(\"connect_error\", new Error(\"It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)\"));\n }\n break;\n case PacketType.EVENT:\n case PacketType.BINARY_EVENT:\n this.onevent(packet);\n break;\n case PacketType.ACK:\n case PacketType.BINARY_ACK:\n this.onack(packet);\n break;\n case PacketType.DISCONNECT:\n this.ondisconnect();\n break;\n case PacketType.CONNECT_ERROR:\n this.destroy();\n const err = new Error(packet.data.message);\n // @ts-ignore\n err.data = packet.data.data;\n this.emitReserved(\"connect_error\", err);\n break;\n }\n }\n /**\n * Called upon a server event.\n *\n * @param packet\n * @private\n */\n onevent(packet) {\n const args = packet.data || [];\n if (null != packet.id) {\n args.push(this.ack(packet.id));\n }\n if (this.connected) {\n this.emitEvent(args);\n }\n else {\n this.receiveBuffer.push(Object.freeze(args));\n }\n }\n emitEvent(args) {\n if (this._anyListeners && this._anyListeners.length) {\n const listeners = this._anyListeners.slice();\n for (const listener of listeners) {\n listener.apply(this, args);\n }\n }\n super.emit.apply(this, args);\n if (this._pid && args.length && typeof args[args.length - 1] === \"string\") {\n this._lastOffset = args[args.length - 1];\n }\n }\n /**\n * Produces an ack callback to emit with an event.\n *\n * @private\n */\n ack(id) {\n const self = this;\n let sent = false;\n return function (...args) {\n // prevent double callbacks\n if (sent)\n return;\n sent = true;\n self.packet({\n type: PacketType.ACK,\n id: id,\n data: args,\n });\n };\n }\n /**\n * Called upon a server acknowlegement.\n *\n * @param packet\n * @private\n */\n onack(packet) {\n const ack = this.acks[packet.id];\n if (\"function\" === typeof ack) {\n ack.apply(this, packet.data);\n delete this.acks[packet.id];\n }\n else {\n }\n }\n /**\n * Called upon server connect.\n *\n * @private\n */\n onconnect(id, pid) {\n this.id = id;\n this.recovered = pid && this._pid === pid;\n this._pid = pid; // defined only if connection state recovery is enabled\n this.connected = true;\n this.emitBuffered();\n this.emitReserved(\"connect\");\n this._drainQueue(true);\n }\n /**\n * Emit buffered events (received and emitted).\n *\n * @private\n */\n emitBuffered() {\n this.receiveBuffer.forEach((args) => this.emitEvent(args));\n this.receiveBuffer = [];\n this.sendBuffer.forEach((packet) => {\n this.notifyOutgoingListeners(packet);\n this.packet(packet);\n });\n this.sendBuffer = [];\n }\n /**\n * Called upon server disconnect.\n *\n * @private\n */\n ondisconnect() {\n this.destroy();\n this.onclose(\"io server disconnect\");\n }\n /**\n * Called upon forced client/server side disconnections,\n * this method ensures the manager stops tracking us and\n * that reconnections don't get triggered for this.\n *\n * @private\n */\n destroy() {\n if (this.subs) {\n // clean subscriptions to avoid reconnections\n this.subs.forEach((subDestroy) => subDestroy());\n this.subs = undefined;\n }\n this.io[\"_destroy\"](this);\n }\n /**\n * Disconnects the socket manually. In that case, the socket will not try to reconnect.\n *\n * If this is the last active Socket instance of the {@link Manager}, the low-level connection will be closed.\n *\n * @example\n * const socket = io();\n *\n * socket.on(\"disconnect\", (reason) => {\n * // console.log(reason); prints \"io client disconnect\"\n * });\n *\n * socket.disconnect();\n *\n * @return self\n */\n disconnect() {\n if (this.connected) {\n this.packet({ type: PacketType.DISCONNECT });\n }\n // remove socket from pool\n this.destroy();\n if (this.connected) {\n // fire events\n this.onclose(\"io client disconnect\");\n }\n return this;\n }\n /**\n * Alias for {@link disconnect()}.\n *\n * @return self\n */\n close() {\n return this.disconnect();\n }\n /**\n * Sets the compress flag.\n *\n * @example\n * socket.compress(false).emit(\"hello\");\n *\n * @param compress - if `true`, compresses the sending data\n * @return self\n */\n compress(compress) {\n this.flags.compress = compress;\n return this;\n }\n /**\n * Sets a modifier for a subsequent event emission that the event message will be dropped when this socket is not\n * ready to send messages.\n *\n * @example\n * socket.volatile.emit(\"hello\"); // the server may or may not receive it\n *\n * @returns self\n */\n get volatile() {\n this.flags.volatile = true;\n return this;\n }\n /**\n * Sets a modifier for a subsequent event emission that the callback will be called with an error when the\n * given number of milliseconds have elapsed without an acknowledgement from the server:\n *\n * @example\n * socket.timeout(5000).emit(\"my-event\", (err) => {\n * if (err) {\n * // the server did not acknowledge the event in the given delay\n * }\n * });\n *\n * @returns self\n */\n timeout(timeout) {\n this.flags.timeout = timeout;\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback.\n *\n * @example\n * socket.onAny((event, ...args) => {\n * console.log(`got ${event}`);\n * });\n *\n * @param listener\n */\n onAny(listener) {\n this._anyListeners = this._anyListeners || [];\n this._anyListeners.push(listener);\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback. The listener is added to the beginning of the listeners array.\n *\n * @example\n * socket.prependAny((event, ...args) => {\n * console.log(`got event ${event}`);\n * });\n *\n * @param listener\n */\n prependAny(listener) {\n this._anyListeners = this._anyListeners || [];\n this._anyListeners.unshift(listener);\n return this;\n }\n /**\n * Removes the listener that will be fired when any event is emitted.\n *\n * @example\n * const catchAllListener = (event, ...args) => {\n * console.log(`got event ${event}`);\n * }\n *\n * socket.onAny(catchAllListener);\n *\n * // remove a specific listener\n * socket.offAny(catchAllListener);\n *\n * // or remove all listeners\n * socket.offAny();\n *\n * @param listener\n */\n offAny(listener) {\n if (!this._anyListeners) {\n return this;\n }\n if (listener) {\n const listeners = this._anyListeners;\n for (let i = 0; i < listeners.length; i++) {\n if (listener === listeners[i]) {\n listeners.splice(i, 1);\n return this;\n }\n }\n }\n else {\n this._anyListeners = [];\n }\n return this;\n }\n /**\n * Returns an array of listeners that are listening for any event that is specified. This array can be manipulated,\n * e.g. to remove listeners.\n */\n listenersAny() {\n return this._anyListeners || [];\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback.\n *\n * Note: acknowledgements sent to the server are not included.\n *\n * @example\n * socket.onAnyOutgoing((event, ...args) => {\n * console.log(`sent event ${event}`);\n * });\n *\n * @param listener\n */\n onAnyOutgoing(listener) {\n this._anyOutgoingListeners = this._anyOutgoingListeners || [];\n this._anyOutgoingListeners.push(listener);\n return this;\n }\n /**\n * Adds a listener that will be fired when any event is emitted. The event name is passed as the first argument to the\n * callback. The listener is added to the beginning of the listeners array.\n *\n * Note: acknowledgements sent to the server are not included.\n *\n * @example\n * socket.prependAnyOutgoing((event, ...args) => {\n * console.log(`sent event ${event}`);\n * });\n *\n * @param listener\n */\n prependAnyOutgoing(listener) {\n this._anyOutgoingListeners = this._anyOutgoingListeners || [];\n this._anyOutgoingListeners.unshift(listener);\n return this;\n }\n /**\n * Removes the listener that will be fired when any event is emitted.\n *\n * @example\n * const catchAllListener = (event, ...args) => {\n * console.log(`sent event ${event}`);\n * }\n *\n * socket.onAnyOutgoing(catchAllListener);\n *\n * // remove a specific listener\n * socket.offAnyOutgoing(catchAllListener);\n *\n * // or remove all listeners\n * socket.offAnyOutgoing();\n *\n * @param [listener] - the catch-all listener (optional)\n */\n offAnyOutgoing(listener) {\n if (!this._anyOutgoingListeners) {\n return this;\n }\n if (listener) {\n const listeners = this._anyOutgoingListeners;\n for (let i = 0; i < listeners.length; i++) {\n if (listener === listeners[i]) {\n listeners.splice(i, 1);\n return this;\n }\n }\n }\n else {\n this._anyOutgoingListeners = [];\n }\n return this;\n }\n /**\n * Returns an array of listeners that are listening for any event that is specified. This array can be manipulated,\n * e.g. to remove listeners.\n */\n listenersAnyOutgoing() {\n return this._anyOutgoingListeners || [];\n }\n /**\n * Notify the listeners for each packet sent\n *\n * @param packet\n *\n * @private\n */\n notifyOutgoingListeners(packet) {\n if (this._anyOutgoingListeners && this._anyOutgoingListeners.length) {\n const listeners = this._anyOutgoingListeners.slice();\n for (const listener of listeners) {\n listener.apply(this, packet.data);\n }\n }\n }\n}\n","/**\n * Initialize backoff timer with `opts`.\n *\n * - `min` initial timeout in milliseconds [100]\n * - `max` max timeout [10000]\n * - `jitter` [0]\n * - `factor` [2]\n *\n * @param {Object} opts\n * @api public\n */\nexport function Backoff(opts) {\n opts = opts || {};\n this.ms = opts.min || 100;\n this.max = opts.max || 10000;\n this.factor = opts.factor || 2;\n this.jitter = opts.jitter > 0 && opts.jitter <= 1 ? opts.jitter : 0;\n this.attempts = 0;\n}\n/**\n * Return the backoff duration.\n *\n * @return {Number}\n * @api public\n */\nBackoff.prototype.duration = function () {\n var ms = this.ms * Math.pow(this.factor, this.attempts++);\n if (this.jitter) {\n var rand = Math.random();\n var deviation = Math.floor(rand * this.jitter * ms);\n ms = (Math.floor(rand * 10) & 1) == 0 ? ms - deviation : ms + deviation;\n }\n return Math.min(ms, this.max) | 0;\n};\n/**\n * Reset the number of attempts.\n *\n * @api public\n */\nBackoff.prototype.reset = function () {\n this.attempts = 0;\n};\n/**\n * Set the minimum duration\n *\n * @api public\n */\nBackoff.prototype.setMin = function (min) {\n this.ms = min;\n};\n/**\n * Set the maximum duration\n *\n * @api public\n */\nBackoff.prototype.setMax = function (max) {\n this.max = max;\n};\n/**\n * Set the jitter\n *\n * @api public\n */\nBackoff.prototype.setJitter = function (jitter) {\n this.jitter = jitter;\n};\n","import { Socket as Engine, installTimerFunctions, nextTick, } from \"engine.io-client\";\nimport { Socket } from \"./socket.js\";\nimport * as parser from \"socket.io-parser\";\nimport { on } from \"./on.js\";\nimport { Backoff } from \"./contrib/backo2.js\";\nimport { Emitter, } from \"@socket.io/component-emitter\";\nexport class Manager extends Emitter {\n constructor(uri, opts) {\n var _a;\n super();\n this.nsps = {};\n this.subs = [];\n if (uri && \"object\" === typeof uri) {\n opts = uri;\n uri = undefined;\n }\n opts = opts || {};\n opts.path = opts.path || \"/socket.io\";\n this.opts = opts;\n installTimerFunctions(this, opts);\n this.reconnection(opts.reconnection !== false);\n this.reconnectionAttempts(opts.reconnectionAttempts || Infinity);\n this.reconnectionDelay(opts.reconnectionDelay || 1000);\n this.reconnectionDelayMax(opts.reconnectionDelayMax || 5000);\n this.randomizationFactor((_a = opts.randomizationFactor) !== null && _a !== void 0 ? _a : 0.5);\n this.backoff = new Backoff({\n min: this.reconnectionDelay(),\n max: this.reconnectionDelayMax(),\n jitter: this.randomizationFactor(),\n });\n this.timeout(null == opts.timeout ? 20000 : opts.timeout);\n this._readyState = \"closed\";\n this.uri = uri;\n const _parser = opts.parser || parser;\n this.encoder = new _parser.Encoder();\n this.decoder = new _parser.Decoder();\n this._autoConnect = opts.autoConnect !== false;\n if (this._autoConnect)\n this.open();\n }\n reconnection(v) {\n if (!arguments.length)\n return this._reconnection;\n this._reconnection = !!v;\n return this;\n }\n reconnectionAttempts(v) {\n if (v === undefined)\n return this._reconnectionAttempts;\n this._reconnectionAttempts = v;\n return this;\n }\n reconnectionDelay(v) {\n var _a;\n if (v === undefined)\n return this._reconnectionDelay;\n this._reconnectionDelay = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setMin(v);\n return this;\n }\n randomizationFactor(v) {\n var _a;\n if (v === undefined)\n return this._randomizationFactor;\n this._randomizationFactor = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setJitter(v);\n return this;\n }\n reconnectionDelayMax(v) {\n var _a;\n if (v === undefined)\n return this._reconnectionDelayMax;\n this._reconnectionDelayMax = v;\n (_a = this.backoff) === null || _a === void 0 ? void 0 : _a.setMax(v);\n return this;\n }\n timeout(v) {\n if (!arguments.length)\n return this._timeout;\n this._timeout = v;\n return this;\n }\n /**\n * Starts trying to reconnect if reconnection is enabled and we have not\n * started reconnecting yet\n *\n * @private\n */\n maybeReconnectOnOpen() {\n // Only try to reconnect if it's the first time we're connecting\n if (!this._reconnecting &&\n this._reconnection &&\n this.backoff.attempts === 0) {\n // keeps reconnection from firing twice for the same reconnection loop\n this.reconnect();\n }\n }\n /**\n * Sets the current transport `socket`.\n *\n * @param {Function} fn - optional, callback\n * @return self\n * @public\n */\n open(fn) {\n if (~this._readyState.indexOf(\"open\"))\n return this;\n this.engine = new Engine(this.uri, this.opts);\n const socket = this.engine;\n const self = this;\n this._readyState = \"opening\";\n this.skipReconnect = false;\n // emit `open`\n const openSubDestroy = on(socket, \"open\", function () {\n self.onopen();\n fn && fn();\n });\n const onError = (err) => {\n this.cleanup();\n this._readyState = \"closed\";\n this.emitReserved(\"error\", err);\n if (fn) {\n fn(err);\n }\n else {\n // Only do this if there is no fn to handle the error\n this.maybeReconnectOnOpen();\n }\n };\n // emit `error`\n const errorSub = on(socket, \"error\", onError);\n if (false !== this._timeout) {\n const timeout = this._timeout;\n // set timer\n const timer = this.setTimeoutFn(() => {\n openSubDestroy();\n onError(new Error(\"timeout\"));\n socket.close();\n }, timeout);\n if (this.opts.autoUnref) {\n timer.unref();\n }\n this.subs.push(() => {\n this.clearTimeoutFn(timer);\n });\n }\n this.subs.push(openSubDestroy);\n this.subs.push(errorSub);\n return this;\n }\n /**\n * Alias for open()\n *\n * @return self\n * @public\n */\n connect(fn) {\n return this.open(fn);\n }\n /**\n * Called upon transport open.\n *\n * @private\n */\n onopen() {\n // clear old subs\n this.cleanup();\n // mark as open\n this._readyState = \"open\";\n this.emitReserved(\"open\");\n // add new subs\n const socket = this.engine;\n this.subs.push(on(socket, \"ping\", this.onping.bind(this)), on(socket, \"data\", this.ondata.bind(this)), on(socket, \"error\", this.onerror.bind(this)), on(socket, \"close\", this.onclose.bind(this)), on(this.decoder, \"decoded\", this.ondecoded.bind(this)));\n }\n /**\n * Called upon a ping.\n *\n * @private\n */\n onping() {\n this.emitReserved(\"ping\");\n }\n /**\n * Called with data.\n *\n * @private\n */\n ondata(data) {\n try {\n this.decoder.add(data);\n }\n catch (e) {\n this.onclose(\"parse error\", e);\n }\n }\n /**\n * Called when parser fully decodes a packet.\n *\n * @private\n */\n ondecoded(packet) {\n // the nextTick call prevents an exception in a user-provided event listener from triggering a disconnection due to a \"parse error\"\n nextTick(() => {\n this.emitReserved(\"packet\", packet);\n }, this.setTimeoutFn);\n }\n /**\n * Called upon socket error.\n *\n * @private\n */\n onerror(err) {\n this.emitReserved(\"error\", err);\n }\n /**\n * Creates a new socket for the given `nsp`.\n *\n * @return {Socket}\n * @public\n */\n socket(nsp, opts) {\n let socket = this.nsps[nsp];\n if (!socket) {\n socket = new Socket(this, nsp, opts);\n this.nsps[nsp] = socket;\n }\n else if (this._autoConnect && !socket.active) {\n socket.connect();\n }\n return socket;\n }\n /**\n * Called upon a socket close.\n *\n * @param socket\n * @private\n */\n _destroy(socket) {\n const nsps = Object.keys(this.nsps);\n for (const nsp of nsps) {\n const socket = this.nsps[nsp];\n if (socket.active) {\n return;\n }\n }\n this._close();\n }\n /**\n * Writes a packet.\n *\n * @param packet\n * @private\n */\n _packet(packet) {\n const encodedPackets = this.encoder.encode(packet);\n for (let i = 0; i < encodedPackets.length; i++) {\n this.engine.write(encodedPackets[i], packet.options);\n }\n }\n /**\n * Clean up transport subscriptions and packet buffer.\n *\n * @private\n */\n cleanup() {\n this.subs.forEach((subDestroy) => subDestroy());\n this.subs.length = 0;\n this.decoder.destroy();\n }\n /**\n * Close the current socket.\n *\n * @private\n */\n _close() {\n this.skipReconnect = true;\n this._reconnecting = false;\n this.onclose(\"forced close\");\n if (this.engine)\n this.engine.close();\n }\n /**\n * Alias for close()\n *\n * @private\n */\n disconnect() {\n return this._close();\n }\n /**\n * Called upon engine close.\n *\n * @private\n */\n onclose(reason, description) {\n this.cleanup();\n this.backoff.reset();\n this._readyState = \"closed\";\n this.emitReserved(\"close\", reason, description);\n if (this._reconnection && !this.skipReconnect) {\n this.reconnect();\n }\n }\n /**\n * Attempt a reconnection.\n *\n * @private\n */\n reconnect() {\n if (this._reconnecting || this.skipReconnect)\n return this;\n const self = this;\n if (this.backoff.attempts >= this._reconnectionAttempts) {\n this.backoff.reset();\n this.emitReserved(\"reconnect_failed\");\n this._reconnecting = false;\n }\n else {\n const delay = this.backoff.duration();\n this._reconnecting = true;\n const timer = this.setTimeoutFn(() => {\n if (self.skipReconnect)\n return;\n this.emitReserved(\"reconnect_attempt\", self.backoff.attempts);\n // check again for the case socket closed in above events\n if (self.skipReconnect)\n return;\n self.open((err) => {\n if (err) {\n self._reconnecting = false;\n self.reconnect();\n this.emitReserved(\"reconnect_error\", err);\n }\n else {\n self.onreconnect();\n }\n });\n }, delay);\n if (this.opts.autoUnref) {\n timer.unref();\n }\n this.subs.push(() => {\n this.clearTimeoutFn(timer);\n });\n }\n }\n /**\n * Called upon successful reconnect.\n *\n * @private\n */\n onreconnect() {\n const attempt = this.backoff.attempts;\n this._reconnecting = false;\n this.backoff.reset();\n this.emitReserved(\"reconnect\", attempt);\n }\n}\n","import { url } from \"./url.js\";\nimport { Manager } from \"./manager.js\";\nimport { Socket } from \"./socket.js\";\n/**\n * Managers cache.\n */\nconst cache = {};\nfunction lookup(uri, opts) {\n if (typeof uri === \"object\") {\n opts = uri;\n uri = undefined;\n }\n opts = opts || {};\n const parsed = url(uri, opts.path || \"/socket.io\");\n const source = parsed.source;\n const id = parsed.id;\n const path = parsed.path;\n const sameNamespace = cache[id] && path in cache[id][\"nsps\"];\n const newConnection = opts.forceNew ||\n opts[\"force new connection\"] ||\n false === opts.multiplex ||\n sameNamespace;\n let io;\n if (newConnection) {\n io = new Manager(source, opts);\n }\n else {\n if (!cache[id]) {\n cache[id] = new Manager(source, opts);\n }\n io = cache[id];\n }\n if (parsed.query && !opts.query) {\n opts.query = parsed.queryKey;\n }\n return io.socket(parsed.path, opts);\n}\n// so that \"lookup\" can be used both as a function (e.g. `io(...)`) and as a\n// namespace (e.g. `io.connect(...)`), for backward compatibility\nObject.assign(lookup, {\n Manager,\n Socket,\n io: lookup,\n connect: lookup,\n});\n/**\n * Protocol version.\n *\n * @public\n */\nexport { protocol } from \"socket.io-parser\";\n/**\n * Expose constructors for standalone build.\n *\n * @public\n */\nexport { Manager, Socket, lookup as io, lookup as connect, lookup as default, };\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isBytes = isBytes;\nexports.number = number;\nexports.bool = bool;\nexports.bytes = bytes;\nexports.hash = hash;\nexports.exists = exists;\nexports.output = output;\nfunction number(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error(`positive integer expected, not ${n}`);\n}\nfunction bool(b) {\n if (typeof b !== 'boolean')\n throw new Error(`boolean expected, not ${b}`);\n}\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nfunction bytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error(`Uint8Array expected of length ${lengths}, not of length=${b.length}`);\n}\nfunction hash(hash) {\n if (typeof hash !== 'function' || typeof hash.create !== 'function')\n throw new Error('hash must be wrapped by utils.wrapConstructor');\n number(hash.outputLen);\n number(hash.blockLen);\n}\nfunction exists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\nfunction output(out, instance) {\n bytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error(`digestInto() expects output buffer of length at least ${min}`);\n }\n}\nconst assert = { number, bool, bytes, hash, exists, output };\nexports.default = assert;\n//# sourceMappingURL=_assert.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.wrapCipher = exports.Hash = exports.nextTick = exports.isLE = exports.createView = exports.u32 = exports.u16 = exports.u8 = void 0;\nexports.bytesToHex = bytesToHex;\nexports.hexToBytes = hexToBytes;\nexports.hexToNumber = hexToNumber;\nexports.bytesToNumberBE = bytesToNumberBE;\nexports.numberToBytesBE = numberToBytesBE;\nexports.asyncLoop = asyncLoop;\nexports.utf8ToBytes = utf8ToBytes;\nexports.bytesToUtf8 = bytesToUtf8;\nexports.toBytes = toBytes;\nexports.concatBytes = concatBytes;\nexports.checkOpts = checkOpts;\nexports.equalBytes = equalBytes;\nexports.setBigUint64 = setBigUint64;\nexports.u64Lengths = u64Lengths;\nexports.isAligned32 = isAligned32;\nexports.copyBytes = copyBytes;\nexports.clean = clean;\n/*! noble-ciphers - MIT License (c) 2023 Paul Miller (paulmillr.com) */\nconst _assert_js_1 = require(\"./_assert.js\");\n// Cast array to different type\nconst u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\nexports.u8 = u8;\nconst u16 = (arr) => new Uint16Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 2));\nexports.u16 = u16;\nconst u32 = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\nexports.u32 = u32;\n// Cast array to view\nconst createView = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\nexports.createView = createView;\n// big-endian hardware is rare. Just in case someone still decides to run ciphers:\n// early-throw an error because we don't support BE yet.\nexports.isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;\nif (!exports.isLE)\n throw new Error('Non little-endian hardware is not supported');\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n (0, _assert_js_1.bytes)(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\nfunction hexToNumber(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // Big Endian\n return BigInt(hex === '' ? '0' : `0x${hex}`);\n}\n// BE: Big Endian, LE: Little Endian\nfunction bytesToNumberBE(bytes) {\n return hexToNumber(bytesToHex(bytes));\n}\nfunction numberToBytesBE(n, len) {\n return hexToBytes(n.toString(16).padStart(len * 2, '0'));\n}\n// There is no setImmediate in browser and setTimeout is slow.\n// call of async fn will return Promise, which will be fullfiled only on\n// next scheduler queue processing step and this is exactly what we need.\nconst nextTick = async () => { };\nexports.nextTick = nextTick;\n// Returns control to thread each 'tick' ms to avoid blocking\nasync function asyncLoop(iters, tick, cb) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick)\n continue;\n await (0, exports.nextTick)();\n ts += diff;\n }\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`string expected, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n/**\n * @example bytesToUtf8(new Uint8Array([97, 98, 99])) // 'abc'\n */\nfunction bytesToUtf8(bytes) {\n return new TextDecoder().decode(bytes);\n}\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n else if ((0, _assert_js_1.isBytes)(data))\n data = copyBytes(data);\n else\n throw new Error(`Uint8Array expected, got ${typeof data}`);\n return data;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n (0, _assert_js_1.bytes)(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\nfunction checkOpts(defaults, opts) {\n if (opts == null || typeof opts !== 'object')\n throw new Error('options must be defined');\n const merged = Object.assign(defaults, opts);\n return merged;\n}\n// Compares 2 u8a-s in kinda constant time\nfunction equalBytes(a, b) {\n if (a.length !== b.length)\n return false;\n let diff = 0;\n for (let i = 0; i < a.length; i++)\n diff |= a[i] ^ b[i];\n return diff === 0;\n}\n// For runtime check if class implements interface\nclass Hash {\n}\nexports.Hash = Hash;\n/**\n * @__NO_SIDE_EFFECTS__\n */\nconst wrapCipher = (params, c) => {\n Object.assign(c, params);\n return c;\n};\nexports.wrapCipher = wrapCipher;\n// Polyfill for Safari 14\nfunction setBigUint64(view, byteOffset, value, isLE) {\n if (typeof view.setBigUint64 === 'function')\n return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\nfunction u64Lengths(ciphertext, AAD) {\n const num = new Uint8Array(16);\n const view = (0, exports.createView)(num);\n setBigUint64(view, 0, BigInt(AAD ? AAD.length : 0), true);\n setBigUint64(view, 8, BigInt(ciphertext.length), true);\n return num;\n}\n// Is byte array aligned to 4 byte offset (u32)?\nfunction isAligned32(bytes) {\n return bytes.byteOffset % 4 === 0;\n}\n// copy bytes to new u8a (aligned). Because Buffer.slice is broken.\nfunction copyBytes(bytes) {\n return Uint8Array.from(bytes);\n}\nfunction clean(...arrays) {\n for (let i = 0; i < arrays.length; i++) {\n arrays[i].fill(0);\n }\n}\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AEAD_TAG_LENGTH = exports.XCHACHA20_NONCE_LENGTH = exports.CURVE25519_PUBLIC_KEY_SIZE = exports.ETH_PUBLIC_KEY_SIZE = exports.UNCOMPRESSED_PUBLIC_KEY_SIZE = exports.COMPRESSED_PUBLIC_KEY_SIZE = exports.SECRET_KEY_LENGTH = void 0;\n// elliptic\nexports.SECRET_KEY_LENGTH = 32;\nexports.COMPRESSED_PUBLIC_KEY_SIZE = 33;\nexports.UNCOMPRESSED_PUBLIC_KEY_SIZE = 65;\nexports.ETH_PUBLIC_KEY_SIZE = 64;\nexports.CURVE25519_PUBLIC_KEY_SIZE = 32;\n// symmetric\nexports.XCHACHA20_NONCE_LENGTH = 24;\nexports.AEAD_TAG_LENGTH = 16;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ephemeralKeySize = exports.symmetricNonceLength = exports.symmetricAlgorithm = exports.isHkdfKeyCompressed = exports.isEphemeralKeyCompressed = exports.ellipticCurve = exports.ECIES_CONFIG = void 0;\nvar consts_1 = require(\"./consts\");\nvar Config = /** @class */ (function () {\n function Config() {\n this.ellipticCurve = \"secp256k1\";\n this.isEphemeralKeyCompressed = false; // secp256k1 only\n this.isHkdfKeyCompressed = false; // secp256k1 only\n this.symmetricAlgorithm = \"aes-256-gcm\";\n this.symmetricNonceLength = 16; // aes-256-gcm only\n }\n return Config;\n}());\nexports.ECIES_CONFIG = new Config();\nvar ellipticCurve = function () { return exports.ECIES_CONFIG.ellipticCurve; };\nexports.ellipticCurve = ellipticCurve;\nvar isEphemeralKeyCompressed = function () { return exports.ECIES_CONFIG.isEphemeralKeyCompressed; };\nexports.isEphemeralKeyCompressed = isEphemeralKeyCompressed;\nvar isHkdfKeyCompressed = function () { return exports.ECIES_CONFIG.isHkdfKeyCompressed; };\nexports.isHkdfKeyCompressed = isHkdfKeyCompressed;\nvar symmetricAlgorithm = function () { return exports.ECIES_CONFIG.symmetricAlgorithm; };\nexports.symmetricAlgorithm = symmetricAlgorithm;\nvar symmetricNonceLength = function () { return exports.ECIES_CONFIG.symmetricNonceLength; };\nexports.symmetricNonceLength = symmetricNonceLength;\nvar ephemeralKeySize = function () {\n var mapping = {\n secp256k1: exports.ECIES_CONFIG.isEphemeralKeyCompressed\n ? consts_1.COMPRESSED_PUBLIC_KEY_SIZE\n : consts_1.UNCOMPRESSED_PUBLIC_KEY_SIZE,\n x25519: consts_1.CURVE25519_PUBLIC_KEY_SIZE,\n ed25519: consts_1.CURVE25519_PUBLIC_KEY_SIZE,\n };\n if (exports.ECIES_CONFIG.ellipticCurve in mapping) {\n return mapping[exports.ECIES_CONFIG.ellipticCurve];\n } /* v8 ignore next 2 */\n else {\n throw new Error(\"Not implemented\");\n }\n};\nexports.ephemeralKeySize = ephemeralKeySize;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.crypto = void 0;\nexports.crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n//# sourceMappingURL=crypto.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.gcm = exports.ctr = exports.cbc = exports.utils = void 0;\nexports.randomBytes = randomBytes;\nexports.getWebcryptoSubtle = getWebcryptoSubtle;\nexports.managedNonce = managedNonce;\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.js on#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated, we can just drop the import.\n//\n// Use full path so that Node.js can rewrite it to `cryptoNode.js`.\nconst crypto_1 = require(\"@noble/ciphers/crypto\");\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\n/**\n * Secure PRNG. Uses `crypto.getRandomValues`, which defers to OS.\n */\nfunction randomBytes(bytesLength = 32) {\n if (crypto_1.crypto && typeof crypto_1.crypto.getRandomValues === 'function') {\n return crypto_1.crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n // Legacy Node.js compatibility\n if (crypto_1.crypto && typeof crypto_1.crypto.randomBytes === 'function') {\n return crypto_1.crypto.randomBytes(bytesLength);\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\nfunction getWebcryptoSubtle() {\n if (crypto_1.crypto && typeof crypto_1.crypto.subtle === 'object' && crypto_1.crypto.subtle != null)\n return crypto_1.crypto.subtle;\n throw new Error('crypto.subtle must be defined');\n}\n// Uses CSPRG for nonce, nonce injected in ciphertext\nfunction managedNonce(fn) {\n (0, _assert_js_1.number)(fn.nonceLength);\n return ((key, ...args) => ({\n encrypt(plaintext, ...argsEnc) {\n const { nonceLength } = fn;\n const nonce = randomBytes(nonceLength);\n const ciphertext = fn(key, nonce, ...args).encrypt(plaintext, ...argsEnc);\n const out = (0, utils_js_1.concatBytes)(nonce, ciphertext);\n ciphertext.fill(0);\n return out;\n },\n decrypt(ciphertext, ...argsDec) {\n const { nonceLength } = fn;\n const nonce = ciphertext.subarray(0, nonceLength);\n const data = ciphertext.subarray(nonceLength);\n return fn(key, nonce, ...args).decrypt(data, ...argsDec);\n },\n }));\n}\n// Overridable\nexports.utils = {\n async encrypt(key, keyParams, cryptParams, plaintext) {\n const cr = getWebcryptoSubtle();\n const iKey = await cr.importKey('raw', key, keyParams, true, ['encrypt']);\n const ciphertext = await cr.encrypt(cryptParams, iKey, plaintext);\n return new Uint8Array(ciphertext);\n },\n async decrypt(key, keyParams, cryptParams, ciphertext) {\n const cr = getWebcryptoSubtle();\n const iKey = await cr.importKey('raw', key, keyParams, true, ['decrypt']);\n const plaintext = await cr.decrypt(cryptParams, iKey, ciphertext);\n return new Uint8Array(plaintext);\n },\n};\nconst mode = {\n CBC: 'AES-CBC',\n CTR: 'AES-CTR',\n GCM: 'AES-GCM',\n};\nfunction getCryptParams(algo, nonce, AAD) {\n if (algo === mode.CBC)\n return { name: mode.CBC, iv: nonce };\n if (algo === mode.CTR)\n return { name: mode.CTR, counter: nonce, length: 64 };\n if (algo === mode.GCM) {\n if (AAD)\n return { name: mode.GCM, iv: nonce, additionalData: AAD };\n else\n return { name: mode.GCM, iv: nonce };\n }\n throw new Error('unknown aes block mode');\n}\nfunction generate(algo) {\n return (key, nonce, AAD) => {\n (0, _assert_js_1.bytes)(key);\n (0, _assert_js_1.bytes)(nonce);\n const keyParams = { name: algo, length: key.length * 8 };\n const cryptParams = getCryptParams(algo, nonce, AAD);\n return {\n // keyLength,\n encrypt(plaintext) {\n (0, _assert_js_1.bytes)(plaintext);\n return exports.utils.encrypt(key, keyParams, cryptParams, plaintext);\n },\n decrypt(ciphertext) {\n (0, _assert_js_1.bytes)(ciphertext);\n return exports.utils.decrypt(key, keyParams, cryptParams, ciphertext);\n },\n };\n };\n}\nexports.cbc = generate(mode.CBC);\nexports.ctr = generate(mode.CTR);\nexports.gcm = generate(mode.GCM);\n// // Type tests\n// import { siv, gcm, ctr, ecb, cbc } from '../aes.js';\n// import { xsalsa20poly1305 } from '../salsa.js';\n// import { chacha20poly1305, xchacha20poly1305 } from '../chacha.js';\n// const wsiv = managedNonce(siv);\n// const wgcm = managedNonce(gcm);\n// const wctr = managedNonce(ctr);\n// const wcbc = managedNonce(cbc);\n// const wsalsapoly = managedNonce(xsalsa20poly1305);\n// const wchacha = managedNonce(chacha20poly1305);\n// const wxchacha = managedNonce(xchacha20poly1305);\n// // should fail\n// const wcbc2 = managedNonce(managedNonce(cbc));\n// const wctr = managedNonce(ctr);\n//# sourceMappingURL=webcrypto.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isBytes = isBytes;\nexports.number = number;\nexports.bool = bool;\nexports.bytes = bytes;\nexports.hash = hash;\nexports.exists = exists;\nexports.output = output;\nfunction number(n) {\n if (!Number.isSafeInteger(n) || n < 0)\n throw new Error(`positive integer expected, not ${n}`);\n}\nfunction bool(b) {\n if (typeof b !== 'boolean')\n throw new Error(`boolean expected, not ${b}`);\n}\n// copied from utils\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nfunction bytes(b, ...lengths) {\n if (!isBytes(b))\n throw new Error('Uint8Array expected');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new Error(`Uint8Array expected of length ${lengths}, not of length=${b.length}`);\n}\nfunction hash(h) {\n if (typeof h !== 'function' || typeof h.create !== 'function')\n throw new Error('Hash should be wrapped by utils.wrapConstructor');\n number(h.outputLen);\n number(h.blockLen);\n}\nfunction exists(instance, checkFinished = true) {\n if (instance.destroyed)\n throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished)\n throw new Error('Hash#digest() has already been called');\n}\nfunction output(out, instance) {\n bytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error(`digestInto() expects output buffer of length at least ${min}`);\n }\n}\nconst assert = { number, bool, bytes, hash, exists, output };\nexports.default = assert;\n//# sourceMappingURL=_assert.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.crypto = void 0;\nexports.crypto = typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n//# sourceMappingURL=crypto.js.map","\"use strict\";\n/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Hash = exports.nextTick = exports.byteSwapIfBE = exports.byteSwap = exports.isLE = exports.rotl = exports.rotr = exports.createView = exports.u32 = exports.u8 = void 0;\nexports.isBytes = isBytes;\nexports.byteSwap32 = byteSwap32;\nexports.bytesToHex = bytesToHex;\nexports.hexToBytes = hexToBytes;\nexports.asyncLoop = asyncLoop;\nexports.utf8ToBytes = utf8ToBytes;\nexports.toBytes = toBytes;\nexports.concatBytes = concatBytes;\nexports.checkOpts = checkOpts;\nexports.wrapConstructor = wrapConstructor;\nexports.wrapConstructorWithOpts = wrapConstructorWithOpts;\nexports.wrapXOFConstructorWithOpts = wrapXOFConstructorWithOpts;\nexports.randomBytes = randomBytes;\n// We use WebCrypto aka globalThis.crypto, which exists in browsers and node.js 16+.\n// node.js versions earlier than v19 don't declare it in global scope.\n// For node.js, package.json#exports field mapping rewrites import\n// from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated (2025-04-30), we can just drop the import.\nconst crypto_1 = require(\"@noble/hashes/crypto\");\nconst _assert_js_1 = require(\"./_assert.js\");\n// export { isBytes } from './_assert.js';\n// We can't reuse isBytes from _assert, because somehow this causes huge perf issues\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\n// Cast array to different type\nconst u8 = (arr) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\nexports.u8 = u8;\nconst u32 = (arr) => new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\nexports.u32 = u32;\n// Cast array to view\nconst createView = (arr) => new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\nexports.createView = createView;\n// The rotate right (circular right shift) operation for uint32\nconst rotr = (word, shift) => (word << (32 - shift)) | (word >>> shift);\nexports.rotr = rotr;\n// The rotate left (circular left shift) operation for uint32\nconst rotl = (word, shift) => (word << shift) | ((word >>> (32 - shift)) >>> 0);\nexports.rotl = rotl;\nexports.isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;\n// The byte swap operation for uint32\nconst byteSwap = (word) => ((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff);\nexports.byteSwap = byteSwap;\n// Conditionally byte swap if on a big-endian platform\nexports.byteSwapIfBE = exports.isLE ? (n) => n : (n) => (0, exports.byteSwap)(n);\n// In place byte swap for Uint32Array\nfunction byteSwap32(arr) {\n for (let i = 0; i < arr.length; i++) {\n arr[i] = (0, exports.byteSwap)(arr[i]);\n }\n}\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n (0, _assert_js_1.bytes)(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\n// There is no setImmediate in browser and setTimeout is slow.\n// call of async fn will return Promise, which will be fullfiled only on\n// next scheduler queue processing step and this is exactly what we need.\nconst nextTick = async () => { };\nexports.nextTick = nextTick;\n// Returns control to thread each 'tick' ms to avoid blocking\nasync function asyncLoop(iters, tick, cb) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick)\n continue;\n await (0, exports.nextTick)();\n ts += diff;\n }\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n/**\n * Normalizes (non-hex) string or Uint8Array to Uint8Array.\n * Warning: when Uint8Array is passed, it would NOT get copied.\n * Keep in mind for future mutable operations.\n */\nfunction toBytes(data) {\n if (typeof data === 'string')\n data = utf8ToBytes(data);\n (0, _assert_js_1.bytes)(data);\n return data;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n (0, _assert_js_1.bytes)(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n// For runtime check if class implements interface\nclass Hash {\n // Safe version that clones internal state\n clone() {\n return this._cloneInto();\n }\n}\nexports.Hash = Hash;\nconst toStr = {}.toString;\nfunction checkOpts(defaults, opts) {\n if (opts !== undefined && toStr.call(opts) !== '[object Object]')\n throw new Error('Options should be object or undefined');\n const merged = Object.assign(defaults, opts);\n return merged;\n}\nfunction wrapConstructor(hashCons) {\n const hashC = (msg) => hashCons().update(toBytes(msg)).digest();\n const tmp = hashCons();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashCons();\n return hashC;\n}\nfunction wrapConstructorWithOpts(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\nfunction wrapXOFConstructorWithOpts(hashCons) {\n const hashC = (msg, opts) => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({});\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts) => hashCons(opts);\n return hashC;\n}\n/**\n * Secure PRNG. Uses `crypto.getRandomValues`, which defers to OS.\n */\nfunction randomBytes(bytesLength = 32) {\n if (crypto_1.crypto && typeof crypto_1.crypto.getRandomValues === 'function') {\n return crypto_1.crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n // Legacy Node.js compatibility\n if (crypto_1.crypto && typeof crypto_1.crypto.randomBytes === 'function') {\n return crypto_1.crypto.randomBytes(bytesLength);\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.HashMD = exports.Maj = exports.Chi = void 0;\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\n/**\n * Polyfill for Safari 14\n */\nfunction setBigUint64(view, byteOffset, value, isLE) {\n if (typeof view.setBigUint64 === 'function')\n return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n/**\n * Choice: a ? b : c\n */\nconst Chi = (a, b, c) => (a & b) ^ (~a & c);\nexports.Chi = Chi;\n/**\n * Majority function, true if any two inputs is true\n */\nconst Maj = (a, b, c) => (a & b) ^ (a & c) ^ (b & c);\nexports.Maj = Maj;\n/**\n * Merkle-Damgard hash construction base class.\n * Could be used to create MD5, RIPEMD, SHA1, SHA2.\n */\nclass HashMD extends utils_js_1.Hash {\n constructor(blockLen, outputLen, padOffset, isLE) {\n super();\n this.blockLen = blockLen;\n this.outputLen = outputLen;\n this.padOffset = padOffset;\n this.isLE = isLE;\n this.finished = false;\n this.length = 0;\n this.pos = 0;\n this.destroyed = false;\n this.buffer = new Uint8Array(blockLen);\n this.view = (0, utils_js_1.createView)(this.buffer);\n }\n update(data) {\n (0, _assert_js_1.exists)(this);\n const { view, buffer, blockLen } = this;\n data = (0, utils_js_1.toBytes)(data);\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = (0, utils_js_1.createView)(data);\n for (; blockLen <= len - pos; pos += blockLen)\n this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out) {\n (0, _assert_js_1.exists)(this);\n (0, _assert_js_1.output)(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n this.buffer.subarray(pos).fill(0);\n // we have less than padOffset left in buffer, so we cannot put length in\n // current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++)\n buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = (0, utils_js_1.createView)(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4)\n throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length)\n throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++)\n oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to) {\n to || (to = new this.constructor());\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.length = length;\n to.pos = pos;\n to.finished = finished;\n to.destroyed = destroyed;\n if (length % blockLen)\n to.buffer.set(buffer);\n return to;\n }\n}\nexports.HashMD = HashMD;\n//# sourceMappingURL=_md.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.add5L = exports.add5H = exports.add4H = exports.add4L = exports.add3H = exports.add3L = exports.rotlBL = exports.rotlBH = exports.rotlSL = exports.rotlSH = exports.rotr32L = exports.rotr32H = exports.rotrBL = exports.rotrBH = exports.rotrSL = exports.rotrSH = exports.shrSL = exports.shrSH = exports.toBig = void 0;\nexports.fromBig = fromBig;\nexports.split = split;\nexports.add = add;\nconst U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);\nconst _32n = /* @__PURE__ */ BigInt(32);\n// We are not using BigUint64Array, because they are extremely slow as per 2022\nfunction fromBig(n, le = false) {\n if (le)\n return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\nfunction split(lst, le = false) {\n let Ah = new Uint32Array(lst.length);\n let Al = new Uint32Array(lst.length);\n for (let i = 0; i < lst.length; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\nconst toBig = (h, l) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0);\nexports.toBig = toBig;\n// for Shift in [0, 32)\nconst shrSH = (h, _l, s) => h >>> s;\nexports.shrSH = shrSH;\nconst shrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\nexports.shrSL = shrSL;\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h, l, s) => (h >>> s) | (l << (32 - s));\nexports.rotrSH = rotrSH;\nconst rotrSL = (h, l, s) => (h << (32 - s)) | (l >>> s);\nexports.rotrSL = rotrSL;\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h, l, s) => (h << (64 - s)) | (l >>> (s - 32));\nexports.rotrBH = rotrBH;\nconst rotrBL = (h, l, s) => (h >>> (s - 32)) | (l << (64 - s));\nexports.rotrBL = rotrBL;\n// Right rotate for shift===32 (just swaps l&h)\nconst rotr32H = (_h, l) => l;\nexports.rotr32H = rotr32H;\nconst rotr32L = (h, _l) => h;\nexports.rotr32L = rotr32L;\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h, l, s) => (h << s) | (l >>> (32 - s));\nexports.rotlSH = rotlSH;\nconst rotlSL = (h, l, s) => (l << s) | (h >>> (32 - s));\nexports.rotlSL = rotlSL;\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h, l, s) => (l << (s - 32)) | (h >>> (64 - s));\nexports.rotlBH = rotlBH;\nconst rotlBL = (h, l, s) => (h << (s - 32)) | (l >>> (64 - s));\nexports.rotlBL = rotlBL;\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\nfunction add(Ah, Al, Bh, Bl) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\n// Addition with more than 2 elements\nconst add3L = (Al, Bl, Cl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nexports.add3L = add3L;\nconst add3H = (low, Ah, Bh, Ch) => (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nexports.add3H = add3H;\nconst add4L = (Al, Bl, Cl, Dl) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nexports.add4L = add4L;\nconst add4H = (low, Ah, Bh, Ch, Dh) => (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nexports.add4H = add4H;\nconst add5L = (Al, Bl, Cl, Dl, El) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nexports.add5L = add5L;\nconst add5H = (low, Ah, Bh, Ch, Dh, Eh) => (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\nexports.add5H = add5H;\n// prettier-ignore\nconst u64 = {\n fromBig, split, toBig,\n shrSH, shrSL,\n rotrSH, rotrSL, rotrBH, rotrBL,\n rotr32H, rotr32L,\n rotlSH, rotlSL, rotlBH, rotlBL,\n add, add3L, add3H, add4L, add4H, add5H, add5L,\n};\nexports.default = u64;\n//# sourceMappingURL=_u64.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sha384 = exports.sha512_256 = exports.sha512_224 = exports.sha512 = exports.SHA384 = exports.SHA512_256 = exports.SHA512_224 = exports.SHA512 = void 0;\nconst _md_js_1 = require(\"./_md.js\");\nconst _u64_js_1 = require(\"./_u64.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// Round contants (first 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409):\n// prettier-ignore\nconst [SHA512_Kh, SHA512_Kl] = /* @__PURE__ */ (() => _u64_js_1.default.split([\n '0x428a2f98d728ae22', '0x7137449123ef65cd', '0xb5c0fbcfec4d3b2f', '0xe9b5dba58189dbbc',\n '0x3956c25bf348b538', '0x59f111f1b605d019', '0x923f82a4af194f9b', '0xab1c5ed5da6d8118',\n '0xd807aa98a3030242', '0x12835b0145706fbe', '0x243185be4ee4b28c', '0x550c7dc3d5ffb4e2',\n '0x72be5d74f27b896f', '0x80deb1fe3b1696b1', '0x9bdc06a725c71235', '0xc19bf174cf692694',\n '0xe49b69c19ef14ad2', '0xefbe4786384f25e3', '0x0fc19dc68b8cd5b5', '0x240ca1cc77ac9c65',\n '0x2de92c6f592b0275', '0x4a7484aa6ea6e483', '0x5cb0a9dcbd41fbd4', '0x76f988da831153b5',\n '0x983e5152ee66dfab', '0xa831c66d2db43210', '0xb00327c898fb213f', '0xbf597fc7beef0ee4',\n '0xc6e00bf33da88fc2', '0xd5a79147930aa725', '0x06ca6351e003826f', '0x142929670a0e6e70',\n '0x27b70a8546d22ffc', '0x2e1b21385c26c926', '0x4d2c6dfc5ac42aed', '0x53380d139d95b3df',\n '0x650a73548baf63de', '0x766a0abb3c77b2a8', '0x81c2c92e47edaee6', '0x92722c851482353b',\n '0xa2bfe8a14cf10364', '0xa81a664bbc423001', '0xc24b8b70d0f89791', '0xc76c51a30654be30',\n '0xd192e819d6ef5218', '0xd69906245565a910', '0xf40e35855771202a', '0x106aa07032bbd1b8',\n '0x19a4c116b8d2d0c8', '0x1e376c085141ab53', '0x2748774cdf8eeb99', '0x34b0bcb5e19b48a8',\n '0x391c0cb3c5c95a63', '0x4ed8aa4ae3418acb', '0x5b9cca4f7763e373', '0x682e6ff3d6b2b8a3',\n '0x748f82ee5defb2fc', '0x78a5636f43172f60', '0x84c87814a1f0ab72', '0x8cc702081a6439ec',\n '0x90befffa23631e28', '0xa4506cebde82bde9', '0xbef9a3f7b2c67915', '0xc67178f2e372532b',\n '0xca273eceea26619c', '0xd186b8c721c0c207', '0xeada7dd6cde0eb1e', '0xf57d4f7fee6ed178',\n '0x06f067aa72176fba', '0x0a637dc5a2c898a6', '0x113f9804bef90dae', '0x1b710b35131c471b',\n '0x28db77f523047d84', '0x32caab7b40c72493', '0x3c9ebe0a15c9bebc', '0x431d67c49c100d4c',\n '0x4cc5d4becb3e42b6', '0x597f299cfc657e2a', '0x5fcb6fab3ad6faec', '0x6c44198c4a475817'\n].map(n => BigInt(n))))();\n// Temporary buffer, not used to store anything between runs\nconst SHA512_W_H = /* @__PURE__ */ new Uint32Array(80);\nconst SHA512_W_L = /* @__PURE__ */ new Uint32Array(80);\nclass SHA512 extends _md_js_1.HashMD {\n constructor() {\n super(128, 64, 16, false);\n // We cannot use array here since array allows indexing by variable which means optimizer/compiler cannot use registers.\n // Also looks cleaner and easier to verify with spec.\n // Initial state (first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19):\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = 0x6a09e667 | 0;\n this.Al = 0xf3bcc908 | 0;\n this.Bh = 0xbb67ae85 | 0;\n this.Bl = 0x84caa73b | 0;\n this.Ch = 0x3c6ef372 | 0;\n this.Cl = 0xfe94f82b | 0;\n this.Dh = 0xa54ff53a | 0;\n this.Dl = 0x5f1d36f1 | 0;\n this.Eh = 0x510e527f | 0;\n this.El = 0xade682d1 | 0;\n this.Fh = 0x9b05688c | 0;\n this.Fl = 0x2b3e6c1f | 0;\n this.Gh = 0x1f83d9ab | 0;\n this.Gl = 0xfb41bd6b | 0;\n this.Hh = 0x5be0cd19 | 0;\n this.Hl = 0x137e2179 | 0;\n }\n // prettier-ignore\n get() {\n const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];\n }\n // prettier-ignore\n set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl) {\n this.Ah = Ah | 0;\n this.Al = Al | 0;\n this.Bh = Bh | 0;\n this.Bl = Bl | 0;\n this.Ch = Ch | 0;\n this.Cl = Cl | 0;\n this.Dh = Dh | 0;\n this.Dl = Dl | 0;\n this.Eh = Eh | 0;\n this.El = El | 0;\n this.Fh = Fh | 0;\n this.Fl = Fl | 0;\n this.Gh = Gh | 0;\n this.Gl = Gl | 0;\n this.Hh = Hh | 0;\n this.Hl = Hl | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 64 words w[16..79] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) {\n SHA512_W_H[i] = view.getUint32(offset);\n SHA512_W_L[i] = view.getUint32((offset += 4));\n }\n for (let i = 16; i < 80; i++) {\n // s0 := (w[i-15] rightrotate 1) xor (w[i-15] rightrotate 8) xor (w[i-15] rightshift 7)\n const W15h = SHA512_W_H[i - 15] | 0;\n const W15l = SHA512_W_L[i - 15] | 0;\n const s0h = _u64_js_1.default.rotrSH(W15h, W15l, 1) ^ _u64_js_1.default.rotrSH(W15h, W15l, 8) ^ _u64_js_1.default.shrSH(W15h, W15l, 7);\n const s0l = _u64_js_1.default.rotrSL(W15h, W15l, 1) ^ _u64_js_1.default.rotrSL(W15h, W15l, 8) ^ _u64_js_1.default.shrSL(W15h, W15l, 7);\n // s1 := (w[i-2] rightrotate 19) xor (w[i-2] rightrotate 61) xor (w[i-2] rightshift 6)\n const W2h = SHA512_W_H[i - 2] | 0;\n const W2l = SHA512_W_L[i - 2] | 0;\n const s1h = _u64_js_1.default.rotrSH(W2h, W2l, 19) ^ _u64_js_1.default.rotrBH(W2h, W2l, 61) ^ _u64_js_1.default.shrSH(W2h, W2l, 6);\n const s1l = _u64_js_1.default.rotrSL(W2h, W2l, 19) ^ _u64_js_1.default.rotrBL(W2h, W2l, 61) ^ _u64_js_1.default.shrSL(W2h, W2l, 6);\n // SHA256_W[i] = s0 + s1 + SHA256_W[i - 7] + SHA256_W[i - 16];\n const SUMl = _u64_js_1.default.add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);\n const SUMh = _u64_js_1.default.add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);\n SHA512_W_H[i] = SUMh | 0;\n SHA512_W_L[i] = SUMl | 0;\n }\n let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n // Compression function main loop, 80 rounds\n for (let i = 0; i < 80; i++) {\n // S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41)\n const sigma1h = _u64_js_1.default.rotrSH(Eh, El, 14) ^ _u64_js_1.default.rotrSH(Eh, El, 18) ^ _u64_js_1.default.rotrBH(Eh, El, 41);\n const sigma1l = _u64_js_1.default.rotrSL(Eh, El, 14) ^ _u64_js_1.default.rotrSL(Eh, El, 18) ^ _u64_js_1.default.rotrBL(Eh, El, 41);\n //const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const CHIh = (Eh & Fh) ^ (~Eh & Gh);\n const CHIl = (El & Fl) ^ (~El & Gl);\n // T1 = H + sigma1 + Chi(E, F, G) + SHA512_K[i] + SHA512_W[i]\n // prettier-ignore\n const T1ll = _u64_js_1.default.add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);\n const T1h = _u64_js_1.default.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);\n const T1l = T1ll | 0;\n // S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39)\n const sigma0h = _u64_js_1.default.rotrSH(Ah, Al, 28) ^ _u64_js_1.default.rotrBH(Ah, Al, 34) ^ _u64_js_1.default.rotrBH(Ah, Al, 39);\n const sigma0l = _u64_js_1.default.rotrSL(Ah, Al, 28) ^ _u64_js_1.default.rotrBL(Ah, Al, 34) ^ _u64_js_1.default.rotrBL(Ah, Al, 39);\n const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch);\n const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl);\n Hh = Gh | 0;\n Hl = Gl | 0;\n Gh = Fh | 0;\n Gl = Fl | 0;\n Fh = Eh | 0;\n Fl = El | 0;\n ({ h: Eh, l: El } = _u64_js_1.default.add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));\n Dh = Ch | 0;\n Dl = Cl | 0;\n Ch = Bh | 0;\n Cl = Bl | 0;\n Bh = Ah | 0;\n Bl = Al | 0;\n const All = _u64_js_1.default.add3L(T1l, sigma0l, MAJl);\n Ah = _u64_js_1.default.add3H(All, T1h, sigma0h, MAJh);\n Al = All | 0;\n }\n // Add the compressed chunk to the current hash value\n ({ h: Ah, l: Al } = _u64_js_1.default.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));\n ({ h: Bh, l: Bl } = _u64_js_1.default.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));\n ({ h: Ch, l: Cl } = _u64_js_1.default.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));\n ({ h: Dh, l: Dl } = _u64_js_1.default.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));\n ({ h: Eh, l: El } = _u64_js_1.default.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));\n ({ h: Fh, l: Fl } = _u64_js_1.default.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));\n ({ h: Gh, l: Gl } = _u64_js_1.default.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));\n ({ h: Hh, l: Hl } = _u64_js_1.default.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));\n this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);\n }\n roundClean() {\n SHA512_W_H.fill(0);\n SHA512_W_L.fill(0);\n }\n destroy() {\n this.buffer.fill(0);\n this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n }\n}\nexports.SHA512 = SHA512;\nclass SHA512_224 extends SHA512 {\n constructor() {\n super();\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = 0x8c3d37c8 | 0;\n this.Al = 0x19544da2 | 0;\n this.Bh = 0x73e19966 | 0;\n this.Bl = 0x89dcd4d6 | 0;\n this.Ch = 0x1dfab7ae | 0;\n this.Cl = 0x32ff9c82 | 0;\n this.Dh = 0x679dd514 | 0;\n this.Dl = 0x582f9fcf | 0;\n this.Eh = 0x0f6d2b69 | 0;\n this.El = 0x7bd44da8 | 0;\n this.Fh = 0x77e36f73 | 0;\n this.Fl = 0x04c48942 | 0;\n this.Gh = 0x3f9d85a8 | 0;\n this.Gl = 0x6a1d36c8 | 0;\n this.Hh = 0x1112e6ad | 0;\n this.Hl = 0x91d692a1 | 0;\n this.outputLen = 28;\n }\n}\nexports.SHA512_224 = SHA512_224;\nclass SHA512_256 extends SHA512 {\n constructor() {\n super();\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = 0x22312194 | 0;\n this.Al = 0xfc2bf72c | 0;\n this.Bh = 0x9f555fa3 | 0;\n this.Bl = 0xc84c64c2 | 0;\n this.Ch = 0x2393b86b | 0;\n this.Cl = 0x6f53b151 | 0;\n this.Dh = 0x96387719 | 0;\n this.Dl = 0x5940eabd | 0;\n this.Eh = 0x96283ee2 | 0;\n this.El = 0xa88effe3 | 0;\n this.Fh = 0xbe5e1e25 | 0;\n this.Fl = 0x53863992 | 0;\n this.Gh = 0x2b0199fc | 0;\n this.Gl = 0x2c85b8aa | 0;\n this.Hh = 0x0eb72ddc | 0;\n this.Hl = 0x81c52ca2 | 0;\n this.outputLen = 32;\n }\n}\nexports.SHA512_256 = SHA512_256;\nclass SHA384 extends SHA512 {\n constructor() {\n super();\n // h -- high 32 bits, l -- low 32 bits\n this.Ah = 0xcbbb9d5d | 0;\n this.Al = 0xc1059ed8 | 0;\n this.Bh = 0x629a292a | 0;\n this.Bl = 0x367cd507 | 0;\n this.Ch = 0x9159015a | 0;\n this.Cl = 0x3070dd17 | 0;\n this.Dh = 0x152fecd8 | 0;\n this.Dl = 0xf70e5939 | 0;\n this.Eh = 0x67332667 | 0;\n this.El = 0xffc00b31 | 0;\n this.Fh = 0x8eb44a87 | 0;\n this.Fl = 0x68581511 | 0;\n this.Gh = 0xdb0c2e0d | 0;\n this.Gl = 0x64f98fa7 | 0;\n this.Hh = 0x47b5481d | 0;\n this.Hl = 0xbefa4fa4 | 0;\n this.outputLen = 48;\n }\n}\nexports.SHA384 = SHA384;\nexports.sha512 = (0, utils_js_1.wrapConstructor)(() => new SHA512());\nexports.sha512_224 = (0, utils_js_1.wrapConstructor)(() => new SHA512_224());\nexports.sha512_256 = (0, utils_js_1.wrapConstructor)(() => new SHA512_256());\nexports.sha384 = (0, utils_js_1.wrapConstructor)(() => new SHA384());\n//# sourceMappingURL=sha512.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.notImplemented = exports.bitMask = void 0;\nexports.isBytes = isBytes;\nexports.abytes = abytes;\nexports.abool = abool;\nexports.bytesToHex = bytesToHex;\nexports.numberToHexUnpadded = numberToHexUnpadded;\nexports.hexToNumber = hexToNumber;\nexports.hexToBytes = hexToBytes;\nexports.bytesToNumberBE = bytesToNumberBE;\nexports.bytesToNumberLE = bytesToNumberLE;\nexports.numberToBytesBE = numberToBytesBE;\nexports.numberToBytesLE = numberToBytesLE;\nexports.numberToVarBytesBE = numberToVarBytesBE;\nexports.ensureBytes = ensureBytes;\nexports.concatBytes = concatBytes;\nexports.equalBytes = equalBytes;\nexports.utf8ToBytes = utf8ToBytes;\nexports.inRange = inRange;\nexports.aInRange = aInRange;\nexports.bitLen = bitLen;\nexports.bitGet = bitGet;\nexports.bitSet = bitSet;\nexports.createHmacDrbg = createHmacDrbg;\nexports.validateObject = validateObject;\nexports.memoized = memoized;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// 100 lines of code in the file are duplicated from noble-hashes (utils).\n// This is OK: `abstract` directory does not use noble-hashes.\n// User may opt-in into using different hashing library. This way, noble-hashes\n// won't be included into their bundle.\nconst _0n = /* @__PURE__ */ BigInt(0);\nconst _1n = /* @__PURE__ */ BigInt(1);\nconst _2n = /* @__PURE__ */ BigInt(2);\nfunction isBytes(a) {\n return (a instanceof Uint8Array ||\n (a != null && typeof a === 'object' && a.constructor.name === 'Uint8Array'));\n}\nfunction abytes(item) {\n if (!isBytes(item))\n throw new Error('Uint8Array expected');\n}\nfunction abool(title, value) {\n if (typeof value !== 'boolean')\n throw new Error(`${title} must be valid boolean, got \"${value}\".`);\n}\n// Array where index 0xf0 (240) is mapped to string 'f0'\nconst hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xca, 0xfe, 0x01, 0x23])) // 'cafe0123'\n */\nfunction bytesToHex(bytes) {\n abytes(bytes);\n // pre-caching improves the speed 6x\n let hex = '';\n for (let i = 0; i < bytes.length; i++) {\n hex += hexes[bytes[i]];\n }\n return hex;\n}\nfunction numberToHexUnpadded(num) {\n const hex = num.toString(16);\n return hex.length & 1 ? `0${hex}` : hex;\n}\nfunction hexToNumber(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n // Big Endian\n return BigInt(hex === '' ? '0' : `0x${hex}`);\n}\n// We use optimized technique to convert hex string to byte array\nconst asciis = { _0: 48, _9: 57, _A: 65, _F: 70, _a: 97, _f: 102 };\nfunction asciiToBase16(char) {\n if (char >= asciis._0 && char <= asciis._9)\n return char - asciis._0;\n if (char >= asciis._A && char <= asciis._F)\n return char - (asciis._A - 10);\n if (char >= asciis._a && char <= asciis._f)\n return char - (asciis._a - 10);\n return;\n}\n/**\n * @example hexToBytes('cafe0123') // Uint8Array.from([0xca, 0xfe, 0x01, 0x23])\n */\nfunction hexToBytes(hex) {\n if (typeof hex !== 'string')\n throw new Error('hex string expected, got ' + typeof hex);\n const hl = hex.length;\n const al = hl / 2;\n if (hl % 2)\n throw new Error('padded hex string expected, got unpadded hex of length ' + hl);\n const array = new Uint8Array(al);\n for (let ai = 0, hi = 0; ai < al; ai++, hi += 2) {\n const n1 = asciiToBase16(hex.charCodeAt(hi));\n const n2 = asciiToBase16(hex.charCodeAt(hi + 1));\n if (n1 === undefined || n2 === undefined) {\n const char = hex[hi] + hex[hi + 1];\n throw new Error('hex string expected, got non-hex character \"' + char + '\" at index ' + hi);\n }\n array[ai] = n1 * 16 + n2;\n }\n return array;\n}\n// BE: Big Endian, LE: Little Endian\nfunction bytesToNumberBE(bytes) {\n return hexToNumber(bytesToHex(bytes));\n}\nfunction bytesToNumberLE(bytes) {\n abytes(bytes);\n return hexToNumber(bytesToHex(Uint8Array.from(bytes).reverse()));\n}\nfunction numberToBytesBE(n, len) {\n return hexToBytes(n.toString(16).padStart(len * 2, '0'));\n}\nfunction numberToBytesLE(n, len) {\n return numberToBytesBE(n, len).reverse();\n}\n// Unpadded, rarely used\nfunction numberToVarBytesBE(n) {\n return hexToBytes(numberToHexUnpadded(n));\n}\n/**\n * Takes hex string or Uint8Array, converts to Uint8Array.\n * Validates output length.\n * Will throw error for other types.\n * @param title descriptive title for an error e.g. 'private key'\n * @param hex hex string or Uint8Array\n * @param expectedLength optional, will compare to result array's length\n * @returns\n */\nfunction ensureBytes(title, hex, expectedLength) {\n let res;\n if (typeof hex === 'string') {\n try {\n res = hexToBytes(hex);\n }\n catch (e) {\n throw new Error(`${title} must be valid hex string, got \"${hex}\". Cause: ${e}`);\n }\n }\n else if (isBytes(hex)) {\n // Uint8Array.from() instead of hash.slice() because node.js Buffer\n // is instance of Uint8Array, and its slice() creates **mutable** copy\n res = Uint8Array.from(hex);\n }\n else {\n throw new Error(`${title} must be hex string or Uint8Array`);\n }\n const len = res.length;\n if (typeof expectedLength === 'number' && len !== expectedLength)\n throw new Error(`${title} expected ${expectedLength} bytes, got ${len}`);\n return res;\n}\n/**\n * Copies several Uint8Arrays into one.\n */\nfunction concatBytes(...arrays) {\n let sum = 0;\n for (let i = 0; i < arrays.length; i++) {\n const a = arrays[i];\n abytes(a);\n sum += a.length;\n }\n const res = new Uint8Array(sum);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const a = arrays[i];\n res.set(a, pad);\n pad += a.length;\n }\n return res;\n}\n// Compares 2 u8a-s in kinda constant time\nfunction equalBytes(a, b) {\n if (a.length !== b.length)\n return false;\n let diff = 0;\n for (let i = 0; i < a.length; i++)\n diff |= a[i] ^ b[i];\n return diff === 0;\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\n// Is positive bigint\nconst isPosBig = (n) => typeof n === 'bigint' && _0n <= n;\nfunction inRange(n, min, max) {\n return isPosBig(n) && isPosBig(min) && isPosBig(max) && min <= n && n < max;\n}\n/**\n * Asserts min <= n < max. NOTE: It's < max and not <= max.\n * @example\n * aInRange('x', x, 1n, 256n); // would assume x is in (1n..255n)\n */\nfunction aInRange(title, n, min, max) {\n // Why min <= n < max and not a (min < n < max) OR b (min <= n <= max)?\n // consider P=256n, min=0n, max=P\n // - a for min=0 would require -1: `inRange('x', x, -1n, P)`\n // - b would commonly require subtraction: `inRange('x', x, 0n, P - 1n)`\n // - our way is the cleanest: `inRange('x', x, 0n, P)\n if (!inRange(n, min, max))\n throw new Error(`expected valid ${title}: ${min} <= n < ${max}, got ${typeof n} ${n}`);\n}\n// Bit operations\n/**\n * Calculates amount of bits in a bigint.\n * Same as `n.toString(2).length`\n */\nfunction bitLen(n) {\n let len;\n for (len = 0; n > _0n; n >>= _1n, len += 1)\n ;\n return len;\n}\n/**\n * Gets single bit at position.\n * NOTE: first bit position is 0 (same as arrays)\n * Same as `!!+Array.from(n.toString(2)).reverse()[pos]`\n */\nfunction bitGet(n, pos) {\n return (n >> BigInt(pos)) & _1n;\n}\n/**\n * Sets single bit at position.\n */\nfunction bitSet(n, pos, value) {\n return n | ((value ? _1n : _0n) << BigInt(pos));\n}\n/**\n * Calculate mask for N bits. Not using ** operator with bigints because of old engines.\n * Same as BigInt(`0b${Array(i).fill('1').join('')}`)\n */\nconst bitMask = (n) => (_2n << BigInt(n - 1)) - _1n;\nexports.bitMask = bitMask;\n// DRBG\nconst u8n = (data) => new Uint8Array(data); // creates Uint8Array\nconst u8fr = (arr) => Uint8Array.from(arr); // another shortcut\n/**\n * Minimal HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n * @returns function that will call DRBG until 2nd arg returns something meaningful\n * @example\n * const drbg = createHmacDRBG(32, 32, hmac);\n * drbg(seed, bytesToKey); // bytesToKey must return Key or undefined\n */\nfunction createHmacDrbg(hashLen, qByteLen, hmacFn) {\n if (typeof hashLen !== 'number' || hashLen < 2)\n throw new Error('hashLen must be a number');\n if (typeof qByteLen !== 'number' || qByteLen < 2)\n throw new Error('qByteLen must be a number');\n if (typeof hmacFn !== 'function')\n throw new Error('hmacFn must be a function');\n // Step B, Step C: set hashLen to 8*ceil(hlen/8)\n let v = u8n(hashLen); // Minimal non-full-spec HMAC-DRBG from NIST 800-90 for RFC6979 sigs.\n let k = u8n(hashLen); // Steps B and C of RFC6979 3.2: set hashLen, in our case always same\n let i = 0; // Iterations counter, will throw when over 1000\n const reset = () => {\n v.fill(1);\n k.fill(0);\n i = 0;\n };\n const h = (...b) => hmacFn(k, v, ...b); // hmac(k)(v, ...values)\n const reseed = (seed = u8n()) => {\n // HMAC-DRBG reseed() function. Steps D-G\n k = h(u8fr([0x00]), seed); // k = hmac(k || v || 0x00 || seed)\n v = h(); // v = hmac(k || v)\n if (seed.length === 0)\n return;\n k = h(u8fr([0x01]), seed); // k = hmac(k || v || 0x01 || seed)\n v = h(); // v = hmac(k || v)\n };\n const gen = () => {\n // HMAC-DRBG generate() function\n if (i++ >= 1000)\n throw new Error('drbg: tried 1000 values');\n let len = 0;\n const out = [];\n while (len < qByteLen) {\n v = h();\n const sl = v.slice();\n out.push(sl);\n len += v.length;\n }\n return concatBytes(...out);\n };\n const genUntil = (seed, pred) => {\n reset();\n reseed(seed); // Steps D-G\n let res = undefined; // Step H: grind until k is in [1..n-1]\n while (!(res = pred(gen())))\n reseed();\n reset();\n return res;\n };\n return genUntil;\n}\n// Validating curves and fields\nconst validatorFns = {\n bigint: (val) => typeof val === 'bigint',\n function: (val) => typeof val === 'function',\n boolean: (val) => typeof val === 'boolean',\n string: (val) => typeof val === 'string',\n stringOrUint8Array: (val) => typeof val === 'string' || isBytes(val),\n isSafeInteger: (val) => Number.isSafeInteger(val),\n array: (val) => Array.isArray(val),\n field: (val, object) => object.Fp.isValid(val),\n hash: (val) => typeof val === 'function' && Number.isSafeInteger(val.outputLen),\n};\n// type Record = { [P in K]: T; }\nfunction validateObject(object, validators, optValidators = {}) {\n const checkField = (fieldName, type, isOptional) => {\n const checkVal = validatorFns[type];\n if (typeof checkVal !== 'function')\n throw new Error(`Invalid validator \"${type}\", expected function`);\n const val = object[fieldName];\n if (isOptional && val === undefined)\n return;\n if (!checkVal(val, object)) {\n throw new Error(`Invalid param ${String(fieldName)}=${val} (${typeof val}), expected ${type}`);\n }\n };\n for (const [fieldName, type] of Object.entries(validators))\n checkField(fieldName, type, false);\n for (const [fieldName, type] of Object.entries(optValidators))\n checkField(fieldName, type, true);\n return object;\n}\n// validate type tests\n// const o: { a: number; b: number; c: number } = { a: 1, b: 5, c: 6 };\n// const z0 = validateObject(o, { a: 'isSafeInteger' }, { c: 'bigint' }); // Ok!\n// // Should fail type-check\n// const z1 = validateObject(o, { a: 'tmp' }, { c: 'zz' });\n// const z2 = validateObject(o, { a: 'isSafeInteger' }, { c: 'zz' });\n// const z3 = validateObject(o, { test: 'boolean', z: 'bug' });\n// const z4 = validateObject(o, { a: 'boolean', z: 'bug' });\n/**\n * throws not implemented error\n */\nconst notImplemented = () => {\n throw new Error('not implemented');\n};\nexports.notImplemented = notImplemented;\n/**\n * Memoizes (caches) computation result.\n * Uses WeakMap: the value is going auto-cleaned by GC after last reference is removed.\n */\nfunction memoized(fn) {\n const map = new WeakMap();\n return (arg, ...args) => {\n const val = map.get(arg);\n if (val !== undefined)\n return val;\n const computed = fn(arg, ...args);\n map.set(arg, computed);\n return computed;\n };\n}\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isNegativeLE = void 0;\nexports.mod = mod;\nexports.pow = pow;\nexports.pow2 = pow2;\nexports.invert = invert;\nexports.tonelliShanks = tonelliShanks;\nexports.FpSqrt = FpSqrt;\nexports.validateField = validateField;\nexports.FpPow = FpPow;\nexports.FpInvertBatch = FpInvertBatch;\nexports.FpDiv = FpDiv;\nexports.FpLegendre = FpLegendre;\nexports.FpIsSquare = FpIsSquare;\nexports.nLength = nLength;\nexports.Field = Field;\nexports.FpSqrtOdd = FpSqrtOdd;\nexports.FpSqrtEven = FpSqrtEven;\nexports.hashToPrivateScalar = hashToPrivateScalar;\nexports.getFieldBytesLength = getFieldBytesLength;\nexports.getMinHashLength = getMinHashLength;\nexports.mapHashToField = mapHashToField;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// Utilities for modular arithmetics and finite fields\nconst utils_js_1 = require(\"./utils.js\");\n// prettier-ignore\nconst _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _3n = BigInt(3);\n// prettier-ignore\nconst _4n = BigInt(4), _5n = BigInt(5), _8n = BigInt(8);\n// prettier-ignore\nconst _9n = BigInt(9), _16n = BigInt(16);\n// Calculates a modulo b\nfunction mod(a, b) {\n const result = a % b;\n return result >= _0n ? result : b + result;\n}\n/**\n * Efficiently raise num to power and do modular division.\n * Unsafe in some contexts: uses ladder, so can expose bigint bits.\n * @example\n * pow(2n, 6n, 11n) // 64n % 11n == 9n\n */\n// TODO: use field version && remove\nfunction pow(num, power, modulo) {\n if (modulo <= _0n || power < _0n)\n throw new Error('Expected power/modulo > 0');\n if (modulo === _1n)\n return _0n;\n let res = _1n;\n while (power > _0n) {\n if (power & _1n)\n res = (res * num) % modulo;\n num = (num * num) % modulo;\n power >>= _1n;\n }\n return res;\n}\n// Does x ^ (2 ^ power) mod p. pow2(30, 4) == 30 ^ (2 ^ 4)\nfunction pow2(x, power, modulo) {\n let res = x;\n while (power-- > _0n) {\n res *= res;\n res %= modulo;\n }\n return res;\n}\n// Inverses number over modulo\nfunction invert(number, modulo) {\n if (number === _0n || modulo <= _0n) {\n throw new Error(`invert: expected positive integers, got n=${number} mod=${modulo}`);\n }\n // Euclidean GCD https://brilliant.org/wiki/extended-euclidean-algorithm/\n // Fermat's little theorem \"CT-like\" version inv(n) = n^(m-2) mod m is 30x slower.\n let a = mod(number, modulo);\n let b = modulo;\n // prettier-ignore\n let x = _0n, y = _1n, u = _1n, v = _0n;\n while (a !== _0n) {\n // JIT applies optimization if those two lines follow each other\n const q = b / a;\n const r = b % a;\n const m = x - u * q;\n const n = y - v * q;\n // prettier-ignore\n b = a, a = r, x = u, y = v, u = m, v = n;\n }\n const gcd = b;\n if (gcd !== _1n)\n throw new Error('invert: does not exist');\n return mod(x, modulo);\n}\n/**\n * Tonelli-Shanks square root search algorithm.\n * 1. https://eprint.iacr.org/2012/685.pdf (page 12)\n * 2. Square Roots from 1; 24, 51, 10 to Dan Shanks\n * Will start an infinite loop if field order P is not prime.\n * @param P field order\n * @returns function that takes field Fp (created from P) and number n\n */\nfunction tonelliShanks(P) {\n // Legendre constant: used to calculate Legendre symbol (a | p),\n // which denotes the value of a^((p-1)/2) (mod p).\n // (a | p) ≡ 1 if a is a square (mod p)\n // (a | p) ≡ -1 if a is not a square (mod p)\n // (a | p) ≡ 0 if a ≡ 0 (mod p)\n const legendreC = (P - _1n) / _2n;\n let Q, S, Z;\n // Step 1: By factoring out powers of 2 from p - 1,\n // find q and s such that p - 1 = q*(2^s) with q odd\n for (Q = P - _1n, S = 0; Q % _2n === _0n; Q /= _2n, S++)\n ;\n // Step 2: Select a non-square z such that (z | p) ≡ -1 and set c ≡ zq\n for (Z = _2n; Z < P && pow(Z, legendreC, P) !== P - _1n; Z++)\n ;\n // Fast-path\n if (S === 1) {\n const p1div4 = (P + _1n) / _4n;\n return function tonelliFast(Fp, n) {\n const root = Fp.pow(n, p1div4);\n if (!Fp.eql(Fp.sqr(root), n))\n throw new Error('Cannot find square root');\n return root;\n };\n }\n // Slow-path\n const Q1div2 = (Q + _1n) / _2n;\n return function tonelliSlow(Fp, n) {\n // Step 0: Check that n is indeed a square: (n | p) should not be ≡ -1\n if (Fp.pow(n, legendreC) === Fp.neg(Fp.ONE))\n throw new Error('Cannot find square root');\n let r = S;\n // TODO: will fail at Fp2/etc\n let g = Fp.pow(Fp.mul(Fp.ONE, Z), Q); // will update both x and b\n let x = Fp.pow(n, Q1div2); // first guess at the square root\n let b = Fp.pow(n, Q); // first guess at the fudge factor\n while (!Fp.eql(b, Fp.ONE)) {\n if (Fp.eql(b, Fp.ZERO))\n return Fp.ZERO; // https://en.wikipedia.org/wiki/Tonelli%E2%80%93Shanks_algorithm (4. If t = 0, return r = 0)\n // Find m such b^(2^m)==1\n let m = 1;\n for (let t2 = Fp.sqr(b); m < r; m++) {\n if (Fp.eql(t2, Fp.ONE))\n break;\n t2 = Fp.sqr(t2); // t2 *= t2\n }\n // NOTE: r-m-1 can be bigger than 32, need to convert to bigint before shift, otherwise there will be overflow\n const ge = Fp.pow(g, _1n << BigInt(r - m - 1)); // ge = 2^(r-m-1)\n g = Fp.sqr(ge); // g = ge * ge\n x = Fp.mul(x, ge); // x *= ge\n b = Fp.mul(b, g); // b *= g\n r = m;\n }\n return x;\n };\n}\nfunction FpSqrt(P) {\n // NOTE: different algorithms can give different roots, it is up to user to decide which one they want.\n // For example there is FpSqrtOdd/FpSqrtEven to choice root based on oddness (used for hash-to-curve).\n // P ≡ 3 (mod 4)\n // √n = n^((P+1)/4)\n if (P % _4n === _3n) {\n // Not all roots possible!\n // const ORDER =\n // 0x1a0111ea397fe69a4b1ba7b6434bacd764774b84f38512bf6730d2a0f6b0f6241eabfffeb153ffffb9feffffffffaaabn;\n // const NUM = 72057594037927816n;\n const p1div4 = (P + _1n) / _4n;\n return function sqrt3mod4(Fp, n) {\n const root = Fp.pow(n, p1div4);\n // Throw if root**2 != n\n if (!Fp.eql(Fp.sqr(root), n))\n throw new Error('Cannot find square root');\n return root;\n };\n }\n // Atkin algorithm for q ≡ 5 (mod 8), https://eprint.iacr.org/2012/685.pdf (page 10)\n if (P % _8n === _5n) {\n const c1 = (P - _5n) / _8n;\n return function sqrt5mod8(Fp, n) {\n const n2 = Fp.mul(n, _2n);\n const v = Fp.pow(n2, c1);\n const nv = Fp.mul(n, v);\n const i = Fp.mul(Fp.mul(nv, _2n), v);\n const root = Fp.mul(nv, Fp.sub(i, Fp.ONE));\n if (!Fp.eql(Fp.sqr(root), n))\n throw new Error('Cannot find square root');\n return root;\n };\n }\n // P ≡ 9 (mod 16)\n if (P % _16n === _9n) {\n // NOTE: tonelli is too slow for bls-Fp2 calculations even on start\n // Means we cannot use sqrt for constants at all!\n //\n // const c1 = Fp.sqrt(Fp.negate(Fp.ONE)); // 1. c1 = sqrt(-1) in F, i.e., (c1^2) == -1 in F\n // const c2 = Fp.sqrt(c1); // 2. c2 = sqrt(c1) in F, i.e., (c2^2) == c1 in F\n // const c3 = Fp.sqrt(Fp.negate(c1)); // 3. c3 = sqrt(-c1) in F, i.e., (c3^2) == -c1 in F\n // const c4 = (P + _7n) / _16n; // 4. c4 = (q + 7) / 16 # Integer arithmetic\n // sqrt = (x) => {\n // let tv1 = Fp.pow(x, c4); // 1. tv1 = x^c4\n // let tv2 = Fp.mul(c1, tv1); // 2. tv2 = c1 * tv1\n // const tv3 = Fp.mul(c2, tv1); // 3. tv3 = c2 * tv1\n // let tv4 = Fp.mul(c3, tv1); // 4. tv4 = c3 * tv1\n // const e1 = Fp.equals(Fp.square(tv2), x); // 5. e1 = (tv2^2) == x\n // const e2 = Fp.equals(Fp.square(tv3), x); // 6. e2 = (tv3^2) == x\n // tv1 = Fp.cmov(tv1, tv2, e1); // 7. tv1 = CMOV(tv1, tv2, e1) # Select tv2 if (tv2^2) == x\n // tv2 = Fp.cmov(tv4, tv3, e2); // 8. tv2 = CMOV(tv4, tv3, e2) # Select tv3 if (tv3^2) == x\n // const e3 = Fp.equals(Fp.square(tv2), x); // 9. e3 = (tv2^2) == x\n // return Fp.cmov(tv1, tv2, e3); // 10. z = CMOV(tv1, tv2, e3) # Select the sqrt from tv1 and tv2\n // }\n }\n // Other cases: Tonelli-Shanks algorithm\n return tonelliShanks(P);\n}\n// Little-endian check for first LE bit (last BE bit);\nconst isNegativeLE = (num, modulo) => (mod(num, modulo) & _1n) === _1n;\nexports.isNegativeLE = isNegativeLE;\n// prettier-ignore\nconst FIELD_FIELDS = [\n 'create', 'isValid', 'is0', 'neg', 'inv', 'sqrt', 'sqr',\n 'eql', 'add', 'sub', 'mul', 'pow', 'div',\n 'addN', 'subN', 'mulN', 'sqrN'\n];\nfunction validateField(field) {\n const initial = {\n ORDER: 'bigint',\n MASK: 'bigint',\n BYTES: 'isSafeInteger',\n BITS: 'isSafeInteger',\n };\n const opts = FIELD_FIELDS.reduce((map, val) => {\n map[val] = 'function';\n return map;\n }, initial);\n return (0, utils_js_1.validateObject)(field, opts);\n}\n// Generic field functions\n/**\n * Same as `pow` but for Fp: non-constant-time.\n * Unsafe in some contexts: uses ladder, so can expose bigint bits.\n */\nfunction FpPow(f, num, power) {\n // Should have same speed as pow for bigints\n // TODO: benchmark!\n if (power < _0n)\n throw new Error('Expected power > 0');\n if (power === _0n)\n return f.ONE;\n if (power === _1n)\n return num;\n let p = f.ONE;\n let d = num;\n while (power > _0n) {\n if (power & _1n)\n p = f.mul(p, d);\n d = f.sqr(d);\n power >>= _1n;\n }\n return p;\n}\n/**\n * Efficiently invert an array of Field elements.\n * `inv(0)` will return `undefined` here: make sure to throw an error.\n */\nfunction FpInvertBatch(f, nums) {\n const tmp = new Array(nums.length);\n // Walk from first to last, multiply them by each other MOD p\n const lastMultiplied = nums.reduce((acc, num, i) => {\n if (f.is0(num))\n return acc;\n tmp[i] = acc;\n return f.mul(acc, num);\n }, f.ONE);\n // Invert last element\n const inverted = f.inv(lastMultiplied);\n // Walk from last to first, multiply them by inverted each other MOD p\n nums.reduceRight((acc, num, i) => {\n if (f.is0(num))\n return acc;\n tmp[i] = f.mul(acc, tmp[i]);\n return f.mul(acc, num);\n }, inverted);\n return tmp;\n}\nfunction FpDiv(f, lhs, rhs) {\n return f.mul(lhs, typeof rhs === 'bigint' ? invert(rhs, f.ORDER) : f.inv(rhs));\n}\nfunction FpLegendre(order) {\n // (a | p) ≡ 1 if a is a square (mod p), quadratic residue\n // (a | p) ≡ -1 if a is not a square (mod p), quadratic non residue\n // (a | p) ≡ 0 if a ≡ 0 (mod p)\n const legendreConst = (order - _1n) / _2n; // Integer arithmetic\n return (f, x) => f.pow(x, legendreConst);\n}\n// This function returns True whenever the value x is a square in the field F.\nfunction FpIsSquare(f) {\n const legendre = FpLegendre(f.ORDER);\n return (x) => {\n const p = legendre(f, x);\n return f.eql(p, f.ZERO) || f.eql(p, f.ONE);\n };\n}\n// CURVE.n lengths\nfunction nLength(n, nBitLength) {\n // Bit size, byte size of CURVE.n\n const _nBitLength = nBitLength !== undefined ? nBitLength : n.toString(2).length;\n const nByteLength = Math.ceil(_nBitLength / 8);\n return { nBitLength: _nBitLength, nByteLength };\n}\n/**\n * Initializes a finite field over prime. **Non-primes are not supported.**\n * Do not init in loop: slow. Very fragile: always run a benchmark on a change.\n * Major performance optimizations:\n * * a) denormalized operations like mulN instead of mul\n * * b) same object shape: never add or remove keys\n * * c) Object.freeze\n * NOTE: operations don't check 'isValid' for all elements for performance reasons,\n * it is caller responsibility to check this.\n * This is low-level code, please make sure you know what you doing.\n * @param ORDER prime positive bigint\n * @param bitLen how many bits the field consumes\n * @param isLE (def: false) if encoding / decoding should be in little-endian\n * @param redef optional faster redefinitions of sqrt and other methods\n */\nfunction Field(ORDER, bitLen, isLE = false, redef = {}) {\n if (ORDER <= _0n)\n throw new Error(`Expected Field ORDER > 0, got ${ORDER}`);\n const { nBitLength: BITS, nByteLength: BYTES } = nLength(ORDER, bitLen);\n if (BYTES > 2048)\n throw new Error('Field lengths over 2048 bytes are not supported');\n const sqrtP = FpSqrt(ORDER);\n const f = Object.freeze({\n ORDER,\n BITS,\n BYTES,\n MASK: (0, utils_js_1.bitMask)(BITS),\n ZERO: _0n,\n ONE: _1n,\n create: (num) => mod(num, ORDER),\n isValid: (num) => {\n if (typeof num !== 'bigint')\n throw new Error(`Invalid field element: expected bigint, got ${typeof num}`);\n return _0n <= num && num < ORDER; // 0 is valid element, but it's not invertible\n },\n is0: (num) => num === _0n,\n isOdd: (num) => (num & _1n) === _1n,\n neg: (num) => mod(-num, ORDER),\n eql: (lhs, rhs) => lhs === rhs,\n sqr: (num) => mod(num * num, ORDER),\n add: (lhs, rhs) => mod(lhs + rhs, ORDER),\n sub: (lhs, rhs) => mod(lhs - rhs, ORDER),\n mul: (lhs, rhs) => mod(lhs * rhs, ORDER),\n pow: (num, power) => FpPow(f, num, power),\n div: (lhs, rhs) => mod(lhs * invert(rhs, ORDER), ORDER),\n // Same as above, but doesn't normalize\n sqrN: (num) => num * num,\n addN: (lhs, rhs) => lhs + rhs,\n subN: (lhs, rhs) => lhs - rhs,\n mulN: (lhs, rhs) => lhs * rhs,\n inv: (num) => invert(num, ORDER),\n sqrt: redef.sqrt || ((n) => sqrtP(f, n)),\n invertBatch: (lst) => FpInvertBatch(f, lst),\n // TODO: do we really need constant cmov?\n // We don't have const-time bigints anyway, so probably will be not very useful\n cmov: (a, b, c) => (c ? b : a),\n toBytes: (num) => (isLE ? (0, utils_js_1.numberToBytesLE)(num, BYTES) : (0, utils_js_1.numberToBytesBE)(num, BYTES)),\n fromBytes: (bytes) => {\n if (bytes.length !== BYTES)\n throw new Error(`Fp.fromBytes: expected ${BYTES}, got ${bytes.length}`);\n return isLE ? (0, utils_js_1.bytesToNumberLE)(bytes) : (0, utils_js_1.bytesToNumberBE)(bytes);\n },\n });\n return Object.freeze(f);\n}\nfunction FpSqrtOdd(Fp, elm) {\n if (!Fp.isOdd)\n throw new Error(`Field doesn't have isOdd`);\n const root = Fp.sqrt(elm);\n return Fp.isOdd(root) ? root : Fp.neg(root);\n}\nfunction FpSqrtEven(Fp, elm) {\n if (!Fp.isOdd)\n throw new Error(`Field doesn't have isOdd`);\n const root = Fp.sqrt(elm);\n return Fp.isOdd(root) ? Fp.neg(root) : root;\n}\n/**\n * \"Constant-time\" private key generation utility.\n * Same as mapKeyToField, but accepts less bytes (40 instead of 48 for 32-byte field).\n * Which makes it slightly more biased, less secure.\n * @deprecated use mapKeyToField instead\n */\nfunction hashToPrivateScalar(hash, groupOrder, isLE = false) {\n hash = (0, utils_js_1.ensureBytes)('privateHash', hash);\n const hashLen = hash.length;\n const minLen = nLength(groupOrder).nByteLength + 8;\n if (minLen < 24 || hashLen < minLen || hashLen > 1024)\n throw new Error(`hashToPrivateScalar: expected ${minLen}-1024 bytes of input, got ${hashLen}`);\n const num = isLE ? (0, utils_js_1.bytesToNumberLE)(hash) : (0, utils_js_1.bytesToNumberBE)(hash);\n return mod(num, groupOrder - _1n) + _1n;\n}\n/**\n * Returns total number of bytes consumed by the field element.\n * For example, 32 bytes for usual 256-bit weierstrass curve.\n * @param fieldOrder number of field elements, usually CURVE.n\n * @returns byte length of field\n */\nfunction getFieldBytesLength(fieldOrder) {\n if (typeof fieldOrder !== 'bigint')\n throw new Error('field order must be bigint');\n const bitLength = fieldOrder.toString(2).length;\n return Math.ceil(bitLength / 8);\n}\n/**\n * Returns minimal amount of bytes that can be safely reduced\n * by field order.\n * Should be 2^-128 for 128-bit curve such as P256.\n * @param fieldOrder number of field elements, usually CURVE.n\n * @returns byte length of target hash\n */\nfunction getMinHashLength(fieldOrder) {\n const length = getFieldBytesLength(fieldOrder);\n return length + Math.ceil(length / 2);\n}\n/**\n * \"Constant-time\" private key generation utility.\n * Can take (n + n/2) or more bytes of uniform input e.g. from CSPRNG or KDF\n * and convert them into private scalar, with the modulo bias being negligible.\n * Needs at least 48 bytes of input for 32-byte private key.\n * https://research.kudelskisecurity.com/2020/07/28/the-definitive-guide-to-modulo-bias-and-how-to-avoid-it/\n * FIPS 186-5, A.2 https://csrc.nist.gov/publications/detail/fips/186/5/final\n * RFC 9380, https://www.rfc-editor.org/rfc/rfc9380#section-5\n * @param hash hash output from SHA3 or a similar function\n * @param groupOrder size of subgroup - (e.g. secp256k1.CURVE.n)\n * @param isLE interpret hash bytes as LE num\n * @returns valid private scalar\n */\nfunction mapHashToField(key, fieldOrder, isLE = false) {\n const len = key.length;\n const fieldLen = getFieldBytesLength(fieldOrder);\n const minLen = getMinHashLength(fieldOrder);\n // No small numbers: need to understand bias story. No huge numbers: easier to detect JS timings.\n if (len < 16 || len < minLen || len > 1024)\n throw new Error(`expected ${minLen}-1024 bytes of input, got ${len}`);\n const num = isLE ? (0, utils_js_1.bytesToNumberBE)(key) : (0, utils_js_1.bytesToNumberLE)(key);\n // `mod(x, 11)` can sometimes produce 0. `mod(x, 10) + 1` is the same, but no 0\n const reduced = mod(num, fieldOrder - _1n) + _1n;\n return isLE ? (0, utils_js_1.numberToBytesLE)(reduced, fieldLen) : (0, utils_js_1.numberToBytesBE)(reduced, fieldLen);\n}\n//# sourceMappingURL=modular.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.wNAF = wNAF;\nexports.pippenger = pippenger;\nexports.validateBasic = validateBasic;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// Abelian group utilities\nconst modular_js_1 = require(\"./modular.js\");\nconst utils_js_1 = require(\"./utils.js\");\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\n// Since points in different groups cannot be equal (different object constructor),\n// we can have single place to store precomputes\nconst pointPrecomputes = new WeakMap();\nconst pointWindowSizes = new WeakMap(); // This allows use make points immutable (nothing changes inside)\n// Elliptic curve multiplication of Point by scalar. Fragile.\n// Scalars should always be less than curve order: this should be checked inside of a curve itself.\n// Creates precomputation tables for fast multiplication:\n// - private scalar is split by fixed size windows of W bits\n// - every window point is collected from window's table & added to accumulator\n// - since windows are different, same point inside tables won't be accessed more than once per calc\n// - each multiplication is 'Math.ceil(CURVE_ORDER / 𝑊) + 1' point additions (fixed for any scalar)\n// - +1 window is neccessary for wNAF\n// - wNAF reduces table size: 2x less memory + 2x faster generation, but 10% slower multiplication\n// TODO: Research returning 2d JS array of windows, instead of a single window. This would allow\n// windows to be in different memory locations\nfunction wNAF(c, bits) {\n const constTimeNegate = (condition, item) => {\n const neg = item.negate();\n return condition ? neg : item;\n };\n const validateW = (W) => {\n if (!Number.isSafeInteger(W) || W <= 0 || W > bits)\n throw new Error(`Wrong window size=${W}, should be [1..${bits}]`);\n };\n const opts = (W) => {\n validateW(W);\n const windows = Math.ceil(bits / W) + 1; // +1, because\n const windowSize = 2 ** (W - 1); // -1 because we skip zero\n return { windows, windowSize };\n };\n return {\n constTimeNegate,\n // non-const time multiplication ladder\n unsafeLadder(elm, n) {\n let p = c.ZERO;\n let d = elm;\n while (n > _0n) {\n if (n & _1n)\n p = p.add(d);\n d = d.double();\n n >>= _1n;\n }\n return p;\n },\n /**\n * Creates a wNAF precomputation window. Used for caching.\n * Default window size is set by `utils.precompute()` and is equal to 8.\n * Number of precomputed points depends on the curve size:\n * 2^(𝑊−1) * (Math.ceil(𝑛 / 𝑊) + 1), where:\n * - 𝑊 is the window size\n * - 𝑛 is the bitlength of the curve order.\n * For a 256-bit curve and window size 8, the number of precomputed points is 128 * 33 = 4224.\n * @returns precomputed point tables flattened to a single array\n */\n precomputeWindow(elm, W) {\n const { windows, windowSize } = opts(W);\n const points = [];\n let p = elm;\n let base = p;\n for (let window = 0; window < windows; window++) {\n base = p;\n points.push(base);\n // =1, because we skip zero\n for (let i = 1; i < windowSize; i++) {\n base = base.add(p);\n points.push(base);\n }\n p = base.double();\n }\n return points;\n },\n /**\n * Implements ec multiplication using precomputed tables and w-ary non-adjacent form.\n * @param W window size\n * @param precomputes precomputed tables\n * @param n scalar (we don't check here, but should be less than curve order)\n * @returns real and fake (for const-time) points\n */\n wNAF(W, precomputes, n) {\n // TODO: maybe check that scalar is less than group order? wNAF behavious is undefined otherwise\n // But need to carefully remove other checks before wNAF. ORDER == bits here\n const { windows, windowSize } = opts(W);\n let p = c.ZERO;\n let f = c.BASE;\n const mask = BigInt(2 ** W - 1); // Create mask with W ones: 0b1111 for W=4 etc.\n const maxNumber = 2 ** W;\n const shiftBy = BigInt(W);\n for (let window = 0; window < windows; window++) {\n const offset = window * windowSize;\n // Extract W bits.\n let wbits = Number(n & mask);\n // Shift number by W bits.\n n >>= shiftBy;\n // If the bits are bigger than max size, we'll split those.\n // +224 => 256 - 32\n if (wbits > windowSize) {\n wbits -= maxNumber;\n n += _1n;\n }\n // This code was first written with assumption that 'f' and 'p' will never be infinity point:\n // since each addition is multiplied by 2 ** W, it cannot cancel each other. However,\n // there is negate now: it is possible that negated element from low value\n // would be the same as high element, which will create carry into next window.\n // It's not obvious how this can fail, but still worth investigating later.\n // Check if we're onto Zero point.\n // Add random point inside current window to f.\n const offset1 = offset;\n const offset2 = offset + Math.abs(wbits) - 1; // -1 because we skip zero\n const cond1 = window % 2 !== 0;\n const cond2 = wbits < 0;\n if (wbits === 0) {\n // The most important part for const-time getPublicKey\n f = f.add(constTimeNegate(cond1, precomputes[offset1]));\n }\n else {\n p = p.add(constTimeNegate(cond2, precomputes[offset2]));\n }\n }\n // JIT-compiler should not eliminate f here, since it will later be used in normalizeZ()\n // Even if the variable is still unused, there are some checks which will\n // throw an exception, so compiler needs to prove they won't happen, which is hard.\n // At this point there is a way to F be infinity-point even if p is not,\n // which makes it less const-time: around 1 bigint multiply.\n return { p, f };\n },\n wNAFCached(P, n, transform) {\n const W = pointWindowSizes.get(P) || 1;\n // Calculate precomputes on a first run, reuse them after\n let comp = pointPrecomputes.get(P);\n if (!comp) {\n comp = this.precomputeWindow(P, W);\n if (W !== 1)\n pointPrecomputes.set(P, transform(comp));\n }\n return this.wNAF(W, comp, n);\n },\n // We calculate precomputes for elliptic curve point multiplication\n // using windowed method. This specifies window size and\n // stores precomputed values. Usually only base point would be precomputed.\n setWindowSize(P, W) {\n validateW(W);\n pointWindowSizes.set(P, W);\n pointPrecomputes.delete(P);\n },\n };\n}\n/**\n * Pippenger algorithm for multi-scalar multiplication (MSM).\n * MSM is basically (Pa + Qb + Rc + ...).\n * 30x faster vs naive addition on L=4096, 10x faster with precomputes.\n * For N=254bit, L=1, it does: 1024 ADD + 254 DBL. For L=5: 1536 ADD + 254 DBL.\n * Algorithmically constant-time (for same L), even when 1 point + scalar, or when scalar = 0.\n * @param c Curve Point constructor\n * @param field field over CURVE.N - important that it's not over CURVE.P\n * @param points array of L curve points\n * @param scalars array of L scalars (aka private keys / bigints)\n */\nfunction pippenger(c, field, points, scalars) {\n // If we split scalars by some window (let's say 8 bits), every chunk will only\n // take 256 buckets even if there are 4096 scalars, also re-uses double.\n // TODO:\n // - https://eprint.iacr.org/2024/750.pdf\n // - https://tches.iacr.org/index.php/TCHES/article/view/10287\n // 0 is accepted in scalars\n if (!Array.isArray(points) || !Array.isArray(scalars) || scalars.length !== points.length)\n throw new Error('arrays of points and scalars must have equal length');\n scalars.forEach((s, i) => {\n if (!field.isValid(s))\n throw new Error(`wrong scalar at index ${i}`);\n });\n points.forEach((p, i) => {\n if (!(p instanceof c))\n throw new Error(`wrong point at index ${i}`);\n });\n const wbits = (0, utils_js_1.bitLen)(BigInt(points.length));\n const windowSize = wbits > 12 ? wbits - 3 : wbits > 4 ? wbits - 2 : wbits ? 2 : 1; // in bits\n const MASK = (1 << windowSize) - 1;\n const buckets = new Array(MASK + 1).fill(c.ZERO); // +1 for zero array\n const lastBits = Math.floor((field.BITS - 1) / windowSize) * windowSize;\n let sum = c.ZERO;\n for (let i = lastBits; i >= 0; i -= windowSize) {\n buckets.fill(c.ZERO);\n for (let j = 0; j < scalars.length; j++) {\n const scalar = scalars[j];\n const wbits = Number((scalar >> BigInt(i)) & BigInt(MASK));\n buckets[wbits] = buckets[wbits].add(points[j]);\n }\n let resI = c.ZERO; // not using this will do small speed-up, but will lose ct\n // Skip first bucket, because it is zero\n for (let j = buckets.length - 1, sumI = c.ZERO; j > 0; j--) {\n sumI = sumI.add(buckets[j]);\n resI = resI.add(sumI);\n }\n sum = sum.add(resI);\n if (i !== 0)\n for (let j = 0; j < windowSize; j++)\n sum = sum.double();\n }\n return sum;\n}\nfunction validateBasic(curve) {\n (0, modular_js_1.validateField)(curve.Fp);\n (0, utils_js_1.validateObject)(curve, {\n n: 'bigint',\n h: 'bigint',\n Gx: 'field',\n Gy: 'field',\n }, {\n nBitLength: 'isSafeInteger',\n nByteLength: 'isSafeInteger',\n });\n // Set defaults\n return Object.freeze({\n ...(0, modular_js_1.nLength)(curve.n, curve.nBitLength),\n ...curve,\n ...{ p: curve.Fp.ORDER },\n });\n}\n//# sourceMappingURL=curve.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.twistedEdwards = twistedEdwards;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// Twisted Edwards curve. The formula is: ax² + y² = 1 + dx²y²\nconst curve_js_1 = require(\"./curve.js\");\nconst modular_js_1 = require(\"./modular.js\");\nconst ut = require(\"./utils.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// Be friendly to bad ECMAScript parsers by not using bigint literals\n// prettier-ignore\nconst _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _8n = BigInt(8);\n// verification rule is either zip215 or rfc8032 / nist186-5. Consult fromHex:\nconst VERIFY_DEFAULT = { zip215: true };\nfunction validateOpts(curve) {\n const opts = (0, curve_js_1.validateBasic)(curve);\n ut.validateObject(curve, {\n hash: 'function',\n a: 'bigint',\n d: 'bigint',\n randomBytes: 'function',\n }, {\n adjustScalarBytes: 'function',\n domain: 'function',\n uvRatio: 'function',\n mapToCurve: 'function',\n });\n // Set defaults\n return Object.freeze({ ...opts });\n}\n/**\n * Creates Twisted Edwards curve with EdDSA signatures.\n * @example\n * import { Field } from '@noble/curves/abstract/modular';\n * // Before that, define BigInt-s: a, d, p, n, Gx, Gy, h\n * const curve = twistedEdwards({ a, d, Fp: Field(p), n, Gx, Gy, h })\n */\nfunction twistedEdwards(curveDef) {\n const CURVE = validateOpts(curveDef);\n const { Fp, n: CURVE_ORDER, prehash: prehash, hash: cHash, randomBytes, nByteLength, h: cofactor, } = CURVE;\n const MASK = _2n << (BigInt(nByteLength * 8) - _1n);\n const modP = Fp.create; // Function overrides\n const Fn = (0, modular_js_1.Field)(CURVE.n, CURVE.nBitLength);\n // sqrt(u/v)\n const uvRatio = CURVE.uvRatio ||\n ((u, v) => {\n try {\n return { isValid: true, value: Fp.sqrt(u * Fp.inv(v)) };\n }\n catch (e) {\n return { isValid: false, value: _0n };\n }\n });\n const adjustScalarBytes = CURVE.adjustScalarBytes || ((bytes) => bytes); // NOOP\n const domain = CURVE.domain ||\n ((data, ctx, phflag) => {\n (0, utils_js_1.abool)('phflag', phflag);\n if (ctx.length || phflag)\n throw new Error('Contexts/pre-hash are not supported');\n return data;\n }); // NOOP\n // 0 <= n < MASK\n // Coordinates larger than Fp.ORDER are allowed for zip215\n function aCoordinate(title, n) {\n ut.aInRange('coordinate ' + title, n, _0n, MASK);\n }\n function assertPoint(other) {\n if (!(other instanceof Point))\n throw new Error('ExtendedPoint expected');\n }\n // Converts Extended point to default (x, y) coordinates.\n // Can accept precomputed Z^-1 - for example, from invertBatch.\n const toAffineMemo = (0, utils_js_1.memoized)((p, iz) => {\n const { ex: x, ey: y, ez: z } = p;\n const is0 = p.is0();\n if (iz == null)\n iz = is0 ? _8n : Fp.inv(z); // 8 was chosen arbitrarily\n const ax = modP(x * iz);\n const ay = modP(y * iz);\n const zz = modP(z * iz);\n if (is0)\n return { x: _0n, y: _1n };\n if (zz !== _1n)\n throw new Error('invZ was invalid');\n return { x: ax, y: ay };\n });\n const assertValidMemo = (0, utils_js_1.memoized)((p) => {\n const { a, d } = CURVE;\n if (p.is0())\n throw new Error('bad point: ZERO'); // TODO: optimize, with vars below?\n // Equation in affine coordinates: ax² + y² = 1 + dx²y²\n // Equation in projective coordinates (X/Z, Y/Z, Z): (aX² + Y²)Z² = Z⁴ + dX²Y²\n const { ex: X, ey: Y, ez: Z, et: T } = p;\n const X2 = modP(X * X); // X²\n const Y2 = modP(Y * Y); // Y²\n const Z2 = modP(Z * Z); // Z²\n const Z4 = modP(Z2 * Z2); // Z⁴\n const aX2 = modP(X2 * a); // aX²\n const left = modP(Z2 * modP(aX2 + Y2)); // (aX² + Y²)Z²\n const right = modP(Z4 + modP(d * modP(X2 * Y2))); // Z⁴ + dX²Y²\n if (left !== right)\n throw new Error('bad point: equation left != right (1)');\n // In Extended coordinates we also have T, which is x*y=T/Z: check X*Y == Z*T\n const XY = modP(X * Y);\n const ZT = modP(Z * T);\n if (XY !== ZT)\n throw new Error('bad point: equation left != right (2)');\n return true;\n });\n // Extended Point works in extended coordinates: (x, y, z, t) ∋ (x=x/z, y=y/z, t=xy).\n // https://en.wikipedia.org/wiki/Twisted_Edwards_curve#Extended_coordinates\n class Point {\n constructor(ex, ey, ez, et) {\n this.ex = ex;\n this.ey = ey;\n this.ez = ez;\n this.et = et;\n aCoordinate('x', ex);\n aCoordinate('y', ey);\n aCoordinate('z', ez);\n aCoordinate('t', et);\n Object.freeze(this);\n }\n get x() {\n return this.toAffine().x;\n }\n get y() {\n return this.toAffine().y;\n }\n static fromAffine(p) {\n if (p instanceof Point)\n throw new Error('extended point not allowed');\n const { x, y } = p || {};\n aCoordinate('x', x);\n aCoordinate('y', y);\n return new Point(x, y, _1n, modP(x * y));\n }\n static normalizeZ(points) {\n const toInv = Fp.invertBatch(points.map((p) => p.ez));\n return points.map((p, i) => p.toAffine(toInv[i])).map(Point.fromAffine);\n }\n // Multiscalar Multiplication\n static msm(points, scalars) {\n return (0, curve_js_1.pippenger)(Point, Fn, points, scalars);\n }\n // \"Private method\", don't use it directly\n _setWindowSize(windowSize) {\n wnaf.setWindowSize(this, windowSize);\n }\n // Not required for fromHex(), which always creates valid points.\n // Could be useful for fromAffine().\n assertValidity() {\n assertValidMemo(this);\n }\n // Compare one point to another.\n equals(other) {\n assertPoint(other);\n const { ex: X1, ey: Y1, ez: Z1 } = this;\n const { ex: X2, ey: Y2, ez: Z2 } = other;\n const X1Z2 = modP(X1 * Z2);\n const X2Z1 = modP(X2 * Z1);\n const Y1Z2 = modP(Y1 * Z2);\n const Y2Z1 = modP(Y2 * Z1);\n return X1Z2 === X2Z1 && Y1Z2 === Y2Z1;\n }\n is0() {\n return this.equals(Point.ZERO);\n }\n negate() {\n // Flips point sign to a negative one (-x, y in affine coords)\n return new Point(modP(-this.ex), this.ey, this.ez, modP(-this.et));\n }\n // Fast algo for doubling Extended Point.\n // https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#doubling-dbl-2008-hwcd\n // Cost: 4M + 4S + 1*a + 6add + 1*2.\n double() {\n const { a } = CURVE;\n const { ex: X1, ey: Y1, ez: Z1 } = this;\n const A = modP(X1 * X1); // A = X12\n const B = modP(Y1 * Y1); // B = Y12\n const C = modP(_2n * modP(Z1 * Z1)); // C = 2*Z12\n const D = modP(a * A); // D = a*A\n const x1y1 = X1 + Y1;\n const E = modP(modP(x1y1 * x1y1) - A - B); // E = (X1+Y1)2-A-B\n const G = D + B; // G = D+B\n const F = G - C; // F = G-C\n const H = D - B; // H = D-B\n const X3 = modP(E * F); // X3 = E*F\n const Y3 = modP(G * H); // Y3 = G*H\n const T3 = modP(E * H); // T3 = E*H\n const Z3 = modP(F * G); // Z3 = F*G\n return new Point(X3, Y3, Z3, T3);\n }\n // Fast algo for adding 2 Extended Points.\n // https://hyperelliptic.org/EFD/g1p/auto-twisted-extended.html#addition-add-2008-hwcd\n // Cost: 9M + 1*a + 1*d + 7add.\n add(other) {\n assertPoint(other);\n const { a, d } = CURVE;\n const { ex: X1, ey: Y1, ez: Z1, et: T1 } = this;\n const { ex: X2, ey: Y2, ez: Z2, et: T2 } = other;\n // Faster algo for adding 2 Extended Points when curve's a=-1.\n // http://hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html#addition-add-2008-hwcd-4\n // Cost: 8M + 8add + 2*2.\n // Note: It does not check whether the `other` point is valid.\n if (a === BigInt(-1)) {\n const A = modP((Y1 - X1) * (Y2 + X2));\n const B = modP((Y1 + X1) * (Y2 - X2));\n const F = modP(B - A);\n if (F === _0n)\n return this.double(); // Same point. Tests say it doesn't affect timing\n const C = modP(Z1 * _2n * T2);\n const D = modP(T1 * _2n * Z2);\n const E = D + C;\n const G = B + A;\n const H = D - C;\n const X3 = modP(E * F);\n const Y3 = modP(G * H);\n const T3 = modP(E * H);\n const Z3 = modP(F * G);\n return new Point(X3, Y3, Z3, T3);\n }\n const A = modP(X1 * X2); // A = X1*X2\n const B = modP(Y1 * Y2); // B = Y1*Y2\n const C = modP(T1 * d * T2); // C = T1*d*T2\n const D = modP(Z1 * Z2); // D = Z1*Z2\n const E = modP((X1 + Y1) * (X2 + Y2) - A - B); // E = (X1+Y1)*(X2+Y2)-A-B\n const F = D - C; // F = D-C\n const G = D + C; // G = D+C\n const H = modP(B - a * A); // H = B-a*A\n const X3 = modP(E * F); // X3 = E*F\n const Y3 = modP(G * H); // Y3 = G*H\n const T3 = modP(E * H); // T3 = E*H\n const Z3 = modP(F * G); // Z3 = F*G\n return new Point(X3, Y3, Z3, T3);\n }\n subtract(other) {\n return this.add(other.negate());\n }\n wNAF(n) {\n return wnaf.wNAFCached(this, n, Point.normalizeZ);\n }\n // Constant-time multiplication.\n multiply(scalar) {\n const n = scalar;\n ut.aInRange('scalar', n, _1n, CURVE_ORDER); // 1 <= scalar < L\n const { p, f } = this.wNAF(n);\n return Point.normalizeZ([p, f])[0];\n }\n // Non-constant-time multiplication. Uses double-and-add algorithm.\n // It's faster, but should only be used when you don't care about\n // an exposed private key e.g. sig verification.\n // Does NOT allow scalars higher than CURVE.n.\n multiplyUnsafe(scalar) {\n const n = scalar;\n ut.aInRange('scalar', n, _0n, CURVE_ORDER); // 0 <= scalar < L\n if (n === _0n)\n return I;\n if (this.equals(I) || n === _1n)\n return this;\n if (this.equals(G))\n return this.wNAF(n).p;\n return wnaf.unsafeLadder(this, n);\n }\n // Checks if point is of small order.\n // If you add something to small order point, you will have \"dirty\"\n // point with torsion component.\n // Multiplies point by cofactor and checks if the result is 0.\n isSmallOrder() {\n return this.multiplyUnsafe(cofactor).is0();\n }\n // Multiplies point by curve order and checks if the result is 0.\n // Returns `false` is the point is dirty.\n isTorsionFree() {\n return wnaf.unsafeLadder(this, CURVE_ORDER).is0();\n }\n // Converts Extended point to default (x, y) coordinates.\n // Can accept precomputed Z^-1 - for example, from invertBatch.\n toAffine(iz) {\n return toAffineMemo(this, iz);\n }\n clearCofactor() {\n const { h: cofactor } = CURVE;\n if (cofactor === _1n)\n return this;\n return this.multiplyUnsafe(cofactor);\n }\n // Converts hash string or Uint8Array to Point.\n // Uses algo from RFC8032 5.1.3.\n static fromHex(hex, zip215 = false) {\n const { d, a } = CURVE;\n const len = Fp.BYTES;\n hex = (0, utils_js_1.ensureBytes)('pointHex', hex, len); // copy hex to a new array\n (0, utils_js_1.abool)('zip215', zip215);\n const normed = hex.slice(); // copy again, we'll manipulate it\n const lastByte = hex[len - 1]; // select last byte\n normed[len - 1] = lastByte & ~0x80; // clear last bit\n const y = ut.bytesToNumberLE(normed);\n // RFC8032 prohibits >= p, but ZIP215 doesn't\n // zip215=true: 0 <= y < MASK (2^256 for ed25519)\n // zip215=false: 0 <= y < P (2^255-19 for ed25519)\n const max = zip215 ? MASK : Fp.ORDER;\n ut.aInRange('pointHex.y', y, _0n, max);\n // Ed25519: x² = (y²-1)/(dy²+1) mod p. Ed448: x² = (y²-1)/(dy²-1) mod p. Generic case:\n // ax²+y²=1+dx²y² => y²-1=dx²y²-ax² => y²-1=x²(dy²-a) => x²=(y²-1)/(dy²-a)\n const y2 = modP(y * y); // denominator is always non-0 mod p.\n const u = modP(y2 - _1n); // u = y² - 1\n const v = modP(d * y2 - a); // v = d y² + 1.\n let { isValid, value: x } = uvRatio(u, v); // √(u/v)\n if (!isValid)\n throw new Error('Point.fromHex: invalid y coordinate');\n const isXOdd = (x & _1n) === _1n; // There are 2 square roots. Use x_0 bit to select proper\n const isLastByteOdd = (lastByte & 0x80) !== 0; // x_0, last bit\n if (!zip215 && x === _0n && isLastByteOdd)\n // if x=0 and x_0 = 1, fail\n throw new Error('Point.fromHex: x=0 and x_0=1');\n if (isLastByteOdd !== isXOdd)\n x = modP(-x); // if x_0 != x mod 2, set x = p-x\n return Point.fromAffine({ x, y });\n }\n static fromPrivateKey(privKey) {\n return getExtendedPublicKey(privKey).point;\n }\n toRawBytes() {\n const { x, y } = this.toAffine();\n const bytes = ut.numberToBytesLE(y, Fp.BYTES); // each y has 2 x values (x, -y)\n bytes[bytes.length - 1] |= x & _1n ? 0x80 : 0; // when compressing, it's enough to store y\n return bytes; // and use the last byte to encode sign of x\n }\n toHex() {\n return ut.bytesToHex(this.toRawBytes()); // Same as toRawBytes, but returns string.\n }\n }\n Point.BASE = new Point(CURVE.Gx, CURVE.Gy, _1n, modP(CURVE.Gx * CURVE.Gy));\n Point.ZERO = new Point(_0n, _1n, _1n, _0n); // 0, 1, 1, 0\n const { BASE: G, ZERO: I } = Point;\n const wnaf = (0, curve_js_1.wNAF)(Point, nByteLength * 8);\n function modN(a) {\n return (0, modular_js_1.mod)(a, CURVE_ORDER);\n }\n // Little-endian SHA512 with modulo n\n function modN_LE(hash) {\n return modN(ut.bytesToNumberLE(hash));\n }\n /** Convenience method that creates public key and other stuff. RFC8032 5.1.5 */\n function getExtendedPublicKey(key) {\n const len = nByteLength;\n key = (0, utils_js_1.ensureBytes)('private key', key, len);\n // Hash private key with curve's hash function to produce uniformingly random input\n // Check byte lengths: ensure(64, h(ensure(32, key)))\n const hashed = (0, utils_js_1.ensureBytes)('hashed private key', cHash(key), 2 * len);\n const head = adjustScalarBytes(hashed.slice(0, len)); // clear first half bits, produce FE\n const prefix = hashed.slice(len, 2 * len); // second half is called key prefix (5.1.6)\n const scalar = modN_LE(head); // The actual private scalar\n const point = G.multiply(scalar); // Point on Edwards curve aka public key\n const pointBytes = point.toRawBytes(); // Uint8Array representation\n return { head, prefix, scalar, point, pointBytes };\n }\n // Calculates EdDSA pub key. RFC8032 5.1.5. Privkey is hashed. Use first half with 3 bits cleared\n function getPublicKey(privKey) {\n return getExtendedPublicKey(privKey).pointBytes;\n }\n // int('LE', SHA512(dom2(F, C) || msgs)) mod N\n function hashDomainToScalar(context = new Uint8Array(), ...msgs) {\n const msg = ut.concatBytes(...msgs);\n return modN_LE(cHash(domain(msg, (0, utils_js_1.ensureBytes)('context', context), !!prehash)));\n }\n /** Signs message with privateKey. RFC8032 5.1.6 */\n function sign(msg, privKey, options = {}) {\n msg = (0, utils_js_1.ensureBytes)('message', msg);\n if (prehash)\n msg = prehash(msg); // for ed25519ph etc.\n const { prefix, scalar, pointBytes } = getExtendedPublicKey(privKey);\n const r = hashDomainToScalar(options.context, prefix, msg); // r = dom2(F, C) || prefix || PH(M)\n const R = G.multiply(r).toRawBytes(); // R = rG\n const k = hashDomainToScalar(options.context, R, pointBytes, msg); // R || A || PH(M)\n const s = modN(r + k * scalar); // S = (r + k * s) mod L\n ut.aInRange('signature.s', s, _0n, CURVE_ORDER); // 0 <= s < l\n const res = ut.concatBytes(R, ut.numberToBytesLE(s, Fp.BYTES));\n return (0, utils_js_1.ensureBytes)('result', res, nByteLength * 2); // 64-byte signature\n }\n const verifyOpts = VERIFY_DEFAULT;\n function verify(sig, msg, publicKey, options = verifyOpts) {\n const { context, zip215 } = options;\n const len = Fp.BYTES; // Verifies EdDSA signature against message and public key. RFC8032 5.1.7.\n sig = (0, utils_js_1.ensureBytes)('signature', sig, 2 * len); // An extended group equation is checked.\n msg = (0, utils_js_1.ensureBytes)('message', msg);\n if (zip215 !== undefined)\n (0, utils_js_1.abool)('zip215', zip215);\n if (prehash)\n msg = prehash(msg); // for ed25519ph, etc\n const s = ut.bytesToNumberLE(sig.slice(len, 2 * len));\n // zip215: true is good for consensus-critical apps and allows points < 2^256\n // zip215: false follows RFC8032 / NIST186-5 and restricts points to CURVE.p\n let A, R, SB;\n try {\n A = Point.fromHex(publicKey, zip215);\n R = Point.fromHex(sig.slice(0, len), zip215);\n SB = G.multiplyUnsafe(s); // 0 <= s < l is done inside\n }\n catch (error) {\n return false;\n }\n if (!zip215 && A.isSmallOrder())\n return false;\n const k = hashDomainToScalar(context, R.toRawBytes(), A.toRawBytes(), msg);\n const RkA = R.add(A.multiplyUnsafe(k));\n // [8][S]B = [8]R + [8][k]A'\n return RkA.subtract(SB).clearCofactor().equals(Point.ZERO);\n }\n G._setWindowSize(8); // Enable precomputes. Slows down first publicKey computation by 20ms.\n const utils = {\n getExtendedPublicKey,\n // ed25519 private keys are uniform 32b. No need to check for modulo bias, like in secp256k1.\n randomPrivateKey: () => randomBytes(Fp.BYTES),\n /**\n * We're doing scalar multiplication (used in getPublicKey etc) with precomputed BASE_POINT\n * values. This slows down first getPublicKey() by milliseconds (see Speed section),\n * but allows to speed-up subsequent getPublicKey() calls up to 20x.\n * @param windowSize 2, 4, 8, 16\n */\n precompute(windowSize = 8, point = Point.BASE) {\n point._setWindowSize(windowSize);\n point.multiply(BigInt(3));\n return point;\n },\n };\n return {\n CURVE,\n getPublicKey,\n sign,\n verify,\n ExtendedPoint: Point,\n utils,\n };\n}\n//# sourceMappingURL=edwards.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.expand_message_xmd = expand_message_xmd;\nexports.expand_message_xof = expand_message_xof;\nexports.hash_to_field = hash_to_field;\nexports.isogenyMap = isogenyMap;\nexports.createHasher = createHasher;\nconst modular_js_1 = require(\"./modular.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// Octet Stream to Integer. \"spec\" implementation of os2ip is 2.5x slower vs bytesToNumberBE.\nconst os2ip = utils_js_1.bytesToNumberBE;\n// Integer to Octet Stream (numberToBytesBE)\nfunction i2osp(value, length) {\n anum(value);\n anum(length);\n if (value < 0 || value >= 1 << (8 * length)) {\n throw new Error(`bad I2OSP call: value=${value} length=${length}`);\n }\n const res = Array.from({ length }).fill(0);\n for (let i = length - 1; i >= 0; i--) {\n res[i] = value & 0xff;\n value >>>= 8;\n }\n return new Uint8Array(res);\n}\nfunction strxor(a, b) {\n const arr = new Uint8Array(a.length);\n for (let i = 0; i < a.length; i++) {\n arr[i] = a[i] ^ b[i];\n }\n return arr;\n}\nfunction anum(item) {\n if (!Number.isSafeInteger(item))\n throw new Error('number expected');\n}\n// Produces a uniformly random byte string using a cryptographic hash function H that outputs b bits\n// https://www.rfc-editor.org/rfc/rfc9380#section-5.3.1\nfunction expand_message_xmd(msg, DST, lenInBytes, H) {\n (0, utils_js_1.abytes)(msg);\n (0, utils_js_1.abytes)(DST);\n anum(lenInBytes);\n // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3\n if (DST.length > 255)\n DST = H((0, utils_js_1.concatBytes)((0, utils_js_1.utf8ToBytes)('H2C-OVERSIZE-DST-'), DST));\n const { outputLen: b_in_bytes, blockLen: r_in_bytes } = H;\n const ell = Math.ceil(lenInBytes / b_in_bytes);\n if (lenInBytes > 65535 || ell > 255)\n throw new Error('expand_message_xmd: invalid lenInBytes');\n const DST_prime = (0, utils_js_1.concatBytes)(DST, i2osp(DST.length, 1));\n const Z_pad = i2osp(0, r_in_bytes);\n const l_i_b_str = i2osp(lenInBytes, 2); // len_in_bytes_str\n const b = new Array(ell);\n const b_0 = H((0, utils_js_1.concatBytes)(Z_pad, msg, l_i_b_str, i2osp(0, 1), DST_prime));\n b[0] = H((0, utils_js_1.concatBytes)(b_0, i2osp(1, 1), DST_prime));\n for (let i = 1; i <= ell; i++) {\n const args = [strxor(b_0, b[i - 1]), i2osp(i + 1, 1), DST_prime];\n b[i] = H((0, utils_js_1.concatBytes)(...args));\n }\n const pseudo_random_bytes = (0, utils_js_1.concatBytes)(...b);\n return pseudo_random_bytes.slice(0, lenInBytes);\n}\n// Produces a uniformly random byte string using an extendable-output function (XOF) H.\n// 1. The collision resistance of H MUST be at least k bits.\n// 2. H MUST be an XOF that has been proved indifferentiable from\n// a random oracle under a reasonable cryptographic assumption.\n// https://www.rfc-editor.org/rfc/rfc9380#section-5.3.2\nfunction expand_message_xof(msg, DST, lenInBytes, k, H) {\n (0, utils_js_1.abytes)(msg);\n (0, utils_js_1.abytes)(DST);\n anum(lenInBytes);\n // https://www.rfc-editor.org/rfc/rfc9380#section-5.3.3\n // DST = H('H2C-OVERSIZE-DST-' || a_very_long_DST, Math.ceil((lenInBytes * k) / 8));\n if (DST.length > 255) {\n const dkLen = Math.ceil((2 * k) / 8);\n DST = H.create({ dkLen }).update((0, utils_js_1.utf8ToBytes)('H2C-OVERSIZE-DST-')).update(DST).digest();\n }\n if (lenInBytes > 65535 || DST.length > 255)\n throw new Error('expand_message_xof: invalid lenInBytes');\n return (H.create({ dkLen: lenInBytes })\n .update(msg)\n .update(i2osp(lenInBytes, 2))\n // 2. DST_prime = DST || I2OSP(len(DST), 1)\n .update(DST)\n .update(i2osp(DST.length, 1))\n .digest());\n}\n/**\n * Hashes arbitrary-length byte strings to a list of one or more elements of a finite field F\n * https://www.rfc-editor.org/rfc/rfc9380#section-5.2\n * @param msg a byte string containing the message to hash\n * @param count the number of elements of F to output\n * @param options `{DST: string, p: bigint, m: number, k: number, expand: 'xmd' | 'xof', hash: H}`, see above\n * @returns [u_0, ..., u_(count - 1)], a list of field elements.\n */\nfunction hash_to_field(msg, count, options) {\n (0, utils_js_1.validateObject)(options, {\n DST: 'stringOrUint8Array',\n p: 'bigint',\n m: 'isSafeInteger',\n k: 'isSafeInteger',\n hash: 'hash',\n });\n const { p, k, m, hash, expand, DST: _DST } = options;\n (0, utils_js_1.abytes)(msg);\n anum(count);\n const DST = typeof _DST === 'string' ? (0, utils_js_1.utf8ToBytes)(_DST) : _DST;\n const log2p = p.toString(2).length;\n const L = Math.ceil((log2p + k) / 8); // section 5.1 of ietf draft link above\n const len_in_bytes = count * m * L;\n let prb; // pseudo_random_bytes\n if (expand === 'xmd') {\n prb = expand_message_xmd(msg, DST, len_in_bytes, hash);\n }\n else if (expand === 'xof') {\n prb = expand_message_xof(msg, DST, len_in_bytes, k, hash);\n }\n else if (expand === '_internal_pass') {\n // for internal tests only\n prb = msg;\n }\n else {\n throw new Error('expand must be \"xmd\" or \"xof\"');\n }\n const u = new Array(count);\n for (let i = 0; i < count; i++) {\n const e = new Array(m);\n for (let j = 0; j < m; j++) {\n const elm_offset = L * (j + i * m);\n const tv = prb.subarray(elm_offset, elm_offset + L);\n e[j] = (0, modular_js_1.mod)(os2ip(tv), p);\n }\n u[i] = e;\n }\n return u;\n}\nfunction isogenyMap(field, map) {\n // Make same order as in spec\n const COEFF = map.map((i) => Array.from(i).reverse());\n return (x, y) => {\n const [xNum, xDen, yNum, yDen] = COEFF.map((val) => val.reduce((acc, i) => field.add(field.mul(acc, x), i)));\n x = field.div(xNum, xDen); // xNum / xDen\n y = field.mul(y, field.div(yNum, yDen)); // y * (yNum / yDev)\n return { x, y };\n };\n}\nfunction createHasher(Point, mapToCurve, def) {\n if (typeof mapToCurve !== 'function')\n throw new Error('mapToCurve() must be defined');\n return {\n // Encodes byte string to elliptic curve.\n // hash_to_curve from https://www.rfc-editor.org/rfc/rfc9380#section-3\n hashToCurve(msg, options) {\n const u = hash_to_field(msg, 2, { ...def, DST: def.DST, ...options });\n const u0 = Point.fromAffine(mapToCurve(u[0]));\n const u1 = Point.fromAffine(mapToCurve(u[1]));\n const P = u0.add(u1).clearCofactor();\n P.assertValidity();\n return P;\n },\n // Encodes byte string to elliptic curve.\n // encode_to_curve from https://www.rfc-editor.org/rfc/rfc9380#section-3\n encodeToCurve(msg, options) {\n const u = hash_to_field(msg, 1, { ...def, DST: def.encodeDST, ...options });\n const P = Point.fromAffine(mapToCurve(u[0])).clearCofactor();\n P.assertValidity();\n return P;\n },\n // Same as encodeToCurve, but without hash\n mapToCurve(scalars) {\n if (!Array.isArray(scalars))\n throw new Error('mapToCurve: expected array of bigints');\n for (const i of scalars)\n if (typeof i !== 'bigint')\n throw new Error(`mapToCurve: expected array of bigints, got ${i} in array`);\n const P = Point.fromAffine(mapToCurve(scalars)).clearCofactor();\n P.assertValidity();\n return P;\n },\n };\n}\n//# sourceMappingURL=hash-to-curve.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.montgomery = montgomery;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nconst modular_js_1 = require(\"./modular.js\");\nconst utils_js_1 = require(\"./utils.js\");\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nfunction validateOpts(curve) {\n (0, utils_js_1.validateObject)(curve, {\n a: 'bigint',\n }, {\n montgomeryBits: 'isSafeInteger',\n nByteLength: 'isSafeInteger',\n adjustScalarBytes: 'function',\n domain: 'function',\n powPminus2: 'function',\n Gu: 'bigint',\n });\n // Set defaults\n return Object.freeze({ ...curve });\n}\n// NOTE: not really montgomery curve, just bunch of very specific methods for X25519/X448 (RFC 7748, https://www.rfc-editor.org/rfc/rfc7748)\n// Uses only one coordinate instead of two\nfunction montgomery(curveDef) {\n const CURVE = validateOpts(curveDef);\n const { P } = CURVE;\n const modP = (n) => (0, modular_js_1.mod)(n, P);\n const montgomeryBits = CURVE.montgomeryBits;\n const montgomeryBytes = Math.ceil(montgomeryBits / 8);\n const fieldLen = CURVE.nByteLength;\n const adjustScalarBytes = CURVE.adjustScalarBytes || ((bytes) => bytes);\n const powPminus2 = CURVE.powPminus2 || ((x) => (0, modular_js_1.pow)(x, P - BigInt(2), P));\n // cswap from RFC7748. But it is not from RFC7748!\n /*\n cswap(swap, x_2, x_3):\n dummy = mask(swap) AND (x_2 XOR x_3)\n x_2 = x_2 XOR dummy\n x_3 = x_3 XOR dummy\n Return (x_2, x_3)\n Where mask(swap) is the all-1 or all-0 word of the same length as x_2\n and x_3, computed, e.g., as mask(swap) = 0 - swap.\n */\n function cswap(swap, x_2, x_3) {\n const dummy = modP(swap * (x_2 - x_3));\n x_2 = modP(x_2 - dummy);\n x_3 = modP(x_3 + dummy);\n return [x_2, x_3];\n }\n // x25519 from 4\n // The constant a24 is (486662 - 2) / 4 = 121665 for curve25519/X25519\n const a24 = (CURVE.a - BigInt(2)) / BigInt(4);\n /**\n *\n * @param pointU u coordinate (x) on Montgomery Curve 25519\n * @param scalar by which the point would be multiplied\n * @returns new Point on Montgomery curve\n */\n function montgomeryLadder(u, scalar) {\n (0, utils_js_1.aInRange)('u', u, _0n, P);\n (0, utils_js_1.aInRange)('scalar', scalar, _0n, P);\n // Section 5: Implementations MUST accept non-canonical values and process them as\n // if they had been reduced modulo the field prime.\n const k = scalar;\n const x_1 = u;\n let x_2 = _1n;\n let z_2 = _0n;\n let x_3 = u;\n let z_3 = _1n;\n let swap = _0n;\n let sw;\n for (let t = BigInt(montgomeryBits - 1); t >= _0n; t--) {\n const k_t = (k >> t) & _1n;\n swap ^= k_t;\n sw = cswap(swap, x_2, x_3);\n x_2 = sw[0];\n x_3 = sw[1];\n sw = cswap(swap, z_2, z_3);\n z_2 = sw[0];\n z_3 = sw[1];\n swap = k_t;\n const A = x_2 + z_2;\n const AA = modP(A * A);\n const B = x_2 - z_2;\n const BB = modP(B * B);\n const E = AA - BB;\n const C = x_3 + z_3;\n const D = x_3 - z_3;\n const DA = modP(D * A);\n const CB = modP(C * B);\n const dacb = DA + CB;\n const da_cb = DA - CB;\n x_3 = modP(dacb * dacb);\n z_3 = modP(x_1 * modP(da_cb * da_cb));\n x_2 = modP(AA * BB);\n z_2 = modP(E * (AA + modP(a24 * E)));\n }\n // (x_2, x_3) = cswap(swap, x_2, x_3)\n sw = cswap(swap, x_2, x_3);\n x_2 = sw[0];\n x_3 = sw[1];\n // (z_2, z_3) = cswap(swap, z_2, z_3)\n sw = cswap(swap, z_2, z_3);\n z_2 = sw[0];\n z_3 = sw[1];\n // z_2^(p - 2)\n const z2 = powPminus2(z_2);\n // Return x_2 * (z_2^(p - 2))\n return modP(x_2 * z2);\n }\n function encodeUCoordinate(u) {\n return (0, utils_js_1.numberToBytesLE)(modP(u), montgomeryBytes);\n }\n function decodeUCoordinate(uEnc) {\n // Section 5: When receiving such an array, implementations of X25519\n // MUST mask the most significant bit in the final byte.\n const u = (0, utils_js_1.ensureBytes)('u coordinate', uEnc, montgomeryBytes);\n if (fieldLen === 32)\n u[31] &= 127; // 0b0111_1111\n return (0, utils_js_1.bytesToNumberLE)(u);\n }\n function decodeScalar(n) {\n const bytes = (0, utils_js_1.ensureBytes)('scalar', n);\n const len = bytes.length;\n if (len !== montgomeryBytes && len !== fieldLen)\n throw new Error(`Expected ${montgomeryBytes} or ${fieldLen} bytes, got ${len}`);\n return (0, utils_js_1.bytesToNumberLE)(adjustScalarBytes(bytes));\n }\n function scalarMult(scalar, u) {\n const pointU = decodeUCoordinate(u);\n const _scalar = decodeScalar(scalar);\n const pu = montgomeryLadder(pointU, _scalar);\n // The result was not contributory\n // https://cr.yp.to/ecdh.html#validate\n if (pu === _0n)\n throw new Error('Invalid private or public key received');\n return encodeUCoordinate(pu);\n }\n // Computes public key from private. By doing scalar multiplication of base point.\n const GuBytes = encodeUCoordinate(CURVE.Gu);\n function scalarMultBase(scalar) {\n return scalarMult(scalar, GuBytes);\n }\n return {\n scalarMult,\n scalarMultBase,\n getSharedSecret: (privateKey, publicKey) => scalarMult(privateKey, publicKey),\n getPublicKey: (privateKey) => scalarMultBase(privateKey),\n utils: { randomPrivateKey: () => CURVE.randomBytes(CURVE.nByteLength) },\n GuBytes: GuBytes,\n };\n}\n//# sourceMappingURL=montgomery.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hash_to_ristretto255 = exports.hashToRistretto255 = exports.RistrettoPoint = exports.encodeToCurve = exports.hashToCurve = exports.edwardsToMontgomery = exports.x25519 = exports.ed25519ph = exports.ed25519ctx = exports.ed25519 = exports.ED25519_TORSION_SUBGROUP = void 0;\nexports.edwardsToMontgomeryPub = edwardsToMontgomeryPub;\nexports.edwardsToMontgomeryPriv = edwardsToMontgomeryPriv;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nconst sha512_1 = require(\"@noble/hashes/sha512\");\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst edwards_js_1 = require(\"./abstract/edwards.js\");\nconst hash_to_curve_js_1 = require(\"./abstract/hash-to-curve.js\");\nconst modular_js_1 = require(\"./abstract/modular.js\");\nconst montgomery_js_1 = require(\"./abstract/montgomery.js\");\nconst utils_js_1 = require(\"./abstract/utils.js\");\n/**\n * ed25519 Twisted Edwards curve with following addons:\n * - X25519 ECDH\n * - Ristretto cofactor elimination\n * - Elligator hash-to-group / point indistinguishability\n */\nconst ED25519_P = BigInt('57896044618658097711785492504343953926634992332820282019728792003956564819949');\n// √(-1) aka √(a) aka 2^((p-1)/4)\nconst ED25519_SQRT_M1 = /* @__PURE__ */ BigInt('19681161376707505956807079304988542015446066515923890162744021073123829784752');\n// prettier-ignore\nconst _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _3n = BigInt(3);\n// prettier-ignore\nconst _5n = BigInt(5), _8n = BigInt(8);\nfunction ed25519_pow_2_252_3(x) {\n // prettier-ignore\n const _10n = BigInt(10), _20n = BigInt(20), _40n = BigInt(40), _80n = BigInt(80);\n const P = ED25519_P;\n const x2 = (x * x) % P;\n const b2 = (x2 * x) % P; // x^3, 11\n const b4 = ((0, modular_js_1.pow2)(b2, _2n, P) * b2) % P; // x^15, 1111\n const b5 = ((0, modular_js_1.pow2)(b4, _1n, P) * x) % P; // x^31\n const b10 = ((0, modular_js_1.pow2)(b5, _5n, P) * b5) % P;\n const b20 = ((0, modular_js_1.pow2)(b10, _10n, P) * b10) % P;\n const b40 = ((0, modular_js_1.pow2)(b20, _20n, P) * b20) % P;\n const b80 = ((0, modular_js_1.pow2)(b40, _40n, P) * b40) % P;\n const b160 = ((0, modular_js_1.pow2)(b80, _80n, P) * b80) % P;\n const b240 = ((0, modular_js_1.pow2)(b160, _80n, P) * b80) % P;\n const b250 = ((0, modular_js_1.pow2)(b240, _10n, P) * b10) % P;\n const pow_p_5_8 = ((0, modular_js_1.pow2)(b250, _2n, P) * x) % P;\n // ^ To pow to (p+3)/8, multiply it by x.\n return { pow_p_5_8, b2 };\n}\nfunction adjustScalarBytes(bytes) {\n // Section 5: For X25519, in order to decode 32 random bytes as an integer scalar,\n // set the three least significant bits of the first byte\n bytes[0] &= 248; // 0b1111_1000\n // and the most significant bit of the last to zero,\n bytes[31] &= 127; // 0b0111_1111\n // set the second most significant bit of the last byte to 1\n bytes[31] |= 64; // 0b0100_0000\n return bytes;\n}\n// sqrt(u/v)\nfunction uvRatio(u, v) {\n const P = ED25519_P;\n const v3 = (0, modular_js_1.mod)(v * v * v, P); // v³\n const v7 = (0, modular_js_1.mod)(v3 * v3 * v, P); // v⁷\n // (p+3)/8 and (p-5)/8\n const pow = ed25519_pow_2_252_3(u * v7).pow_p_5_8;\n let x = (0, modular_js_1.mod)(u * v3 * pow, P); // (uv³)(uv⁷)^(p-5)/8\n const vx2 = (0, modular_js_1.mod)(v * x * x, P); // vx²\n const root1 = x; // First root candidate\n const root2 = (0, modular_js_1.mod)(x * ED25519_SQRT_M1, P); // Second root candidate\n const useRoot1 = vx2 === u; // If vx² = u (mod p), x is a square root\n const useRoot2 = vx2 === (0, modular_js_1.mod)(-u, P); // If vx² = -u, set x <-- x * 2^((p-1)/4)\n const noRoot = vx2 === (0, modular_js_1.mod)(-u * ED25519_SQRT_M1, P); // There is no valid root, vx² = -u√(-1)\n if (useRoot1)\n x = root1;\n if (useRoot2 || noRoot)\n x = root2; // We return root2 anyway, for const-time\n if ((0, modular_js_1.isNegativeLE)(x, P))\n x = (0, modular_js_1.mod)(-x, P);\n return { isValid: useRoot1 || useRoot2, value: x };\n}\n// Just in case\nexports.ED25519_TORSION_SUBGROUP = [\n '0100000000000000000000000000000000000000000000000000000000000000',\n 'c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a',\n '0000000000000000000000000000000000000000000000000000000000000080',\n '26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05',\n 'ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f',\n '26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85',\n '0000000000000000000000000000000000000000000000000000000000000000',\n 'c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa',\n];\nconst Fp = /* @__PURE__ */ (() => (0, modular_js_1.Field)(ED25519_P, undefined, true))();\nconst ed25519Defaults = /* @__PURE__ */ (() => ({\n // Param: a\n a: BigInt(-1), // Fp.create(-1) is proper; our way still works and is faster\n // d is equal to -121665/121666 over finite field.\n // Negative number is P - number, and division is invert(number, P)\n d: BigInt('37095705934669439343138083508754565189542113879843219016388785533085940283555'),\n // Finite field 𝔽p over which we'll do calculations; 2n**255n - 19n\n Fp,\n // Subgroup order: how many points curve has\n // 2n**252n + 27742317777372353535851937790883648493n;\n n: BigInt('7237005577332262213973186563042994240857116359379907606001950938285454250989'),\n // Cofactor\n h: _8n,\n // Base point (x, y) aka generator point\n Gx: BigInt('15112221349535400772501151409588531511454012693041857206046113283949847762202'),\n Gy: BigInt('46316835694926478169428394003475163141307993866256225615783033603165251855960'),\n hash: sha512_1.sha512,\n randomBytes: utils_1.randomBytes,\n adjustScalarBytes,\n // dom2\n // Ratio of u to v. Allows us to combine inversion and square root. Uses algo from RFC8032 5.1.3.\n // Constant-time, u/√v\n uvRatio,\n}))();\n/**\n * ed25519 curve with EdDSA signatures.\n */\nexports.ed25519 = (() => (0, edwards_js_1.twistedEdwards)(ed25519Defaults))();\nfunction ed25519_domain(data, ctx, phflag) {\n if (ctx.length > 255)\n throw new Error('Context is too big');\n return (0, utils_1.concatBytes)((0, utils_1.utf8ToBytes)('SigEd25519 no Ed25519 collisions'), new Uint8Array([phflag ? 1 : 0, ctx.length]), ctx, data);\n}\nexports.ed25519ctx = (() => (0, edwards_js_1.twistedEdwards)({\n ...ed25519Defaults,\n domain: ed25519_domain,\n}))();\nexports.ed25519ph = (() => (0, edwards_js_1.twistedEdwards)(Object.assign({}, ed25519Defaults, {\n domain: ed25519_domain,\n prehash: sha512_1.sha512,\n})))();\nexports.x25519 = (() => (0, montgomery_js_1.montgomery)({\n P: ED25519_P,\n a: BigInt(486662),\n montgomeryBits: 255, // n is 253 bits\n nByteLength: 32,\n Gu: BigInt(9),\n powPminus2: (x) => {\n const P = ED25519_P;\n // x^(p-2) aka x^(2^255-21)\n const { pow_p_5_8, b2 } = ed25519_pow_2_252_3(x);\n return (0, modular_js_1.mod)((0, modular_js_1.pow2)(pow_p_5_8, _3n, P) * b2, P);\n },\n adjustScalarBytes,\n randomBytes: utils_1.randomBytes,\n}))();\n/**\n * Converts ed25519 public key to x25519 public key. Uses formula:\n * * `(u, v) = ((1+y)/(1-y), sqrt(-486664)*u/x)`\n * * `(x, y) = (sqrt(-486664)*u/v, (u-1)/(u+1))`\n * @example\n * const someonesPub = ed25519.getPublicKey(ed25519.utils.randomPrivateKey());\n * const aPriv = x25519.utils.randomPrivateKey();\n * x25519.getSharedSecret(aPriv, edwardsToMontgomeryPub(someonesPub))\n */\nfunction edwardsToMontgomeryPub(edwardsPub) {\n const { y } = exports.ed25519.ExtendedPoint.fromHex(edwardsPub);\n const _1n = BigInt(1);\n return Fp.toBytes(Fp.create((_1n + y) * Fp.inv(_1n - y)));\n}\nexports.edwardsToMontgomery = edwardsToMontgomeryPub; // deprecated\n/**\n * Converts ed25519 secret key to x25519 secret key.\n * @example\n * const someonesPub = x25519.getPublicKey(x25519.utils.randomPrivateKey());\n * const aPriv = ed25519.utils.randomPrivateKey();\n * x25519.getSharedSecret(edwardsToMontgomeryPriv(aPriv), someonesPub)\n */\nfunction edwardsToMontgomeryPriv(edwardsPriv) {\n const hashed = ed25519Defaults.hash(edwardsPriv.subarray(0, 32));\n return ed25519Defaults.adjustScalarBytes(hashed).subarray(0, 32);\n}\n// Hash To Curve Elligator2 Map (NOTE: different from ristretto255 elligator)\n// NOTE: very important part is usage of FpSqrtEven for ELL2_C1_EDWARDS, since\n// SageMath returns different root first and everything falls apart\nconst ELL2_C1 = /* @__PURE__ */ (() => (Fp.ORDER + _3n) / _8n)(); // 1. c1 = (q + 3) / 8 # Integer arithmetic\nconst ELL2_C2 = /* @__PURE__ */ (() => Fp.pow(_2n, ELL2_C1))(); // 2. c2 = 2^c1\nconst ELL2_C3 = /* @__PURE__ */ (() => Fp.sqrt(Fp.neg(Fp.ONE)))(); // 3. c3 = sqrt(-1)\n// prettier-ignore\nfunction map_to_curve_elligator2_curve25519(u) {\n const ELL2_C4 = (Fp.ORDER - _5n) / _8n; // 4. c4 = (q - 5) / 8 # Integer arithmetic\n const ELL2_J = BigInt(486662);\n let tv1 = Fp.sqr(u); // 1. tv1 = u^2\n tv1 = Fp.mul(tv1, _2n); // 2. tv1 = 2 * tv1\n let xd = Fp.add(tv1, Fp.ONE); // 3. xd = tv1 + 1 # Nonzero: -1 is square (mod p), tv1 is not\n let x1n = Fp.neg(ELL2_J); // 4. x1n = -J # x1 = x1n / xd = -J / (1 + 2 * u^2)\n let tv2 = Fp.sqr(xd); // 5. tv2 = xd^2\n let gxd = Fp.mul(tv2, xd); // 6. gxd = tv2 * xd # gxd = xd^3\n let gx1 = Fp.mul(tv1, ELL2_J); // 7. gx1 = J * tv1 # x1n + J * xd\n gx1 = Fp.mul(gx1, x1n); // 8. gx1 = gx1 * x1n # x1n^2 + J * x1n * xd\n gx1 = Fp.add(gx1, tv2); // 9. gx1 = gx1 + tv2 # x1n^2 + J * x1n * xd + xd^2\n gx1 = Fp.mul(gx1, x1n); // 10. gx1 = gx1 * x1n # x1n^3 + J * x1n^2 * xd + x1n * xd^2\n let tv3 = Fp.sqr(gxd); // 11. tv3 = gxd^2\n tv2 = Fp.sqr(tv3); // 12. tv2 = tv3^2 # gxd^4\n tv3 = Fp.mul(tv3, gxd); // 13. tv3 = tv3 * gxd # gxd^3\n tv3 = Fp.mul(tv3, gx1); // 14. tv3 = tv3 * gx1 # gx1 * gxd^3\n tv2 = Fp.mul(tv2, tv3); // 15. tv2 = tv2 * tv3 # gx1 * gxd^7\n let y11 = Fp.pow(tv2, ELL2_C4); // 16. y11 = tv2^c4 # (gx1 * gxd^7)^((p - 5) / 8)\n y11 = Fp.mul(y11, tv3); // 17. y11 = y11 * tv3 # gx1*gxd^3*(gx1*gxd^7)^((p-5)/8)\n let y12 = Fp.mul(y11, ELL2_C3); // 18. y12 = y11 * c3\n tv2 = Fp.sqr(y11); // 19. tv2 = y11^2\n tv2 = Fp.mul(tv2, gxd); // 20. tv2 = tv2 * gxd\n let e1 = Fp.eql(tv2, gx1); // 21. e1 = tv2 == gx1\n let y1 = Fp.cmov(y12, y11, e1); // 22. y1 = CMOV(y12, y11, e1) # If g(x1) is square, this is its sqrt\n let x2n = Fp.mul(x1n, tv1); // 23. x2n = x1n * tv1 # x2 = x2n / xd = 2 * u^2 * x1n / xd\n let y21 = Fp.mul(y11, u); // 24. y21 = y11 * u\n y21 = Fp.mul(y21, ELL2_C2); // 25. y21 = y21 * c2\n let y22 = Fp.mul(y21, ELL2_C3); // 26. y22 = y21 * c3\n let gx2 = Fp.mul(gx1, tv1); // 27. gx2 = gx1 * tv1 # g(x2) = gx2 / gxd = 2 * u^2 * g(x1)\n tv2 = Fp.sqr(y21); // 28. tv2 = y21^2\n tv2 = Fp.mul(tv2, gxd); // 29. tv2 = tv2 * gxd\n let e2 = Fp.eql(tv2, gx2); // 30. e2 = tv2 == gx2\n let y2 = Fp.cmov(y22, y21, e2); // 31. y2 = CMOV(y22, y21, e2) # If g(x2) is square, this is its sqrt\n tv2 = Fp.sqr(y1); // 32. tv2 = y1^2\n tv2 = Fp.mul(tv2, gxd); // 33. tv2 = tv2 * gxd\n let e3 = Fp.eql(tv2, gx1); // 34. e3 = tv2 == gx1\n let xn = Fp.cmov(x2n, x1n, e3); // 35. xn = CMOV(x2n, x1n, e3) # If e3, x = x1, else x = x2\n let y = Fp.cmov(y2, y1, e3); // 36. y = CMOV(y2, y1, e3) # If e3, y = y1, else y = y2\n let e4 = Fp.isOdd(y); // 37. e4 = sgn0(y) == 1 # Fix sign of y\n y = Fp.cmov(y, Fp.neg(y), e3 !== e4); // 38. y = CMOV(y, -y, e3 XOR e4)\n return { xMn: xn, xMd: xd, yMn: y, yMd: _1n }; // 39. return (xn, xd, y, 1)\n}\nconst ELL2_C1_EDWARDS = /* @__PURE__ */ (() => (0, modular_js_1.FpSqrtEven)(Fp, Fp.neg(BigInt(486664))))(); // sgn0(c1) MUST equal 0\nfunction map_to_curve_elligator2_edwards25519(u) {\n const { xMn, xMd, yMn, yMd } = map_to_curve_elligator2_curve25519(u); // 1. (xMn, xMd, yMn, yMd) =\n // map_to_curve_elligator2_curve25519(u)\n let xn = Fp.mul(xMn, yMd); // 2. xn = xMn * yMd\n xn = Fp.mul(xn, ELL2_C1_EDWARDS); // 3. xn = xn * c1\n let xd = Fp.mul(xMd, yMn); // 4. xd = xMd * yMn # xn / xd = c1 * xM / yM\n let yn = Fp.sub(xMn, xMd); // 5. yn = xMn - xMd\n let yd = Fp.add(xMn, xMd); // 6. yd = xMn + xMd # (n / d - 1) / (n / d + 1) = (n - d) / (n + d)\n let tv1 = Fp.mul(xd, yd); // 7. tv1 = xd * yd\n let e = Fp.eql(tv1, Fp.ZERO); // 8. e = tv1 == 0\n xn = Fp.cmov(xn, Fp.ZERO, e); // 9. xn = CMOV(xn, 0, e)\n xd = Fp.cmov(xd, Fp.ONE, e); // 10. xd = CMOV(xd, 1, e)\n yn = Fp.cmov(yn, Fp.ONE, e); // 11. yn = CMOV(yn, 1, e)\n yd = Fp.cmov(yd, Fp.ONE, e); // 12. yd = CMOV(yd, 1, e)\n const inv = Fp.invertBatch([xd, yd]); // batch division\n return { x: Fp.mul(xn, inv[0]), y: Fp.mul(yn, inv[1]) }; // 13. return (xn, xd, yn, yd)\n}\nconst htf = /* @__PURE__ */ (() => (0, hash_to_curve_js_1.createHasher)(exports.ed25519.ExtendedPoint, (scalars) => map_to_curve_elligator2_edwards25519(scalars[0]), {\n DST: 'edwards25519_XMD:SHA-512_ELL2_RO_',\n encodeDST: 'edwards25519_XMD:SHA-512_ELL2_NU_',\n p: Fp.ORDER,\n m: 1,\n k: 128,\n expand: 'xmd',\n hash: sha512_1.sha512,\n}))();\nexports.hashToCurve = (() => htf.hashToCurve)();\nexports.encodeToCurve = (() => htf.encodeToCurve)();\nfunction assertRstPoint(other) {\n if (!(other instanceof RistPoint))\n throw new Error('RistrettoPoint expected');\n}\n// √(-1) aka √(a) aka 2^((p-1)/4)\nconst SQRT_M1 = ED25519_SQRT_M1;\n// √(ad - 1)\nconst SQRT_AD_MINUS_ONE = /* @__PURE__ */ BigInt('25063068953384623474111414158702152701244531502492656460079210482610430750235');\n// 1 / √(a-d)\nconst INVSQRT_A_MINUS_D = /* @__PURE__ */ BigInt('54469307008909316920995813868745141605393597292927456921205312896311721017578');\n// 1-d²\nconst ONE_MINUS_D_SQ = /* @__PURE__ */ BigInt('1159843021668779879193775521855586647937357759715417654439879720876111806838');\n// (d-1)²\nconst D_MINUS_ONE_SQ = /* @__PURE__ */ BigInt('40440834346308536858101042469323190826248399146238708352240133220865137265952');\n// Calculates 1/√(number)\nconst invertSqrt = (number) => uvRatio(_1n, number);\nconst MAX_255B = /* @__PURE__ */ BigInt('0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff');\nconst bytes255ToNumberLE = (bytes) => exports.ed25519.CURVE.Fp.create((0, utils_js_1.bytesToNumberLE)(bytes) & MAX_255B);\n// Computes Elligator map for Ristretto\n// https://ristretto.group/formulas/elligator.html\nfunction calcElligatorRistrettoMap(r0) {\n const { d } = exports.ed25519.CURVE;\n const P = exports.ed25519.CURVE.Fp.ORDER;\n const mod = exports.ed25519.CURVE.Fp.create;\n const r = mod(SQRT_M1 * r0 * r0); // 1\n const Ns = mod((r + _1n) * ONE_MINUS_D_SQ); // 2\n let c = BigInt(-1); // 3\n const D = mod((c - d * r) * mod(r + d)); // 4\n let { isValid: Ns_D_is_sq, value: s } = uvRatio(Ns, D); // 5\n let s_ = mod(s * r0); // 6\n if (!(0, modular_js_1.isNegativeLE)(s_, P))\n s_ = mod(-s_);\n if (!Ns_D_is_sq)\n s = s_; // 7\n if (!Ns_D_is_sq)\n c = r; // 8\n const Nt = mod(c * (r - _1n) * D_MINUS_ONE_SQ - D); // 9\n const s2 = s * s;\n const W0 = mod((s + s) * D); // 10\n const W1 = mod(Nt * SQRT_AD_MINUS_ONE); // 11\n const W2 = mod(_1n - s2); // 12\n const W3 = mod(_1n + s2); // 13\n return new exports.ed25519.ExtendedPoint(mod(W0 * W3), mod(W2 * W1), mod(W1 * W3), mod(W0 * W2));\n}\n/**\n * Each ed25519/ExtendedPoint has 8 different equivalent points. This can be\n * a source of bugs for protocols like ring signatures. Ristretto was created to solve this.\n * Ristretto point operates in X:Y:Z:T extended coordinates like ExtendedPoint,\n * but it should work in its own namespace: do not combine those two.\n * https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-ristretto255-decaf448\n */\nclass RistPoint {\n // Private property to discourage combining ExtendedPoint + RistrettoPoint\n // Always use Ristretto encoding/decoding instead.\n constructor(ep) {\n this.ep = ep;\n }\n static fromAffine(ap) {\n return new RistPoint(exports.ed25519.ExtendedPoint.fromAffine(ap));\n }\n /**\n * Takes uniform output of 64-byte hash function like sha512 and converts it to `RistrettoPoint`.\n * The hash-to-group operation applies Elligator twice and adds the results.\n * **Note:** this is one-way map, there is no conversion from point to hash.\n * https://ristretto.group/formulas/elligator.html\n * @param hex 64-byte output of a hash function\n */\n static hashToCurve(hex) {\n hex = (0, utils_js_1.ensureBytes)('ristrettoHash', hex, 64);\n const r1 = bytes255ToNumberLE(hex.slice(0, 32));\n const R1 = calcElligatorRistrettoMap(r1);\n const r2 = bytes255ToNumberLE(hex.slice(32, 64));\n const R2 = calcElligatorRistrettoMap(r2);\n return new RistPoint(R1.add(R2));\n }\n /**\n * Converts ristretto-encoded string to ristretto point.\n * https://ristretto.group/formulas/decoding.html\n * @param hex Ristretto-encoded 32 bytes. Not every 32-byte string is valid ristretto encoding\n */\n static fromHex(hex) {\n hex = (0, utils_js_1.ensureBytes)('ristrettoHex', hex, 32);\n const { a, d } = exports.ed25519.CURVE;\n const P = exports.ed25519.CURVE.Fp.ORDER;\n const mod = exports.ed25519.CURVE.Fp.create;\n const emsg = 'RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint';\n const s = bytes255ToNumberLE(hex);\n // 1. Check that s_bytes is the canonical encoding of a field element, or else abort.\n // 3. Check that s is non-negative, or else abort\n if (!(0, utils_js_1.equalBytes)((0, utils_js_1.numberToBytesLE)(s, 32), hex) || (0, modular_js_1.isNegativeLE)(s, P))\n throw new Error(emsg);\n const s2 = mod(s * s);\n const u1 = mod(_1n + a * s2); // 4 (a is -1)\n const u2 = mod(_1n - a * s2); // 5\n const u1_2 = mod(u1 * u1);\n const u2_2 = mod(u2 * u2);\n const v = mod(a * d * u1_2 - u2_2); // 6\n const { isValid, value: I } = invertSqrt(mod(v * u2_2)); // 7\n const Dx = mod(I * u2); // 8\n const Dy = mod(I * Dx * v); // 9\n let x = mod((s + s) * Dx); // 10\n if ((0, modular_js_1.isNegativeLE)(x, P))\n x = mod(-x); // 10\n const y = mod(u1 * Dy); // 11\n const t = mod(x * y); // 12\n if (!isValid || (0, modular_js_1.isNegativeLE)(t, P) || y === _0n)\n throw new Error(emsg);\n return new RistPoint(new exports.ed25519.ExtendedPoint(x, y, _1n, t));\n }\n /**\n * Encodes ristretto point to Uint8Array.\n * https://ristretto.group/formulas/encoding.html\n */\n toRawBytes() {\n let { ex: x, ey: y, ez: z, et: t } = this.ep;\n const P = exports.ed25519.CURVE.Fp.ORDER;\n const mod = exports.ed25519.CURVE.Fp.create;\n const u1 = mod(mod(z + y) * mod(z - y)); // 1\n const u2 = mod(x * y); // 2\n // Square root always exists\n const u2sq = mod(u2 * u2);\n const { value: invsqrt } = invertSqrt(mod(u1 * u2sq)); // 3\n const D1 = mod(invsqrt * u1); // 4\n const D2 = mod(invsqrt * u2); // 5\n const zInv = mod(D1 * D2 * t); // 6\n let D; // 7\n if ((0, modular_js_1.isNegativeLE)(t * zInv, P)) {\n let _x = mod(y * SQRT_M1);\n let _y = mod(x * SQRT_M1);\n x = _x;\n y = _y;\n D = mod(D1 * INVSQRT_A_MINUS_D);\n }\n else {\n D = D2; // 8\n }\n if ((0, modular_js_1.isNegativeLE)(x * zInv, P))\n y = mod(-y); // 9\n let s = mod((z - y) * D); // 10 (check footer's note, no sqrt(-a))\n if ((0, modular_js_1.isNegativeLE)(s, P))\n s = mod(-s);\n return (0, utils_js_1.numberToBytesLE)(s, 32); // 11\n }\n toHex() {\n return (0, utils_js_1.bytesToHex)(this.toRawBytes());\n }\n toString() {\n return this.toHex();\n }\n // Compare one point to another.\n equals(other) {\n assertRstPoint(other);\n const { ex: X1, ey: Y1 } = this.ep;\n const { ex: X2, ey: Y2 } = other.ep;\n const mod = exports.ed25519.CURVE.Fp.create;\n // (x1 * y2 == y1 * x2) | (y1 * y2 == x1 * x2)\n const one = mod(X1 * Y2) === mod(Y1 * X2);\n const two = mod(Y1 * Y2) === mod(X1 * X2);\n return one || two;\n }\n add(other) {\n assertRstPoint(other);\n return new RistPoint(this.ep.add(other.ep));\n }\n subtract(other) {\n assertRstPoint(other);\n return new RistPoint(this.ep.subtract(other.ep));\n }\n multiply(scalar) {\n return new RistPoint(this.ep.multiply(scalar));\n }\n multiplyUnsafe(scalar) {\n return new RistPoint(this.ep.multiplyUnsafe(scalar));\n }\n double() {\n return new RistPoint(this.ep.double());\n }\n negate() {\n return new RistPoint(this.ep.negate());\n }\n}\nexports.RistrettoPoint = (() => {\n if (!RistPoint.BASE)\n RistPoint.BASE = new RistPoint(exports.ed25519.ExtendedPoint.BASE);\n if (!RistPoint.ZERO)\n RistPoint.ZERO = new RistPoint(exports.ed25519.ExtendedPoint.ZERO);\n return RistPoint;\n})();\n// Hashing to ristretto255. https://www.rfc-editor.org/rfc/rfc9380#appendix-B\nconst hashToRistretto255 = (msg, options) => {\n const d = options.DST;\n const DST = typeof d === 'string' ? (0, utils_1.utf8ToBytes)(d) : d;\n const uniform_bytes = (0, hash_to_curve_js_1.expand_message_xmd)(msg, DST, 64, sha512_1.sha512);\n const P = RistPoint.hashToCurve(uniform_bytes);\n return P;\n};\nexports.hashToRistretto255 = hashToRistretto255;\nexports.hash_to_ristretto255 = exports.hashToRistretto255; // legacy\n//# sourceMappingURL=ed25519.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sha224 = exports.sha256 = exports.SHA256 = void 0;\nconst _md_js_1 = require(\"./_md.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// SHA2-256 need to try 2^128 hashes to execute birthday attack.\n// BTC network is doing 2^67 hashes/sec as per early 2023.\n// Round constants:\n// first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)\n// prettier-ignore\nconst SHA256_K = /* @__PURE__ */ new Uint32Array([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n// Initial state:\n// first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19\n// prettier-ignore\nconst SHA256_IV = /* @__PURE__ */ new Uint32Array([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n]);\n// Temporary buffer, not used to store anything between runs\n// Named this way because it matches specification.\nconst SHA256_W = /* @__PURE__ */ new Uint32Array(64);\nclass SHA256 extends _md_js_1.HashMD {\n constructor() {\n super(64, 32, 8, false);\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n this.A = SHA256_IV[0] | 0;\n this.B = SHA256_IV[1] | 0;\n this.C = SHA256_IV[2] | 0;\n this.D = SHA256_IV[3] | 0;\n this.E = SHA256_IV[4] | 0;\n this.F = SHA256_IV[5] | 0;\n this.G = SHA256_IV[6] | 0;\n this.H = SHA256_IV[7] | 0;\n }\n get() {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n set(A, B, C, D, E, F, G, H) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n process(view, offset) {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4)\n SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = (0, utils_js_1.rotr)(W15, 7) ^ (0, utils_js_1.rotr)(W15, 18) ^ (W15 >>> 3);\n const s1 = (0, utils_js_1.rotr)(W2, 17) ^ (0, utils_js_1.rotr)(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = (0, utils_js_1.rotr)(E, 6) ^ (0, utils_js_1.rotr)(E, 11) ^ (0, utils_js_1.rotr)(E, 25);\n const T1 = (H + sigma1 + (0, _md_js_1.Chi)(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = (0, utils_js_1.rotr)(A, 2) ^ (0, utils_js_1.rotr)(A, 13) ^ (0, utils_js_1.rotr)(A, 22);\n const T2 = (sigma0 + (0, _md_js_1.Maj)(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n roundClean() {\n SHA256_W.fill(0);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n this.buffer.fill(0);\n }\n}\nexports.SHA256 = SHA256;\n// Constants from https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf\nclass SHA224 extends SHA256 {\n constructor() {\n super();\n this.A = 0xc1059ed8 | 0;\n this.B = 0x367cd507 | 0;\n this.C = 0x3070dd17 | 0;\n this.D = 0xf70e5939 | 0;\n this.E = 0xffc00b31 | 0;\n this.F = 0x68581511 | 0;\n this.G = 0x64f98fa7 | 0;\n this.H = 0xbefa4fa4 | 0;\n this.outputLen = 28;\n }\n}\n/**\n * SHA2-256 hash function\n * @param message - data that would be hashed\n */\nexports.sha256 = (0, utils_js_1.wrapConstructor)(() => new SHA256());\n/**\n * SHA2-224 hash function\n */\nexports.sha224 = (0, utils_js_1.wrapConstructor)(() => new SHA224());\n//# sourceMappingURL=sha256.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hmac = exports.HMAC = void 0;\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// HMAC (RFC 2104)\nclass HMAC extends utils_js_1.Hash {\n constructor(hash, _key) {\n super();\n this.finished = false;\n this.destroyed = false;\n (0, _assert_js_1.hash)(hash);\n const key = (0, utils_js_1.toBytes)(_key);\n this.iHash = hash.create();\n if (typeof this.iHash.update !== 'function')\n throw new Error('Expected instance of class which extends utils.Hash');\n this.blockLen = this.iHash.blockLen;\n this.outputLen = this.iHash.outputLen;\n const blockLen = this.blockLen;\n const pad = new Uint8Array(blockLen);\n // blockLen can be bigger than outputLen\n pad.set(key.length > blockLen ? hash.create().update(key).digest() : key);\n for (let i = 0; i < pad.length; i++)\n pad[i] ^= 0x36;\n this.iHash.update(pad);\n // By doing update (processing of first block) of outer hash here we can re-use it between multiple calls via clone\n this.oHash = hash.create();\n // Undo internal XOR && apply outer XOR\n for (let i = 0; i < pad.length; i++)\n pad[i] ^= 0x36 ^ 0x5c;\n this.oHash.update(pad);\n pad.fill(0);\n }\n update(buf) {\n (0, _assert_js_1.exists)(this);\n this.iHash.update(buf);\n return this;\n }\n digestInto(out) {\n (0, _assert_js_1.exists)(this);\n (0, _assert_js_1.bytes)(out, this.outputLen);\n this.finished = true;\n this.iHash.digestInto(out);\n this.oHash.update(out);\n this.oHash.digestInto(out);\n this.destroy();\n }\n digest() {\n const out = new Uint8Array(this.oHash.outputLen);\n this.digestInto(out);\n return out;\n }\n _cloneInto(to) {\n // Create new instance without calling constructor since key already in state and we don't know it.\n to || (to = Object.create(Object.getPrototypeOf(this), {}));\n const { oHash, iHash, finished, destroyed, blockLen, outputLen } = this;\n to = to;\n to.finished = finished;\n to.destroyed = destroyed;\n to.blockLen = blockLen;\n to.outputLen = outputLen;\n to.oHash = oHash._cloneInto(to.oHash);\n to.iHash = iHash._cloneInto(to.iHash);\n return to;\n }\n destroy() {\n this.destroyed = true;\n this.oHash.destroy();\n this.iHash.destroy();\n }\n}\nexports.HMAC = HMAC;\n/**\n * HMAC: RFC2104 message authentication code.\n * @param hash - function that would be used e.g. sha256\n * @param key - message key\n * @param message - message data\n * @example\n * import { hmac } from '@noble/hashes/hmac';\n * import { sha256 } from '@noble/hashes/sha2';\n * const mac1 = hmac(sha256, 'key', 'message');\n */\nconst hmac = (hash, key, message) => new HMAC(hash, key).update(message).digest();\nexports.hmac = hmac;\nexports.hmac.create = (hash, key) => new HMAC(hash, key);\n//# sourceMappingURL=hmac.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DER = void 0;\nexports.weierstrassPoints = weierstrassPoints;\nexports.weierstrass = weierstrass;\nexports.SWUFpSqrtRatio = SWUFpSqrtRatio;\nexports.mapToCurveSimpleSWU = mapToCurveSimpleSWU;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n// Short Weierstrass curve. The formula is: y² = x³ + ax + b\nconst curve_js_1 = require(\"./curve.js\");\nconst mod = require(\"./modular.js\");\nconst ut = require(\"./utils.js\");\nconst utils_js_1 = require(\"./utils.js\");\nfunction validateSigVerOpts(opts) {\n if (opts.lowS !== undefined)\n (0, utils_js_1.abool)('lowS', opts.lowS);\n if (opts.prehash !== undefined)\n (0, utils_js_1.abool)('prehash', opts.prehash);\n}\nfunction validatePointOpts(curve) {\n const opts = (0, curve_js_1.validateBasic)(curve);\n ut.validateObject(opts, {\n a: 'field',\n b: 'field',\n }, {\n allowedPrivateKeyLengths: 'array',\n wrapPrivateKey: 'boolean',\n isTorsionFree: 'function',\n clearCofactor: 'function',\n allowInfinityPoint: 'boolean',\n fromBytes: 'function',\n toBytes: 'function',\n });\n const { endo, Fp, a } = opts;\n if (endo) {\n if (!Fp.eql(a, Fp.ZERO)) {\n throw new Error('Endomorphism can only be defined for Koblitz curves that have a=0');\n }\n if (typeof endo !== 'object' ||\n typeof endo.beta !== 'bigint' ||\n typeof endo.splitScalar !== 'function') {\n throw new Error('Expected endomorphism with beta: bigint and splitScalar: function');\n }\n }\n return Object.freeze({ ...opts });\n}\nconst { bytesToNumberBE: b2n, hexToBytes: h2b } = ut;\n/**\n * ASN.1 DER encoding utilities. ASN is very complex & fragile. Format:\n *\n * [0x30 (SEQUENCE), bytelength, 0x02 (INTEGER), intLength, R, 0x02 (INTEGER), intLength, S]\n *\n * Docs: https://letsencrypt.org/docs/a-warm-welcome-to-asn1-and-der/, https://luca.ntop.org/Teaching/Appunti/asn1.html\n */\nexports.DER = {\n // asn.1 DER encoding utils\n Err: class DERErr extends Error {\n constructor(m = '') {\n super(m);\n }\n },\n // Basic building block is TLV (Tag-Length-Value)\n _tlv: {\n encode: (tag, data) => {\n const { Err: E } = exports.DER;\n if (tag < 0 || tag > 256)\n throw new E('tlv.encode: wrong tag');\n if (data.length & 1)\n throw new E('tlv.encode: unpadded data');\n const dataLen = data.length / 2;\n const len = ut.numberToHexUnpadded(dataLen);\n if ((len.length / 2) & 128)\n throw new E('tlv.encode: long form length too big');\n // length of length with long form flag\n const lenLen = dataLen > 127 ? ut.numberToHexUnpadded((len.length / 2) | 128) : '';\n return `${ut.numberToHexUnpadded(tag)}${lenLen}${len}${data}`;\n },\n // v - value, l - left bytes (unparsed)\n decode(tag, data) {\n const { Err: E } = exports.DER;\n let pos = 0;\n if (tag < 0 || tag > 256)\n throw new E('tlv.encode: wrong tag');\n if (data.length < 2 || data[pos++] !== tag)\n throw new E('tlv.decode: wrong tlv');\n const first = data[pos++];\n const isLong = !!(first & 128); // First bit of first length byte is flag for short/long form\n let length = 0;\n if (!isLong)\n length = first;\n else {\n // Long form: [longFlag(1bit), lengthLength(7bit), length (BE)]\n const lenLen = first & 127;\n if (!lenLen)\n throw new E('tlv.decode(long): indefinite length not supported');\n if (lenLen > 4)\n throw new E('tlv.decode(long): byte length is too big'); // this will overflow u32 in js\n const lengthBytes = data.subarray(pos, pos + lenLen);\n if (lengthBytes.length !== lenLen)\n throw new E('tlv.decode: length bytes not complete');\n if (lengthBytes[0] === 0)\n throw new E('tlv.decode(long): zero leftmost byte');\n for (const b of lengthBytes)\n length = (length << 8) | b;\n pos += lenLen;\n if (length < 128)\n throw new E('tlv.decode(long): not minimal encoding');\n }\n const v = data.subarray(pos, pos + length);\n if (v.length !== length)\n throw new E('tlv.decode: wrong value length');\n return { v, l: data.subarray(pos + length) };\n },\n },\n // https://crypto.stackexchange.com/a/57734 Leftmost bit of first byte is 'negative' flag,\n // since we always use positive integers here. It must always be empty:\n // - add zero byte if exists\n // - if next byte doesn't have a flag, leading zero is not allowed (minimal encoding)\n _int: {\n encode(num) {\n const { Err: E } = exports.DER;\n if (num < _0n)\n throw new E('integer: negative integers are not allowed');\n let hex = ut.numberToHexUnpadded(num);\n // Pad with zero byte if negative flag is present\n if (Number.parseInt(hex[0], 16) & 0b1000)\n hex = '00' + hex;\n if (hex.length & 1)\n throw new E('unexpected assertion');\n return hex;\n },\n decode(data) {\n const { Err: E } = exports.DER;\n if (data[0] & 128)\n throw new E('Invalid signature integer: negative');\n if (data[0] === 0x00 && !(data[1] & 128))\n throw new E('Invalid signature integer: unnecessary leading zero');\n return b2n(data);\n },\n },\n toSig(hex) {\n // parse DER signature\n const { Err: E, _int: int, _tlv: tlv } = exports.DER;\n const data = typeof hex === 'string' ? h2b(hex) : hex;\n ut.abytes(data);\n const { v: seqBytes, l: seqLeftBytes } = tlv.decode(0x30, data);\n if (seqLeftBytes.length)\n throw new E('Invalid signature: left bytes after parsing');\n const { v: rBytes, l: rLeftBytes } = tlv.decode(0x02, seqBytes);\n const { v: sBytes, l: sLeftBytes } = tlv.decode(0x02, rLeftBytes);\n if (sLeftBytes.length)\n throw new E('Invalid signature: left bytes after parsing');\n return { r: int.decode(rBytes), s: int.decode(sBytes) };\n },\n hexFromSig(sig) {\n const { _tlv: tlv, _int: int } = exports.DER;\n const seq = `${tlv.encode(0x02, int.encode(sig.r))}${tlv.encode(0x02, int.encode(sig.s))}`;\n return tlv.encode(0x30, seq);\n },\n};\n// Be friendly to bad ECMAScript parsers by not using bigint literals\n// prettier-ignore\nconst _0n = BigInt(0), _1n = BigInt(1), _2n = BigInt(2), _3n = BigInt(3), _4n = BigInt(4);\nfunction weierstrassPoints(opts) {\n const CURVE = validatePointOpts(opts);\n const { Fp } = CURVE; // All curves has same field / group length as for now, but they can differ\n const Fn = mod.Field(CURVE.n, CURVE.nBitLength);\n const toBytes = CURVE.toBytes ||\n ((_c, point, _isCompressed) => {\n const a = point.toAffine();\n return ut.concatBytes(Uint8Array.from([0x04]), Fp.toBytes(a.x), Fp.toBytes(a.y));\n });\n const fromBytes = CURVE.fromBytes ||\n ((bytes) => {\n // const head = bytes[0];\n const tail = bytes.subarray(1);\n // if (head !== 0x04) throw new Error('Only non-compressed encoding is supported');\n const x = Fp.fromBytes(tail.subarray(0, Fp.BYTES));\n const y = Fp.fromBytes(tail.subarray(Fp.BYTES, 2 * Fp.BYTES));\n return { x, y };\n });\n /**\n * y² = x³ + ax + b: Short weierstrass curve formula\n * @returns y²\n */\n function weierstrassEquation(x) {\n const { a, b } = CURVE;\n const x2 = Fp.sqr(x); // x * x\n const x3 = Fp.mul(x2, x); // x2 * x\n return Fp.add(Fp.add(x3, Fp.mul(x, a)), b); // x3 + a * x + b\n }\n // Validate whether the passed curve params are valid.\n // We check if curve equation works for generator point.\n // `assertValidity()` won't work: `isTorsionFree()` is not available at this point in bls12-381.\n // ProjectivePoint class has not been initialized yet.\n if (!Fp.eql(Fp.sqr(CURVE.Gy), weierstrassEquation(CURVE.Gx)))\n throw new Error('bad generator point: equation left != right');\n // Valid group elements reside in range 1..n-1\n function isWithinCurveOrder(num) {\n return ut.inRange(num, _1n, CURVE.n);\n }\n // Validates if priv key is valid and converts it to bigint.\n // Supports options allowedPrivateKeyLengths and wrapPrivateKey.\n function normPrivateKeyToScalar(key) {\n const { allowedPrivateKeyLengths: lengths, nByteLength, wrapPrivateKey, n: N } = CURVE;\n if (lengths && typeof key !== 'bigint') {\n if (ut.isBytes(key))\n key = ut.bytesToHex(key);\n // Normalize to hex string, pad. E.g. P521 would norm 130-132 char hex to 132-char bytes\n if (typeof key !== 'string' || !lengths.includes(key.length))\n throw new Error('Invalid key');\n key = key.padStart(nByteLength * 2, '0');\n }\n let num;\n try {\n num =\n typeof key === 'bigint'\n ? key\n : ut.bytesToNumberBE((0, utils_js_1.ensureBytes)('private key', key, nByteLength));\n }\n catch (error) {\n throw new Error(`private key must be ${nByteLength} bytes, hex or bigint, not ${typeof key}`);\n }\n if (wrapPrivateKey)\n num = mod.mod(num, N); // disabled by default, enabled for BLS\n ut.aInRange('private key', num, _1n, N); // num in range [1..N-1]\n return num;\n }\n function assertPrjPoint(other) {\n if (!(other instanceof Point))\n throw new Error('ProjectivePoint expected');\n }\n // Memoized toAffine / validity check. They are heavy. Points are immutable.\n // Converts Projective point to affine (x, y) coordinates.\n // Can accept precomputed Z^-1 - for example, from invertBatch.\n // (x, y, z) ∋ (x=x/z, y=y/z)\n const toAffineMemo = (0, utils_js_1.memoized)((p, iz) => {\n const { px: x, py: y, pz: z } = p;\n // Fast-path for normalized points\n if (Fp.eql(z, Fp.ONE))\n return { x, y };\n const is0 = p.is0();\n // If invZ was 0, we return zero point. However we still want to execute\n // all operations, so we replace invZ with a random number, 1.\n if (iz == null)\n iz = is0 ? Fp.ONE : Fp.inv(z);\n const ax = Fp.mul(x, iz);\n const ay = Fp.mul(y, iz);\n const zz = Fp.mul(z, iz);\n if (is0)\n return { x: Fp.ZERO, y: Fp.ZERO };\n if (!Fp.eql(zz, Fp.ONE))\n throw new Error('invZ was invalid');\n return { x: ax, y: ay };\n });\n // NOTE: on exception this will crash 'cached' and no value will be set.\n // Otherwise true will be return\n const assertValidMemo = (0, utils_js_1.memoized)((p) => {\n if (p.is0()) {\n // (0, 1, 0) aka ZERO is invalid in most contexts.\n // In BLS, ZERO can be serialized, so we allow it.\n // (0, 0, 0) is wrong representation of ZERO and is always invalid.\n if (CURVE.allowInfinityPoint && !Fp.is0(p.py))\n return;\n throw new Error('bad point: ZERO');\n }\n // Some 3rd-party test vectors require different wording between here & `fromCompressedHex`\n const { x, y } = p.toAffine();\n // Check if x, y are valid field elements\n if (!Fp.isValid(x) || !Fp.isValid(y))\n throw new Error('bad point: x or y not FE');\n const left = Fp.sqr(y); // y²\n const right = weierstrassEquation(x); // x³ + ax + b\n if (!Fp.eql(left, right))\n throw new Error('bad point: equation left != right');\n if (!p.isTorsionFree())\n throw new Error('bad point: not in prime-order subgroup');\n return true;\n });\n /**\n * Projective Point works in 3d / projective (homogeneous) coordinates: (x, y, z) ∋ (x=x/z, y=y/z)\n * Default Point works in 2d / affine coordinates: (x, y)\n * We're doing calculations in projective, because its operations don't require costly inversion.\n */\n class Point {\n constructor(px, py, pz) {\n this.px = px;\n this.py = py;\n this.pz = pz;\n if (px == null || !Fp.isValid(px))\n throw new Error('x required');\n if (py == null || !Fp.isValid(py))\n throw new Error('y required');\n if (pz == null || !Fp.isValid(pz))\n throw new Error('z required');\n Object.freeze(this);\n }\n // Does not validate if the point is on-curve.\n // Use fromHex instead, or call assertValidity() later.\n static fromAffine(p) {\n const { x, y } = p || {};\n if (!p || !Fp.isValid(x) || !Fp.isValid(y))\n throw new Error('invalid affine point');\n if (p instanceof Point)\n throw new Error('projective point not allowed');\n const is0 = (i) => Fp.eql(i, Fp.ZERO);\n // fromAffine(x:0, y:0) would produce (x:0, y:0, z:1), but we need (x:0, y:1, z:0)\n if (is0(x) && is0(y))\n return Point.ZERO;\n return new Point(x, y, Fp.ONE);\n }\n get x() {\n return this.toAffine().x;\n }\n get y() {\n return this.toAffine().y;\n }\n /**\n * Takes a bunch of Projective Points but executes only one\n * inversion on all of them. Inversion is very slow operation,\n * so this improves performance massively.\n * Optimization: converts a list of projective points to a list of identical points with Z=1.\n */\n static normalizeZ(points) {\n const toInv = Fp.invertBatch(points.map((p) => p.pz));\n return points.map((p, i) => p.toAffine(toInv[i])).map(Point.fromAffine);\n }\n /**\n * Converts hash string or Uint8Array to Point.\n * @param hex short/long ECDSA hex\n */\n static fromHex(hex) {\n const P = Point.fromAffine(fromBytes((0, utils_js_1.ensureBytes)('pointHex', hex)));\n P.assertValidity();\n return P;\n }\n // Multiplies generator point by privateKey.\n static fromPrivateKey(privateKey) {\n return Point.BASE.multiply(normPrivateKeyToScalar(privateKey));\n }\n // Multiscalar Multiplication\n static msm(points, scalars) {\n return (0, curve_js_1.pippenger)(Point, Fn, points, scalars);\n }\n // \"Private method\", don't use it directly\n _setWindowSize(windowSize) {\n wnaf.setWindowSize(this, windowSize);\n }\n // A point on curve is valid if it conforms to equation.\n assertValidity() {\n assertValidMemo(this);\n }\n hasEvenY() {\n const { y } = this.toAffine();\n if (Fp.isOdd)\n return !Fp.isOdd(y);\n throw new Error(\"Field doesn't support isOdd\");\n }\n /**\n * Compare one point to another.\n */\n equals(other) {\n assertPrjPoint(other);\n const { px: X1, py: Y1, pz: Z1 } = this;\n const { px: X2, py: Y2, pz: Z2 } = other;\n const U1 = Fp.eql(Fp.mul(X1, Z2), Fp.mul(X2, Z1));\n const U2 = Fp.eql(Fp.mul(Y1, Z2), Fp.mul(Y2, Z1));\n return U1 && U2;\n }\n /**\n * Flips point to one corresponding to (x, -y) in Affine coordinates.\n */\n negate() {\n return new Point(this.px, Fp.neg(this.py), this.pz);\n }\n // Renes-Costello-Batina exception-free doubling formula.\n // There is 30% faster Jacobian formula, but it is not complete.\n // https://eprint.iacr.org/2015/1060, algorithm 3\n // Cost: 8M + 3S + 3*a + 2*b3 + 15add.\n double() {\n const { a, b } = CURVE;\n const b3 = Fp.mul(b, _3n);\n const { px: X1, py: Y1, pz: Z1 } = this;\n let X3 = Fp.ZERO, Y3 = Fp.ZERO, Z3 = Fp.ZERO; // prettier-ignore\n let t0 = Fp.mul(X1, X1); // step 1\n let t1 = Fp.mul(Y1, Y1);\n let t2 = Fp.mul(Z1, Z1);\n let t3 = Fp.mul(X1, Y1);\n t3 = Fp.add(t3, t3); // step 5\n Z3 = Fp.mul(X1, Z1);\n Z3 = Fp.add(Z3, Z3);\n X3 = Fp.mul(a, Z3);\n Y3 = Fp.mul(b3, t2);\n Y3 = Fp.add(X3, Y3); // step 10\n X3 = Fp.sub(t1, Y3);\n Y3 = Fp.add(t1, Y3);\n Y3 = Fp.mul(X3, Y3);\n X3 = Fp.mul(t3, X3);\n Z3 = Fp.mul(b3, Z3); // step 15\n t2 = Fp.mul(a, t2);\n t3 = Fp.sub(t0, t2);\n t3 = Fp.mul(a, t3);\n t3 = Fp.add(t3, Z3);\n Z3 = Fp.add(t0, t0); // step 20\n t0 = Fp.add(Z3, t0);\n t0 = Fp.add(t0, t2);\n t0 = Fp.mul(t0, t3);\n Y3 = Fp.add(Y3, t0);\n t2 = Fp.mul(Y1, Z1); // step 25\n t2 = Fp.add(t2, t2);\n t0 = Fp.mul(t2, t3);\n X3 = Fp.sub(X3, t0);\n Z3 = Fp.mul(t2, t1);\n Z3 = Fp.add(Z3, Z3); // step 30\n Z3 = Fp.add(Z3, Z3);\n return new Point(X3, Y3, Z3);\n }\n // Renes-Costello-Batina exception-free addition formula.\n // There is 30% faster Jacobian formula, but it is not complete.\n // https://eprint.iacr.org/2015/1060, algorithm 1\n // Cost: 12M + 0S + 3*a + 3*b3 + 23add.\n add(other) {\n assertPrjPoint(other);\n const { px: X1, py: Y1, pz: Z1 } = this;\n const { px: X2, py: Y2, pz: Z2 } = other;\n let X3 = Fp.ZERO, Y3 = Fp.ZERO, Z3 = Fp.ZERO; // prettier-ignore\n const a = CURVE.a;\n const b3 = Fp.mul(CURVE.b, _3n);\n let t0 = Fp.mul(X1, X2); // step 1\n let t1 = Fp.mul(Y1, Y2);\n let t2 = Fp.mul(Z1, Z2);\n let t3 = Fp.add(X1, Y1);\n let t4 = Fp.add(X2, Y2); // step 5\n t3 = Fp.mul(t3, t4);\n t4 = Fp.add(t0, t1);\n t3 = Fp.sub(t3, t4);\n t4 = Fp.add(X1, Z1);\n let t5 = Fp.add(X2, Z2); // step 10\n t4 = Fp.mul(t4, t5);\n t5 = Fp.add(t0, t2);\n t4 = Fp.sub(t4, t5);\n t5 = Fp.add(Y1, Z1);\n X3 = Fp.add(Y2, Z2); // step 15\n t5 = Fp.mul(t5, X3);\n X3 = Fp.add(t1, t2);\n t5 = Fp.sub(t5, X3);\n Z3 = Fp.mul(a, t4);\n X3 = Fp.mul(b3, t2); // step 20\n Z3 = Fp.add(X3, Z3);\n X3 = Fp.sub(t1, Z3);\n Z3 = Fp.add(t1, Z3);\n Y3 = Fp.mul(X3, Z3);\n t1 = Fp.add(t0, t0); // step 25\n t1 = Fp.add(t1, t0);\n t2 = Fp.mul(a, t2);\n t4 = Fp.mul(b3, t4);\n t1 = Fp.add(t1, t2);\n t2 = Fp.sub(t0, t2); // step 30\n t2 = Fp.mul(a, t2);\n t4 = Fp.add(t4, t2);\n t0 = Fp.mul(t1, t4);\n Y3 = Fp.add(Y3, t0);\n t0 = Fp.mul(t5, t4); // step 35\n X3 = Fp.mul(t3, X3);\n X3 = Fp.sub(X3, t0);\n t0 = Fp.mul(t3, t1);\n Z3 = Fp.mul(t5, Z3);\n Z3 = Fp.add(Z3, t0); // step 40\n return new Point(X3, Y3, Z3);\n }\n subtract(other) {\n return this.add(other.negate());\n }\n is0() {\n return this.equals(Point.ZERO);\n }\n wNAF(n) {\n return wnaf.wNAFCached(this, n, Point.normalizeZ);\n }\n /**\n * Non-constant-time multiplication. Uses double-and-add algorithm.\n * It's faster, but should only be used when you don't care about\n * an exposed private key e.g. sig verification, which works over *public* keys.\n */\n multiplyUnsafe(sc) {\n ut.aInRange('scalar', sc, _0n, CURVE.n);\n const I = Point.ZERO;\n if (sc === _0n)\n return I;\n if (sc === _1n)\n return this;\n const { endo } = CURVE;\n if (!endo)\n return wnaf.unsafeLadder(this, sc);\n // Apply endomorphism\n let { k1neg, k1, k2neg, k2 } = endo.splitScalar(sc);\n let k1p = I;\n let k2p = I;\n let d = this;\n while (k1 > _0n || k2 > _0n) {\n if (k1 & _1n)\n k1p = k1p.add(d);\n if (k2 & _1n)\n k2p = k2p.add(d);\n d = d.double();\n k1 >>= _1n;\n k2 >>= _1n;\n }\n if (k1neg)\n k1p = k1p.negate();\n if (k2neg)\n k2p = k2p.negate();\n k2p = new Point(Fp.mul(k2p.px, endo.beta), k2p.py, k2p.pz);\n return k1p.add(k2p);\n }\n /**\n * Constant time multiplication.\n * Uses wNAF method. Windowed method may be 10% faster,\n * but takes 2x longer to generate and consumes 2x memory.\n * Uses precomputes when available.\n * Uses endomorphism for Koblitz curves.\n * @param scalar by which the point would be multiplied\n * @returns New point\n */\n multiply(scalar) {\n const { endo, n: N } = CURVE;\n ut.aInRange('scalar', scalar, _1n, N);\n let point, fake; // Fake point is used to const-time mult\n if (endo) {\n const { k1neg, k1, k2neg, k2 } = endo.splitScalar(scalar);\n let { p: k1p, f: f1p } = this.wNAF(k1);\n let { p: k2p, f: f2p } = this.wNAF(k2);\n k1p = wnaf.constTimeNegate(k1neg, k1p);\n k2p = wnaf.constTimeNegate(k2neg, k2p);\n k2p = new Point(Fp.mul(k2p.px, endo.beta), k2p.py, k2p.pz);\n point = k1p.add(k2p);\n fake = f1p.add(f2p);\n }\n else {\n const { p, f } = this.wNAF(scalar);\n point = p;\n fake = f;\n }\n // Normalize `z` for both points, but return only real one\n return Point.normalizeZ([point, fake])[0];\n }\n /**\n * Efficiently calculate `aP + bQ`. Unsafe, can expose private key, if used incorrectly.\n * Not using Strauss-Shamir trick: precomputation tables are faster.\n * The trick could be useful if both P and Q are not G (not in our case).\n * @returns non-zero affine point\n */\n multiplyAndAddUnsafe(Q, a, b) {\n const G = Point.BASE; // No Strauss-Shamir trick: we have 10% faster G precomputes\n const mul = (P, a // Select faster multiply() method\n ) => (a === _0n || a === _1n || !P.equals(G) ? P.multiplyUnsafe(a) : P.multiply(a));\n const sum = mul(this, a).add(mul(Q, b));\n return sum.is0() ? undefined : sum;\n }\n // Converts Projective point to affine (x, y) coordinates.\n // Can accept precomputed Z^-1 - for example, from invertBatch.\n // (x, y, z) ∋ (x=x/z, y=y/z)\n toAffine(iz) {\n return toAffineMemo(this, iz);\n }\n isTorsionFree() {\n const { h: cofactor, isTorsionFree } = CURVE;\n if (cofactor === _1n)\n return true; // No subgroups, always torsion-free\n if (isTorsionFree)\n return isTorsionFree(Point, this);\n throw new Error('isTorsionFree() has not been declared for the elliptic curve');\n }\n clearCofactor() {\n const { h: cofactor, clearCofactor } = CURVE;\n if (cofactor === _1n)\n return this; // Fast-path\n if (clearCofactor)\n return clearCofactor(Point, this);\n return this.multiplyUnsafe(CURVE.h);\n }\n toRawBytes(isCompressed = true) {\n (0, utils_js_1.abool)('isCompressed', isCompressed);\n this.assertValidity();\n return toBytes(Point, this, isCompressed);\n }\n toHex(isCompressed = true) {\n (0, utils_js_1.abool)('isCompressed', isCompressed);\n return ut.bytesToHex(this.toRawBytes(isCompressed));\n }\n }\n Point.BASE = new Point(CURVE.Gx, CURVE.Gy, Fp.ONE);\n Point.ZERO = new Point(Fp.ZERO, Fp.ONE, Fp.ZERO);\n const _bits = CURVE.nBitLength;\n const wnaf = (0, curve_js_1.wNAF)(Point, CURVE.endo ? Math.ceil(_bits / 2) : _bits);\n // Validate if generator point is on curve\n return {\n CURVE,\n ProjectivePoint: Point,\n normPrivateKeyToScalar,\n weierstrassEquation,\n isWithinCurveOrder,\n };\n}\nfunction validateOpts(curve) {\n const opts = (0, curve_js_1.validateBasic)(curve);\n ut.validateObject(opts, {\n hash: 'hash',\n hmac: 'function',\n randomBytes: 'function',\n }, {\n bits2int: 'function',\n bits2int_modN: 'function',\n lowS: 'boolean',\n });\n return Object.freeze({ lowS: true, ...opts });\n}\n/**\n * Creates short weierstrass curve and ECDSA signature methods for it.\n * @example\n * import { Field } from '@noble/curves/abstract/modular';\n * // Before that, define BigInt-s: a, b, p, n, Gx, Gy\n * const curve = weierstrass({ a, b, Fp: Field(p), n, Gx, Gy, h: 1n })\n */\nfunction weierstrass(curveDef) {\n const CURVE = validateOpts(curveDef);\n const { Fp, n: CURVE_ORDER } = CURVE;\n const compressedLen = Fp.BYTES + 1; // e.g. 33 for 32\n const uncompressedLen = 2 * Fp.BYTES + 1; // e.g. 65 for 32\n function modN(a) {\n return mod.mod(a, CURVE_ORDER);\n }\n function invN(a) {\n return mod.invert(a, CURVE_ORDER);\n }\n const { ProjectivePoint: Point, normPrivateKeyToScalar, weierstrassEquation, isWithinCurveOrder, } = weierstrassPoints({\n ...CURVE,\n toBytes(_c, point, isCompressed) {\n const a = point.toAffine();\n const x = Fp.toBytes(a.x);\n const cat = ut.concatBytes;\n (0, utils_js_1.abool)('isCompressed', isCompressed);\n if (isCompressed) {\n return cat(Uint8Array.from([point.hasEvenY() ? 0x02 : 0x03]), x);\n }\n else {\n return cat(Uint8Array.from([0x04]), x, Fp.toBytes(a.y));\n }\n },\n fromBytes(bytes) {\n const len = bytes.length;\n const head = bytes[0];\n const tail = bytes.subarray(1);\n // this.assertValidity() is done inside of fromHex\n if (len === compressedLen && (head === 0x02 || head === 0x03)) {\n const x = ut.bytesToNumberBE(tail);\n if (!ut.inRange(x, _1n, Fp.ORDER))\n throw new Error('Point is not on curve');\n const y2 = weierstrassEquation(x); // y² = x³ + ax + b\n let y;\n try {\n y = Fp.sqrt(y2); // y = y² ^ (p+1)/4\n }\n catch (sqrtError) {\n const suffix = sqrtError instanceof Error ? ': ' + sqrtError.message : '';\n throw new Error('Point is not on curve' + suffix);\n }\n const isYOdd = (y & _1n) === _1n;\n // ECDSA\n const isHeadOdd = (head & 1) === 1;\n if (isHeadOdd !== isYOdd)\n y = Fp.neg(y);\n return { x, y };\n }\n else if (len === uncompressedLen && head === 0x04) {\n const x = Fp.fromBytes(tail.subarray(0, Fp.BYTES));\n const y = Fp.fromBytes(tail.subarray(Fp.BYTES, 2 * Fp.BYTES));\n return { x, y };\n }\n else {\n throw new Error(`Point of length ${len} was invalid. Expected ${compressedLen} compressed bytes or ${uncompressedLen} uncompressed bytes`);\n }\n },\n });\n const numToNByteStr = (num) => ut.bytesToHex(ut.numberToBytesBE(num, CURVE.nByteLength));\n function isBiggerThanHalfOrder(number) {\n const HALF = CURVE_ORDER >> _1n;\n return number > HALF;\n }\n function normalizeS(s) {\n return isBiggerThanHalfOrder(s) ? modN(-s) : s;\n }\n // slice bytes num\n const slcNum = (b, from, to) => ut.bytesToNumberBE(b.slice(from, to));\n /**\n * ECDSA signature with its (r, s) properties. Supports DER & compact representations.\n */\n class Signature {\n constructor(r, s, recovery) {\n this.r = r;\n this.s = s;\n this.recovery = recovery;\n this.assertValidity();\n }\n // pair (bytes of r, bytes of s)\n static fromCompact(hex) {\n const l = CURVE.nByteLength;\n hex = (0, utils_js_1.ensureBytes)('compactSignature', hex, l * 2);\n return new Signature(slcNum(hex, 0, l), slcNum(hex, l, 2 * l));\n }\n // DER encoded ECDSA signature\n // https://bitcoin.stackexchange.com/questions/57644/what-are-the-parts-of-a-bitcoin-transaction-input-script\n static fromDER(hex) {\n const { r, s } = exports.DER.toSig((0, utils_js_1.ensureBytes)('DER', hex));\n return new Signature(r, s);\n }\n assertValidity() {\n ut.aInRange('r', this.r, _1n, CURVE_ORDER); // r in [1..N]\n ut.aInRange('s', this.s, _1n, CURVE_ORDER); // s in [1..N]\n }\n addRecoveryBit(recovery) {\n return new Signature(this.r, this.s, recovery);\n }\n recoverPublicKey(msgHash) {\n const { r, s, recovery: rec } = this;\n const h = bits2int_modN((0, utils_js_1.ensureBytes)('msgHash', msgHash)); // Truncate hash\n if (rec == null || ![0, 1, 2, 3].includes(rec))\n throw new Error('recovery id invalid');\n const radj = rec === 2 || rec === 3 ? r + CURVE.n : r;\n if (radj >= Fp.ORDER)\n throw new Error('recovery id 2 or 3 invalid');\n const prefix = (rec & 1) === 0 ? '02' : '03';\n const R = Point.fromHex(prefix + numToNByteStr(radj));\n const ir = invN(radj); // r^-1\n const u1 = modN(-h * ir); // -hr^-1\n const u2 = modN(s * ir); // sr^-1\n const Q = Point.BASE.multiplyAndAddUnsafe(R, u1, u2); // (sr^-1)R-(hr^-1)G = -(hr^-1)G + (sr^-1)\n if (!Q)\n throw new Error('point at infinify'); // unsafe is fine: no priv data leaked\n Q.assertValidity();\n return Q;\n }\n // Signatures should be low-s, to prevent malleability.\n hasHighS() {\n return isBiggerThanHalfOrder(this.s);\n }\n normalizeS() {\n return this.hasHighS() ? new Signature(this.r, modN(-this.s), this.recovery) : this;\n }\n // DER-encoded\n toDERRawBytes() {\n return ut.hexToBytes(this.toDERHex());\n }\n toDERHex() {\n return exports.DER.hexFromSig({ r: this.r, s: this.s });\n }\n // padded bytes of r, then padded bytes of s\n toCompactRawBytes() {\n return ut.hexToBytes(this.toCompactHex());\n }\n toCompactHex() {\n return numToNByteStr(this.r) + numToNByteStr(this.s);\n }\n }\n const utils = {\n isValidPrivateKey(privateKey) {\n try {\n normPrivateKeyToScalar(privateKey);\n return true;\n }\n catch (error) {\n return false;\n }\n },\n normPrivateKeyToScalar: normPrivateKeyToScalar,\n /**\n * Produces cryptographically secure private key from random of size\n * (groupLen + ceil(groupLen / 2)) with modulo bias being negligible.\n */\n randomPrivateKey: () => {\n const length = mod.getMinHashLength(CURVE.n);\n return mod.mapHashToField(CURVE.randomBytes(length), CURVE.n);\n },\n /**\n * Creates precompute table for an arbitrary EC point. Makes point \"cached\".\n * Allows to massively speed-up `point.multiply(scalar)`.\n * @returns cached point\n * @example\n * const fast = utils.precompute(8, ProjectivePoint.fromHex(someonesPubKey));\n * fast.multiply(privKey); // much faster ECDH now\n */\n precompute(windowSize = 8, point = Point.BASE) {\n point._setWindowSize(windowSize);\n point.multiply(BigInt(3)); // 3 is arbitrary, just need any number here\n return point;\n },\n };\n /**\n * Computes public key for a private key. Checks for validity of the private key.\n * @param privateKey private key\n * @param isCompressed whether to return compact (default), or full key\n * @returns Public key, full when isCompressed=false; short when isCompressed=true\n */\n function getPublicKey(privateKey, isCompressed = true) {\n return Point.fromPrivateKey(privateKey).toRawBytes(isCompressed);\n }\n /**\n * Quick and dirty check for item being public key. Does not validate hex, or being on-curve.\n */\n function isProbPub(item) {\n const arr = ut.isBytes(item);\n const str = typeof item === 'string';\n const len = (arr || str) && item.length;\n if (arr)\n return len === compressedLen || len === uncompressedLen;\n if (str)\n return len === 2 * compressedLen || len === 2 * uncompressedLen;\n if (item instanceof Point)\n return true;\n return false;\n }\n /**\n * ECDH (Elliptic Curve Diffie Hellman).\n * Computes shared public key from private key and public key.\n * Checks: 1) private key validity 2) shared key is on-curve.\n * Does NOT hash the result.\n * @param privateA private key\n * @param publicB different public key\n * @param isCompressed whether to return compact (default), or full key\n * @returns shared public key\n */\n function getSharedSecret(privateA, publicB, isCompressed = true) {\n if (isProbPub(privateA))\n throw new Error('first arg must be private key');\n if (!isProbPub(publicB))\n throw new Error('second arg must be public key');\n const b = Point.fromHex(publicB); // check for being on-curve\n return b.multiply(normPrivateKeyToScalar(privateA)).toRawBytes(isCompressed);\n }\n // RFC6979: ensure ECDSA msg is X bytes and < N. RFC suggests optional truncating via bits2octets.\n // FIPS 186-4 4.6 suggests the leftmost min(nBitLen, outLen) bits, which matches bits2int.\n // bits2int can produce res>N, we can do mod(res, N) since the bitLen is the same.\n // int2octets can't be used; pads small msgs with 0: unacceptatble for trunc as per RFC vectors\n const bits2int = CURVE.bits2int ||\n function (bytes) {\n // For curves with nBitLength % 8 !== 0: bits2octets(bits2octets(m)) !== bits2octets(m)\n // for some cases, since bytes.length * 8 is not actual bitLength.\n const num = ut.bytesToNumberBE(bytes); // check for == u8 done here\n const delta = bytes.length * 8 - CURVE.nBitLength; // truncate to nBitLength leftmost bits\n return delta > 0 ? num >> BigInt(delta) : num;\n };\n const bits2int_modN = CURVE.bits2int_modN ||\n function (bytes) {\n return modN(bits2int(bytes)); // can't use bytesToNumberBE here\n };\n // NOTE: pads output with zero as per spec\n const ORDER_MASK = ut.bitMask(CURVE.nBitLength);\n /**\n * Converts to bytes. Checks if num in `[0..ORDER_MASK-1]` e.g.: `[0..2^256-1]`.\n */\n function int2octets(num) {\n ut.aInRange(`num < 2^${CURVE.nBitLength}`, num, _0n, ORDER_MASK);\n // works with order, can have different size than numToField!\n return ut.numberToBytesBE(num, CURVE.nByteLength);\n }\n // Steps A, D of RFC6979 3.2\n // Creates RFC6979 seed; converts msg/privKey to numbers.\n // Used only in sign, not in verify.\n // NOTE: we cannot assume here that msgHash has same amount of bytes as curve order, this will be wrong at least for P521.\n // Also it can be bigger for P224 + SHA256\n function prepSig(msgHash, privateKey, opts = defaultSigOpts) {\n if (['recovered', 'canonical'].some((k) => k in opts))\n throw new Error('sign() legacy options not supported');\n const { hash, randomBytes } = CURVE;\n let { lowS, prehash, extraEntropy: ent } = opts; // generates low-s sigs by default\n if (lowS == null)\n lowS = true; // RFC6979 3.2: we skip step A, because we already provide hash\n msgHash = (0, utils_js_1.ensureBytes)('msgHash', msgHash);\n validateSigVerOpts(opts);\n if (prehash)\n msgHash = (0, utils_js_1.ensureBytes)('prehashed msgHash', hash(msgHash));\n // We can't later call bits2octets, since nested bits2int is broken for curves\n // with nBitLength % 8 !== 0. Because of that, we unwrap it here as int2octets call.\n // const bits2octets = (bits) => int2octets(bits2int_modN(bits))\n const h1int = bits2int_modN(msgHash);\n const d = normPrivateKeyToScalar(privateKey); // validate private key, convert to bigint\n const seedArgs = [int2octets(d), int2octets(h1int)];\n // extraEntropy. RFC6979 3.6: additional k' (optional).\n if (ent != null && ent !== false) {\n // K = HMAC_K(V || 0x00 || int2octets(x) || bits2octets(h1) || k')\n const e = ent === true ? randomBytes(Fp.BYTES) : ent; // generate random bytes OR pass as-is\n seedArgs.push((0, utils_js_1.ensureBytes)('extraEntropy', e)); // check for being bytes\n }\n const seed = ut.concatBytes(...seedArgs); // Step D of RFC6979 3.2\n const m = h1int; // NOTE: no need to call bits2int second time here, it is inside truncateHash!\n // Converts signature params into point w r/s, checks result for validity.\n function k2sig(kBytes) {\n // RFC 6979 Section 3.2, step 3: k = bits2int(T)\n const k = bits2int(kBytes); // Cannot use fields methods, since it is group element\n if (!isWithinCurveOrder(k))\n return; // Important: all mod() calls here must be done over N\n const ik = invN(k); // k^-1 mod n\n const q = Point.BASE.multiply(k).toAffine(); // q = Gk\n const r = modN(q.x); // r = q.x mod n\n if (r === _0n)\n return;\n // Can use scalar blinding b^-1(bm + bdr) where b ∈ [1,q−1] according to\n // https://tches.iacr.org/index.php/TCHES/article/view/7337/6509. We've decided against it:\n // a) dependency on CSPRNG b) 15% slowdown c) doesn't really help since bigints are not CT\n const s = modN(ik * modN(m + r * d)); // Not using blinding here\n if (s === _0n)\n return;\n let recovery = (q.x === r ? 0 : 2) | Number(q.y & _1n); // recovery bit (2 or 3, when q.x > n)\n let normS = s;\n if (lowS && isBiggerThanHalfOrder(s)) {\n normS = normalizeS(s); // if lowS was passed, ensure s is always\n recovery ^= 1; // // in the bottom half of N\n }\n return new Signature(r, normS, recovery); // use normS, not s\n }\n return { seed, k2sig };\n }\n const defaultSigOpts = { lowS: CURVE.lowS, prehash: false };\n const defaultVerOpts = { lowS: CURVE.lowS, prehash: false };\n /**\n * Signs message hash with a private key.\n * ```\n * sign(m, d, k) where\n * (x, y) = G × k\n * r = x mod n\n * s = (m + dr)/k mod n\n * ```\n * @param msgHash NOT message. msg needs to be hashed to `msgHash`, or use `prehash`.\n * @param privKey private key\n * @param opts lowS for non-malleable sigs. extraEntropy for mixing randomness into k. prehash will hash first arg.\n * @returns signature with recovery param\n */\n function sign(msgHash, privKey, opts = defaultSigOpts) {\n const { seed, k2sig } = prepSig(msgHash, privKey, opts); // Steps A, D of RFC6979 3.2.\n const C = CURVE;\n const drbg = ut.createHmacDrbg(C.hash.outputLen, C.nByteLength, C.hmac);\n return drbg(seed, k2sig); // Steps B, C, D, E, F, G\n }\n // Enable precomputes. Slows down first publicKey computation by 20ms.\n Point.BASE._setWindowSize(8);\n // utils.precompute(8, ProjectivePoint.BASE)\n /**\n * Verifies a signature against message hash and public key.\n * Rejects lowS signatures by default: to override,\n * specify option `{lowS: false}`. Implements section 4.1.4 from https://www.secg.org/sec1-v2.pdf:\n *\n * ```\n * verify(r, s, h, P) where\n * U1 = hs^-1 mod n\n * U2 = rs^-1 mod n\n * R = U1⋅G - U2⋅P\n * mod(R.x, n) == r\n * ```\n */\n function verify(signature, msgHash, publicKey, opts = defaultVerOpts) {\n const sg = signature;\n msgHash = (0, utils_js_1.ensureBytes)('msgHash', msgHash);\n publicKey = (0, utils_js_1.ensureBytes)('publicKey', publicKey);\n if ('strict' in opts)\n throw new Error('options.strict was renamed to lowS');\n validateSigVerOpts(opts);\n const { lowS, prehash } = opts;\n let _sig = undefined;\n let P;\n try {\n if (typeof sg === 'string' || ut.isBytes(sg)) {\n // Signature can be represented in 2 ways: compact (2*nByteLength) & DER (variable-length).\n // Since DER can also be 2*nByteLength bytes, we check for it first.\n try {\n _sig = Signature.fromDER(sg);\n }\n catch (derError) {\n if (!(derError instanceof exports.DER.Err))\n throw derError;\n _sig = Signature.fromCompact(sg);\n }\n }\n else if (typeof sg === 'object' && typeof sg.r === 'bigint' && typeof sg.s === 'bigint') {\n const { r, s } = sg;\n _sig = new Signature(r, s);\n }\n else {\n throw new Error('PARSE');\n }\n P = Point.fromHex(publicKey);\n }\n catch (error) {\n if (error.message === 'PARSE')\n throw new Error(`signature must be Signature instance, Uint8Array or hex string`);\n return false;\n }\n if (lowS && _sig.hasHighS())\n return false;\n if (prehash)\n msgHash = CURVE.hash(msgHash);\n const { r, s } = _sig;\n const h = bits2int_modN(msgHash); // Cannot use fields methods, since it is group element\n const is = invN(s); // s^-1\n const u1 = modN(h * is); // u1 = hs^-1 mod n\n const u2 = modN(r * is); // u2 = rs^-1 mod n\n const R = Point.BASE.multiplyAndAddUnsafe(P, u1, u2)?.toAffine(); // R = u1⋅G + u2⋅P\n if (!R)\n return false;\n const v = modN(R.x);\n return v === r;\n }\n return {\n CURVE,\n getPublicKey,\n getSharedSecret,\n sign,\n verify,\n ProjectivePoint: Point,\n Signature,\n utils,\n };\n}\n/**\n * Implementation of the Shallue and van de Woestijne method for any weierstrass curve.\n * TODO: check if there is a way to merge this with uvRatio in Edwards; move to modular.\n * b = True and y = sqrt(u / v) if (u / v) is square in F, and\n * b = False and y = sqrt(Z * (u / v)) otherwise.\n * @param Fp\n * @param Z\n * @returns\n */\nfunction SWUFpSqrtRatio(Fp, Z) {\n // Generic implementation\n const q = Fp.ORDER;\n let l = _0n;\n for (let o = q - _1n; o % _2n === _0n; o /= _2n)\n l += _1n;\n const c1 = l; // 1. c1, the largest integer such that 2^c1 divides q - 1.\n // We need 2n ** c1 and 2n ** (c1-1). We can't use **; but we can use <<.\n // 2n ** c1 == 2n << (c1-1)\n const _2n_pow_c1_1 = _2n << (c1 - _1n - _1n);\n const _2n_pow_c1 = _2n_pow_c1_1 * _2n;\n const c2 = (q - _1n) / _2n_pow_c1; // 2. c2 = (q - 1) / (2^c1) # Integer arithmetic\n const c3 = (c2 - _1n) / _2n; // 3. c3 = (c2 - 1) / 2 # Integer arithmetic\n const c4 = _2n_pow_c1 - _1n; // 4. c4 = 2^c1 - 1 # Integer arithmetic\n const c5 = _2n_pow_c1_1; // 5. c5 = 2^(c1 - 1) # Integer arithmetic\n const c6 = Fp.pow(Z, c2); // 6. c6 = Z^c2\n const c7 = Fp.pow(Z, (c2 + _1n) / _2n); // 7. c7 = Z^((c2 + 1) / 2)\n let sqrtRatio = (u, v) => {\n let tv1 = c6; // 1. tv1 = c6\n let tv2 = Fp.pow(v, c4); // 2. tv2 = v^c4\n let tv3 = Fp.sqr(tv2); // 3. tv3 = tv2^2\n tv3 = Fp.mul(tv3, v); // 4. tv3 = tv3 * v\n let tv5 = Fp.mul(u, tv3); // 5. tv5 = u * tv3\n tv5 = Fp.pow(tv5, c3); // 6. tv5 = tv5^c3\n tv5 = Fp.mul(tv5, tv2); // 7. tv5 = tv5 * tv2\n tv2 = Fp.mul(tv5, v); // 8. tv2 = tv5 * v\n tv3 = Fp.mul(tv5, u); // 9. tv3 = tv5 * u\n let tv4 = Fp.mul(tv3, tv2); // 10. tv4 = tv3 * tv2\n tv5 = Fp.pow(tv4, c5); // 11. tv5 = tv4^c5\n let isQR = Fp.eql(tv5, Fp.ONE); // 12. isQR = tv5 == 1\n tv2 = Fp.mul(tv3, c7); // 13. tv2 = tv3 * c7\n tv5 = Fp.mul(tv4, tv1); // 14. tv5 = tv4 * tv1\n tv3 = Fp.cmov(tv2, tv3, isQR); // 15. tv3 = CMOV(tv2, tv3, isQR)\n tv4 = Fp.cmov(tv5, tv4, isQR); // 16. tv4 = CMOV(tv5, tv4, isQR)\n // 17. for i in (c1, c1 - 1, ..., 2):\n for (let i = c1; i > _1n; i--) {\n let tv5 = i - _2n; // 18. tv5 = i - 2\n tv5 = _2n << (tv5 - _1n); // 19. tv5 = 2^tv5\n let tvv5 = Fp.pow(tv4, tv5); // 20. tv5 = tv4^tv5\n const e1 = Fp.eql(tvv5, Fp.ONE); // 21. e1 = tv5 == 1\n tv2 = Fp.mul(tv3, tv1); // 22. tv2 = tv3 * tv1\n tv1 = Fp.mul(tv1, tv1); // 23. tv1 = tv1 * tv1\n tvv5 = Fp.mul(tv4, tv1); // 24. tv5 = tv4 * tv1\n tv3 = Fp.cmov(tv2, tv3, e1); // 25. tv3 = CMOV(tv2, tv3, e1)\n tv4 = Fp.cmov(tvv5, tv4, e1); // 26. tv4 = CMOV(tv5, tv4, e1)\n }\n return { isValid: isQR, value: tv3 };\n };\n if (Fp.ORDER % _4n === _3n) {\n // sqrt_ratio_3mod4(u, v)\n const c1 = (Fp.ORDER - _3n) / _4n; // 1. c1 = (q - 3) / 4 # Integer arithmetic\n const c2 = Fp.sqrt(Fp.neg(Z)); // 2. c2 = sqrt(-Z)\n sqrtRatio = (u, v) => {\n let tv1 = Fp.sqr(v); // 1. tv1 = v^2\n const tv2 = Fp.mul(u, v); // 2. tv2 = u * v\n tv1 = Fp.mul(tv1, tv2); // 3. tv1 = tv1 * tv2\n let y1 = Fp.pow(tv1, c1); // 4. y1 = tv1^c1\n y1 = Fp.mul(y1, tv2); // 5. y1 = y1 * tv2\n const y2 = Fp.mul(y1, c2); // 6. y2 = y1 * c2\n const tv3 = Fp.mul(Fp.sqr(y1), v); // 7. tv3 = y1^2; 8. tv3 = tv3 * v\n const isQR = Fp.eql(tv3, u); // 9. isQR = tv3 == u\n let y = Fp.cmov(y2, y1, isQR); // 10. y = CMOV(y2, y1, isQR)\n return { isValid: isQR, value: y }; // 11. return (isQR, y) isQR ? y : y*c2\n };\n }\n // No curves uses that\n // if (Fp.ORDER % _8n === _5n) // sqrt_ratio_5mod8\n return sqrtRatio;\n}\n/**\n * Simplified Shallue-van de Woestijne-Ulas Method\n * https://www.rfc-editor.org/rfc/rfc9380#section-6.6.2\n */\nfunction mapToCurveSimpleSWU(Fp, opts) {\n mod.validateField(Fp);\n if (!Fp.isValid(opts.A) || !Fp.isValid(opts.B) || !Fp.isValid(opts.Z))\n throw new Error('mapToCurveSimpleSWU: invalid opts');\n const sqrtRatio = SWUFpSqrtRatio(Fp, opts.Z);\n if (!Fp.isOdd)\n throw new Error('Fp.isOdd is not implemented!');\n // Input: u, an element of F.\n // Output: (x, y), a point on E.\n return (u) => {\n // prettier-ignore\n let tv1, tv2, tv3, tv4, tv5, tv6, x, y;\n tv1 = Fp.sqr(u); // 1. tv1 = u^2\n tv1 = Fp.mul(tv1, opts.Z); // 2. tv1 = Z * tv1\n tv2 = Fp.sqr(tv1); // 3. tv2 = tv1^2\n tv2 = Fp.add(tv2, tv1); // 4. tv2 = tv2 + tv1\n tv3 = Fp.add(tv2, Fp.ONE); // 5. tv3 = tv2 + 1\n tv3 = Fp.mul(tv3, opts.B); // 6. tv3 = B * tv3\n tv4 = Fp.cmov(opts.Z, Fp.neg(tv2), !Fp.eql(tv2, Fp.ZERO)); // 7. tv4 = CMOV(Z, -tv2, tv2 != 0)\n tv4 = Fp.mul(tv4, opts.A); // 8. tv4 = A * tv4\n tv2 = Fp.sqr(tv3); // 9. tv2 = tv3^2\n tv6 = Fp.sqr(tv4); // 10. tv6 = tv4^2\n tv5 = Fp.mul(tv6, opts.A); // 11. tv5 = A * tv6\n tv2 = Fp.add(tv2, tv5); // 12. tv2 = tv2 + tv5\n tv2 = Fp.mul(tv2, tv3); // 13. tv2 = tv2 * tv3\n tv6 = Fp.mul(tv6, tv4); // 14. tv6 = tv6 * tv4\n tv5 = Fp.mul(tv6, opts.B); // 15. tv5 = B * tv6\n tv2 = Fp.add(tv2, tv5); // 16. tv2 = tv2 + tv5\n x = Fp.mul(tv1, tv3); // 17. x = tv1 * tv3\n const { isValid, value } = sqrtRatio(tv2, tv6); // 18. (is_gx1_square, y1) = sqrt_ratio(tv2, tv6)\n y = Fp.mul(tv1, u); // 19. y = tv1 * u -> Z * u^3 * y1\n y = Fp.mul(y, value); // 20. y = y * y1\n x = Fp.cmov(x, tv3, isValid); // 21. x = CMOV(x, tv3, is_gx1_square)\n y = Fp.cmov(y, value, isValid); // 22. y = CMOV(y, y1, is_gx1_square)\n const e1 = Fp.isOdd(u) === Fp.isOdd(y); // 23. e1 = sgn0(u) == sgn0(y)\n y = Fp.cmov(Fp.neg(y), y, e1); // 24. y = CMOV(-y, y, e1)\n x = Fp.div(x, tv4); // 25. x = x / tv4\n return { x, y };\n };\n}\n//# sourceMappingURL=weierstrass.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getHash = getHash;\nexports.createCurve = createCurve;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nconst hmac_1 = require(\"@noble/hashes/hmac\");\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst weierstrass_js_1 = require(\"./abstract/weierstrass.js\");\n// connects noble-curves to noble-hashes\nfunction getHash(hash) {\n return {\n hash,\n hmac: (key, ...msgs) => (0, hmac_1.hmac)(hash, key, (0, utils_1.concatBytes)(...msgs)),\n randomBytes: utils_1.randomBytes,\n };\n}\nfunction createCurve(curveDef, defHash) {\n const create = (hash) => (0, weierstrass_js_1.weierstrass)({ ...curveDef, ...getHash(hash) });\n return Object.freeze({ ...create(defHash), create });\n}\n//# sourceMappingURL=_shortw_utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.encodeToCurve = exports.hashToCurve = exports.schnorr = exports.secp256k1 = void 0;\n/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */\nconst sha256_1 = require(\"@noble/hashes/sha256\");\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst _shortw_utils_js_1 = require(\"./_shortw_utils.js\");\nconst hash_to_curve_js_1 = require(\"./abstract/hash-to-curve.js\");\nconst modular_js_1 = require(\"./abstract/modular.js\");\nconst utils_js_1 = require(\"./abstract/utils.js\");\nconst weierstrass_js_1 = require(\"./abstract/weierstrass.js\");\nconst secp256k1P = BigInt('0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f');\nconst secp256k1N = BigInt('0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141');\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst divNearest = (a, b) => (a + b / _2n) / b;\n/**\n * √n = n^((p+1)/4) for fields p = 3 mod 4. We unwrap the loop and multiply bit-by-bit.\n * (P+1n/4n).toString(2) would produce bits [223x 1, 0, 22x 1, 4x 0, 11, 00]\n */\nfunction sqrtMod(y) {\n const P = secp256k1P;\n // prettier-ignore\n const _3n = BigInt(3), _6n = BigInt(6), _11n = BigInt(11), _22n = BigInt(22);\n // prettier-ignore\n const _23n = BigInt(23), _44n = BigInt(44), _88n = BigInt(88);\n const b2 = (y * y * y) % P; // x^3, 11\n const b3 = (b2 * b2 * y) % P; // x^7\n const b6 = ((0, modular_js_1.pow2)(b3, _3n, P) * b3) % P;\n const b9 = ((0, modular_js_1.pow2)(b6, _3n, P) * b3) % P;\n const b11 = ((0, modular_js_1.pow2)(b9, _2n, P) * b2) % P;\n const b22 = ((0, modular_js_1.pow2)(b11, _11n, P) * b11) % P;\n const b44 = ((0, modular_js_1.pow2)(b22, _22n, P) * b22) % P;\n const b88 = ((0, modular_js_1.pow2)(b44, _44n, P) * b44) % P;\n const b176 = ((0, modular_js_1.pow2)(b88, _88n, P) * b88) % P;\n const b220 = ((0, modular_js_1.pow2)(b176, _44n, P) * b44) % P;\n const b223 = ((0, modular_js_1.pow2)(b220, _3n, P) * b3) % P;\n const t1 = ((0, modular_js_1.pow2)(b223, _23n, P) * b22) % P;\n const t2 = ((0, modular_js_1.pow2)(t1, _6n, P) * b2) % P;\n const root = (0, modular_js_1.pow2)(t2, _2n, P);\n if (!Fp.eql(Fp.sqr(root), y))\n throw new Error('Cannot find square root');\n return root;\n}\nconst Fp = (0, modular_js_1.Field)(secp256k1P, undefined, undefined, { sqrt: sqrtMod });\n/**\n * secp256k1 short weierstrass curve and ECDSA signatures over it.\n */\nexports.secp256k1 = (0, _shortw_utils_js_1.createCurve)({\n a: BigInt(0), // equation params: a, b\n b: BigInt(7), // Seem to be rigid: bitcointalk.org/index.php?topic=289795.msg3183975#msg3183975\n Fp, // Field's prime: 2n**256n - 2n**32n - 2n**9n - 2n**8n - 2n**7n - 2n**6n - 2n**4n - 1n\n n: secp256k1N, // Curve order, total count of valid points in the field\n // Base point (x, y) aka generator point\n Gx: BigInt('55066263022277343669578718895168534326250603453777594175500187360389116729240'),\n Gy: BigInt('32670510020758816978083085130507043184471273380659243275938904335757337482424'),\n h: BigInt(1), // Cofactor\n lowS: true, // Allow only low-S signatures by default in sign() and verify()\n /**\n * secp256k1 belongs to Koblitz curves: it has efficiently computable endomorphism.\n * Endomorphism uses 2x less RAM, speeds up precomputation by 2x and ECDH / key recovery by 20%.\n * For precomputed wNAF it trades off 1/2 init time & 1/3 ram for 20% perf hit.\n * Explanation: https://gist.github.com/paulmillr/eb670806793e84df628a7c434a873066\n */\n endo: {\n beta: BigInt('0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee'),\n splitScalar: (k) => {\n const n = secp256k1N;\n const a1 = BigInt('0x3086d221a7d46bcde86c90e49284eb15');\n const b1 = -_1n * BigInt('0xe4437ed6010e88286f547fa90abfe4c3');\n const a2 = BigInt('0x114ca50f7a8e2f3f657c1108d9d44cfd8');\n const b2 = a1;\n const POW_2_128 = BigInt('0x100000000000000000000000000000000'); // (2n**128n).toString(16)\n const c1 = divNearest(b2 * k, n);\n const c2 = divNearest(-b1 * k, n);\n let k1 = (0, modular_js_1.mod)(k - c1 * a1 - c2 * a2, n);\n let k2 = (0, modular_js_1.mod)(-c1 * b1 - c2 * b2, n);\n const k1neg = k1 > POW_2_128;\n const k2neg = k2 > POW_2_128;\n if (k1neg)\n k1 = n - k1;\n if (k2neg)\n k2 = n - k2;\n if (k1 > POW_2_128 || k2 > POW_2_128) {\n throw new Error('splitScalar: Endomorphism failed, k=' + k);\n }\n return { k1neg, k1, k2neg, k2 };\n },\n },\n}, sha256_1.sha256);\n// Schnorr signatures are superior to ECDSA from above. Below is Schnorr-specific BIP0340 code.\n// https://github.com/bitcoin/bips/blob/master/bip-0340.mediawiki\nconst _0n = BigInt(0);\n/** An object mapping tags to their tagged hash prefix of [SHA256(tag) | SHA256(tag)] */\nconst TAGGED_HASH_PREFIXES = {};\nfunction taggedHash(tag, ...messages) {\n let tagP = TAGGED_HASH_PREFIXES[tag];\n if (tagP === undefined) {\n const tagH = (0, sha256_1.sha256)(Uint8Array.from(tag, (c) => c.charCodeAt(0)));\n tagP = (0, utils_js_1.concatBytes)(tagH, tagH);\n TAGGED_HASH_PREFIXES[tag] = tagP;\n }\n return (0, sha256_1.sha256)((0, utils_js_1.concatBytes)(tagP, ...messages));\n}\n// ECDSA compact points are 33-byte. Schnorr is 32: we strip first byte 0x02 or 0x03\nconst pointToBytes = (point) => point.toRawBytes(true).slice(1);\nconst numTo32b = (n) => (0, utils_js_1.numberToBytesBE)(n, 32);\nconst modP = (x) => (0, modular_js_1.mod)(x, secp256k1P);\nconst modN = (x) => (0, modular_js_1.mod)(x, secp256k1N);\nconst Point = exports.secp256k1.ProjectivePoint;\nconst GmulAdd = (Q, a, b) => Point.BASE.multiplyAndAddUnsafe(Q, a, b);\n// Calculate point, scalar and bytes\nfunction schnorrGetExtPubKey(priv) {\n let d_ = exports.secp256k1.utils.normPrivateKeyToScalar(priv); // same method executed in fromPrivateKey\n let p = Point.fromPrivateKey(d_); // P = d'⋅G; 0 < d' < n check is done inside\n const scalar = p.hasEvenY() ? d_ : modN(-d_);\n return { scalar: scalar, bytes: pointToBytes(p) };\n}\n/**\n * lift_x from BIP340. Convert 32-byte x coordinate to elliptic curve point.\n * @returns valid point checked for being on-curve\n */\nfunction lift_x(x) {\n (0, utils_js_1.aInRange)('x', x, _1n, secp256k1P); // Fail if x ≥ p.\n const xx = modP(x * x);\n const c = modP(xx * x + BigInt(7)); // Let c = x³ + 7 mod p.\n let y = sqrtMod(c); // Let y = c^(p+1)/4 mod p.\n if (y % _2n !== _0n)\n y = modP(-y); // Return the unique point P such that x(P) = x and\n const p = new Point(x, y, _1n); // y(P) = y if y mod 2 = 0 or y(P) = p-y otherwise.\n p.assertValidity();\n return p;\n}\nconst num = utils_js_1.bytesToNumberBE;\n/**\n * Create tagged hash, convert it to bigint, reduce modulo-n.\n */\nfunction challenge(...args) {\n return modN(num(taggedHash('BIP0340/challenge', ...args)));\n}\n/**\n * Schnorr public key is just `x` coordinate of Point as per BIP340.\n */\nfunction schnorrGetPublicKey(privateKey) {\n return schnorrGetExtPubKey(privateKey).bytes; // d'=int(sk). Fail if d'=0 or d'≥n. Ret bytes(d'⋅G)\n}\n/**\n * Creates Schnorr signature as per BIP340. Verifies itself before returning anything.\n * auxRand is optional and is not the sole source of k generation: bad CSPRNG won't be dangerous.\n */\nfunction schnorrSign(message, privateKey, auxRand = (0, utils_1.randomBytes)(32)) {\n const m = (0, utils_js_1.ensureBytes)('message', message);\n const { bytes: px, scalar: d } = schnorrGetExtPubKey(privateKey); // checks for isWithinCurveOrder\n const a = (0, utils_js_1.ensureBytes)('auxRand', auxRand, 32); // Auxiliary random data a: a 32-byte array\n const t = numTo32b(d ^ num(taggedHash('BIP0340/aux', a))); // Let t be the byte-wise xor of bytes(d) and hash/aux(a)\n const rand = taggedHash('BIP0340/nonce', t, px, m); // Let rand = hash/nonce(t || bytes(P) || m)\n const k_ = modN(num(rand)); // Let k' = int(rand) mod n\n if (k_ === _0n)\n throw new Error('sign failed: k is zero'); // Fail if k' = 0.\n const { bytes: rx, scalar: k } = schnorrGetExtPubKey(k_); // Let R = k'⋅G.\n const e = challenge(rx, px, m); // Let e = int(hash/challenge(bytes(R) || bytes(P) || m)) mod n.\n const sig = new Uint8Array(64); // Let sig = bytes(R) || bytes((k + ed) mod n).\n sig.set(rx, 0);\n sig.set(numTo32b(modN(k + e * d)), 32);\n // If Verify(bytes(P), m, sig) (see below) returns failure, abort\n if (!schnorrVerify(sig, m, px))\n throw new Error('sign: Invalid signature produced');\n return sig;\n}\n/**\n * Verifies Schnorr signature.\n * Will swallow errors & return false except for initial type validation of arguments.\n */\nfunction schnorrVerify(signature, message, publicKey) {\n const sig = (0, utils_js_1.ensureBytes)('signature', signature, 64);\n const m = (0, utils_js_1.ensureBytes)('message', message);\n const pub = (0, utils_js_1.ensureBytes)('publicKey', publicKey, 32);\n try {\n const P = lift_x(num(pub)); // P = lift_x(int(pk)); fail if that fails\n const r = num(sig.subarray(0, 32)); // Let r = int(sig[0:32]); fail if r ≥ p.\n if (!(0, utils_js_1.inRange)(r, _1n, secp256k1P))\n return false;\n const s = num(sig.subarray(32, 64)); // Let s = int(sig[32:64]); fail if s ≥ n.\n if (!(0, utils_js_1.inRange)(s, _1n, secp256k1N))\n return false;\n const e = challenge(numTo32b(r), pointToBytes(P), m); // int(challenge(bytes(r)||bytes(P)||m))%n\n const R = GmulAdd(P, s, modN(-e)); // R = s⋅G - e⋅P\n if (!R || !R.hasEvenY() || R.toAffine().x !== r)\n return false; // -eP == (n-e)P\n return true; // Fail if is_infinite(R) / not has_even_y(R) / x(R) ≠ r.\n }\n catch (error) {\n return false;\n }\n}\n/**\n * Schnorr signatures over secp256k1.\n */\nexports.schnorr = (() => ({\n getPublicKey: schnorrGetPublicKey,\n sign: schnorrSign,\n verify: schnorrVerify,\n utils: {\n randomPrivateKey: exports.secp256k1.utils.randomPrivateKey,\n lift_x,\n pointToBytes,\n numberToBytesBE: utils_js_1.numberToBytesBE,\n bytesToNumberBE: utils_js_1.bytesToNumberBE,\n taggedHash,\n mod: modular_js_1.mod,\n },\n}))();\nconst isoMap = /* @__PURE__ */ (() => (0, hash_to_curve_js_1.isogenyMap)(Fp, [\n // xNum\n [\n '0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7',\n '0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581',\n '0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262',\n '0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c',\n ],\n // xDen\n [\n '0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b',\n '0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14',\n '0x0000000000000000000000000000000000000000000000000000000000000001', // LAST 1\n ],\n // yNum\n [\n '0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c',\n '0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3',\n '0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931',\n '0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84',\n ],\n // yDen\n [\n '0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b',\n '0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573',\n '0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f',\n '0x0000000000000000000000000000000000000000000000000000000000000001', // LAST 1\n ],\n].map((i) => i.map((j) => BigInt(j)))))();\nconst mapSWU = /* @__PURE__ */ (() => (0, weierstrass_js_1.mapToCurveSimpleSWU)(Fp, {\n A: BigInt('0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533'),\n B: BigInt('1771'),\n Z: Fp.create(BigInt('-11')),\n}))();\nconst htf = /* @__PURE__ */ (() => (0, hash_to_curve_js_1.createHasher)(exports.secp256k1.ProjectivePoint, (scalars) => {\n const { x, y } = mapSWU(Fp.create(scalars[0]));\n return isoMap(x, y);\n}, {\n DST: 'secp256k1_XMD:SHA-256_SSWU_RO_',\n encodeDST: 'secp256k1_XMD:SHA-256_SSWU_NU_',\n p: Fp.ORDER,\n m: 1,\n k: 128,\n expand: 'xmd',\n hash: sha256_1.sha256,\n}))();\nexports.hashToCurve = (() => htf.hashToCurve)();\nexports.encodeToCurve = (() => htf.encodeToCurve)();\n//# sourceMappingURL=secp256k1.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.decodeHex = exports.remove0x = void 0;\nvar utils_1 = require(\"@noble/ciphers/utils\");\nvar remove0x = function (hex) {\n return hex.startsWith(\"0x\") || hex.startsWith(\"0X\") ? hex.slice(2) : hex;\n};\nexports.remove0x = remove0x;\nvar decodeHex = function (hex) { return (0, utils_1.hexToBytes)((0, exports.remove0x)(hex)); };\nexports.decodeHex = decodeHex;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hexToPublicKey = exports.convertPublicKeyFormat = exports.getSharedPoint = exports.getPublicKey = exports.isValidPrivateKey = exports.getValidSecret = void 0;\nvar webcrypto_1 = require(\"@noble/ciphers/webcrypto\");\nvar ed25519_1 = require(\"@noble/curves/ed25519\");\nvar secp256k1_1 = require(\"@noble/curves/secp256k1\");\nvar config_1 = require(\"../config\");\nvar consts_1 = require(\"../consts\");\nvar hex_1 = require(\"./hex\");\nvar getValidSecret = function () {\n var key;\n do {\n key = (0, webcrypto_1.randomBytes)(consts_1.SECRET_KEY_LENGTH);\n } while (!(0, exports.isValidPrivateKey)(key));\n return key;\n};\nexports.getValidSecret = getValidSecret;\nvar isValidPrivateKey = function (secret) {\n // on secp256k1: only key ∈ (0, group order) is valid\n // on curve25519: any 32-byte key is valid\n return _exec((0, config_1.ellipticCurve)(), function (curve) { return curve.utils.isValidPrivateKey(secret); }, function () { return true; }, function () { return true; });\n};\nexports.isValidPrivateKey = isValidPrivateKey;\nvar getPublicKey = function (secret) {\n return _exec((0, config_1.ellipticCurve)(), function (curve) { return curve.getPublicKey(secret); }, function (curve) { return curve.getPublicKey(secret); }, function (curve) { return curve.getPublicKey(secret); });\n};\nexports.getPublicKey = getPublicKey;\nvar getSharedPoint = function (sk, pk, compressed) {\n return _exec((0, config_1.ellipticCurve)(), function (curve) { return curve.getSharedSecret(sk, pk, compressed); }, function (curve) { return curve.getSharedSecret(sk, pk); }, function (curve) { return getSharedPointOnEd25519(curve, sk, pk); });\n};\nexports.getSharedPoint = getSharedPoint;\nvar convertPublicKeyFormat = function (pk, compressed) {\n // only for secp256k1\n return _exec((0, config_1.ellipticCurve)(), function (curve) { return curve.getSharedSecret(BigInt(1), pk, compressed); }, function () { return pk; }, function () { return pk; });\n};\nexports.convertPublicKeyFormat = convertPublicKeyFormat;\nvar hexToPublicKey = function (hex) {\n var decoded = (0, hex_1.decodeHex)(hex);\n return _exec((0, config_1.ellipticCurve)(), function () { return compatEthPublicKey(decoded); }, function () { return decoded; }, function () { return decoded; });\n};\nexports.hexToPublicKey = hexToPublicKey;\nfunction _exec(curve, secp256k1Callback, x25519Callback, ed25519Callback) {\n if (curve === \"secp256k1\") {\n return secp256k1Callback(secp256k1_1.secp256k1);\n }\n else if (curve === \"x25519\") {\n return x25519Callback(ed25519_1.x25519);\n }\n else if (curve === \"ed25519\") {\n return ed25519Callback(ed25519_1.ed25519);\n } /* v8 ignore next 2 */\n else {\n throw new Error(\"Not implemented\");\n }\n}\nvar compatEthPublicKey = function (pk) {\n if (pk.length === consts_1.ETH_PUBLIC_KEY_SIZE) {\n var fixed = new Uint8Array(1 + pk.length);\n fixed.set([0x04]);\n fixed.set(pk, 1);\n return fixed;\n }\n return pk;\n};\nvar getSharedPointOnEd25519 = function (curve, sk, pk) {\n // Note: scalar is hashed from sk\n var scalar = curve.utils.getExtendedPublicKey(sk).scalar;\n var point = curve.ExtendedPoint.fromHex(pk).multiply(scalar);\n return point.toRawBytes();\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hkdf = void 0;\nexports.extract = extract;\nexports.expand = expand;\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\nconst hmac_js_1 = require(\"./hmac.js\");\n// HKDF (RFC 5869)\n// https://soatok.blog/2021/11/17/understanding-hkdf/\n/**\n * HKDF-Extract(IKM, salt) -> PRK\n * Arguments position differs from spec (IKM is first one, since it is not optional)\n * @param hash\n * @param ikm\n * @param salt\n * @returns\n */\nfunction extract(hash, ikm, salt) {\n (0, _assert_js_1.hash)(hash);\n // NOTE: some libraries treat zero-length array as 'not provided';\n // we don't, since we have undefined as 'not provided'\n // https://github.com/RustCrypto/KDFs/issues/15\n if (salt === undefined)\n salt = new Uint8Array(hash.outputLen); // if not provided, it is set to a string of HashLen zeros\n return (0, hmac_js_1.hmac)(hash, (0, utils_js_1.toBytes)(salt), (0, utils_js_1.toBytes)(ikm));\n}\n// HKDF-Expand(PRK, info, L) -> OKM\nconst HKDF_COUNTER = /* @__PURE__ */ new Uint8Array([0]);\nconst EMPTY_BUFFER = /* @__PURE__ */ new Uint8Array();\n/**\n * HKDF-expand from the spec.\n * @param prk - a pseudorandom key of at least HashLen octets (usually, the output from the extract step)\n * @param info - optional context and application specific information (can be a zero-length string)\n * @param length - length of output keying material in octets\n */\nfunction expand(hash, prk, info, length = 32) {\n (0, _assert_js_1.hash)(hash);\n (0, _assert_js_1.number)(length);\n if (length > 255 * hash.outputLen)\n throw new Error('Length should be <= 255*HashLen');\n const blocks = Math.ceil(length / hash.outputLen);\n if (info === undefined)\n info = EMPTY_BUFFER;\n // first L(ength) octets of T\n const okm = new Uint8Array(blocks * hash.outputLen);\n // Re-use HMAC instance between blocks\n const HMAC = hmac_js_1.hmac.create(hash, prk);\n const HMACTmp = HMAC._cloneInto();\n const T = new Uint8Array(HMAC.outputLen);\n for (let counter = 0; counter < blocks; counter++) {\n HKDF_COUNTER[0] = counter + 1;\n // T(0) = empty string (zero length)\n // T(N) = HMAC-Hash(PRK, T(N-1) | info | N)\n HMACTmp.update(counter === 0 ? EMPTY_BUFFER : T)\n .update(info)\n .update(HKDF_COUNTER)\n .digestInto(T);\n okm.set(T, hash.outputLen * counter);\n HMAC._cloneInto(HMACTmp);\n }\n HMAC.destroy();\n HMACTmp.destroy();\n T.fill(0);\n HKDF_COUNTER.fill(0);\n return okm.slice(0, length);\n}\n/**\n * HKDF (RFC 5869): extract + expand in one step.\n * @param hash - hash function that would be used (e.g. sha256)\n * @param ikm - input keying material, the initial key\n * @param salt - optional salt value (a non-secret random value)\n * @param info - optional context and application specific information\n * @param length - length of output keying material in octets\n */\nconst hkdf = (hash, ikm, salt, info, length) => expand(hash, extract(hash, ikm, salt), info, length);\nexports.hkdf = hkdf;\n//# sourceMappingURL=hkdf.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSharedKey = exports.deriveKey = void 0;\nvar utils_1 = require(\"@noble/ciphers/utils\");\nvar hkdf_1 = require(\"@noble/hashes/hkdf\");\nvar sha256_1 = require(\"@noble/hashes/sha256\");\nvar deriveKey = function (master, salt, info) {\n // 32 bytes shared secret for aes256 and xchacha20 derived from HKDF-SHA256\n return (0, hkdf_1.hkdf)(sha256_1.sha256, master, salt, info, 32);\n};\nexports.deriveKey = deriveKey;\nvar getSharedKey = function () {\n var parts = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n parts[_i] = arguments[_i];\n }\n return (0, exports.deriveKey)(utils_1.concatBytes.apply(void 0, parts));\n};\nexports.getSharedKey = getSharedKey;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.polyval = exports.ghash = void 0;\nexports._toGHASHKey = _toGHASHKey;\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// GHash from AES-GCM and its little-endian \"mirror image\" Polyval from AES-SIV.\n// Implemented in terms of GHash with conversion function for keys\n// GCM GHASH from NIST SP800-38d, SIV from RFC 8452.\n// https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38d.pdf\n// GHASH modulo: x^128 + x^7 + x^2 + x + 1\n// POLYVAL modulo: x^128 + x^127 + x^126 + x^121 + 1\nconst BLOCK_SIZE = 16;\n// TODO: rewrite\n// temporary padding buffer\nconst ZEROS16 = /* @__PURE__ */ new Uint8Array(16);\nconst ZEROS32 = (0, utils_js_1.u32)(ZEROS16);\nconst POLY = 0xe1; // v = 2*v % POLY\n// v = 2*v % POLY\n// NOTE: because x + x = 0 (add/sub is same), mul2(x) != x+x\n// We can multiply any number using montgomery ladder and this function (works as double, add is simple xor)\nconst mul2 = (s0, s1, s2, s3) => {\n const hiBit = s3 & 1;\n return {\n s3: (s2 << 31) | (s3 >>> 1),\n s2: (s1 << 31) | (s2 >>> 1),\n s1: (s0 << 31) | (s1 >>> 1),\n s0: (s0 >>> 1) ^ ((POLY << 24) & -(hiBit & 1)), // reduce % poly\n };\n};\nconst swapLE = (n) => (((n >>> 0) & 0xff) << 24) |\n (((n >>> 8) & 0xff) << 16) |\n (((n >>> 16) & 0xff) << 8) |\n ((n >>> 24) & 0xff) |\n 0;\n/**\n * `mulX_POLYVAL(ByteReverse(H))` from spec\n * @param k mutated in place\n */\nfunction _toGHASHKey(k) {\n k.reverse();\n const hiBit = k[15] & 1;\n // k >>= 1\n let carry = 0;\n for (let i = 0; i < k.length; i++) {\n const t = k[i];\n k[i] = (t >>> 1) | carry;\n carry = (t & 1) << 7;\n }\n k[0] ^= -hiBit & 0xe1; // if (hiBit) n ^= 0xe1000000000000000000000000000000;\n return k;\n}\nconst estimateWindow = (bytes) => {\n if (bytes > 64 * 1024)\n return 8;\n if (bytes > 1024)\n return 4;\n return 2;\n};\nclass GHASH {\n // We select bits per window adaptively based on expectedLength\n constructor(key, expectedLength) {\n this.blockLen = BLOCK_SIZE;\n this.outputLen = BLOCK_SIZE;\n this.s0 = 0;\n this.s1 = 0;\n this.s2 = 0;\n this.s3 = 0;\n this.finished = false;\n key = (0, utils_js_1.toBytes)(key);\n (0, _assert_js_1.bytes)(key, 16);\n const kView = (0, utils_js_1.createView)(key);\n let k0 = kView.getUint32(0, false);\n let k1 = kView.getUint32(4, false);\n let k2 = kView.getUint32(8, false);\n let k3 = kView.getUint32(12, false);\n // generate table of doubled keys (half of montgomery ladder)\n const doubles = [];\n for (let i = 0; i < 128; i++) {\n doubles.push({ s0: swapLE(k0), s1: swapLE(k1), s2: swapLE(k2), s3: swapLE(k3) });\n ({ s0: k0, s1: k1, s2: k2, s3: k3 } = mul2(k0, k1, k2, k3));\n }\n const W = estimateWindow(expectedLength || 1024);\n if (![1, 2, 4, 8].includes(W))\n throw new Error(`ghash: wrong window size=${W}, should be 2, 4 or 8`);\n this.W = W;\n const bits = 128; // always 128 bits;\n const windows = bits / W;\n const windowSize = (this.windowSize = 2 ** W);\n const items = [];\n // Create precompute table for window of W bits\n for (let w = 0; w < windows; w++) {\n // truth table: 00, 01, 10, 11\n for (let byte = 0; byte < windowSize; byte++) {\n // prettier-ignore\n let s0 = 0, s1 = 0, s2 = 0, s3 = 0;\n for (let j = 0; j < W; j++) {\n const bit = (byte >>> (W - j - 1)) & 1;\n if (!bit)\n continue;\n const { s0: d0, s1: d1, s2: d2, s3: d3 } = doubles[W * w + j];\n (s0 ^= d0), (s1 ^= d1), (s2 ^= d2), (s3 ^= d3);\n }\n items.push({ s0, s1, s2, s3 });\n }\n }\n this.t = items;\n }\n _updateBlock(s0, s1, s2, s3) {\n (s0 ^= this.s0), (s1 ^= this.s1), (s2 ^= this.s2), (s3 ^= this.s3);\n const { W, t, windowSize } = this;\n // prettier-ignore\n let o0 = 0, o1 = 0, o2 = 0, o3 = 0;\n const mask = (1 << W) - 1; // 2**W will kill performance.\n let w = 0;\n for (const num of [s0, s1, s2, s3]) {\n for (let bytePos = 0; bytePos < 4; bytePos++) {\n const byte = (num >>> (8 * bytePos)) & 0xff;\n for (let bitPos = 8 / W - 1; bitPos >= 0; bitPos--) {\n const bit = (byte >>> (W * bitPos)) & mask;\n const { s0: e0, s1: e1, s2: e2, s3: e3 } = t[w * windowSize + bit];\n (o0 ^= e0), (o1 ^= e1), (o2 ^= e2), (o3 ^= e3);\n w += 1;\n }\n }\n }\n this.s0 = o0;\n this.s1 = o1;\n this.s2 = o2;\n this.s3 = o3;\n }\n update(data) {\n data = (0, utils_js_1.toBytes)(data);\n (0, _assert_js_1.exists)(this);\n const b32 = (0, utils_js_1.u32)(data);\n const blocks = Math.floor(data.length / BLOCK_SIZE);\n const left = data.length % BLOCK_SIZE;\n for (let i = 0; i < blocks; i++) {\n this._updateBlock(b32[i * 4 + 0], b32[i * 4 + 1], b32[i * 4 + 2], b32[i * 4 + 3]);\n }\n if (left) {\n ZEROS16.set(data.subarray(blocks * BLOCK_SIZE));\n this._updateBlock(ZEROS32[0], ZEROS32[1], ZEROS32[2], ZEROS32[3]);\n (0, utils_js_1.clean)(ZEROS32); // clean tmp buffer\n }\n return this;\n }\n destroy() {\n const { t } = this;\n // clean precompute table\n for (const elm of t) {\n (elm.s0 = 0), (elm.s1 = 0), (elm.s2 = 0), (elm.s3 = 0);\n }\n }\n digestInto(out) {\n (0, _assert_js_1.exists)(this);\n (0, _assert_js_1.output)(out, this);\n this.finished = true;\n const { s0, s1, s2, s3 } = this;\n const o32 = (0, utils_js_1.u32)(out);\n o32[0] = s0;\n o32[1] = s1;\n o32[2] = s2;\n o32[3] = s3;\n return out;\n }\n digest() {\n const res = new Uint8Array(BLOCK_SIZE);\n this.digestInto(res);\n this.destroy();\n return res;\n }\n}\nclass Polyval extends GHASH {\n constructor(key, expectedLength) {\n key = (0, utils_js_1.toBytes)(key);\n const ghKey = _toGHASHKey((0, utils_js_1.copyBytes)(key));\n super(ghKey, expectedLength);\n (0, utils_js_1.clean)(ghKey);\n }\n update(data) {\n data = (0, utils_js_1.toBytes)(data);\n (0, _assert_js_1.exists)(this);\n const b32 = (0, utils_js_1.u32)(data);\n const left = data.length % BLOCK_SIZE;\n const blocks = Math.floor(data.length / BLOCK_SIZE);\n for (let i = 0; i < blocks; i++) {\n this._updateBlock(swapLE(b32[i * 4 + 3]), swapLE(b32[i * 4 + 2]), swapLE(b32[i * 4 + 1]), swapLE(b32[i * 4 + 0]));\n }\n if (left) {\n ZEROS16.set(data.subarray(blocks * BLOCK_SIZE));\n this._updateBlock(swapLE(ZEROS32[3]), swapLE(ZEROS32[2]), swapLE(ZEROS32[1]), swapLE(ZEROS32[0]));\n (0, utils_js_1.clean)(ZEROS32);\n }\n return this;\n }\n digestInto(out) {\n (0, _assert_js_1.exists)(this);\n (0, _assert_js_1.output)(out, this);\n this.finished = true;\n // tmp ugly hack\n const { s0, s1, s2, s3 } = this;\n const o32 = (0, utils_js_1.u32)(out);\n o32[0] = s0;\n o32[1] = s1;\n o32[2] = s2;\n o32[3] = s3;\n return out.reverse();\n }\n}\nfunction wrapConstructorWithKey(hashCons) {\n const hashC = (msg, key) => hashCons(key, msg.length).update((0, utils_js_1.toBytes)(msg)).digest();\n const tmp = hashCons(new Uint8Array(16), 0);\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (key, expectedLength) => hashCons(key, expectedLength);\n return hashC;\n}\nexports.ghash = wrapConstructorWithKey((key, expectedLength) => new GHASH(key, expectedLength));\nexports.polyval = wrapConstructorWithKey((key, expectedLength) => new Polyval(key, expectedLength));\n//# sourceMappingURL=_polyval.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.unsafe = exports.aeskwp = exports.aeskw = exports.siv = exports.gcm = exports.cfb = exports.cbc = exports.ecb = exports.ctr = void 0;\nexports.expandKeyLE = expandKeyLE;\nexports.expandKeyDecLE = expandKeyDecLE;\n// prettier-ignore\nconst _assert_js_1 = require(\"./_assert.js\");\nconst _polyval_js_1 = require(\"./_polyval.js\");\nconst utils_js_1 = require(\"./utils.js\");\n/*\nAES (Advanced Encryption Standard) aka Rijndael block cipher.\n\nData is split into 128-bit blocks. Encrypted in 10/12/14 rounds (128/192/256 bits). In every round:\n1. **S-box**, table substitution\n2. **Shift rows**, cyclic shift left of all rows of data array\n3. **Mix columns**, multiplying every column by fixed polynomial\n4. **Add round key**, round_key xor i-th column of array\n\nResources:\n- FIPS-197 https://csrc.nist.gov/files/pubs/fips/197/final/docs/fips-197.pdf\n- Original proposal: https://csrc.nist.gov/csrc/media/projects/cryptographic-standards-and-guidelines/documents/aes-development/rijndael-ammended.pdf\n*/\nconst BLOCK_SIZE = 16;\nconst BLOCK_SIZE32 = 4;\nconst EMPTY_BLOCK = new Uint8Array(BLOCK_SIZE);\nconst POLY = 0x11b; // 1 + x + x**3 + x**4 + x**8\n// TODO: remove multiplication, binary ops only\nfunction mul2(n) {\n return (n << 1) ^ (POLY & -(n >> 7));\n}\nfunction mul(a, b) {\n let res = 0;\n for (; b > 0; b >>= 1) {\n // Montgomery ladder\n res ^= a & -(b & 1); // if (b&1) res ^=a (but const-time).\n a = mul2(a); // a = 2*a\n }\n return res;\n}\n// AES S-box is generated using finite field inversion,\n// an affine transform, and xor of a constant 0x63.\nconst sbox = /* @__PURE__ */ (() => {\n const t = new Uint8Array(256);\n for (let i = 0, x = 1; i < 256; i++, x ^= mul2(x))\n t[i] = x;\n const box = new Uint8Array(256);\n box[0] = 0x63; // first elm\n for (let i = 0; i < 255; i++) {\n let x = t[255 - i];\n x |= x << 8;\n box[t[i]] = (x ^ (x >> 4) ^ (x >> 5) ^ (x >> 6) ^ (x >> 7) ^ 0x63) & 0xff;\n }\n (0, utils_js_1.clean)(t);\n return box;\n})();\n// Inverted S-box\nconst invSbox = /* @__PURE__ */ sbox.map((_, j) => sbox.indexOf(j));\n// Rotate u32 by 8\nconst rotr32_8 = (n) => (n << 24) | (n >>> 8);\nconst rotl32_8 = (n) => (n << 8) | (n >>> 24);\n// The byte swap operation for uint32 (LE<->BE)\nconst byteSwap = (word) => ((word << 24) & 0xff000000) |\n ((word << 8) & 0xff0000) |\n ((word >>> 8) & 0xff00) |\n ((word >>> 24) & 0xff);\n// T-table is optimization suggested in 5.2 of original proposal (missed from FIPS-197). Changes:\n// - LE instead of BE\n// - bigger tables: T0 and T1 are merged into T01 table and T2 & T3 into T23;\n// so index is u16, instead of u8. This speeds up things, unexpectedly\nfunction genTtable(sbox, fn) {\n if (sbox.length !== 256)\n throw new Error('Wrong sbox length');\n const T0 = new Uint32Array(256).map((_, j) => fn(sbox[j]));\n const T1 = T0.map(rotl32_8);\n const T2 = T1.map(rotl32_8);\n const T3 = T2.map(rotl32_8);\n const T01 = new Uint32Array(256 * 256);\n const T23 = new Uint32Array(256 * 256);\n const sbox2 = new Uint16Array(256 * 256);\n for (let i = 0; i < 256; i++) {\n for (let j = 0; j < 256; j++) {\n const idx = i * 256 + j;\n T01[idx] = T0[i] ^ T1[j];\n T23[idx] = T2[i] ^ T3[j];\n sbox2[idx] = (sbox[i] << 8) | sbox[j];\n }\n }\n return { sbox, sbox2, T0, T1, T2, T3, T01, T23 };\n}\nconst tableEncoding = /* @__PURE__ */ genTtable(sbox, (s) => (mul(s, 3) << 24) | (s << 16) | (s << 8) | mul(s, 2));\nconst tableDecoding = /* @__PURE__ */ genTtable(invSbox, (s) => (mul(s, 11) << 24) | (mul(s, 13) << 16) | (mul(s, 9) << 8) | mul(s, 14));\nconst xPowers = /* @__PURE__ */ (() => {\n const p = new Uint8Array(16);\n for (let i = 0, x = 1; i < 16; i++, x = mul2(x))\n p[i] = x;\n return p;\n})();\nfunction expandKeyLE(key) {\n (0, _assert_js_1.bytes)(key);\n const len = key.length;\n if (![16, 24, 32].includes(len))\n throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${len}`);\n const { sbox2 } = tableEncoding;\n const toClean = [];\n if (!(0, utils_js_1.isAligned32)(key))\n toClean.push((key = (0, utils_js_1.copyBytes)(key)));\n const k32 = (0, utils_js_1.u32)(key);\n const Nk = k32.length;\n const subByte = (n) => applySbox(sbox2, n, n, n, n);\n const xk = new Uint32Array(len + 28); // expanded key\n xk.set(k32);\n // 4.3.1 Key expansion\n for (let i = Nk; i < xk.length; i++) {\n let t = xk[i - 1];\n if (i % Nk === 0)\n t = subByte(rotr32_8(t)) ^ xPowers[i / Nk - 1];\n else if (Nk > 6 && i % Nk === 4)\n t = subByte(t);\n xk[i] = xk[i - Nk] ^ t;\n }\n (0, utils_js_1.clean)(...toClean);\n return xk;\n}\nfunction expandKeyDecLE(key) {\n const encKey = expandKeyLE(key);\n const xk = encKey.slice();\n const Nk = encKey.length;\n const { sbox2 } = tableEncoding;\n const { T0, T1, T2, T3 } = tableDecoding;\n // Inverse key by chunks of 4 (rounds)\n for (let i = 0; i < Nk; i += 4) {\n for (let j = 0; j < 4; j++)\n xk[i + j] = encKey[Nk - i - 4 + j];\n }\n (0, utils_js_1.clean)(encKey);\n // apply InvMixColumn except first & last round\n for (let i = 4; i < Nk - 4; i++) {\n const x = xk[i];\n const w = applySbox(sbox2, x, x, x, x);\n xk[i] = T0[w & 0xff] ^ T1[(w >>> 8) & 0xff] ^ T2[(w >>> 16) & 0xff] ^ T3[w >>> 24];\n }\n return xk;\n}\n// Apply tables\nfunction apply0123(T01, T23, s0, s1, s2, s3) {\n return (T01[((s0 << 8) & 0xff00) | ((s1 >>> 8) & 0xff)] ^\n T23[((s2 >>> 8) & 0xff00) | ((s3 >>> 24) & 0xff)]);\n}\nfunction applySbox(sbox2, s0, s1, s2, s3) {\n return (sbox2[(s0 & 0xff) | (s1 & 0xff00)] |\n (sbox2[((s2 >>> 16) & 0xff) | ((s3 >>> 16) & 0xff00)] << 16));\n}\nfunction encrypt(xk, s0, s1, s2, s3) {\n const { sbox2, T01, T23 } = tableEncoding;\n let k = 0;\n (s0 ^= xk[k++]), (s1 ^= xk[k++]), (s2 ^= xk[k++]), (s3 ^= xk[k++]);\n const rounds = xk.length / 4 - 2;\n for (let i = 0; i < rounds; i++) {\n const t0 = xk[k++] ^ apply0123(T01, T23, s0, s1, s2, s3);\n const t1 = xk[k++] ^ apply0123(T01, T23, s1, s2, s3, s0);\n const t2 = xk[k++] ^ apply0123(T01, T23, s2, s3, s0, s1);\n const t3 = xk[k++] ^ apply0123(T01, T23, s3, s0, s1, s2);\n (s0 = t0), (s1 = t1), (s2 = t2), (s3 = t3);\n }\n // last round (without mixcolumns, so using SBOX2 table)\n const t0 = xk[k++] ^ applySbox(sbox2, s0, s1, s2, s3);\n const t1 = xk[k++] ^ applySbox(sbox2, s1, s2, s3, s0);\n const t2 = xk[k++] ^ applySbox(sbox2, s2, s3, s0, s1);\n const t3 = xk[k++] ^ applySbox(sbox2, s3, s0, s1, s2);\n return { s0: t0, s1: t1, s2: t2, s3: t3 };\n}\n// Can't be merged with encrypt: arg positions for apply0123 / applySbox are different\nfunction decrypt(xk, s0, s1, s2, s3) {\n const { sbox2, T01, T23 } = tableDecoding;\n let k = 0;\n (s0 ^= xk[k++]), (s1 ^= xk[k++]), (s2 ^= xk[k++]), (s3 ^= xk[k++]);\n const rounds = xk.length / 4 - 2;\n for (let i = 0; i < rounds; i++) {\n const t0 = xk[k++] ^ apply0123(T01, T23, s0, s3, s2, s1);\n const t1 = xk[k++] ^ apply0123(T01, T23, s1, s0, s3, s2);\n const t2 = xk[k++] ^ apply0123(T01, T23, s2, s1, s0, s3);\n const t3 = xk[k++] ^ apply0123(T01, T23, s3, s2, s1, s0);\n (s0 = t0), (s1 = t1), (s2 = t2), (s3 = t3);\n }\n // Last round\n const t0 = xk[k++] ^ applySbox(sbox2, s0, s3, s2, s1);\n const t1 = xk[k++] ^ applySbox(sbox2, s1, s0, s3, s2);\n const t2 = xk[k++] ^ applySbox(sbox2, s2, s1, s0, s3);\n const t3 = xk[k++] ^ applySbox(sbox2, s3, s2, s1, s0);\n return { s0: t0, s1: t1, s2: t2, s3: t3 };\n}\nfunction getDst(len, dst) {\n if (dst === undefined)\n return new Uint8Array(len);\n (0, _assert_js_1.bytes)(dst);\n if (dst.length < len)\n throw new Error(`aes: wrong destination length, expected at least ${len}, got: ${dst.length}`);\n if (!(0, utils_js_1.isAligned32)(dst))\n throw new Error('unaligned dst');\n return dst;\n}\n// TODO: investigate merging with ctr32\nfunction ctrCounter(xk, nonce, src, dst) {\n (0, _assert_js_1.bytes)(nonce, BLOCK_SIZE);\n (0, _assert_js_1.bytes)(src);\n const srcLen = src.length;\n dst = getDst(srcLen, dst);\n const ctr = nonce;\n const c32 = (0, utils_js_1.u32)(ctr);\n // Fill block (empty, ctr=0)\n let { s0, s1, s2, s3 } = encrypt(xk, c32[0], c32[1], c32[2], c32[3]);\n const src32 = (0, utils_js_1.u32)(src);\n const dst32 = (0, utils_js_1.u32)(dst);\n // process blocks\n for (let i = 0; i + 4 <= src32.length; i += 4) {\n dst32[i + 0] = src32[i + 0] ^ s0;\n dst32[i + 1] = src32[i + 1] ^ s1;\n dst32[i + 2] = src32[i + 2] ^ s2;\n dst32[i + 3] = src32[i + 3] ^ s3;\n // Full 128 bit counter with wrap around\n let carry = 1;\n for (let i = ctr.length - 1; i >= 0; i--) {\n carry = (carry + (ctr[i] & 0xff)) | 0;\n ctr[i] = carry & 0xff;\n carry >>>= 8;\n }\n ({ s0, s1, s2, s3 } = encrypt(xk, c32[0], c32[1], c32[2], c32[3]));\n }\n // leftovers (less than block)\n // It's possible to handle > u32 fast, but is it worth it?\n const start = BLOCK_SIZE * Math.floor(src32.length / BLOCK_SIZE32);\n if (start < srcLen) {\n const b32 = new Uint32Array([s0, s1, s2, s3]);\n const buf = (0, utils_js_1.u8)(b32);\n for (let i = start, pos = 0; i < srcLen; i++, pos++)\n dst[i] = src[i] ^ buf[pos];\n (0, utils_js_1.clean)(b32);\n }\n return dst;\n}\n// AES CTR with overflowing 32 bit counter\n// It's possible to do 32le significantly simpler (and probably faster) by using u32.\n// But, we need both, and perf bottleneck is in ghash anyway.\nfunction ctr32(xk, isLE, nonce, src, dst) {\n (0, _assert_js_1.bytes)(nonce, BLOCK_SIZE);\n (0, _assert_js_1.bytes)(src);\n dst = getDst(src.length, dst);\n const ctr = nonce; // write new value to nonce, so it can be re-used\n const c32 = (0, utils_js_1.u32)(ctr);\n const view = (0, utils_js_1.createView)(ctr);\n const src32 = (0, utils_js_1.u32)(src);\n const dst32 = (0, utils_js_1.u32)(dst);\n const ctrPos = isLE ? 0 : 12;\n const srcLen = src.length;\n // Fill block (empty, ctr=0)\n let ctrNum = view.getUint32(ctrPos, isLE); // read current counter value\n let { s0, s1, s2, s3 } = encrypt(xk, c32[0], c32[1], c32[2], c32[3]);\n // process blocks\n for (let i = 0; i + 4 <= src32.length; i += 4) {\n dst32[i + 0] = src32[i + 0] ^ s0;\n dst32[i + 1] = src32[i + 1] ^ s1;\n dst32[i + 2] = src32[i + 2] ^ s2;\n dst32[i + 3] = src32[i + 3] ^ s3;\n ctrNum = (ctrNum + 1) >>> 0; // u32 wrap\n view.setUint32(ctrPos, ctrNum, isLE);\n ({ s0, s1, s2, s3 } = encrypt(xk, c32[0], c32[1], c32[2], c32[3]));\n }\n // leftovers (less than a block)\n const start = BLOCK_SIZE * Math.floor(src32.length / BLOCK_SIZE32);\n if (start < srcLen) {\n const b32 = new Uint32Array([s0, s1, s2, s3]);\n const buf = (0, utils_js_1.u8)(b32);\n for (let i = start, pos = 0; i < srcLen; i++, pos++)\n dst[i] = src[i] ^ buf[pos];\n (0, utils_js_1.clean)(b32);\n }\n return dst;\n}\n/**\n * CTR: counter mode. Creates stream cipher.\n * Requires good IV. Parallelizable. OK, but no MAC.\n */\nexports.ctr = (0, utils_js_1.wrapCipher)({ blockSize: 16, nonceLength: 16 }, function ctr(key, nonce) {\n (0, _assert_js_1.bytes)(key);\n (0, _assert_js_1.bytes)(nonce, BLOCK_SIZE);\n function processCtr(buf, dst) {\n (0, _assert_js_1.bytes)(buf);\n if (dst !== undefined) {\n (0, _assert_js_1.bytes)(dst);\n if (!(0, utils_js_1.isAligned32)(dst))\n throw new Error('unaligned destination');\n }\n const xk = expandKeyLE(key);\n const n = (0, utils_js_1.copyBytes)(nonce); // align + avoid changing\n const toClean = [xk, n];\n if (!(0, utils_js_1.isAligned32)(buf))\n toClean.push((buf = (0, utils_js_1.copyBytes)(buf)));\n const out = ctrCounter(xk, n, buf, dst);\n (0, utils_js_1.clean)(...toClean);\n return out;\n }\n return {\n encrypt: (plaintext, dst) => processCtr(plaintext, dst),\n decrypt: (ciphertext, dst) => processCtr(ciphertext, dst),\n };\n});\nfunction validateBlockDecrypt(data) {\n (0, _assert_js_1.bytes)(data);\n if (data.length % BLOCK_SIZE !== 0) {\n throw new Error(`aes/(cbc-ecb).decrypt ciphertext should consist of blocks with size ${BLOCK_SIZE}`);\n }\n}\nfunction validateBlockEncrypt(plaintext, pcks5, dst) {\n (0, _assert_js_1.bytes)(plaintext);\n let outLen = plaintext.length;\n const remaining = outLen % BLOCK_SIZE;\n if (!pcks5 && remaining !== 0)\n throw new Error('aec/(cbc-ecb): unpadded plaintext with disabled padding');\n if (!(0, utils_js_1.isAligned32)(plaintext))\n plaintext = (0, utils_js_1.copyBytes)(plaintext);\n const b = (0, utils_js_1.u32)(plaintext);\n if (pcks5) {\n let left = BLOCK_SIZE - remaining;\n if (!left)\n left = BLOCK_SIZE; // if no bytes left, create empty padding block\n outLen = outLen + left;\n }\n const out = getDst(outLen, dst);\n const o = (0, utils_js_1.u32)(out);\n return { b, o, out };\n}\nfunction validatePCKS(data, pcks5) {\n if (!pcks5)\n return data;\n const len = data.length;\n if (!len)\n throw new Error('aes/pcks5: empty ciphertext not allowed');\n const lastByte = data[len - 1];\n if (lastByte <= 0 || lastByte > 16)\n throw new Error('aes/pcks5: wrong padding');\n const out = data.subarray(0, -lastByte);\n for (let i = 0; i < lastByte; i++)\n if (data[len - i - 1] !== lastByte)\n throw new Error('aes/pcks5: wrong padding');\n return out;\n}\nfunction padPCKS(left) {\n const tmp = new Uint8Array(16);\n const tmp32 = (0, utils_js_1.u32)(tmp);\n tmp.set(left);\n const paddingByte = BLOCK_SIZE - left.length;\n for (let i = BLOCK_SIZE - paddingByte; i < BLOCK_SIZE; i++)\n tmp[i] = paddingByte;\n return tmp32;\n}\n/**\n * ECB: Electronic CodeBook. Simple deterministic replacement.\n * Dangerous: always map x to y. See [AES Penguin](https://words.filippo.io/the-ecb-penguin/).\n */\nexports.ecb = (0, utils_js_1.wrapCipher)({ blockSize: 16 }, function ecb(key, opts = {}) {\n (0, _assert_js_1.bytes)(key);\n const pcks5 = !opts.disablePadding;\n return {\n encrypt(plaintext, dst) {\n const { b, o, out: _out } = validateBlockEncrypt(plaintext, pcks5, dst);\n const xk = expandKeyLE(key);\n let i = 0;\n for (; i + 4 <= b.length;) {\n const { s0, s1, s2, s3 } = encrypt(xk, b[i + 0], b[i + 1], b[i + 2], b[i + 3]);\n (o[i++] = s0), (o[i++] = s1), (o[i++] = s2), (o[i++] = s3);\n }\n if (pcks5) {\n const tmp32 = padPCKS(plaintext.subarray(i * 4));\n const { s0, s1, s2, s3 } = encrypt(xk, tmp32[0], tmp32[1], tmp32[2], tmp32[3]);\n (o[i++] = s0), (o[i++] = s1), (o[i++] = s2), (o[i++] = s3);\n }\n (0, utils_js_1.clean)(xk);\n return _out;\n },\n decrypt(ciphertext, dst) {\n validateBlockDecrypt(ciphertext);\n const xk = expandKeyDecLE(key);\n const out = getDst(ciphertext.length, dst);\n const toClean = [xk];\n if (!(0, utils_js_1.isAligned32)(ciphertext))\n toClean.push((ciphertext = (0, utils_js_1.copyBytes)(ciphertext)));\n const b = (0, utils_js_1.u32)(ciphertext);\n const o = (0, utils_js_1.u32)(out);\n for (let i = 0; i + 4 <= b.length;) {\n const { s0, s1, s2, s3 } = decrypt(xk, b[i + 0], b[i + 1], b[i + 2], b[i + 3]);\n (o[i++] = s0), (o[i++] = s1), (o[i++] = s2), (o[i++] = s3);\n }\n (0, utils_js_1.clean)(...toClean);\n return validatePCKS(out, pcks5);\n },\n };\n});\n/**\n * CBC: Cipher-Block-Chaining. Key is previous round’s block.\n * Fragile: needs proper padding. Unauthenticated: needs MAC.\n */\nexports.cbc = (0, utils_js_1.wrapCipher)({ blockSize: 16, nonceLength: 16 }, function cbc(key, iv, opts = {}) {\n (0, _assert_js_1.bytes)(key);\n (0, _assert_js_1.bytes)(iv, 16);\n const pcks5 = !opts.disablePadding;\n return {\n encrypt(plaintext, dst) {\n const xk = expandKeyLE(key);\n const { b, o, out: _out } = validateBlockEncrypt(plaintext, pcks5, dst);\n let _iv = iv;\n const toClean = [xk];\n if (!(0, utils_js_1.isAligned32)(_iv))\n toClean.push((_iv = (0, utils_js_1.copyBytes)(_iv)));\n const n32 = (0, utils_js_1.u32)(_iv);\n // prettier-ignore\n let s0 = n32[0], s1 = n32[1], s2 = n32[2], s3 = n32[3];\n let i = 0;\n for (; i + 4 <= b.length;) {\n (s0 ^= b[i + 0]), (s1 ^= b[i + 1]), (s2 ^= b[i + 2]), (s3 ^= b[i + 3]);\n ({ s0, s1, s2, s3 } = encrypt(xk, s0, s1, s2, s3));\n (o[i++] = s0), (o[i++] = s1), (o[i++] = s2), (o[i++] = s3);\n }\n if (pcks5) {\n const tmp32 = padPCKS(plaintext.subarray(i * 4));\n (s0 ^= tmp32[0]), (s1 ^= tmp32[1]), (s2 ^= tmp32[2]), (s3 ^= tmp32[3]);\n ({ s0, s1, s2, s3 } = encrypt(xk, s0, s1, s2, s3));\n (o[i++] = s0), (o[i++] = s1), (o[i++] = s2), (o[i++] = s3);\n }\n (0, utils_js_1.clean)(...toClean);\n return _out;\n },\n decrypt(ciphertext, dst) {\n validateBlockDecrypt(ciphertext);\n const xk = expandKeyDecLE(key);\n let _iv = iv;\n const toClean = [xk];\n if (!(0, utils_js_1.isAligned32)(_iv))\n toClean.push((_iv = (0, utils_js_1.copyBytes)(_iv)));\n const n32 = (0, utils_js_1.u32)(_iv);\n const out = getDst(ciphertext.length, dst);\n if (!(0, utils_js_1.isAligned32)(ciphertext))\n toClean.push((ciphertext = (0, utils_js_1.copyBytes)(ciphertext)));\n const b = (0, utils_js_1.u32)(ciphertext);\n const o = (0, utils_js_1.u32)(out);\n // prettier-ignore\n let s0 = n32[0], s1 = n32[1], s2 = n32[2], s3 = n32[3];\n for (let i = 0; i + 4 <= b.length;) {\n // prettier-ignore\n const ps0 = s0, ps1 = s1, ps2 = s2, ps3 = s3;\n (s0 = b[i + 0]), (s1 = b[i + 1]), (s2 = b[i + 2]), (s3 = b[i + 3]);\n const { s0: o0, s1: o1, s2: o2, s3: o3 } = decrypt(xk, s0, s1, s2, s3);\n (o[i++] = o0 ^ ps0), (o[i++] = o1 ^ ps1), (o[i++] = o2 ^ ps2), (o[i++] = o3 ^ ps3);\n }\n (0, utils_js_1.clean)(...toClean);\n return validatePCKS(out, pcks5);\n },\n };\n});\n/**\n * CFB: Cipher Feedback Mode. The input for the block cipher is the previous cipher output.\n * Unauthenticated: needs MAC.\n */\nexports.cfb = (0, utils_js_1.wrapCipher)({ blockSize: 16, nonceLength: 16 }, function cfb(key, iv) {\n (0, _assert_js_1.bytes)(key);\n (0, _assert_js_1.bytes)(iv, 16);\n function processCfb(src, isEncrypt, dst) {\n (0, _assert_js_1.bytes)(src);\n const srcLen = src.length;\n dst = getDst(srcLen, dst);\n const xk = expandKeyLE(key);\n let _iv = iv;\n const toClean = [xk];\n if (!(0, utils_js_1.isAligned32)(_iv))\n toClean.push((_iv = (0, utils_js_1.copyBytes)(_iv)));\n if (!(0, utils_js_1.isAligned32)(src))\n toClean.push((src = (0, utils_js_1.copyBytes)(src)));\n const src32 = (0, utils_js_1.u32)(src);\n const dst32 = (0, utils_js_1.u32)(dst);\n const next32 = isEncrypt ? dst32 : src32;\n const n32 = (0, utils_js_1.u32)(_iv);\n // prettier-ignore\n let s0 = n32[0], s1 = n32[1], s2 = n32[2], s3 = n32[3];\n for (let i = 0; i + 4 <= src32.length;) {\n const { s0: e0, s1: e1, s2: e2, s3: e3 } = encrypt(xk, s0, s1, s2, s3);\n dst32[i + 0] = src32[i + 0] ^ e0;\n dst32[i + 1] = src32[i + 1] ^ e1;\n dst32[i + 2] = src32[i + 2] ^ e2;\n dst32[i + 3] = src32[i + 3] ^ e3;\n (s0 = next32[i++]), (s1 = next32[i++]), (s2 = next32[i++]), (s3 = next32[i++]);\n }\n // leftovers (less than block)\n const start = BLOCK_SIZE * Math.floor(src32.length / BLOCK_SIZE32);\n if (start < srcLen) {\n ({ s0, s1, s2, s3 } = encrypt(xk, s0, s1, s2, s3));\n const buf = (0, utils_js_1.u8)(new Uint32Array([s0, s1, s2, s3]));\n for (let i = start, pos = 0; i < srcLen; i++, pos++)\n dst[i] = src[i] ^ buf[pos];\n (0, utils_js_1.clean)(buf);\n }\n (0, utils_js_1.clean)(...toClean);\n return dst;\n }\n return {\n encrypt: (plaintext, dst) => processCfb(plaintext, true, dst),\n decrypt: (ciphertext, dst) => processCfb(ciphertext, false, dst),\n };\n});\n// TODO: merge with chacha, however gcm has bitLen while chacha has byteLen\nfunction computeTag(fn, isLE, key, data, AAD) {\n const aadLength = AAD == null ? 0 : AAD.length;\n const h = fn.create(key, data.length + aadLength);\n if (AAD)\n h.update(AAD);\n h.update(data);\n const num = new Uint8Array(16);\n const view = (0, utils_js_1.createView)(num);\n if (AAD)\n (0, utils_js_1.setBigUint64)(view, 0, BigInt(aadLength * 8), isLE);\n (0, utils_js_1.setBigUint64)(view, 8, BigInt(data.length * 8), isLE);\n h.update(num);\n const res = h.digest();\n (0, utils_js_1.clean)(num);\n return res;\n}\n/**\n * GCM: Galois/Counter Mode.\n * Modern, parallel version of CTR, with MAC.\n * Be careful: MACs can be forged.\n * Unsafe to use random nonces under the same key, due to collision chance.\n * As for nonce size, prefer 12-byte, instead of 8-byte.\n */\nexports.gcm = (0, utils_js_1.wrapCipher)({ blockSize: 16, nonceLength: 12, tagLength: 16 }, function gcm(key, nonce, AAD) {\n (0, _assert_js_1.bytes)(key);\n (0, _assert_js_1.bytes)(nonce);\n if (AAD !== undefined)\n (0, _assert_js_1.bytes)(AAD);\n // NIST 800-38d doesn't enforce minimum nonce length.\n // We enforce 8 bytes for compat with openssl.\n // 12 bytes are recommended. More than 12 bytes would be converted into 12.\n if (nonce.length < 8)\n throw new Error('aes/gcm: invalid nonce length');\n const tagLength = 16;\n function _computeTag(authKey, tagMask, data) {\n const tag = computeTag(_polyval_js_1.ghash, false, authKey, data, AAD);\n for (let i = 0; i < tagMask.length; i++)\n tag[i] ^= tagMask[i];\n return tag;\n }\n function deriveKeys() {\n const xk = expandKeyLE(key);\n const authKey = EMPTY_BLOCK.slice();\n const counter = EMPTY_BLOCK.slice();\n ctr32(xk, false, counter, counter, authKey);\n // NIST 800-38d, page 15: different behavior for 96-bit and non-96-bit nonces\n if (nonce.length === 12) {\n counter.set(nonce);\n }\n else {\n const nonceLen = EMPTY_BLOCK.slice();\n const view = (0, utils_js_1.createView)(nonceLen);\n (0, utils_js_1.setBigUint64)(view, 8, BigInt(nonce.length * 8), false);\n // ghash(nonce || u64be(0) || u64be(nonceLen*8))\n const g = _polyval_js_1.ghash.create(authKey).update(nonce).update(nonceLen);\n g.digestInto(counter); // digestInto doesn't trigger '.destroy'\n g.destroy();\n }\n const tagMask = ctr32(xk, false, counter, EMPTY_BLOCK);\n return { xk, authKey, counter, tagMask };\n }\n return {\n encrypt(plaintext) {\n (0, _assert_js_1.bytes)(plaintext);\n const { xk, authKey, counter, tagMask } = deriveKeys();\n const out = new Uint8Array(plaintext.length + tagLength);\n const toClean = [xk, authKey, counter, tagMask];\n if (!(0, utils_js_1.isAligned32)(plaintext))\n toClean.push((plaintext = (0, utils_js_1.copyBytes)(plaintext)));\n ctr32(xk, false, counter, plaintext, out);\n const tag = _computeTag(authKey, tagMask, out.subarray(0, out.length - tagLength));\n toClean.push(tag);\n out.set(tag, plaintext.length);\n (0, utils_js_1.clean)(...toClean);\n return out;\n },\n decrypt(ciphertext) {\n (0, _assert_js_1.bytes)(ciphertext);\n if (ciphertext.length < tagLength)\n throw new Error(`aes/gcm: ciphertext less than tagLen (${tagLength})`);\n const { xk, authKey, counter, tagMask } = deriveKeys();\n const toClean = [xk, authKey, tagMask, counter];\n if (!(0, utils_js_1.isAligned32)(ciphertext))\n toClean.push((ciphertext = (0, utils_js_1.copyBytes)(ciphertext)));\n const data = ciphertext.subarray(0, -tagLength);\n const passedTag = ciphertext.subarray(-tagLength);\n const tag = _computeTag(authKey, tagMask, data);\n toClean.push(tag);\n if (!(0, utils_js_1.equalBytes)(tag, passedTag))\n throw new Error('aes/gcm: invalid ghash tag');\n const out = ctr32(xk, false, counter, data);\n (0, utils_js_1.clean)(...toClean);\n return out;\n },\n };\n});\nconst limit = (name, min, max) => (value) => {\n if (!Number.isSafeInteger(value) || min > value || value > max)\n throw new Error(`${name}: invalid value=${value}, must be [${min}..${max}]`);\n};\n/**\n * AES-GCM-SIV: classic AES-GCM with nonce-misuse resistance.\n * Guarantees that, when a nonce is repeated, the only security loss is that identical\n * plaintexts will produce identical ciphertexts.\n * RFC 8452, https://datatracker.ietf.org/doc/html/rfc8452\n */\nexports.siv = (0, utils_js_1.wrapCipher)({ blockSize: 16, nonceLength: 12, tagLength: 16 }, function siv(key, nonce, AAD) {\n const tagLength = 16;\n // From RFC 8452: Section 6\n const AAD_LIMIT = limit('AAD', 0, 2 ** 36);\n const PLAIN_LIMIT = limit('plaintext', 0, 2 ** 36);\n const NONCE_LIMIT = limit('nonce', 12, 12);\n const CIPHER_LIMIT = limit('ciphertext', 16, 2 ** 36 + 16);\n (0, _assert_js_1.bytes)(key, 16, 24, 32);\n (0, _assert_js_1.bytes)(nonce);\n NONCE_LIMIT(nonce.length);\n if (AAD !== undefined) {\n (0, _assert_js_1.bytes)(AAD);\n AAD_LIMIT(AAD.length);\n }\n function deriveKeys() {\n const xk = expandKeyLE(key);\n const encKey = new Uint8Array(key.length);\n const authKey = new Uint8Array(16);\n const toClean = [xk, encKey];\n let _nonce = nonce;\n if (!(0, utils_js_1.isAligned32)(_nonce))\n toClean.push((_nonce = (0, utils_js_1.copyBytes)(_nonce)));\n const n32 = (0, utils_js_1.u32)(_nonce);\n // prettier-ignore\n let s0 = 0, s1 = n32[0], s2 = n32[1], s3 = n32[2];\n let counter = 0;\n for (const derivedKey of [authKey, encKey].map(utils_js_1.u32)) {\n const d32 = (0, utils_js_1.u32)(derivedKey);\n for (let i = 0; i < d32.length; i += 2) {\n // aes(u32le(0) || nonce)[:8] || aes(u32le(1) || nonce)[:8] ...\n const { s0: o0, s1: o1 } = encrypt(xk, s0, s1, s2, s3);\n d32[i + 0] = o0;\n d32[i + 1] = o1;\n s0 = ++counter; // increment counter inside state\n }\n }\n const res = { authKey, encKey: expandKeyLE(encKey) };\n // Cleanup\n (0, utils_js_1.clean)(...toClean);\n return res;\n }\n function _computeTag(encKey, authKey, data) {\n const tag = computeTag(_polyval_js_1.polyval, true, authKey, data, AAD);\n // Compute the expected tag by XORing S_s and the nonce, clearing the\n // most significant bit of the last byte and encrypting with the\n // message-encryption key.\n for (let i = 0; i < 12; i++)\n tag[i] ^= nonce[i];\n tag[15] &= 0x7f; // Clear the highest bit\n // encrypt tag as block\n const t32 = (0, utils_js_1.u32)(tag);\n // prettier-ignore\n let s0 = t32[0], s1 = t32[1], s2 = t32[2], s3 = t32[3];\n ({ s0, s1, s2, s3 } = encrypt(encKey, s0, s1, s2, s3));\n (t32[0] = s0), (t32[1] = s1), (t32[2] = s2), (t32[3] = s3);\n return tag;\n }\n // actual decrypt/encrypt of message.\n function processSiv(encKey, tag, input) {\n let block = (0, utils_js_1.copyBytes)(tag);\n block[15] |= 0x80; // Force highest bit\n const res = ctr32(encKey, true, block, input);\n // Cleanup\n (0, utils_js_1.clean)(block);\n return res;\n }\n return {\n encrypt(plaintext) {\n (0, _assert_js_1.bytes)(plaintext);\n PLAIN_LIMIT(plaintext.length);\n const { encKey, authKey } = deriveKeys();\n const tag = _computeTag(encKey, authKey, plaintext);\n const toClean = [encKey, authKey, tag];\n if (!(0, utils_js_1.isAligned32)(plaintext))\n toClean.push((plaintext = (0, utils_js_1.copyBytes)(plaintext)));\n const out = new Uint8Array(plaintext.length + tagLength);\n out.set(tag, plaintext.length);\n out.set(processSiv(encKey, tag, plaintext));\n // Cleanup\n (0, utils_js_1.clean)(...toClean);\n return out;\n },\n decrypt(ciphertext) {\n (0, _assert_js_1.bytes)(ciphertext);\n CIPHER_LIMIT(ciphertext.length);\n const tag = ciphertext.subarray(-tagLength);\n const { encKey, authKey } = deriveKeys();\n const toClean = [encKey, authKey];\n if (!(0, utils_js_1.isAligned32)(ciphertext))\n toClean.push((ciphertext = (0, utils_js_1.copyBytes)(ciphertext)));\n const plaintext = processSiv(encKey, tag, ciphertext.subarray(0, -tagLength));\n const expectedTag = _computeTag(encKey, authKey, plaintext);\n toClean.push(expectedTag);\n if (!(0, utils_js_1.equalBytes)(tag, expectedTag)) {\n (0, utils_js_1.clean)(...toClean);\n throw new Error('invalid polyval tag');\n }\n // Cleanup\n (0, utils_js_1.clean)(...toClean);\n return plaintext;\n },\n };\n});\nfunction isBytes32(a) {\n return (a != null &&\n typeof a === 'object' &&\n (a instanceof Uint32Array || a.constructor.name === 'Uint32Array'));\n}\nfunction encryptBlock(xk, block) {\n (0, _assert_js_1.bytes)(block, 16);\n if (!isBytes32(xk))\n throw new Error('_encryptBlock accepts result of expandKeyLE');\n const b32 = (0, utils_js_1.u32)(block);\n let { s0, s1, s2, s3 } = encrypt(xk, b32[0], b32[1], b32[2], b32[3]);\n (b32[0] = s0), (b32[1] = s1), (b32[2] = s2), (b32[3] = s3);\n return block;\n}\nfunction decryptBlock(xk, block) {\n (0, _assert_js_1.bytes)(block, 16);\n if (!isBytes32(xk))\n throw new Error('_decryptBlock accepts result of expandKeyLE');\n const b32 = (0, utils_js_1.u32)(block);\n let { s0, s1, s2, s3 } = decrypt(xk, b32[0], b32[1], b32[2], b32[3]);\n (b32[0] = s0), (b32[1] = s1), (b32[2] = s2), (b32[3] = s3);\n return block;\n}\n/**\n * AES-W (base for AESKW/AESKWP).\n * Specs: [SP800-38F](https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38F.pdf),\n * [RFC 3394](https://datatracker.ietf.org/doc/rfc3394/),\n * [RFC 5649](https://datatracker.ietf.org/doc/rfc5649/).\n */\nconst AESW = {\n /*\n High-level pseudocode:\n ```\n A: u64 = IV\n out = []\n for (let i=0, ctr = 0; i<6; i++) {\n for (const chunk of chunks(plaintext, 8)) {\n A ^= swapEndianess(ctr++)\n [A, res] = chunks(encrypt(A || chunk), 8);\n out ||= res\n }\n }\n out = A || out\n ```\n Decrypt is the same, but reversed.\n */\n encrypt(kek, out) {\n // Size is limited to 4GB, otherwise ctr will overflow and we'll need to switch to bigints.\n // If you need it larger, open an issue.\n if (out.length >= 2 ** 32)\n throw new Error('plaintext should be less than 4gb');\n const xk = expandKeyLE(kek);\n if (out.length === 16)\n encryptBlock(xk, out);\n else {\n const o32 = (0, utils_js_1.u32)(out);\n // prettier-ignore\n let a0 = o32[0], a1 = o32[1]; // A\n for (let j = 0, ctr = 1; j < 6; j++) {\n for (let pos = 2; pos < o32.length; pos += 2, ctr++) {\n const { s0, s1, s2, s3 } = encrypt(xk, a0, a1, o32[pos], o32[pos + 1]);\n // A = MSB(64, B) ^ t where t = (n*j)+i\n (a0 = s0), (a1 = s1 ^ byteSwap(ctr)), (o32[pos] = s2), (o32[pos + 1] = s3);\n }\n }\n (o32[0] = a0), (o32[1] = a1); // out = A || out\n }\n xk.fill(0);\n },\n decrypt(kek, out) {\n if (out.length - 8 >= 2 ** 32)\n throw new Error('ciphertext should be less than 4gb');\n const xk = expandKeyDecLE(kek);\n const chunks = out.length / 8 - 1; // first chunk is IV\n if (chunks === 1)\n decryptBlock(xk, out);\n else {\n const o32 = (0, utils_js_1.u32)(out);\n // prettier-ignore\n let a0 = o32[0], a1 = o32[1]; // A\n for (let j = 0, ctr = chunks * 6; j < 6; j++) {\n for (let pos = chunks * 2; pos >= 1; pos -= 2, ctr--) {\n a1 ^= byteSwap(ctr);\n const { s0, s1, s2, s3 } = decrypt(xk, a0, a1, o32[pos], o32[pos + 1]);\n (a0 = s0), (a1 = s1), (o32[pos] = s2), (o32[pos + 1] = s3);\n }\n }\n (o32[0] = a0), (o32[1] = a1);\n }\n xk.fill(0);\n },\n};\nconst AESKW_IV = new Uint8Array(8).fill(0xa6); // A6A6A6A6A6A6A6A6\n/**\n * AES-KW (key-wrap). Injects static IV into plaintext, adds counter, encrypts 6 times.\n * Reduces block size from 16 to 8 bytes.\n * For padded version, use aeskwp.\n * [RFC 3394](https://datatracker.ietf.org/doc/rfc3394/),\n * [NIST.SP.800-38F](https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-38F.pdf).\n */\nexports.aeskw = (0, utils_js_1.wrapCipher)({ blockSize: 8 }, (kek) => ({\n encrypt(plaintext) {\n (0, _assert_js_1.bytes)(plaintext);\n if (!plaintext.length || plaintext.length % 8 !== 0)\n throw new Error('invalid plaintext length');\n if (plaintext.length === 8)\n throw new Error('8-byte keys not allowed in AESKW, use AESKWP instead');\n const out = (0, utils_js_1.concatBytes)(AESKW_IV, plaintext);\n AESW.encrypt(kek, out);\n return out;\n },\n decrypt(ciphertext) {\n (0, _assert_js_1.bytes)(ciphertext);\n // ciphertext must be at least 24 bytes and a multiple of 8 bytes\n // 24 because should have at least two block (1 iv + 2).\n // Replace with 16 to enable '8-byte keys'\n if (ciphertext.length % 8 !== 0 || ciphertext.length < 3 * 8)\n throw new Error('invalid ciphertext length');\n const out = (0, utils_js_1.copyBytes)(ciphertext);\n AESW.decrypt(kek, out);\n if (!(0, utils_js_1.equalBytes)(out.subarray(0, 8), AESKW_IV))\n throw new Error('integrity check failed');\n out.subarray(0, 8).fill(0); // ciphertext.subarray(0, 8) === IV, but we clean it anyway\n return out.subarray(8);\n },\n}));\n/*\nWe don't support 8-byte keys. The rabbit hole:\n\n- Wycheproof says: \"NIST SP 800-38F does not define the wrapping of 8 byte keys.\n RFC 3394 Section 2 on the other hand specifies that 8 byte keys are wrapped\n by directly encrypting one block with AES.\"\n - https://github.com/C2SP/wycheproof/blob/master/doc/key_wrap.md\n - \"RFC 3394 specifies in Section 2, that the input for the key wrap\n algorithm must be at least two blocks and otherwise the constant\n field and key are simply encrypted with ECB as a single block\"\n- What RFC 3394 actually says (in Section 2):\n - \"Before being wrapped, the key data is parsed into n blocks of 64 bits.\n The only restriction the key wrap algorithm places on n is that n be\n at least two\"\n - \"For key data with length less than or equal to 64 bits, the constant\n field used in this specification and the key data form a single\n 128-bit codebook input making this key wrap unnecessary.\"\n- Which means \"assert(n >= 2)\" and \"use something else for 8 byte keys\"\n- NIST SP800-38F actually prohibits 8-byte in \"5.3.1 Mandatory Limits\".\n It states that plaintext for KW should be \"2 to 2^54 -1 semiblocks\".\n- So, where does \"directly encrypt single block with AES\" come from?\n - Not RFC 3394. Pseudocode of key wrap in 2.2 explicitly uses\n loop of 6 for any code path\n - There is a weird W3C spec:\n https://www.w3.org/TR/2002/REC-xmlenc-core-20021210/Overview.html#kw-aes128\n - This spec is outdated, as admitted by Wycheproof authors\n - There is RFC 5649 for padded key wrap, which is padding construction on\n top of AESKW. In '4.1.2' it says: \"If the padded plaintext contains exactly\n eight octets, then prepend the AIV as defined in Section 3 above to P[1] and\n encrypt the resulting 128-bit block using AES in ECB mode [Modes] with key\n K (the KEK). In this case, the output is two 64-bit blocks C[0] and C[1]:\"\n - Browser subtle crypto is actually crashes on wrapping keys less than 16 bytes:\n `Error: error:1C8000E6:Provider routines::invalid input length] { opensslErrorStack: [ 'error:030000BD:digital envelope routines::update error' ]`\n\nIn the end, seems like a bug in Wycheproof.\nThe 8-byte check can be easily disabled inside of AES_W.\n*/\nconst AESKWP_IV = 0xa65959a6; // single u32le value\n/**\n * AES-KW, but with padding and allows random keys.\n * Second u32 of IV is used as counter for length.\n * [RFC 5649](https://www.rfc-editor.org/rfc/rfc5649)\n */\nexports.aeskwp = (0, utils_js_1.wrapCipher)({ blockSize: 8 }, (kek) => ({\n encrypt(plaintext) {\n (0, _assert_js_1.bytes)(plaintext);\n if (!plaintext.length)\n throw new Error('invalid plaintext length');\n const padded = Math.ceil(plaintext.length / 8) * 8;\n const out = new Uint8Array(8 + padded);\n out.set(plaintext, 8);\n const out32 = (0, utils_js_1.u32)(out);\n out32[0] = AESKWP_IV;\n out32[1] = byteSwap(plaintext.length);\n AESW.encrypt(kek, out);\n return out;\n },\n decrypt(ciphertext) {\n (0, _assert_js_1.bytes)(ciphertext);\n // 16 because should have at least one block\n if (ciphertext.length < 16)\n throw new Error('invalid ciphertext length');\n const out = (0, utils_js_1.copyBytes)(ciphertext);\n const o32 = (0, utils_js_1.u32)(out);\n AESW.decrypt(kek, out);\n const len = byteSwap(o32[1]) >>> 0;\n const padded = Math.ceil(len / 8) * 8;\n if (o32[0] !== AESKWP_IV || out.length - 8 !== padded)\n throw new Error('integrity check failed');\n for (let i = len; i < padded; i++)\n if (out[8 + i] !== 0)\n throw new Error('integrity check failed');\n out.subarray(0, 8).fill(0); // ciphertext.subarray(0, 8) === IV, but we clean it anyway\n return out.subarray(8, 8 + len);\n },\n}));\n// Private, unsafe low-level methods. Can change at any time.\nexports.unsafe = {\n expandKeyLE,\n expandKeyDecLE,\n encrypt,\n decrypt,\n encryptBlock,\n decryptBlock,\n ctrCounter,\n ctr32,\n};\n//# sourceMappingURL=aes.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.aes256cbc = exports.aes256gcm = void 0;\nvar aes_1 = require(\"@noble/ciphers/aes\");\nvar aes256gcm = function (key, nonce, AAD) {\n return (0, aes_1.gcm)(key, nonce, AAD);\n};\nexports.aes256gcm = aes256gcm;\nvar aes256cbc = function (key, nonce, AAD) {\n return (0, aes_1.cbc)(key, nonce);\n};\nexports.aes256cbc = aes256cbc;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sigma = void 0;\nexports.rotl = rotl;\nexports.createCipher = createCipher;\n// Basic utils for ARX (add-rotate-xor) salsa and chacha ciphers.\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\n/*\nRFC8439 requires multi-step cipher stream, where\nauthKey starts with counter: 0, actual msg with counter: 1.\n\nFor this, we need a way to re-use nonce / counter:\n\n const counter = new Uint8Array(4);\n chacha(..., counter, ...); // counter is now 1\n chacha(..., counter, ...); // counter is now 2\n\nThis is complicated:\n\n- 32-bit counters are enough, no need for 64-bit: max ArrayBuffer size in JS is 4GB\n- Original papers don't allow mutating counters\n- Counter overflow is undefined [^1]\n- Idea A: allow providing (nonce | counter) instead of just nonce, re-use it\n- Caveat: Cannot be re-used through all cases:\n- * chacha has (counter | nonce)\n- * xchacha has (nonce16 | counter | nonce16)\n- Idea B: separate nonce / counter and provide separate API for counter re-use\n- Caveat: there are different counter sizes depending on an algorithm.\n- salsa & chacha also differ in structures of key & sigma:\n salsa20: s[0] | k(4) | s[1] | nonce(2) | ctr(2) | s[2] | k(4) | s[3]\n chacha: s(4) | k(8) | ctr(1) | nonce(3)\n chacha20orig: s(4) | k(8) | ctr(2) | nonce(2)\n- Idea C: helper method such as `setSalsaState(key, nonce, sigma, data)`\n- Caveat: we can't re-use counter array\n\nxchacha [^2] uses the subkey and remaining 8 byte nonce with ChaCha20 as normal\n(prefixed by 4 NUL bytes, since [RFC8439] specifies a 12-byte nonce).\n\n[^1]: https://mailarchive.ietf.org/arch/msg/cfrg/gsOnTJzcbgG6OqD8Sc0GO5aR_tU/\n[^2]: https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-xchacha#appendix-A.2\n*/\n// We can't make top-level var depend on utils.utf8ToBytes\n// because it's not present in all envs. Creating a similar fn here\nconst _utf8ToBytes = (str) => Uint8Array.from(str.split('').map((c) => c.charCodeAt(0)));\nconst sigma16 = _utf8ToBytes('expand 16-byte k');\nconst sigma32 = _utf8ToBytes('expand 32-byte k');\nconst sigma16_32 = (0, utils_js_1.u32)(sigma16);\nconst sigma32_32 = (0, utils_js_1.u32)(sigma32);\nexports.sigma = sigma32_32.slice();\nfunction rotl(a, b) {\n return (a << b) | (a >>> (32 - b));\n}\n// Is byte array aligned to 4 byte offset (u32)?\nfunction isAligned32(b) {\n return b.byteOffset % 4 === 0;\n}\n// Salsa and Chacha block length is always 512-bit\nconst BLOCK_LEN = 64;\nconst BLOCK_LEN32 = 16;\n// new Uint32Array([2**32]) // => Uint32Array(1) [ 0 ]\n// new Uint32Array([2**32-1]) // => Uint32Array(1) [ 4294967295 ]\nconst MAX_COUNTER = 2 ** 32 - 1;\nconst U32_EMPTY = new Uint32Array();\nfunction runCipher(core, sigma, key, nonce, data, output, counter, rounds) {\n const len = data.length;\n const block = new Uint8Array(BLOCK_LEN);\n const b32 = (0, utils_js_1.u32)(block);\n // Make sure that buffers aligned to 4 bytes\n const isAligned = isAligned32(data) && isAligned32(output);\n const d32 = isAligned ? (0, utils_js_1.u32)(data) : U32_EMPTY;\n const o32 = isAligned ? (0, utils_js_1.u32)(output) : U32_EMPTY;\n for (let pos = 0; pos < len; counter++) {\n core(sigma, key, nonce, b32, counter, rounds);\n if (counter >= MAX_COUNTER)\n throw new Error('arx: counter overflow');\n const take = Math.min(BLOCK_LEN, len - pos);\n // aligned to 4 bytes\n if (isAligned && take === BLOCK_LEN) {\n const pos32 = pos / 4;\n if (pos % 4 !== 0)\n throw new Error('arx: invalid block position');\n for (let j = 0, posj; j < BLOCK_LEN32; j++) {\n posj = pos32 + j;\n o32[posj] = d32[posj] ^ b32[j];\n }\n pos += BLOCK_LEN;\n continue;\n }\n for (let j = 0, posj; j < take; j++) {\n posj = pos + j;\n output[posj] = data[posj] ^ block[j];\n }\n pos += take;\n }\n}\nfunction createCipher(core, opts) {\n const { allowShortKeys, extendNonceFn, counterLength, counterRight, rounds } = (0, utils_js_1.checkOpts)({ allowShortKeys: false, counterLength: 8, counterRight: false, rounds: 20 }, opts);\n if (typeof core !== 'function')\n throw new Error('core must be a function');\n (0, _assert_js_1.number)(counterLength);\n (0, _assert_js_1.number)(rounds);\n (0, _assert_js_1.bool)(counterRight);\n (0, _assert_js_1.bool)(allowShortKeys);\n return (key, nonce, data, output, counter = 0) => {\n (0, _assert_js_1.bytes)(key);\n (0, _assert_js_1.bytes)(nonce);\n (0, _assert_js_1.bytes)(data);\n const len = data.length;\n if (output === undefined)\n output = new Uint8Array(len);\n (0, _assert_js_1.bytes)(output);\n (0, _assert_js_1.number)(counter);\n if (counter < 0 || counter >= MAX_COUNTER)\n throw new Error('arx: counter overflow');\n if (output.length < len)\n throw new Error(`arx: output (${output.length}) is shorter than data (${len})`);\n const toClean = [];\n // Key & sigma\n // key=16 -> sigma16, k=key|key\n // key=32 -> sigma32, k=key\n let l = key.length, k, sigma;\n if (l === 32) {\n toClean.push((k = (0, utils_js_1.copyBytes)(key)));\n sigma = sigma32_32;\n }\n else if (l === 16 && allowShortKeys) {\n k = new Uint8Array(32);\n k.set(key);\n k.set(key, 16);\n sigma = sigma16_32;\n toClean.push(k);\n }\n else {\n throw new Error(`arx: invalid 32-byte key, got length=${l}`);\n }\n // Nonce\n // salsa20: 8 (8-byte counter)\n // chacha20orig: 8 (8-byte counter)\n // chacha20: 12 (4-byte counter)\n // xsalsa20: 24 (16 -> hsalsa, 8 -> old nonce)\n // xchacha20: 24 (16 -> hchacha, 8 -> old nonce)\n // Align nonce to 4 bytes\n if (!isAligned32(nonce))\n toClean.push((nonce = (0, utils_js_1.copyBytes)(nonce)));\n const k32 = (0, utils_js_1.u32)(k);\n // hsalsa & hchacha: handle extended nonce\n if (extendNonceFn) {\n if (nonce.length !== 24)\n throw new Error(`arx: extended nonce must be 24 bytes`);\n extendNonceFn(sigma, k32, (0, utils_js_1.u32)(nonce.subarray(0, 16)), k32);\n nonce = nonce.subarray(16);\n }\n // Handle nonce counter\n const nonceNcLen = 16 - counterLength;\n if (nonceNcLen !== nonce.length)\n throw new Error(`arx: nonce must be ${nonceNcLen} or 16 bytes`);\n // Pad counter when nonce is 64 bit\n if (nonceNcLen !== 12) {\n const nc = new Uint8Array(12);\n nc.set(nonce, counterRight ? 0 : 12 - nonce.length);\n nonce = nc;\n toClean.push(nonce);\n }\n const n32 = (0, utils_js_1.u32)(nonce);\n runCipher(core, sigma, k32, n32, data, output, counter, rounds);\n (0, utils_js_1.clean)(...toClean);\n return output;\n };\n}\n//# sourceMappingURL=_arx.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.poly1305 = void 0;\nexports.wrapConstructorWithKey = wrapConstructorWithKey;\nconst _assert_js_1 = require(\"./_assert.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// Poly1305 is a fast and parallel secret-key message-authentication code.\n// https://cr.yp.to/mac.html, https://cr.yp.to/mac/poly1305-20050329.pdf\n// https://datatracker.ietf.org/doc/html/rfc8439\n// Based on Public Domain poly1305-donna https://github.com/floodyberry/poly1305-donna\nconst u8to16 = (a, i) => (a[i++] & 0xff) | ((a[i++] & 0xff) << 8);\nclass Poly1305 {\n constructor(key) {\n this.blockLen = 16;\n this.outputLen = 16;\n this.buffer = new Uint8Array(16);\n this.r = new Uint16Array(10);\n this.h = new Uint16Array(10);\n this.pad = new Uint16Array(8);\n this.pos = 0;\n this.finished = false;\n key = (0, utils_js_1.toBytes)(key);\n (0, _assert_js_1.bytes)(key, 32);\n const t0 = u8to16(key, 0);\n const t1 = u8to16(key, 2);\n const t2 = u8to16(key, 4);\n const t3 = u8to16(key, 6);\n const t4 = u8to16(key, 8);\n const t5 = u8to16(key, 10);\n const t6 = u8to16(key, 12);\n const t7 = u8to16(key, 14);\n // https://github.com/floodyberry/poly1305-donna/blob/e6ad6e091d30d7f4ec2d4f978be1fcfcbce72781/poly1305-donna-16.h#L47\n this.r[0] = t0 & 0x1fff;\n this.r[1] = ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n this.r[2] = ((t1 >>> 10) | (t2 << 6)) & 0x1f03;\n this.r[3] = ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n this.r[4] = ((t3 >>> 4) | (t4 << 12)) & 0x00ff;\n this.r[5] = (t4 >>> 1) & 0x1ffe;\n this.r[6] = ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n this.r[7] = ((t5 >>> 11) | (t6 << 5)) & 0x1f81;\n this.r[8] = ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n this.r[9] = (t7 >>> 5) & 0x007f;\n for (let i = 0; i < 8; i++)\n this.pad[i] = u8to16(key, 16 + 2 * i);\n }\n process(data, offset, isLast = false) {\n const hibit = isLast ? 0 : 1 << 11;\n const { h, r } = this;\n const r0 = r[0];\n const r1 = r[1];\n const r2 = r[2];\n const r3 = r[3];\n const r4 = r[4];\n const r5 = r[5];\n const r6 = r[6];\n const r7 = r[7];\n const r8 = r[8];\n const r9 = r[9];\n const t0 = u8to16(data, offset + 0);\n const t1 = u8to16(data, offset + 2);\n const t2 = u8to16(data, offset + 4);\n const t3 = u8to16(data, offset + 6);\n const t4 = u8to16(data, offset + 8);\n const t5 = u8to16(data, offset + 10);\n const t6 = u8to16(data, offset + 12);\n const t7 = u8to16(data, offset + 14);\n let h0 = h[0] + (t0 & 0x1fff);\n let h1 = h[1] + (((t0 >>> 13) | (t1 << 3)) & 0x1fff);\n let h2 = h[2] + (((t1 >>> 10) | (t2 << 6)) & 0x1fff);\n let h3 = h[3] + (((t2 >>> 7) | (t3 << 9)) & 0x1fff);\n let h4 = h[4] + (((t3 >>> 4) | (t4 << 12)) & 0x1fff);\n let h5 = h[5] + ((t4 >>> 1) & 0x1fff);\n let h6 = h[6] + (((t4 >>> 14) | (t5 << 2)) & 0x1fff);\n let h7 = h[7] + (((t5 >>> 11) | (t6 << 5)) & 0x1fff);\n let h8 = h[8] + (((t6 >>> 8) | (t7 << 8)) & 0x1fff);\n let h9 = h[9] + ((t7 >>> 5) | hibit);\n let c = 0;\n let d0 = c + h0 * r0 + h1 * (5 * r9) + h2 * (5 * r8) + h3 * (5 * r7) + h4 * (5 * r6);\n c = d0 >>> 13;\n d0 &= 0x1fff;\n d0 += h5 * (5 * r5) + h6 * (5 * r4) + h7 * (5 * r3) + h8 * (5 * r2) + h9 * (5 * r1);\n c += d0 >>> 13;\n d0 &= 0x1fff;\n let d1 = c + h0 * r1 + h1 * r0 + h2 * (5 * r9) + h3 * (5 * r8) + h4 * (5 * r7);\n c = d1 >>> 13;\n d1 &= 0x1fff;\n d1 += h5 * (5 * r6) + h6 * (5 * r5) + h7 * (5 * r4) + h8 * (5 * r3) + h9 * (5 * r2);\n c += d1 >>> 13;\n d1 &= 0x1fff;\n let d2 = c + h0 * r2 + h1 * r1 + h2 * r0 + h3 * (5 * r9) + h4 * (5 * r8);\n c = d2 >>> 13;\n d2 &= 0x1fff;\n d2 += h5 * (5 * r7) + h6 * (5 * r6) + h7 * (5 * r5) + h8 * (5 * r4) + h9 * (5 * r3);\n c += d2 >>> 13;\n d2 &= 0x1fff;\n let d3 = c + h0 * r3 + h1 * r2 + h2 * r1 + h3 * r0 + h4 * (5 * r9);\n c = d3 >>> 13;\n d3 &= 0x1fff;\n d3 += h5 * (5 * r8) + h6 * (5 * r7) + h7 * (5 * r6) + h8 * (5 * r5) + h9 * (5 * r4);\n c += d3 >>> 13;\n d3 &= 0x1fff;\n let d4 = c + h0 * r4 + h1 * r3 + h2 * r2 + h3 * r1 + h4 * r0;\n c = d4 >>> 13;\n d4 &= 0x1fff;\n d4 += h5 * (5 * r9) + h6 * (5 * r8) + h7 * (5 * r7) + h8 * (5 * r6) + h9 * (5 * r5);\n c += d4 >>> 13;\n d4 &= 0x1fff;\n let d5 = c + h0 * r5 + h1 * r4 + h2 * r3 + h3 * r2 + h4 * r1;\n c = d5 >>> 13;\n d5 &= 0x1fff;\n d5 += h5 * r0 + h6 * (5 * r9) + h7 * (5 * r8) + h8 * (5 * r7) + h9 * (5 * r6);\n c += d5 >>> 13;\n d5 &= 0x1fff;\n let d6 = c + h0 * r6 + h1 * r5 + h2 * r4 + h3 * r3 + h4 * r2;\n c = d6 >>> 13;\n d6 &= 0x1fff;\n d6 += h5 * r1 + h6 * r0 + h7 * (5 * r9) + h8 * (5 * r8) + h9 * (5 * r7);\n c += d6 >>> 13;\n d6 &= 0x1fff;\n let d7 = c + h0 * r7 + h1 * r6 + h2 * r5 + h3 * r4 + h4 * r3;\n c = d7 >>> 13;\n d7 &= 0x1fff;\n d7 += h5 * r2 + h6 * r1 + h7 * r0 + h8 * (5 * r9) + h9 * (5 * r8);\n c += d7 >>> 13;\n d7 &= 0x1fff;\n let d8 = c + h0 * r8 + h1 * r7 + h2 * r6 + h3 * r5 + h4 * r4;\n c = d8 >>> 13;\n d8 &= 0x1fff;\n d8 += h5 * r3 + h6 * r2 + h7 * r1 + h8 * r0 + h9 * (5 * r9);\n c += d8 >>> 13;\n d8 &= 0x1fff;\n let d9 = c + h0 * r9 + h1 * r8 + h2 * r7 + h3 * r6 + h4 * r5;\n c = d9 >>> 13;\n d9 &= 0x1fff;\n d9 += h5 * r4 + h6 * r3 + h7 * r2 + h8 * r1 + h9 * r0;\n c += d9 >>> 13;\n d9 &= 0x1fff;\n c = ((c << 2) + c) | 0;\n c = (c + d0) | 0;\n d0 = c & 0x1fff;\n c = c >>> 13;\n d1 += c;\n h[0] = d0;\n h[1] = d1;\n h[2] = d2;\n h[3] = d3;\n h[4] = d4;\n h[5] = d5;\n h[6] = d6;\n h[7] = d7;\n h[8] = d8;\n h[9] = d9;\n }\n finalize() {\n const { h, pad } = this;\n const g = new Uint16Array(10);\n let c = h[1] >>> 13;\n h[1] &= 0x1fff;\n for (let i = 2; i < 10; i++) {\n h[i] += c;\n c = h[i] >>> 13;\n h[i] &= 0x1fff;\n }\n h[0] += c * 5;\n c = h[0] >>> 13;\n h[0] &= 0x1fff;\n h[1] += c;\n c = h[1] >>> 13;\n h[1] &= 0x1fff;\n h[2] += c;\n g[0] = h[0] + 5;\n c = g[0] >>> 13;\n g[0] &= 0x1fff;\n for (let i = 1; i < 10; i++) {\n g[i] = h[i] + c;\n c = g[i] >>> 13;\n g[i] &= 0x1fff;\n }\n g[9] -= 1 << 13;\n let mask = (c ^ 1) - 1;\n for (let i = 0; i < 10; i++)\n g[i] &= mask;\n mask = ~mask;\n for (let i = 0; i < 10; i++)\n h[i] = (h[i] & mask) | g[i];\n h[0] = (h[0] | (h[1] << 13)) & 0xffff;\n h[1] = ((h[1] >>> 3) | (h[2] << 10)) & 0xffff;\n h[2] = ((h[2] >>> 6) | (h[3] << 7)) & 0xffff;\n h[3] = ((h[3] >>> 9) | (h[4] << 4)) & 0xffff;\n h[4] = ((h[4] >>> 12) | (h[5] << 1) | (h[6] << 14)) & 0xffff;\n h[5] = ((h[6] >>> 2) | (h[7] << 11)) & 0xffff;\n h[6] = ((h[7] >>> 5) | (h[8] << 8)) & 0xffff;\n h[7] = ((h[8] >>> 8) | (h[9] << 5)) & 0xffff;\n let f = h[0] + pad[0];\n h[0] = f & 0xffff;\n for (let i = 1; i < 8; i++) {\n f = (((h[i] + pad[i]) | 0) + (f >>> 16)) | 0;\n h[i] = f & 0xffff;\n }\n (0, utils_js_1.clean)(g);\n }\n update(data) {\n (0, _assert_js_1.exists)(this);\n const { buffer, blockLen } = this;\n data = (0, utils_js_1.toBytes)(data);\n const len = data.length;\n for (let pos = 0; pos < len;) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input\n if (take === blockLen) {\n for (; blockLen <= len - pos; pos += blockLen)\n this.process(data, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(buffer, 0, false);\n this.pos = 0;\n }\n }\n return this;\n }\n destroy() {\n (0, utils_js_1.clean)(this.h, this.r, this.buffer, this.pad);\n }\n digestInto(out) {\n (0, _assert_js_1.exists)(this);\n (0, _assert_js_1.output)(out, this);\n this.finished = true;\n const { buffer, h } = this;\n let { pos } = this;\n if (pos) {\n buffer[pos++] = 1;\n for (; pos < 16; pos++)\n buffer[pos] = 0;\n this.process(buffer, 0, true);\n }\n this.finalize();\n let opos = 0;\n for (let i = 0; i < 8; i++) {\n out[opos++] = h[i] >>> 0;\n out[opos++] = h[i] >>> 8;\n }\n return out;\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n}\nfunction wrapConstructorWithKey(hashCons) {\n const hashC = (msg, key) => hashCons(key).update((0, utils_js_1.toBytes)(msg)).digest();\n const tmp = hashCons(new Uint8Array(32));\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (key) => hashCons(key);\n return hashC;\n}\nexports.poly1305 = wrapConstructorWithKey((key) => new Poly1305(key));\n//# sourceMappingURL=_poly1305.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.xchacha20poly1305 = exports.chacha20poly1305 = exports._poly1305_aead = exports.chacha12 = exports.chacha8 = exports.xchacha20 = exports.chacha20 = exports.chacha20orig = void 0;\nexports.hchacha = hchacha;\n// prettier-ignore\nconst _arx_js_1 = require(\"./_arx.js\");\nconst _assert_js_1 = require(\"./_assert.js\");\nconst _poly1305_js_1 = require(\"./_poly1305.js\");\nconst utils_js_1 = require(\"./utils.js\");\n// ChaCha20 stream cipher was released in 2008. ChaCha aims to increase\n// the diffusion per round, but had slightly less cryptanalysis.\n// https://cr.yp.to/chacha.html, http://cr.yp.to/chacha/chacha-20080128.pdf\n/**\n * ChaCha core function.\n */\n// prettier-ignore\nfunction chachaCore(s, k, n, out, cnt, rounds = 20) {\n let y00 = s[0], y01 = s[1], y02 = s[2], y03 = s[3], // \"expa\" \"nd 3\" \"2-by\" \"te k\"\n y04 = k[0], y05 = k[1], y06 = k[2], y07 = k[3], // Key Key Key Key\n y08 = k[4], y09 = k[5], y10 = k[6], y11 = k[7], // Key Key Key Key\n y12 = cnt, y13 = n[0], y14 = n[1], y15 = n[2]; // Counter Counter\tNonce Nonce\n // Save state to temporary variables\n let x00 = y00, x01 = y01, x02 = y02, x03 = y03, x04 = y04, x05 = y05, x06 = y06, x07 = y07, x08 = y08, x09 = y09, x10 = y10, x11 = y11, x12 = y12, x13 = y13, x14 = y14, x15 = y15;\n for (let r = 0; r < rounds; r += 2) {\n x00 = (x00 + x04) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x00, 16);\n x08 = (x08 + x12) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x08, 12);\n x00 = (x00 + x04) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x00, 8);\n x08 = (x08 + x12) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x08, 7);\n x01 = (x01 + x05) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x01, 16);\n x09 = (x09 + x13) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x09, 12);\n x01 = (x01 + x05) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x01, 8);\n x09 = (x09 + x13) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x09, 7);\n x02 = (x02 + x06) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x02, 16);\n x10 = (x10 + x14) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x10, 12);\n x02 = (x02 + x06) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x02, 8);\n x10 = (x10 + x14) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x10, 7);\n x03 = (x03 + x07) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x03, 16);\n x11 = (x11 + x15) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x11, 12);\n x03 = (x03 + x07) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x03, 8);\n x11 = (x11 + x15) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x11, 7);\n x00 = (x00 + x05) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x00, 16);\n x10 = (x10 + x15) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x10, 12);\n x00 = (x00 + x05) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x00, 8);\n x10 = (x10 + x15) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x10, 7);\n x01 = (x01 + x06) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x01, 16);\n x11 = (x11 + x12) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x11, 12);\n x01 = (x01 + x06) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x01, 8);\n x11 = (x11 + x12) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x11, 7);\n x02 = (x02 + x07) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x02, 16);\n x08 = (x08 + x13) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x08, 12);\n x02 = (x02 + x07) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x02, 8);\n x08 = (x08 + x13) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x08, 7);\n x03 = (x03 + x04) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x03, 16);\n x09 = (x09 + x14) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x09, 12);\n x03 = (x03 + x04) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x03, 8);\n x09 = (x09 + x14) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x09, 7);\n }\n // Write output\n let oi = 0;\n out[oi++] = (y00 + x00) | 0;\n out[oi++] = (y01 + x01) | 0;\n out[oi++] = (y02 + x02) | 0;\n out[oi++] = (y03 + x03) | 0;\n out[oi++] = (y04 + x04) | 0;\n out[oi++] = (y05 + x05) | 0;\n out[oi++] = (y06 + x06) | 0;\n out[oi++] = (y07 + x07) | 0;\n out[oi++] = (y08 + x08) | 0;\n out[oi++] = (y09 + x09) | 0;\n out[oi++] = (y10 + x10) | 0;\n out[oi++] = (y11 + x11) | 0;\n out[oi++] = (y12 + x12) | 0;\n out[oi++] = (y13 + x13) | 0;\n out[oi++] = (y14 + x14) | 0;\n out[oi++] = (y15 + x15) | 0;\n}\n/**\n * hchacha helper method, used primarily in xchacha, to hash\n * key and nonce into key' and nonce'.\n * Same as chachaCore, but there doesn't seem to be a way to move the block\n * out without 25% performance hit.\n */\n// prettier-ignore\nfunction hchacha(s, k, i, o32) {\n let x00 = s[0], x01 = s[1], x02 = s[2], x03 = s[3], x04 = k[0], x05 = k[1], x06 = k[2], x07 = k[3], x08 = k[4], x09 = k[5], x10 = k[6], x11 = k[7], x12 = i[0], x13 = i[1], x14 = i[2], x15 = i[3];\n for (let r = 0; r < 20; r += 2) {\n x00 = (x00 + x04) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x00, 16);\n x08 = (x08 + x12) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x08, 12);\n x00 = (x00 + x04) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x00, 8);\n x08 = (x08 + x12) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x08, 7);\n x01 = (x01 + x05) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x01, 16);\n x09 = (x09 + x13) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x09, 12);\n x01 = (x01 + x05) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x01, 8);\n x09 = (x09 + x13) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x09, 7);\n x02 = (x02 + x06) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x02, 16);\n x10 = (x10 + x14) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x10, 12);\n x02 = (x02 + x06) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x02, 8);\n x10 = (x10 + x14) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x10, 7);\n x03 = (x03 + x07) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x03, 16);\n x11 = (x11 + x15) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x11, 12);\n x03 = (x03 + x07) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x03, 8);\n x11 = (x11 + x15) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x11, 7);\n x00 = (x00 + x05) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x00, 16);\n x10 = (x10 + x15) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x10, 12);\n x00 = (x00 + x05) | 0;\n x15 = (0, _arx_js_1.rotl)(x15 ^ x00, 8);\n x10 = (x10 + x15) | 0;\n x05 = (0, _arx_js_1.rotl)(x05 ^ x10, 7);\n x01 = (x01 + x06) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x01, 16);\n x11 = (x11 + x12) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x11, 12);\n x01 = (x01 + x06) | 0;\n x12 = (0, _arx_js_1.rotl)(x12 ^ x01, 8);\n x11 = (x11 + x12) | 0;\n x06 = (0, _arx_js_1.rotl)(x06 ^ x11, 7);\n x02 = (x02 + x07) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x02, 16);\n x08 = (x08 + x13) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x08, 12);\n x02 = (x02 + x07) | 0;\n x13 = (0, _arx_js_1.rotl)(x13 ^ x02, 8);\n x08 = (x08 + x13) | 0;\n x07 = (0, _arx_js_1.rotl)(x07 ^ x08, 7);\n x03 = (x03 + x04) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x03, 16);\n x09 = (x09 + x14) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x09, 12);\n x03 = (x03 + x04) | 0;\n x14 = (0, _arx_js_1.rotl)(x14 ^ x03, 8);\n x09 = (x09 + x14) | 0;\n x04 = (0, _arx_js_1.rotl)(x04 ^ x09, 7);\n }\n let oi = 0;\n o32[oi++] = x00;\n o32[oi++] = x01;\n o32[oi++] = x02;\n o32[oi++] = x03;\n o32[oi++] = x12;\n o32[oi++] = x13;\n o32[oi++] = x14;\n o32[oi++] = x15;\n}\n/**\n * Original, non-RFC chacha20 from DJB. 8-byte nonce, 8-byte counter.\n */\nexports.chacha20orig = (0, _arx_js_1.createCipher)(chachaCore, {\n counterRight: false,\n counterLength: 8,\n allowShortKeys: true,\n});\n/**\n * ChaCha stream cipher. Conforms to RFC 8439 (IETF, TLS). 12-byte nonce, 4-byte counter.\n * With 12-byte nonce, it's not safe to use fill it with random (CSPRNG), due to collision chance.\n */\nexports.chacha20 = (0, _arx_js_1.createCipher)(chachaCore, {\n counterRight: false,\n counterLength: 4,\n allowShortKeys: false,\n});\n/**\n * XChaCha eXtended-nonce ChaCha. 24-byte nonce.\n * With 24-byte nonce, it's safe to use fill it with random (CSPRNG).\n * https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-xchacha\n */\nexports.xchacha20 = (0, _arx_js_1.createCipher)(chachaCore, {\n counterRight: false,\n counterLength: 8,\n extendNonceFn: hchacha,\n allowShortKeys: false,\n});\n/**\n * Reduced 8-round chacha, described in original paper.\n */\nexports.chacha8 = (0, _arx_js_1.createCipher)(chachaCore, {\n counterRight: false,\n counterLength: 4,\n rounds: 8,\n});\n/**\n * Reduced 12-round chacha, described in original paper.\n */\nexports.chacha12 = (0, _arx_js_1.createCipher)(chachaCore, {\n counterRight: false,\n counterLength: 4,\n rounds: 12,\n});\nconst ZEROS16 = /* @__PURE__ */ new Uint8Array(16);\n// Pad to digest size with zeros\nconst updatePadded = (h, msg) => {\n h.update(msg);\n const left = msg.length % 16;\n if (left)\n h.update(ZEROS16.subarray(left));\n};\nconst ZEROS32 = /* @__PURE__ */ new Uint8Array(32);\nfunction computeTag(fn, key, nonce, data, AAD) {\n const authKey = fn(key, nonce, ZEROS32);\n const h = _poly1305_js_1.poly1305.create(authKey);\n if (AAD)\n updatePadded(h, AAD);\n updatePadded(h, data);\n const num = new Uint8Array(16);\n const view = (0, utils_js_1.createView)(num);\n (0, utils_js_1.setBigUint64)(view, 0, BigInt(AAD ? AAD.length : 0), true);\n (0, utils_js_1.setBigUint64)(view, 8, BigInt(data.length), true);\n h.update(num);\n const res = h.digest();\n (0, utils_js_1.clean)(authKey, num);\n return res;\n}\n/**\n * AEAD algorithm from RFC 8439.\n * Salsa20 and chacha (RFC 8439) use poly1305 differently.\n * We could have composed them similar to:\n * https://github.com/paulmillr/scure-base/blob/b266c73dde977b1dd7ef40ef7a23cc15aab526b3/index.ts#L250\n * But it's hard because of authKey:\n * In salsa20, authKey changes position in salsa stream.\n * In chacha, authKey can't be computed inside computeTag, it modifies the counter.\n */\nconst _poly1305_aead = (xorStream) => (key, nonce, AAD) => {\n const tagLength = 16;\n (0, _assert_js_1.bytes)(key, 32);\n (0, _assert_js_1.bytes)(nonce);\n return {\n encrypt(plaintext, output) {\n const plength = plaintext.length;\n const clength = plength + tagLength;\n if (output) {\n (0, _assert_js_1.bytes)(output, clength);\n }\n else {\n output = new Uint8Array(clength);\n }\n xorStream(key, nonce, plaintext, output, 1);\n const tag = computeTag(xorStream, key, nonce, output.subarray(0, -tagLength), AAD);\n output.set(tag, plength); // append tag\n (0, utils_js_1.clean)(tag);\n return output;\n },\n decrypt(ciphertext, output) {\n const clength = ciphertext.length;\n const plength = clength - tagLength;\n if (clength < tagLength)\n throw new Error(`encrypted data must be at least ${tagLength} bytes`);\n if (output) {\n (0, _assert_js_1.bytes)(output, plength);\n }\n else {\n output = new Uint8Array(plength);\n }\n const data = ciphertext.subarray(0, -tagLength);\n const passedTag = ciphertext.subarray(-tagLength);\n const tag = computeTag(xorStream, key, nonce, data, AAD);\n if (!(0, utils_js_1.equalBytes)(passedTag, tag))\n throw new Error('invalid tag');\n xorStream(key, nonce, data, output, 1);\n (0, utils_js_1.clean)(tag);\n return output;\n },\n };\n};\nexports._poly1305_aead = _poly1305_aead;\n/**\n * ChaCha20-Poly1305 from RFC 8439.\n * Unsafe to use random nonces under the same key, due to collision chance.\n * Prefer XChaCha instead.\n */\nexports.chacha20poly1305 = (0, utils_js_1.wrapCipher)({ blockSize: 64, nonceLength: 12, tagLength: 16 }, (0, exports._poly1305_aead)(exports.chacha20));\n/**\n * XChaCha20-Poly1305 extended-nonce chacha.\n * Can be safely used with random nonces (CSPRNG).\n * [IRTF draft](https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-xchacha).\n */\nexports.xchacha20poly1305 = (0, utils_js_1.wrapCipher)({ blockSize: 64, nonceLength: 24, tagLength: 16 }, (0, exports._poly1305_aead)(exports.xchacha20));\n//# sourceMappingURL=chacha.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.xchacha20 = void 0;\nvar chacha_1 = require(\"@noble/ciphers/chacha\");\nvar xchacha20 = function (key, nonce, AAD) {\n return (0, chacha_1.xchacha20poly1305)(key, nonce, AAD);\n};\nexports.xchacha20 = xchacha20;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./elliptic\"), exports);\n__exportStar(require(\"./hash\"), exports);\n__exportStar(require(\"./hex\"), exports);\n__exportStar(require(\"./symmetric\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.aesDecrypt = exports.aesEncrypt = exports.symDecrypt = exports.symEncrypt = void 0;\nvar utils_1 = require(\"@noble/ciphers/utils\");\nvar webcrypto_1 = require(\"@noble/ciphers/webcrypto\");\nvar aes_1 = require(\"@ecies/ciphers/aes\");\nvar chacha_1 = require(\"@ecies/ciphers/chacha\");\nvar config_1 = require(\"../config\");\nvar consts_1 = require(\"../consts\");\nvar symEncrypt = function (key, plainText, AAD) { return _exec(_encrypt, key, plainText, AAD); };\nexports.symEncrypt = symEncrypt;\nvar symDecrypt = function (key, cipherText, AAD) { return _exec(_decrypt, key, cipherText, AAD); };\nexports.symDecrypt = symDecrypt;\n/** @deprecated - use `symEncrypt` instead. */\nexports.aesEncrypt = exports.symEncrypt; // TODO: delete\n/** @deprecated - use `symDecrypt` instead. */\nexports.aesDecrypt = exports.symDecrypt; // TODO: delete\nfunction _exec(callback, key, data, AAD) {\n var algorithm = (0, config_1.symmetricAlgorithm)();\n if (algorithm === \"aes-256-gcm\") {\n return callback(aes_1.aes256gcm, key, data, (0, config_1.symmetricNonceLength)(), consts_1.AEAD_TAG_LENGTH, AAD);\n }\n else if (algorithm === \"xchacha20\") {\n return callback(chacha_1.xchacha20, key, data, consts_1.XCHACHA20_NONCE_LENGTH, consts_1.AEAD_TAG_LENGTH, AAD);\n }\n else if (algorithm === \"aes-256-cbc\") {\n // NOT RECOMMENDED. There is neither AAD nor AEAD tag in cbc mode\n // aes-256-cbc always uses 16 bytes iv\n return callback(aes_1.aes256cbc, key, data, 16, 0);\n }\n else {\n throw new Error(\"Not implemented\");\n }\n}\nfunction _encrypt(func, key, data, nonceLength, tagLength, AAD) {\n var nonce = (0, webcrypto_1.randomBytes)(nonceLength);\n var cipher = func(key, nonce, AAD);\n // @noble/ciphers format: cipherText || tag\n var encrypted = cipher.encrypt(data);\n if (tagLength === 0) {\n return (0, utils_1.concatBytes)(nonce, encrypted);\n }\n var cipherTextLength = encrypted.length - tagLength;\n var cipherText = encrypted.subarray(0, cipherTextLength);\n var tag = encrypted.subarray(cipherTextLength);\n // ecies payload format: pk || nonce || tag || cipherText\n return (0, utils_1.concatBytes)(nonce, tag, cipherText);\n}\nfunction _decrypt(func, key, data, nonceLength, tagLength, AAD) {\n var nonce = data.subarray(0, nonceLength);\n var cipher = func(key, Uint8Array.from(nonce), AAD); // to reset byteOffset\n var encrypted = data.subarray(nonceLength);\n if (tagLength === 0) {\n return cipher.decrypt(encrypted);\n }\n var tag = encrypted.subarray(0, tagLength);\n var cipherText = encrypted.subarray(tagLength);\n return cipher.decrypt((0, utils_1.concatBytes)(cipherText, tag));\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PublicKey = void 0;\nvar utils_1 = require(\"@noble/ciphers/utils\");\nvar utils_2 = require(\"../utils\");\nvar PublicKey = /** @class */ (function () {\n function PublicKey(data) {\n this.data = (0, utils_2.convertPublicKeyFormat)(data, true);\n }\n PublicKey.fromHex = function (hex) {\n return new PublicKey((0, utils_2.hexToPublicKey)(hex));\n };\n Object.defineProperty(PublicKey.prototype, \"uncompressed\", {\n get: function () {\n // TODO: Uint8Array\n return Buffer.from((0, utils_2.convertPublicKeyFormat)(this.data, false));\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(PublicKey.prototype, \"compressed\", {\n get: function () {\n // TODO: Uint8Array\n return Buffer.from(this.data);\n },\n enumerable: false,\n configurable: true\n });\n PublicKey.prototype.toHex = function (compressed) {\n if (compressed === void 0) { compressed = true; }\n if (compressed) {\n return (0, utils_1.bytesToHex)(this.data);\n }\n else {\n return (0, utils_1.bytesToHex)(this.uncompressed);\n }\n };\n /**\n * Derives a shared secret from receiver's private key (sk) and ephemeral public key (this).\n * Opposite of `encapsulate`.\n * @see PrivateKey.encapsulate\n *\n * @param sk - Receiver's private key.\n * @param compressed - Whether to use compressed or uncompressed public keys in the key derivation (secp256k1 only).\n * @returns Shared secret, derived with HKDF-SHA256.\n */\n PublicKey.prototype.decapsulate = function (sk, compressed) {\n if (compressed === void 0) { compressed = false; }\n var senderPoint = compressed ? this.data : this.uncompressed;\n var sharedPoint = sk.multiply(this, compressed);\n return (0, utils_2.getSharedKey)(senderPoint, sharedPoint);\n };\n PublicKey.prototype.equals = function (other) {\n return (0, utils_1.equalBytes)(this.data, other.data);\n };\n return PublicKey;\n}());\nexports.PublicKey = PublicKey;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PrivateKey = void 0;\nvar utils_1 = require(\"@noble/ciphers/utils\");\nvar utils_2 = require(\"../utils\");\nvar PublicKey_1 = require(\"./PublicKey\");\nvar PrivateKey = /** @class */ (function () {\n function PrivateKey(secret) {\n if (secret === undefined) {\n this.data = (0, utils_2.getValidSecret)();\n }\n else if ((0, utils_2.isValidPrivateKey)(secret)) {\n this.data = secret;\n }\n else {\n throw new Error(\"Invalid private key\");\n }\n this.publicKey = new PublicKey_1.PublicKey((0, utils_2.getPublicKey)(this.data));\n }\n PrivateKey.fromHex = function (hex) {\n return new PrivateKey((0, utils_2.decodeHex)(hex));\n };\n Object.defineProperty(PrivateKey.prototype, \"secret\", {\n get: function () {\n // TODO: Uint8Array\n return Buffer.from(this.data);\n },\n enumerable: false,\n configurable: true\n });\n PrivateKey.prototype.toHex = function () {\n return (0, utils_1.bytesToHex)(this.data);\n };\n /**\n * Derives a shared secret from ephemeral private key (this) and receiver's public key (pk).\n * @description The shared key is 32 bytes, derived with `HKDF-SHA256(senderPoint || sharedPoint)`. See implementation for details.\n *\n * There are some variations in different ECIES implementations:\n * which key derivation function to use, compressed or uncompressed `senderPoint`/`sharedPoint`, whether to include `senderPoint`, etc.\n *\n * Because the entropy of `senderPoint`, `sharedPoint` is enough high[1], we don't need salt to derive keys.\n *\n * [1]: Two reasons: the public keys are \"random\" bytes (albeit secp256k1 public keys are **not uniformly** random), and ephemeral keys are generated in every encryption.\n *\n * @param pk - Receiver's public key.\n * @param compressed - Whether to use compressed or uncompressed public keys in the key derivation (secp256k1 only).\n * @returns Shared secret, derived with HKDF-SHA256.\n */\n PrivateKey.prototype.encapsulate = function (pk, compressed) {\n if (compressed === void 0) { compressed = false; }\n var senderPoint = compressed\n ? this.publicKey.compressed\n : this.publicKey.uncompressed;\n var sharedPoint = this.multiply(pk, compressed);\n return (0, utils_2.getSharedKey)(senderPoint, sharedPoint);\n };\n PrivateKey.prototype.multiply = function (pk, compressed) {\n if (compressed === void 0) { compressed = false; }\n return (0, utils_2.getSharedPoint)(this.data, pk.compressed, compressed);\n };\n PrivateKey.prototype.equals = function (other) {\n return (0, utils_1.equalBytes)(this.data, other.data);\n };\n return PrivateKey;\n}());\nexports.PrivateKey = PrivateKey;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PublicKey = exports.PrivateKey = void 0;\n// treat Buffer as Uint8array, i.e. no call of Buffer specific functions\n// finally Uint8Array only\nvar PrivateKey_1 = require(\"./PrivateKey\");\nObject.defineProperty(exports, \"PrivateKey\", { enumerable: true, get: function () { return PrivateKey_1.PrivateKey; } });\nvar PublicKey_1 = require(\"./PublicKey\");\nObject.defineProperty(exports, \"PublicKey\", { enumerable: true, get: function () { return PublicKey_1.PublicKey; } });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.utils = exports.PublicKey = exports.PrivateKey = exports.ECIES_CONFIG = void 0;\nexports.encrypt = encrypt;\nexports.decrypt = decrypt;\nvar utils_1 = require(\"@noble/ciphers/utils\");\nvar config_1 = require(\"./config\");\nvar keys_1 = require(\"./keys\");\nvar utils_2 = require(\"./utils\");\n/**\n * Encrypts a message.\n * @description From version 0.5.0, `Uint8Array` will be returned instead of `Buffer`.\n * To keep the same behavior, use `Buffer.from(encrypt(...))`.\n *\n * @param receiverRawPK - Raw public key of the receiver, either as a hex string or a Uint8Array.\n * @param msg - Message to encrypt.\n * @returns Encrypted payload, format: `public key || encrypted`.\n */\nfunction encrypt(receiverRawPK, msg) {\n var ephemeralSK = new keys_1.PrivateKey();\n var receiverPK = receiverRawPK instanceof Uint8Array\n ? new keys_1.PublicKey(receiverRawPK)\n : keys_1.PublicKey.fromHex(receiverRawPK);\n var sharedKey = ephemeralSK.encapsulate(receiverPK, (0, config_1.isHkdfKeyCompressed)());\n var ephemeralPK = (0, config_1.isEphemeralKeyCompressed)()\n ? ephemeralSK.publicKey.compressed\n : ephemeralSK.publicKey.uncompressed;\n var encrypted = (0, utils_2.symEncrypt)(sharedKey, msg);\n return Buffer.from((0, utils_1.concatBytes)(ephemeralPK, encrypted));\n}\n/**\n * Decrypts a message.\n * @description From version 0.5.0, `Uint8Array` will be returned instead of `Buffer`.\n * To keep the same behavior, use `Buffer.from(decrypt(...))`.\n *\n * @param receiverRawSK - Raw private key of the receiver, either as a hex string or a Uint8Array.\n * @param msg - Message to decrypt.\n * @returns Decrypted plain text.\n */\nfunction decrypt(receiverRawSK, msg) {\n var receiverSK = receiverRawSK instanceof Uint8Array\n ? new keys_1.PrivateKey(receiverRawSK)\n : keys_1.PrivateKey.fromHex(receiverRawSK);\n var keySize = (0, config_1.ephemeralKeySize)();\n var ephemeralPK = new keys_1.PublicKey(msg.subarray(0, keySize));\n var encrypted = msg.subarray(keySize);\n var sharedKey = ephemeralPK.decapsulate(receiverSK, (0, config_1.isHkdfKeyCompressed)());\n return Buffer.from((0, utils_2.symDecrypt)(sharedKey, encrypted));\n}\nvar config_2 = require(\"./config\");\nObject.defineProperty(exports, \"ECIES_CONFIG\", { enumerable: true, get: function () { return config_2.ECIES_CONFIG; } });\nvar keys_2 = require(\"./keys\");\nObject.defineProperty(exports, \"PrivateKey\", { enumerable: true, get: function () { return keys_2.PrivateKey; } });\nObject.defineProperty(exports, \"PublicKey\", { enumerable: true, get: function () { return keys_2.PublicKey; } });\n/** @deprecated - use `import utils from \"eciesjs/utils\"` instead. */\nexports.utils = {\n // TODO: remove these after 0.5.0\n aesEncrypt: utils_2.aesEncrypt,\n aesDecrypt: utils_2.aesDecrypt,\n symEncrypt: utils_2.symEncrypt,\n symDecrypt: utils_2.symDecrypt,\n decodeHex: utils_2.decodeHex,\n getValidSecret: utils_2.getValidSecret,\n remove0x: utils_2.remove0x,\n};\n","import{__awaiter as e}from\"tslib\";import t from\"cross-fetch\";import n from\"debug\";import{Buffer}from\"buffer\";import{PrivateKey as i,encrypt as o,decrypt as a}from\"eciesjs\";import{EventEmitter2 as c}from\"eventemitter2\";import{validate as s,v4 as r}from\"uuid\";import{io as l}from\"socket.io-client\";const d=n(\"KeyExchange:Layer\"),u=n(\"SocketService:Layer\"),h=n(\"Ecies:Layer\"),m=n(\"RemoteCommunication:Layer\");d.color=\"##95c44e\",u.color=\"#f638d7\",h.color=\"#465b9c\",m.color=\"#47a2be\";const g={KeyExchange:d,SocketService:u,Ecies:h,RemoteCommunication:m};let v,y=[],E=[];const S=(n,i)=>e(void 0,void 0,void 0,(function*(){v=i,E.push(n),function(n){return e(this,void 0,void 0,(function*(){if(!v||!n)return;!function(){const e=E;E=y,y=e}();const e=v.endsWith(\"/\")?`${v}evt`:`${v}/evt`,i=Object.assign({},n);if(delete i.params,n.params)for(const[e,t]of Object.entries(n.params))i[e]=t;const o=JSON.stringify(i);g.RemoteCommunication(`[sendBufferedEvents] Sending ${y.length} analytics events to ${e}`);try{const n=yield t(e,{method:\"POST\",headers:{Accept:\"application/json\",\"Content-Type\":\"application/json\"},body:o}),i=yield n.text();g.RemoteCommunication(`[sendBufferedEvents] Response: ${i}`),y.length=0}catch(e){}}))}(n).catch((()=>{}))}));class p{constructor(e){this.enabled=!0,(null==e?void 0:e.debug)&&n.enable(\"Ecies:Layer\"),this.ecies=(null==e?void 0:e.privateKey)?i.fromHex(e.privateKey):new i,g.Ecies(\"[ECIES constructor()] initialized secret: \",this.ecies.toHex()),g.Ecies(\"[ECIES constructor()] initialized public: \",this.ecies.publicKey.toHex()),g.Ecies(\"[ECIES constructor()] init with\",this)}generateECIES(){this.ecies=new i}getPublicKey(){return this.ecies.publicKey.toHex()}encrypt(e,t){let n=e;if(this.enabled)try{g.Ecies(\"[ECIES: encrypt()] using otherPublicKey\",t);const i=Buffer.from(e),a=o(t,i);n=Buffer.from(a).toString(\"base64\")}catch(n){throw g.Ecies(\"[ECIES: encrypt()] error encrypt:\",n),g.Ecies(\"[ECIES: encrypt()] private: \",this.ecies.toHex()),g.Ecies(\"[ECIES: encrypt()] data: \",e),g.Ecies(\"[ECIES: encrypt()] otherkey: \",t),n}return n}decrypt(e){let t=e;if(this.enabled)try{g.Ecies(\"[ECIES: decrypt()] using privateKey\",this.ecies.toHex());const n=Buffer.from(e.toString(),\"base64\");t=a(this.ecies.toHex(),n).toString()}catch(t){throw g.Ecies(\"[ECIES: decrypt()] error decrypt\",t),g.Ecies(\"[ECIES: decrypt()] private: \",this.ecies.toHex()),g.Ecies(\"[ECIES: decrypt()] encryptedData: \",e),t}return t}getKeyInfo(){return{private:this.ecies.toHex(),public:this.ecies.publicKey.toHex()}}toString(){g.Ecies(\"[ECIES: toString()]\",this.getKeyInfo())}}var C={name:\"@metamask/sdk-communication-layer\",version:\"0.31.0\",description:\"\",homepage:\"https://github.com/MetaMask/metamask-sdk#readme\",bugs:{url:\"https://github.com/MetaMask/metamask-sdk/issues\"},repository:{type:\"git\",url:\"https://github.com/MetaMask/metamask-sdk.git\",directory:\"packages/sdk-communication-layer\"},main:\"dist/node/cjs/metamask-sdk-communication-layer.js\",unpkg:\"dist/browser/umd/metamask-sdk-communication-layer.js\",module:\"dist/node/es/metamask-sdk-communication-layer.js\",browser:\"dist/browser/es/metamask-sdk-communication-layer.js\",\"react-native\":\"dist/react-native/es/metamask-sdk-communication-layer.js\",types:\"dist/types/src/index.d.ts\",files:[\"/dist\"],scripts:{\"build:types\":\"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types\",\"build:clean\":\"yarn clean && yarn build\",build:\"yarn build:types && rollup -c --bundleConfigAsCjs\",\"build:dev\":\"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs\",\"build:post-tsc\":\"echo 'N/A'\",\"build:pre-tsc\":\"echo 'N/A'\",size:\"size-limit\",clean:\"rimraf ./dist\",lint:\"yarn lint:eslint && yarn lint:misc --check\",\"lint:changelog\":\"../../scripts/validate-changelog.sh @metamask/sdk-communication-layer\",\"lint:eslint\":\"eslint . --cache --ext js,ts\",\"lint:fix\":\"yarn lint:eslint --fix && yarn lint:misc --write\",\"lint:misc\":\"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore\",\"publish:preview\":\"yarn npm publish --tag preview\",prepack:\"../../scripts/prepack.sh\",reset:\"yarn clean && rimraf ./node_modules/\",test:'jest --testPathIgnorePatterns \"/e2e/\"',\"test:e2e\":'jest --testPathPattern \"/e2e/\"',\"test:coverage\":\"jest --coverage\",\"test:ci\":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns \"/e2e/\"',\"test:dev\":\"jest\",watch:\"rollup -c --bundleConfigAsCjs -w\"},dependencies:{bufferutil:\"^4.0.8\",\"date-fns\":\"^2.29.3\",debug:\"^4.3.4\",\"utf-8-validate\":\"^5.0.2\",uuid:\"^8.3.2\"},devDependencies:{\"@jest/globals\":\"^29.3.1\",\"@lavamoat/allow-scripts\":\"^2.3.1\",\"@metamask/auto-changelog\":\"3.1.0\",\"@metamask/eslint-config\":\"^6.0.0\",\"@metamask/eslint-config-nodejs\":\"^6.0.0\",\"@metamask/eslint-config-typescript\":\"^6.0.0\",\"@rollup/plugin-commonjs\":\"^25.0.0\",\"@rollup/plugin-json\":\"^6.0.0\",\"@rollup/plugin-node-resolve\":\"^15.0.2\",\"@rollup/plugin-replace\":\"^6.0.1\",\"@rollup/plugin-terser\":\"^0.4.4\",\"@size-limit/preset-big-lib\":\"^11.0.2\",\"@types/jest\":\"^29.2.4\",\"@types/node\":\"^20.1.3\",\"@types/uuid\":\"^9.0.0\",\"@typescript-eslint/eslint-plugin\":\"^4.26.0\",\"@typescript-eslint/parser\":\"^4.26.0\",\"cross-fetch\":\"^4.0.0\",eciesjs:\"^0.4.11\",eslint:\"^7.30.0\",\"eslint-config-prettier\":\"^8.3.0\",\"eslint-plugin-import\":\"^2.23.4\",\"eslint-plugin-jest\":\"^24.4.0\",\"eslint-plugin-jsdoc\":\"^36.1.0\",\"eslint-plugin-node\":\"^11.1.0\",\"eslint-plugin-prettier\":\"^3.4.0\",eventemitter2:\"^6.4.9\",jest:\"^29.3.1\",prettier:\"^2.3.0\",rimraf:\"^3.0.2\",rollup:\"^4.26.0\",\"rollup-plugin-jscc\":\"^2.0.0\",\"rollup-plugin-natives\":\"^0.7.5\",\"rollup-plugin-node-builtins\":\"^2.1.2\",\"rollup-plugin-node-globals\":\"^1.4.0\",\"rollup-plugin-peer-deps-external\":\"^2.2.4\",\"rollup-plugin-polyfill-node\":\"^0.13.0\",\"rollup-plugin-sizes\":\"^1.0.6\",\"rollup-plugin-typescript2\":\"^0.31.2\",\"rollup-plugin-visualizer\":\"^5.12.0\",\"size-limit\":\"^11.1.6\",\"socket.io-client\":\"^4.5.1\",\"stream-browserify\":\"^3.0.0\",\"ts-jest\":\"^29.0.3\",\"ts-node\":\"^10.9.1\",typescript:\"^5.6.3\"},peerDependencies:{\"cross-fetch\":\"^4.0.0\",eciesjs:\"*\",eventemitter2:\"^6.4.9\",\"readable-stream\":\"^3.6.2\",\"socket.io-client\":\"^4.5.1\"},publishConfig:{access:\"public\",registry:\"https://registry.npmjs.org/\"},lavamoat:{allowScripts:{\"@lavamoat/preinstall-always-fail\":!1,canvas:!0,\"eciesjs>secp256k1\":!1,\"socket.io-client>engine.io-client>ws>bufferutil\":!1,\"socket.io-client>engine.io-client>ws>utf-8-validate\":!1,bufferutil:!1,\"utf-8-validate\":!1}}};const f=\"https://metamask-sdk.api.cx.metamask.io/\",k=[\"websocket\"],K=6048e5,I=3e3,x={METAMASK_GETPROVIDERSTATE:\"metamask_getProviderState\",ETH_REQUESTACCOUNTS:\"eth_requestAccounts\"};function _(e){const{context:t}=e;g.RemoteCommunication(`[RemoteCommunication: clean()] context=${t}`),e.channelConfig=void 0,e.ready=!1,e.originatorConnectStarted=!1}var N,A,O,T,R,b;!function(e){e.DISCONNECTED=\"disconnected\",e.WAITING=\"waiting\",e.TIMEOUT=\"timeout\",e.LINKED=\"linked\",e.PAUSED=\"paused\",e.TERMINATED=\"terminated\"}(N||(N={})),function(e){e.KEY_INFO=\"key_info\",e.SERVICE_STATUS=\"service_status\",e.PROVIDER_UPDATE=\"provider_update\",e.RPC_UPDATE=\"rpc_update\",e.KEYS_EXCHANGED=\"keys_exchanged\",e.JOIN_CHANNEL=\"join_channel\",e.PUBLIC_KEY=\"public_key\",e.CHANNEL_CREATED=\"channel_created\",e.CLIENTS_CONNECTED=\"clients_connected\",e.CLIENTS_DISCONNECTED=\"clients_disconnected\",e.CLIENTS_WAITING=\"clients_waiting\",e.CLIENTS_READY=\"clients_ready\",e.REJECTED=\"rejected\",e.WALLET_INIT=\"wallet_init\",e.CHANNEL_PERSISTENCE=\"channel_persistence\",e.CONFIG=\"config\",e.MESSAGE_ACK=\"ack\",e.SOCKET_DISCONNECTED=\"socket_disconnected\",e.SOCKET_RECONNECT=\"socket_reconnect\",e.OTP=\"otp\",e.SDK_RPC_CALL=\"sdk_rpc_call\",e.AUTHORIZED=\"authorized\",e.CONNECTION_STATUS=\"connection_status\",e.MESSAGE=\"message\",e.TERMINATE=\"terminate\"}(A||(A={})),function(e){e.KEY_EXCHANGE=\"key_exchange\"}(O||(O={})),function(e){e.KEY_HANDSHAKE_START=\"key_handshake_start\",e.KEY_HANDSHAKE_CHECK=\"key_handshake_check\",e.KEY_HANDSHAKE_SYN=\"key_handshake_SYN\",e.KEY_HANDSHAKE_SYNACK=\"key_handshake_SYNACK\",e.KEY_HANDSHAKE_ACK=\"key_handshake_ACK\",e.KEY_HANDSHAKE_WALLET=\"key_handshake_wallet\",e.KEY_HANDSHAKE_NONE=\"none\"}(T||(T={}));class D extends c{constructor({communicationLayer:e,otherPublicKey:t,context:n,ecies:i,logging:o}){super(),this.keysExchanged=!1,this.step=T.KEY_HANDSHAKE_NONE,this.debug=!1,this.context=n,this.communicationLayer=e,(null==i?void 0:i.privateKey)&&t&&(g.KeyExchange(`[KeyExchange: constructor()] otherPubKey=${t} set keysExchanged to true!`,i),this.keysExchanged=!0),this.myECIES=new p(Object.assign(Object.assign({},i),{debug:null==o?void 0:o.eciesLayer})),this.communicationLayer.state.eciesInstance=this.myECIES,this.myPublicKey=this.myECIES.getPublicKey(),this.debug=!0===(null==o?void 0:o.keyExchangeLayer),t&&this.setOtherPublicKey(t),this.communicationLayer.on(O.KEY_EXCHANGE,this.onKeyExchangeMessage.bind(this))}onKeyExchangeMessage(e){const{relayPersistence:t}=this.communicationLayer.remote.state;if(g.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} keysExchanged=${this.keysExchanged} relayPersistence=${t}`,e),t)return void g.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Ignoring key exchange message because relay persistence is activated\");const{message:n}=e;this.keysExchanged&&g.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} received handshake while already exchanged. step=${this.step} otherPubKey=${this.otherPublicKey}`),this.emit(A.KEY_INFO,n.type),n.type===T.KEY_HANDSHAKE_SYN?(this.checkStep([T.KEY_HANDSHAKE_NONE,T.KEY_HANDSHAKE_ACK]),g.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYN\",n),n.pubkey&&this.setOtherPublicKey(n.pubkey),this.communicationLayer.sendMessage({type:T.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey}).catch((e=>{g.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_SYNACK\",e)})),this.setStep(T.KEY_HANDSHAKE_ACK)):n.type===T.KEY_HANDSHAKE_SYNACK?(this.checkStep([T.KEY_HANDSHAKE_SYNACK,T.KEY_HANDSHAKE_ACK,T.KEY_HANDSHAKE_NONE]),g.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYNACK\"),n.pubkey&&this.setOtherPublicKey(n.pubkey),this.communicationLayer.sendMessage({type:T.KEY_HANDSHAKE_ACK}).catch((e=>{g.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_ACK\",e)})),this.keysExchanged=!0,this.setStep(T.KEY_HANDSHAKE_ACK),this.emit(A.KEYS_EXCHANGED)):n.type===T.KEY_HANDSHAKE_ACK&&(g.KeyExchange(\"[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_ACK set keysExchanged to true!\"),this.checkStep([T.KEY_HANDSHAKE_ACK,T.KEY_HANDSHAKE_NONE]),this.keysExchanged=!0,this.setStep(T.KEY_HANDSHAKE_ACK),this.emit(A.KEYS_EXCHANGED))}resetKeys(e){this.clean(),this.myECIES=new p(e)}clean(){g.KeyExchange(`[KeyExchange: clean()] context=${this.context} reset handshake state`),this.setStep(T.KEY_HANDSHAKE_NONE),this.emit(A.KEY_INFO,this.step),this.keysExchanged=!1}start({isOriginator:e,force:t}){const{relayPersistence:n,protocolVersion:i}=this.communicationLayer.remote.state,o=i>=2;n?g.KeyExchange(\"[KeyExchange: start()] Ignoring key exchange message because relay persistence is activated\"):(g.KeyExchange(`[KeyExchange: start()] context=${this.context} protocolVersion=${i} isOriginator=${e} step=${this.step} force=${t} relayPersistence=${n} keysExchanged=${this.keysExchanged}`),e?!(this.keysExchanged||this.step!==T.KEY_HANDSHAKE_NONE&&this.step!==T.KEY_HANDSHAKE_SYNACK)||t?(g.KeyExchange(`[KeyExchange: start()] context=${this.context} -- start key exchange (force=${t}) -- step=${this.step}`,this.step),this.clean(),this.setStep(T.KEY_HANDSHAKE_SYNACK),this.communicationLayer.sendMessage({type:T.KEY_HANDSHAKE_SYN,pubkey:this.myPublicKey,v:2}).catch((e=>{g.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYN\",e)}))):g.KeyExchange(`[KeyExchange: start()] context=${this.context} -- key exchange already ${this.keysExchanged?\"done\":\"in progress\"} -- aborted.`,this.step):this.keysExchanged&&!0!==t?g.KeyExchange(\"[KeyExchange: start()] don't send KEY_HANDSHAKE_START -- exchange already done.\"):o?this.communicationLayer.sendMessage({type:T.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey,v:2}).catch((e=>{g.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYNACK\",e)})):(this.communicationLayer.sendMessage({type:T.KEY_HANDSHAKE_START}).catch((e=>{g.KeyExchange(\"[KeyExchange: start()] Error sending KEY_HANDSHAKE_START\",e)})),this.clean()))}setStep(e){this.step=e,this.emit(A.KEY_INFO,e)}checkStep(e){e.length>0&&e.indexOf(this.step.toString())}setRelayPersistence({localKey:e,otherKey:t}){this.otherPublicKey=t,this.myECIES=new p({privateKey:e,debug:this.debug}),this.keysExchanged=!0}setKeysExchanged(e){this.keysExchanged=e}areKeysExchanged(){return this.keysExchanged}getMyPublicKey(){return this.myPublicKey}getOtherPublicKey(){return this.otherPublicKey}setOtherPublicKey(e){g.KeyExchange(\"[KeyExchange: setOtherPubKey()]\",e),this.otherPublicKey=e}encryptMessage(e){if(!this.otherPublicKey)throw new Error(\"encryptMessage: Keys not exchanged - missing otherPubKey\");return this.myECIES.encrypt(e,this.otherPublicKey)}decryptMessage(e){if(!this.otherPublicKey)throw new Error(\"decryptMessage: Keys not exchanged - missing otherPubKey\");return this.myECIES.decrypt(e)}getKeyInfo(){return{ecies:Object.assign(Object.assign({},this.myECIES.getKeyInfo()),{otherPubKey:this.otherPublicKey}),step:this.step,keysExchanged:this.areKeysExchanged()}}toString(){const e={keyInfo:this.getKeyInfo(),keysExchanged:this.keysExchanged,step:this.step};return JSON.stringify(e)}}!function(e){e.TERMINATE=\"terminate\",e.ANSWER=\"answer\",e.OFFER=\"offer\",e.CANDIDATE=\"candidate\",e.JSONRPC=\"jsonrpc\",e.WALLET_INFO=\"wallet_info\",e.WALLET_INIT=\"wallet_init\",e.ORIGINATOR_INFO=\"originator_info\",e.PAUSE=\"pause\",e.OTP=\"otp\",e.AUTHORIZED=\"authorized\",e.PING=\"ping\",e.READY=\"ready\"}(R||(R={})),function(e){e.REQUEST=\"sdk_connect_request_started\",e.REQUEST_MOBILE=\"sdk_connect_request_started_mobile\",e.RECONNECT=\"sdk_reconnect_request_started\",e.CONNECTED=\"sdk_connection_established\",e.CONNECTED_MOBILE=\"sdk_connection_established_mobile\",e.AUTHORIZED=\"sdk_connection_authorized\",e.REJECTED=\"sdk_connection_rejected\",e.TERMINATED=\"sdk_connection_terminated\",e.DISCONNECTED=\"sdk_disconnected\",e.SDK_USE_EXTENSION=\"sdk_use_extension\",e.SDK_RPC_REQUEST=\"sdk_rpc_request\",e.SDK_RPC_REQUEST_RECEIVED=\"sdk_rpc_request_received\",e.SDK_RPC_REQUEST_DONE=\"sdk_rpc_request_done\",e.SDK_EXTENSION_UTILIZED=\"sdk_extension_utilized\",e.SDK_USE_INAPP_BROWSER=\"sdk_use_inapp_browser\"}(b||(b={}));const P=(t,n,i)=>e(void 0,void 0,void 0,(function*(){var e,o,a,c,s,r;const{remote:l,state:d}=t,{channelId:u,isOriginator:h}=d;if(\"error_terminated\"===n)return g.SocketService(`handleJoinChannelResults: Channel ${u} terminated`),void t.emit(A.TERMINATE);if(!i)return void g.SocketService(`handleJoinChannelResults: No result for channel ${u}`);const{persistence:m,walletKey:v,rejected:y}=i;if(g.SocketService(`handleJoinChannelResults: Channel ${u} persistence=${m} walletKey=${v} rejected=${y}`),y)return g.SocketService(`handleJoinChannelResults: Channel ${u} rejected`),yield t.remote.disconnect({terminate:!0}),t.remote.emit(A.REJECTED,{channelId:u}),void t.remote.emitServiceStatusEvent();if(v&&!(null===(e=l.state.channelConfig)||void 0===e?void 0:e.otherKey)){t.getKeyExchange().setOtherPublicKey(v),null===(o=t.state.keyExchange)||void 0===o||o.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(A.AUTHORIZED);const{communicationLayer:e,storageManager:n}=l.state,i=Object.assign(Object.assign({},l.state.channelConfig),{channelId:null!==(a=l.state.channelId)&&void 0!==a?a:\"\",validUntil:Date.now()+K,localKey:null==e?void 0:e.getKeyInfo().ecies.private,otherKey:v});t.sendMessage({type:T.KEY_HANDSHAKE_ACK}).catch((e=>{})),null===(c=t.state.socket)||void 0===c||c.emit(R.PING,{id:u,clientType:h?\"dapp\":\"wallet\",context:\"on_channel_reconnect\",message:\"\"}),yield null==n?void 0:n.persistChannelConfig(i),l.emitServiceStatusEvent(),l.setConnectionStatus(N.LINKED)}m&&(t.emit(A.CHANNEL_PERSISTENCE),null===(s=t.state.keyExchange)||void 0===s||s.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(A.AUTHORIZED),S(Object.assign(Object.assign({id:null!=u?u:\"\",event:h?b.CONNECTED:b.CONNECTED_MOBILE},t.remote.state.originatorInfo),{sdkVersion:t.remote.state.sdkVersion,commLayer:t.state.communicationLayerPreference,commLayerVersion:C.version,walletVersion:null===(r=t.remote.state.walletInfo)||void 0===r?void 0:r.version}),d.communicationServerUrl).catch((e=>{})))})),L=e=>new Promise((t=>{setTimeout(t,e)})),$=(t,n,...i)=>e(void 0,[t,n,...i],void 0,(function*(e,t,n=200){let i;const o=Date.now();let a=!1;for(;!a;){if(a=Date.now()-o>3e5,i=t[e],void 0!==i.elapsedTime)return i;yield L(n)}throw new Error(`RPC ${e} timed out`)})),w=t=>e(void 0,void 0,void 0,(function*(){const{state:n}=t,{socket:i,channelId:o,context:a,isOriginator:c,isReconnecting:s}=n;if(s)return g.SocketService(\"[SocketService: reconnectSocket()] Reconnection already in progress, skipping\",t),!1;if(!i)return g.SocketService(\"[SocketService: reconnectSocket()] socket is not defined\",t),!1;if(!o)return!1;const{connected:r}=i;n.isReconnecting=!0,n.reconnectionAttempts=0,g.SocketService(`[SocketService: reconnectSocket()] connected=${r} trying to reconnect after socketio disconnection`,t);try{for(;3>n.reconnectionAttempts;){if(g.SocketService(`[SocketService: reconnectSocket()] Attempt ${n.reconnectionAttempts+1} of 3`,t),yield L(200),i.connected)return g.SocketService(\"Socket already connected --- ping to retrieve messages\"),i.emit(R.PING,{id:o,clientType:c?\"dapp\":\"wallet\",context:\"on_channel_config\",message:\"\"}),!0;n.resumed=!0,i.connect(),t.emit(A.SOCKET_RECONNECT);try{if(yield new Promise(((n,s)=>{i.emit(A.JOIN_CHANNEL,{channelId:o,context:`${a}connect_again`,clientType:c?\"dapp\":\"wallet\"},((i,o)=>e(void 0,void 0,void 0,(function*(){try{yield P(t,i,o),n()}catch(e){s(e)}}))))})),yield L(100),i.connected)return g.SocketService(`Reconnection successful on attempt ${n.reconnectionAttempts+1}`),!0}catch(e){g.SocketService(`Error during reconnection attempt ${n.reconnectionAttempts+1}:`,e)}n.reconnectionAttempts+=1,3>n.reconnectionAttempts&&(yield L(200))}return g.SocketService(\"Failed to reconnect after 3 attempts\"),!1}finally{n.isReconnecting=!1,n.reconnectionAttempts=0}}));function M(t,n){return e(this,void 0,void 0,(function*(){var e;const i=null===(e=t.state.keyExchange)||void 0===e?void 0:e.encryptMessage(JSON.stringify(n)),o={id:t.state.channelId,context:t.state.context,clientType:t.state.isOriginator?\"dapp\":\"wallet\",message:i,plaintext:t.state.hasPlaintext?JSON.stringify(n):void 0};return g.SocketService(`[SocketService: encryptAndSendMessage()] context=${t.state.context}`,o),n.type===R.TERMINATE&&(t.state.manualDisconnect=!0),new Promise(((e,n)=>{var i;null===(i=t.state.socket)||void 0===i||i.emit(A.MESSAGE,o,((t,i)=>{var o;t&&(g.SocketService(`[SocketService: encryptAndSendMessage()] error=${t}`),n(t)),g.SocketService(\"[encryptAndSendMessage] response\",i),e(null!==(o=null==i?void 0:i.success)&&void 0!==o&&o)}))}))}))}var H;!function(e){e.RPC_CHECK=\"rpcCheck\",e.SKIPPED_RPC=\"skippedRpc\"}(H||(H={}));const j=[\"eth_sendTransaction\",\"eth_signTypedData\",\"eth_signTransaction\",\"personal_sign\",\"wallet_requestPermissions\",\"wallet_switchEthereumChain\",\"eth_signTypedData_v3\",\"eth_signTypedData_v4\",\"metamask_connectSign\",\"metamask_connectWith\",\"metamask_batch\"].map((e=>e.toLowerCase()));function Y(t,n){return e(this,void 0,void 0,(function*(){var i,o,a;if(!t.state.channelId)throw g.SocketService(\"handleSendMessage: no channelId - Create a channel first\"),new Error(\"Create a channel first\");if(g.SocketService(`[SocketService: handleSendMessage()] context=${t.state.context} areKeysExchanged=${null===(i=t.state.keyExchange)||void 0===i?void 0:i.areKeysExchanged()}`,n),null===(o=null==n?void 0:n.type)||void 0===o?void 0:o.startsWith(\"key_handshake\"))return function(e,t){var n;g.SocketService(`[SocketService: handleKeyHandshake()] context=${e.state.context}`,t),null===(n=e.state.socket)||void 0===n||n.emit(A.MESSAGE,{id:e.state.channelId,context:e.state.context,clientType:e.state.isOriginator?\"dapp\":\"wallet\",message:t})}(t,n),!0;!function(e,t){var n;if(!(null===(n=e.state.keyExchange)||void 0===n?void 0:n.areKeysExchanged())&&!e.remote.state.relayPersistence)throw g.SocketService(`[SocketService: validateKeyExchange()] context=${e.state.context} ERROR keys not exchanged`,t),new Error(\"Keys not exchanged BBB\")}(t,n),function(e,t){var n;const i=null!==(n=null==t?void 0:t.method)&&void 0!==n?n:\"\",o=null==t?void 0:t.id;e.state.isOriginator&&o&&(e.state.rpcMethodTracker[o]={id:o,timestamp:Date.now(),method:i},e.emit(A.RPC_UPDATE,e.state.rpcMethodTracker[o]))}(t,n);const c=yield M(t,n);return t.remote.state.analytics&&t.remote.state.isOriginator&&n.method&&j.includes(n.method.toLowerCase())&&S({id:null!==(a=t.remote.state.channelId)&&void 0!==a?a:\"\",event:b.SDK_RPC_REQUEST,params:{method:n.method,from:\"mobile\"}},t.remote.state.communicationServerUrl).catch((e=>{})),function(t,n){return e(this,void 0,void 0,(function*(){var i;const o=null==n?void 0:n.id,a=null!==(i=null==n?void 0:n.method)&&void 0!==i?i:\"\";if(t.state.isOriginator&&o)try{const i=$(o,t.state.rpcMethodTracker,200).then((e=>({type:H.RPC_CHECK,result:e}))),c=(()=>e(this,void 0,void 0,(function*(){const n=yield(t=>e(void 0,[t],void 0,(function*({rpcId:e,instance:t}){for(;t.state.lastRpcId===e||void 0===t.state.lastRpcId;)yield L(200);return t.state.lastRpcId})))({instance:t,rpcId:o}),i=yield $(n,t.state.rpcMethodTracker,200);return{type:H.SKIPPED_RPC,result:i}})))(),s=yield Promise.race([i,c]);if(s.type===H.RPC_CHECK){const e=s.result;g.SocketService(`[SocketService:handleRpcReplies()] id=${n.id} ${a} ( ${e.elapsedTime} ms)`,e.result)}else{if(s.type!==H.SKIPPED_RPC)throw new Error(`Error handling RPC replies for ${o}`);{const e=Object.assign(Object.assign({},t.state.rpcMethodTracker[o]),{error:new Error(\"SDK_CONNECTION_ISSUE\")});t.emit(A.RPC_UPDATE,e);const n={data:Object.assign(Object.assign({},e),{jsonrpc:\"2.0\"}),name:\"metamask-provider\"};t.emit(A.MESSAGE,{message:n})}}}catch(e){throw e}}))}(t,n).catch((e=>{})),c}))}const U=[{event:A.CLIENTS_CONNECTED,handler:function(t,n){return i=>e(this,void 0,void 0,(function*(){var e,i,o,a,c,s,r,l,d,u,h;const m=null!==(i=null===(e=t.remote.state.channelConfig)||void 0===e?void 0:e.relayPersistence)&&void 0!==i&&i;if(g.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on 'clients_connected-${n}' relayPersistence=${m} resumed=${t.state.resumed} clientsPaused=${t.state.clientsPaused} keysExchanged=${null===(o=t.state.keyExchange)||void 0===o?void 0:o.areKeysExchanged()} isOriginator=${t.state.isOriginator}`),t.emit(A.CLIENTS_CONNECTED,{isOriginator:t.state.isOriginator,keysExchanged:null===(a=t.state.keyExchange)||void 0===a?void 0:a.areKeysExchanged(),context:t.state.context}),t.state.resumed)t.state.isOriginator||(g.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} 'clients_connected' / keysExchanged=${null===(c=t.state.keyExchange)||void 0===c?void 0:c.areKeysExchanged()} -- backward compatibility`),null===(s=t.state.keyExchange)||void 0===s||s.start({isOriginator:null!==(r=t.state.isOriginator)&&void 0!==r&&r})),t.state.resumed=!1;else if(t.state.clientsPaused)g.SocketService(\"[SocketService: handleClientsConnected()] 'clients_connected' skip sending originatorInfo on pause\");else if(!t.state.isOriginator){const e=!m;g.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on 'clients_connected' / keysExchanged=${null===(l=t.state.keyExchange)||void 0===l?void 0:l.areKeysExchanged()} -- force=${e} -- backward compatibility`),g.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on 'clients_connected' / keysExchanged=${null===(d=t.state.keyExchange)||void 0===d?void 0:d.areKeysExchanged()} -- force=${e} -- backward compatibility`),null===(u=t.state.keyExchange)||void 0===u||u.start({isOriginator:null!==(h=t.state.isOriginator)&&void 0!==h&&h,force:e})}t.state.clientsConnected=!0,t.state.clientsPaused=!1}))}},{event:A.CHANNEL_CREATED,handler:function(e,t){return n=>{g.SocketService(`[SocketService: handleChannelCreated()] context=${e.state.context} on 'channel_created-${t}'`,n),e.emit(A.CHANNEL_CREATED,n)}}},{event:A.CLIENTS_DISCONNECTED,handler:function(e,t){return()=>{var n;e.state.clientsConnected=!1,g.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}'`),e.remote.state.relayPersistence?g.SocketService(`[SocketService: handlesClientsDisconnected()] context=${e.state.context} on 'clients_disconnected-${t}' - relayPersistence enabled, skipping key exchange cleanup.`):(e.state.isOriginator&&!e.state.clientsPaused&&(null===(n=e.state.keyExchange)||void 0===n||n.clean()),e.emit(A.CLIENTS_DISCONNECTED,t))}}},{event:A.CONFIG,handler:function(t,n){return i=>e(this,void 0,void 0,(function*(){var e,o,a;g.SocketService(`[SocketService: handleChannelConfig()] update relayPersistence on 'config-${n}'`,i);const{persistence:c,walletKey:s}=i;t.state.isOriginator&&t.remote.state.channelConfig?(i.walletKey&&!t.remote.state.channelConfig.otherKey&&(g.SocketService(`Setting wallet key ${s}`),t.remote.state.channelConfig.otherKey=s,t.getKeyExchange().setOtherPublicKey(i.walletKey),null===(e=t.state.keyExchange)||void 0===e||e.setKeysExchanged(!0),yield t.remote.sendMessage({type:T.KEY_HANDSHAKE_ACK}),yield t.remote.sendMessage({type:R.PING}),yield null===(o=t.remote.state.storageManager)||void 0===o?void 0:o.persistChannelConfig(t.remote.state.channelConfig)),!0!==c||t.remote.state.channelConfig.relayPersistence||(g.SocketService(`Setting relay persistence ${c}`),t.remote.state.channelConfig.relayPersistence=c,t.remote.state.relayPersistence=!0,t.remote.emit(A.CHANNEL_PERSISTENCE),t.remote.state.authorized=!0,t.remote.state.ready=!0,t.remote.emit(A.AUTHORIZED),yield null===(a=t.remote.state.storageManager)||void 0===a?void 0:a.persistChannelConfig(t.remote.state.channelConfig))):t.state.isOriginator||i.persistence&&(t.remote.state.relayPersistence=!0,t.remote.emit(A.CHANNEL_PERSISTENCE))}))}},{event:A.MESSAGE,handler:function(e,t){return n=>{var i,o,a,c,s,r,l,d,u,h,m,v,y,E,p,f,k,K;const{ackId:I,message:x,error:_}=n,N=null!==(i=e.remote.state.relayPersistence)&&void 0!==i&&i;if(g.SocketService(`[SocketService handleMessage()] relayPersistence=${N} context=${e.state.context} on 'message' ${t} keysExchanged=${null===(o=e.state.keyExchange)||void 0===o?void 0:o.areKeysExchanged()}`,n),_)throw g.SocketService(`\\n [SocketService handleMessage()] context=${e.state.context}::on 'message' error=${_}`),new Error(_);const D=\"string\"==typeof x;if(!D&&(null==x?void 0:x.type)===T.KEY_HANDSHAKE_START){if(N)return;return g.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received HANDSHAKE_START isOriginator=${e.state.isOriginator}`,x),void(null===(a=e.state.keyExchange)||void 0===a||a.start({isOriginator:null!==(c=e.state.isOriginator)&&void 0!==c&&c,force:!0}))}if(!D&&(null===(s=null==x?void 0:x.type)||void 0===s?void 0:s.startsWith(\"key_handshake\"))){if(N)return;return g.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' emit KEY_EXCHANGE`,x),void e.emit(O.KEY_EXCHANGE,{message:x,context:e.state.context})}if(D&&!(null===(r=e.state.keyExchange)||void 0===r?void 0:r.areKeysExchanged())){let t=!1;try{g.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' trying to decrypt message`),null===(l=e.state.keyExchange)||void 0===l||l.decryptMessage(x),t=!0}catch(t){g.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' error`,t)}if(!t)return e.state.isOriginator?null===(u=e.state.keyExchange)||void 0===u||u.start({isOriginator:null!==(h=e.state.isOriginator)&&void 0!==h&&h}):e.sendMessage({type:T.KEY_HANDSHAKE_START}).catch((e=>{})),void g.SocketService(`Message ignored because invalid key exchange status. step=${null===(m=e.state.keyExchange)||void 0===m?void 0:m.getKeyInfo().step}`,null===(v=e.state.keyExchange)||void 0===v?void 0:v.getKeyInfo(),x);g.SocketService(\"Invalid key exchange status detected --- updating it.\"),null===(d=e.state.keyExchange)||void 0===d||d.setKeysExchanged(!0)}else if(!D&&(null==x?void 0:x.type))return void e.emit(A.MESSAGE,x);if(!D)return void e.emit(A.MESSAGE,x);const P=null===(y=e.state.keyExchange)||void 0===y?void 0:y.decryptMessage(x),L=JSON.parse(null!=P?P:\"{}\");if(I&&(null==I?void 0:I.length)>0&&(g.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' ackid=${I} channelId=${t}`),null===(E=e.state.socket)||void 0===E||E.emit(A.MESSAGE_ACK,{ackId:I,channelId:t,clientType:e.state.isOriginator?\"dapp\":\"wallet\"})),e.state.clientsPaused=(null==L?void 0:L.type)===R.PAUSE,e.state.isOriginator&&L.data){const t=L.data,n=e.state.rpcMethodTracker[t.id];if(n){const i=Date.now()-n.timestamp;g.SocketService(`[SocketService handleMessage()] context=${e.state.context}::on 'message' received answer for id=${t.id} method=${n.method} responseTime=${i}`,L),e.remote.state.analytics&&j.includes(n.method.toLowerCase())&&S(Object.assign(Object.assign({id:null!==(p=e.remote.state.channelId)&&void 0!==p?p:\"\",event:b.SDK_RPC_REQUEST_DONE,sdkVersion:e.remote.state.sdkVersion,commLayerVersion:C.version},e.remote.state.originatorInfo),{walletVersion:null===(f=e.remote.state.walletInfo)||void 0===f?void 0:f.version,params:{method:n.method,from:\"mobile\"}}),e.remote.state.communicationServerUrl).catch((e=>{}));const o=Object.assign(Object.assign({},n),{result:t.result,error:t.error?{code:null===(k=t.error)||void 0===k?void 0:k.code,message:null===(K=t.error)||void 0===K?void 0:K.message}:void 0,elapsedTime:i});e.state.rpcMethodTracker[t.id]=o,e.emit(A.RPC_UPDATE,o)}}e.emit(A.MESSAGE,{message:L})}}},{event:A.REJECTED,handler:function(t,n){return i=>e(this,void 0,void 0,(function*(){var e;t.state.isOriginator&&!t.remote.state.ready?(g.SocketService(`[SocketService: handleChannelRejected()] context=${t.state.context} channelId=${n} isOriginator=${t.state.isOriginator} ready=${t.remote.state.ready}`,t.remote.state.originatorInfo),S(Object.assign(Object.assign({id:n,event:b.REJECTED},t.remote.state.originatorInfo),{sdkVersion:t.remote.state.sdkVersion,commLayer:t.state.communicationLayerPreference,commLayerVersion:C.version,walletVersion:null===(e=t.remote.state.walletInfo)||void 0===e?void 0:e.version}),t.remote.state.communicationServerUrl).catch((e=>{})),yield t.remote.disconnect({terminate:!0}),t.remote.emit(A.REJECTED,{channelId:n}),t.remote.setConnectionStatus(N.DISCONNECTED)):g.SocketService(`[SocketService: handleChannelRejected()] SKIP -- channelId=${n} isOriginator=${t.state.isOriginator} ready=${t.remote.state.ready}`)}))}},{event:\"clients_waiting_to_join\",handler:function(e,t){return n=>{g.SocketService(`[SocketService: handleClientsWaitingToJoin()] context=${e.state.context} on 'clients_waiting_to_join-${t}'`,n),e.emit(A.CLIENTS_WAITING,n)}}}],z=[{event:A.KEY_INFO,handler:function(e){return t=>{g.SocketService(\"[SocketService: handleKeyInfo()] on 'KEY_INFO'\",t),e.emit(A.KEY_INFO,t)}}},{event:A.KEYS_EXCHANGED,handler:function(e){return()=>{var t,n,i;g.SocketService(`[SocketService: handleKeysExchanged()] on 'keys_exchanged' keyschanged=${null===(t=e.state.keyExchange)||void 0===t?void 0:t.areKeysExchanged()}`);const{channelConfig:o}=e.remote.state;if(o){const t=e.getKeyExchange().getKeyInfo().ecies;o.localKey=t.private,o.otherKey=t.otherPubKey,e.remote.state.channelConfig=o,null===(n=e.remote.state.storageManager)||void 0===n||n.persistChannelConfig(o).catch((e=>{}))}e.emit(A.KEYS_EXCHANGED,{keysExchanged:null===(i=e.state.keyExchange)||void 0===i?void 0:i.areKeysExchanged(),isOriginator:e.state.isOriginator});const a={keyInfo:e.getKeyInfo()};e.emit(A.SERVICE_STATUS,a)}}}];function V(e,t){g.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} setting socket listeners for channel ${t}...`);const{socket:n}=e.state,{keyExchange:i}=e.state;n&&e.state.isOriginator&&(e.state.debug&&(null==n||n.io.on(\"error\",(t=>{g.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=error`,t)})),null==n||n.io.on(\"reconnect\",(t=>{g.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect`,t),w(e).catch((e=>{}))})),null==n||n.io.on(\"reconnect_error\",(t=>{g.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_error`,t)})),null==n||n.io.on(\"reconnect_failed\",(()=>{g.SocketService(`[SocketService: setupChannelListener()] context=${e.state.context} socket event=reconnect_failed`)}))),null==n||n.on(\"disconnect\",(t=>(g.SocketService(`[SocketService: setupChannelListener()] on 'disconnect' -- MetaMaskSDK socket disconnected '${t}' begin recovery...`),function(e){return t=>{g.SocketService(`[SocketService: handleDisconnect()] on 'disconnect' manualDisconnect=${e.state.manualDisconnect}`,t),e.state.manualDisconnect||(e.emit(A.SOCKET_DISCONNECTED),w(e).catch((e=>{})))}}(e)(t))))),U.forEach((({event:i,handler:o})=>{null==n||n.on(`${i}-${t}`,o(e,t))})),z.forEach((({event:t,handler:n})=>{null==i||i.on(t,n(e))})),e.state.setupChannelListeners=!0}class G extends c{constructor(e){super(),this.state={clientsConnected:!1,clientsPaused:!1,manualDisconnect:!1,lastRpcId:void 0,rpcMethodTracker:{},hasPlaintext:!1,communicationServerUrl:\"\",focusListenerAdded:!1,removeFocusListener:void 0,isReconnecting:!1,reconnectionAttempts:0},this.options=e;const{reconnect:t,communicationLayerPreference:i,communicationServerUrl:o,context:a,remote:c,logging:s}=e;this.state.resumed=t,this.state.context=a,this.state.isOriginator=c.state.isOriginator,this.state.communicationLayerPreference=i,this.state.debug=!0===(null==s?void 0:s.serviceLayer),this.remote=c,!0===(null==s?void 0:s.serviceLayer)&&n.enable(\"SocketService:Layer\"),this.state.communicationServerUrl=o,this.state.hasPlaintext=this.state.communicationServerUrl!==f&&!0===(null==s?void 0:s.plaintext),g.SocketService(`[SocketService: constructor()] Socket IO url: ${this.state.communicationServerUrl}`),this.initSocket()}initSocket(){var e;const{otherPublicKey:t,ecies:n,logging:i}=this.options,o={autoConnect:!1,transports:k,withCredentials:!0},a=this.state.communicationServerUrl;g.SocketService(`[SocketService: initSocket()] Socket IO url: ${a}`),this.state.socket=l(a,o),function(e){if(\"undefined\"!=typeof window&&\"undefined\"!=typeof document&&(g.SocketService(`[SocketService: setupSocketFocusListener()] hasFocus=${document.hasFocus()}`,e),!e.state.focusListenerAdded)){const t=()=>{g.SocketService(\"Document has focus --- reconnecting socket\"),w(e).catch((e=>{}))};window.addEventListener(\"focus\",t),e.state.focusListenerAdded=!0,e.state.removeFocusListener=()=>{window.removeEventListener(\"focus\",t),e.state.focusListenerAdded=!1}}}(this);const c={communicationLayer:this,otherPublicKey:t,sendPublicKey:!1,context:null!==(e=this.state.context)&&void 0!==e?e:\"\",ecies:n,logging:i};this.state.keyExchange=new D(c)}resetKeys(){return this,g.SocketService(\"[SocketService: resetKeys()] Resetting keys.\"),void(null===(e=this.state.keyExchange)||void 0===e||e.resetKeys());var e}createChannel(){return e(this,void 0,void 0,(function*(){return function(t){return e(this,void 0,void 0,(function*(){var n,i,o;if(g.SocketService(`[SocketService: createChannel()] context=${t.state.context}`),t.state.socket||t.initSocket(),null===(n=t.state.socket)||void 0===n?void 0:n.connected)throw new Error(\"socket already connected\");null===(i=t.state.socket)||void 0===i||i.connect(),t.state.manualDisconnect=!1,t.state.isOriginator=!0;const a=r();t.state.channelId=a,V(t,a),yield new Promise(((n,i)=>{var o;null===(o=t.state.socket)||void 0===o||o.emit(A.JOIN_CHANNEL,{channelId:a,context:`${t.state.context}createChannel`,clientType:\"dapp\"},((o,a)=>e(this,void 0,void 0,(function*(){try{yield P(t,o,a),n()}catch(e){i(e)}}))))}));const c=null===(o=t.state.keyExchange)||void 0===o?void 0:o.getKeyInfo();return{channelId:a,pubKey:(null==c?void 0:c.ecies.public)||\"\",privKey:(null==c?void 0:c.ecies.private)||\"\"}}))}(this)}))}connectToChannel({channelId:t,withKeyExchange:n=!1,authorized:i}){return function(t){return e(this,arguments,void 0,(function*({options:t,instance:n}){const{channelId:i,authorized:o,withKeyExchange:a}=t,{state:c,remote:s}=n,{isOriginator:r=!1,socket:l,keyExchange:d}=c,{channelConfig:u}=s.state;if(null==l?void 0:l.connected)throw new Error(\"socket already connected\");if(r&&(null==u?void 0:u.relayPersistence)){const{localKey:e,otherKey:t}=u;e&&t&&(null==d||d.setRelayPersistence({localKey:e,otherKey:t}))}return Object.assign(c,{manualDisconnect:!1,withKeyExchange:a,isOriginator:r,channelId:i}),null==l||l.connect(),V(n,i),!r&&o&&(null==d||d.setKeysExchanged(!0),Object.assign(s.state,{ready:!0,authorized:!0})),new Promise((t=>{var a;const s=null===(a=null==d?void 0:d.getKeyInfo())||void 0===a?void 0:a.ecies.public;null==l||l.emit(A.JOIN_CHANNEL,{channelId:i,context:`${c.context}_connectToChannel`,clientType:r?\"dapp\":\"wallet\",publicKey:o&&!r?s:void 0},((i,o)=>e(this,void 0,void 0,(function*(){yield P(n,i,o),t()}))))}))}))}({options:{channelId:t,withKeyExchange:n,authorized:i},instance:this})}getKeyInfo(){return this.state.keyExchange.getKeyInfo()}keyCheck(){var e,t;null===(t=(e=this).state.socket)||void 0===t||t.emit(A.MESSAGE,{id:e.state.channelId,context:e.state.context,message:{type:T.KEY_HANDSHAKE_CHECK,pubkey:e.getKeyInfo().ecies.otherPubKey}})}getKeyExchange(){return this.state.keyExchange}sendMessage(t){return e(this,void 0,void 0,(function*(){return Y(this,t)}))}ping(){return function(t){return e(this,void 0,void 0,(function*(){var e,n;g.SocketService(`[SocketService: ping()] context=${t.state.context} originator=${t.state.isOriginator} keysExchanged=${null===(e=t.state.keyExchange)||void 0===e?void 0:e.areKeysExchanged()}`),null===(n=t.state.socket)||void 0===n||n.emit(R.PING,{id:t.state.channelId,context:\"ping\",clientType:t.remote.state.isOriginator?\"dapp\":\"wallet\",message:\"\"})}))}(this)}pause(){return function(t){return e(this,void 0,void 0,(function*(){var e,n;g.SocketService(`[SocketService: pause()] context=${t.state.context}`),t.state.manualDisconnect=!0,(null===(e=t.state.keyExchange)||void 0===e?void 0:e.areKeysExchanged())&&(yield t.sendMessage({type:R.PAUSE})),null===(n=t.state.socket)||void 0===n||n.disconnect()}))}(this)}isConnected(){var e;return null===(e=this.state.socket)||void 0===e?void 0:e.connected}resume(){return function(t){return e(this,void 0,void 0,(function*(){const{state:n,remote:i}=t,{socket:o,channelId:a,context:c,keyExchange:s,isOriginator:r}=n,{isOriginator:l}=i.state;if(g.SocketService(`[SocketService: resume()] channelId=${a} context=${c} connected=${null==o?void 0:o.connected} manualDisconnect=${n.manualDisconnect} resumed=${n.resumed} keysExchanged=${null==s?void 0:s.areKeysExchanged()}`),!a)throw g.SocketService(\"[SocketService: resume()] channelId is not defined\"),new Error(\"ChannelId is not defined\");(null==o?void 0:o.connected)?(g.SocketService(\"[SocketService: resume()] already connected.\"),o.emit(R.PING,{id:a,clientType:l?\"dapp\":\"wallet\",context:\"on_channel_config\",message:\"\"}),i.hasRelayPersistence()||(null==s?void 0:s.areKeysExchanged())||(r?yield t.sendMessage({type:R.READY}):null==s||s.start({isOriginator:!1}))):(null==o||o.connect(),g.SocketService(`[SocketService: resume()] after connecting socket --\\x3e connected=${null==o?void 0:o.connected}`),null==o||o.emit(A.JOIN_CHANNEL,{channelId:a,context:`${c}_resume`,clientType:l?\"dapp\":\"wallet\"},((n,i)=>e(this,void 0,void 0,(function*(){try{yield P(t,n,i)}catch(e){}}))))),n.manualDisconnect=!1,n.resumed=!0}))}(this)}getRPCMethodTracker(){return this.state.rpcMethodTracker}disconnect(e){return function(e,t){var n,i,o,a,c;g.SocketService(`[SocketService: disconnect()] context=${e.state.context}`,t),(null==t?void 0:t.terminate)&&(null===(i=(n=e.state).removeFocusListener)||void 0===i||i.call(n),e.state.channelId=t.channelId,null===(o=e.state.socket)||void 0===o||o.removeAllListeners(),null===(a=e.state.keyExchange)||void 0===a||a.clean(),e.remote.state.ready=!1,e.state.socket=void 0,e.state.rpcMethodTracker={}),e.state.manualDisconnect=!0,null===(c=e.state.socket)||void 0===c||c.disconnect()}(this,e)}}var W,F,J;function Z(t){return()=>e(this,void 0,void 0,(function*(){var n,i,o;const{state:a}=t;if(a.authorized)return;yield(()=>e(this,void 0,void 0,(function*(){for(;!a.walletInfo;)yield L(500)})))();const c=\"7.3\".localeCompare((null===(n=a.walletInfo)||void 0===n?void 0:n.version)||\"\");if(g.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' version=${null===(i=a.walletInfo)||void 0===i?void 0:i.version} compareValue=${c}`),1!==c)return;const s=a.platformType===F.MobileWeb||a.platformType===F.ReactNative||a.platformType===F.MetaMaskMobileWebview;g.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' platform=${a.platformType} secure=${s} channel=${a.channelId} walletVersion=${null===(o=a.walletInfo)||void 0===o?void 0:o.version}`),s&&(a.authorized=!0,t.emit(A.AUTHORIZED))}))}function B(e){return t=>{const{state:n}=e;g.RemoteCommunication(`[RemoteCommunication: handleChannelCreatedEvent()] context=${n.context} on 'channel_created' channelId=${t}`),e.emit(A.CHANNEL_CREATED,t)}}function X(e,t){return()=>{var n,i,o,a;const{state:c}=e;g.RemoteCommunication(`[RemoteCommunication: handleClientsConnectedEvent()] on 'clients_connected' channel=${c.channelId} keysExchanged=${null===(i=null===(n=c.communicationLayer)||void 0===n?void 0:n.getKeyInfo())||void 0===i?void 0:i.keysExchanged}`),c.analytics&&S(Object.assign(Object.assign({id:null!==(o=c.channelId)&&void 0!==o?o:\"\",event:c.reconnection?b.RECONNECT:c.isOriginator?b.REQUEST:b.REQUEST_MOBILE},c.originatorInfo),{commLayer:t,sdkVersion:c.sdkVersion,walletVersion:null===(a=c.walletInfo)||void 0===a?void 0:a.version,commLayerVersion:C.version}),c.communicationServerUrl).catch((e=>{})),c.clientsConnected=!0,c.originatorInfoSent=!1,e.emit(A.CLIENTS_CONNECTED)}}function Q(e){return t=>{const{state:n}=e;g.RemoteCommunication(`[RemoteCommunication: handleClientsDisconnectedEvent()] context=${n.context} on 'clients_disconnected' channelId=${t}`),n.relayPersistence||(n.clientsConnected=!1,n.ready=!1,n.authorized=!1),e.emit(A.CLIENTS_DISCONNECTED,n.channelId),e.setConnectionStatus(N.DISCONNECTED)}}function q(e){return t=>{var n;const{state:i}=e;if(g.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] context=${i.context} on 'clients_waiting' numberUsers=${t} ready=${i.ready} autoStarted=${i.originatorConnectStarted}`),e.setConnectionStatus(N.WAITING),e.emit(A.CLIENTS_WAITING,t),i.originatorConnectStarted){g.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] on 'clients_waiting' watch autoStarted=${i.originatorConnectStarted} timeout`,i.autoConnectOptions);const t=(null===(n=i.autoConnectOptions)||void 0===n?void 0:n.timeout)||3e3,o=setTimeout((()=>{g.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] setTimeout(${t}) terminate channelConfig`,i.autoConnectOptions),i.originatorConnectStarted=!1,i.ready||e.setConnectionStatus(N.TIMEOUT),clearTimeout(o)}),t)}}}function ee(e,t){return n=>{var i,o,a,c,s,r,l,d;const{state:u}=e;if(g.RemoteCommunication(`[RemoteCommunication: handleKeysExchangedEvent()] context=${u.context} on commLayer.'keys_exchanged' channel=${u.channelId}`,n),null===(o=null===(i=u.communicationLayer)||void 0===i?void 0:i.getKeyInfo())||void 0===o?void 0:o.keysExchanged){const t=Object.assign(Object.assign({},u.channelConfig),{channelId:null!==(a=u.channelId)&&void 0!==a?a:\"\",validUntil:(null===(c=u.channelConfig)||void 0===c?void 0:c.validUntil)||K,localKey:u.communicationLayer.getKeyInfo().ecies.private,otherKey:u.communicationLayer.getKeyInfo().ecies.otherPubKey});null===(s=u.storageManager)||void 0===s||s.persistChannelConfig(t).catch((e=>{})),e.setConnectionStatus(N.LINKED)}!function(e,t){var n,i,o,a,c,s,r,l;const{state:d}=e;g.RemoteCommunication(`[RemoteCommunication: setLastActiveDate()] channel=${d.channelId}`,t);const u=Object.assign(Object.assign({},d.channelConfig),{channelId:null!==(n=d.channelId)&&void 0!==n?n:\"\",validUntil:null!==(o=null===(i=d.channelConfig)||void 0===i?void 0:i.validUntil)&&void 0!==o?o:0,relayPersistence:d.relayPersistence,localKey:null===(c=null===(a=d.communicationLayer)||void 0===a?void 0:a.state.keyExchange)||void 0===c?void 0:c.getKeyInfo().ecies.private,otherKey:null===(r=null===(s=d.communicationLayer)||void 0===s?void 0:s.state.keyExchange)||void 0===r?void 0:r.getKeyInfo().ecies.otherPubKey,lastActive:t.getTime()});null===(l=d.storageManager)||void 0===l||l.persistChannelConfig(u)}(e,new Date),u.analytics&&u.channelId&&S(Object.assign(Object.assign({id:u.channelId,event:n.isOriginator?b.CONNECTED:b.CONNECTED_MOBILE},u.originatorInfo),{sdkVersion:u.sdkVersion,commLayer:t,commLayerVersion:C.version,walletVersion:null===(r=u.walletInfo)||void 0===r?void 0:r.version}),u.communicationServerUrl).catch((e=>{})),u.isOriginator=n.isOriginator,n.isOriginator||(null===(l=u.communicationLayer)||void 0===l||l.sendMessage({type:R.READY}),u.ready=!0,u.paused=!1),n.isOriginator&&!u.originatorInfoSent&&(null===(d=u.communicationLayer)||void 0===d||d.sendMessage({type:R.ORIGINATOR_INFO,originatorInfo:u.originatorInfo,originator:u.originatorInfo}),u.originatorInfoSent=!0)}}function te(t){return n=>{let i=n;n.message&&(i=i.message),function(t,n){const{state:i}=n;if(g.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] context=${i.context} on 'message' typeof=${typeof t}`,t),n.state.ready=!0,i.isOriginator||t.type!==R.ORIGINATOR_INFO)if(i.isOriginator&&t.type===R.WALLET_INFO)!function(e,t){const{state:n}=e;n.walletInfo=t.walletInfo,n.paused=!1}(n,t);else{if(i.isOriginator&&t.type===R.WALLET_INIT)(function(t,n){return e(this,void 0,void 0,(function*(){var e,i,o;const{state:a}=t;if(a.isOriginator){const a=n.data||{};if(\"object\"==typeof a&&\"accounts\"in a&&\"chainId\"in a&&\"walletKey\"in a)try{const{channelConfig:n}=t.state;if(g.RemoteCommunication(\"WALLET_INIT: channelConfig\",JSON.stringify(n,null,2)),n){const c=a.accounts,s=a.chainId,r=a.walletKey;let l,d=!1;\"deeplinkProtocol\"in a&&(d=Boolean(a.deeplinkProtocol),t.state.deeplinkProtocolAvailable=d),\"walletVersion\"in a&&(l=a.walletVersion),yield null===(e=t.state.storageManager)||void 0===e?void 0:e.persistChannelConfig(Object.assign(Object.assign({},n),{otherKey:r,walletVersion:l,deeplinkProtocolAvailable:d,relayPersistence:!0})),yield null===(i=t.state.storageManager)||void 0===i?void 0:i.persistAccounts(c),yield null===(o=t.state.storageManager)||void 0===o?void 0:o.persistChainId(s)}t.emit(A.WALLET_INIT,{accounts:a.accounts,chainId:a.chainId})}catch(e){}}}))})(n,t).catch((e=>{g.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${e}`)}));else if(t.type===R.TERMINATE)(function(t){return e(this,void 0,void 0,(function*(){const{state:e}=t;e.isOriginator&&(yield ce({options:{terminate:!0,sendMessage:!1},instance:t}),t.emit(A.TERMINATE))}))})(n).catch((e=>{g.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${e}`)}));else if(t.type===R.PAUSE)!function(e){const{state:t}=e;t.paused=!0,e.setConnectionStatus(N.PAUSED)}(n);else if(t.type===R.READY&&i.isOriginator)!function(e){const{state:t}=e;e.setConnectionStatus(N.LINKED);const n=t.paused;t.paused=!1,e.emit(A.CLIENTS_READY,{isOriginator:t.isOriginator,walletInfo:t.walletInfo}),n&&(t.authorized=!0,e.emit(A.AUTHORIZED))}(n);else{if(t.type===R.OTP&&i.isOriginator)return void function(e,t){var n;const{state:i}=e;e.emit(A.OTP,t.otpAnswer),1===\"6.6\".localeCompare((null===(n=i.walletInfo)||void 0===n?void 0:n.version)||\"\")&&e.emit(A.SDK_RPC_CALL,{method:x.ETH_REQUESTACCOUNTS,params:[]})}(n,t);t.type===R.AUTHORIZED&&i.isOriginator&&function(e){const{state:t}=e;t.authorized=!0,e.emit(A.AUTHORIZED)}(n)}n.emit(A.MESSAGE,t)}else!function(e,t){var n;const{state:i}=e;null===(n=i.communicationLayer)||void 0===n||n.sendMessage({type:R.WALLET_INFO,walletInfo:i.walletInfo}),i.originatorInfo=t.originatorInfo||t.originator,e.emit(A.CLIENTS_READY,{isOriginator:i.isOriginator,originatorInfo:i.originatorInfo}),i.paused=!1}(n,t)}(i,t)}}function ne(e){return()=>{const{state:t}=e;g.RemoteCommunication(\"[RemoteCommunication: handleSocketReconnectEvent()] on 'socket_reconnect' -- reset key exchange status / set ready to false\"),t.ready=!1,t.authorized=!1,_(t),e.emitServiceStatusEvent({context:\"socket_reconnect\"})}}function ie(e){return()=>{const{state:t}=e;g.RemoteCommunication(\"[RemoteCommunication: handleSocketDisconnectedEvent()] on 'socket_Disconnected' set ready to false\"),t.ready=!1}}function oe(t){return()=>e(this,void 0,void 0,(function*(){var e,n,i,o,a,c,s;const{state:r}=t;g.RemoteCommunication(`[RemoteCommunication: handleFullPersistenceEvent()] context=${r.context}`),t.state.ready=!0,t.state.clientsConnected=!0,t.state.authorized=!0,t.state.relayPersistence=!0,null===(e=t.state.communicationLayer)||void 0===e||e.getKeyExchange().setKeysExchanged(!0),t.emit(A.KEYS_EXCHANGED,{keysExchanged:!0,isOriginator:!0}),t.emit(A.AUTHORIZED),t.emit(A.CLIENTS_READY),t.emit(A.CHANNEL_PERSISTENCE);try{r.channelConfig=Object.assign(Object.assign({},r.channelConfig),{localKey:null===(n=r.communicationLayer)||void 0===n?void 0:n.getKeyExchange().getKeyInfo().ecies.private,otherKey:null===(i=r.communicationLayer)||void 0===i?void 0:i.getKeyExchange().getOtherPublicKey(),channelId:null!==(o=r.channelId)&&void 0!==o?o:\"\",validUntil:null!==(c=null===(a=r.channelConfig)||void 0===a?void 0:a.validUntil)&&void 0!==c?c:K,relayPersistence:!0}),yield null===(s=r.storageManager)||void 0===s?void 0:s.persistChannelConfig(r.channelConfig)}catch(e){}}))}function ae({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,ecies:i,communicationServerUrl:o=f,instance:a}){var c,s,r,l,d,u,h,m,v,y,E;const{state:S}=a;if(g.RemoteCommunication(\"[initCommunicationLayer()] \",JSON.stringify(S,null,2)),e!==W.SOCKET)throw new Error(\"Invalid communication protocol\");S.communicationLayer=new G({communicationLayerPreference:e,otherPublicKey:t,reconnect:n,transports:S.transports,communicationServerUrl:o,context:S.context,ecies:i,logging:S.logging,remote:a});let p=\"undefined\"!=typeof document&&document.URL||\"\",k=\"undefined\"!=typeof document&&document.title||\"\";(null===(c=S.dappMetadata)||void 0===c?void 0:c.url)&&(p=S.dappMetadata.url),(null===(s=S.dappMetadata)||void 0===s?void 0:s.name)&&(k=S.dappMetadata.name);const K=null!==(u=null!==(l=null===(r=S.dappMetadata)||void 0===r?void 0:r.name)&&void 0!==l?l:null===(d=S.dappMetadata)||void 0===d?void 0:d.url)&&void 0!==u?u:\"N/A\",I=\"undefined\"!=typeof window&&void 0!==window.location&&null!==(h=window.location.hostname)&&void 0!==h?h:K,x={url:p,title:k,source:null===(m=S.dappMetadata)||void 0===m?void 0:m.source,dappId:I,icon:(null===(v=S.dappMetadata)||void 0===v?void 0:v.iconUrl)||(null===(y=S.dappMetadata)||void 0===y?void 0:y.base64Icon),platform:S.platformType,apiVersion:C.version,connector:null===(E=S.dappMetadata)||void 0===E?void 0:E.connector};S.originatorInfo=x;const _={[A.AUTHORIZED]:Z(a),[A.MESSAGE]:te(a),[A.CHANNEL_PERSISTENCE]:oe(a),[A.CLIENTS_CONNECTED]:X(a,e),[A.KEYS_EXCHANGED]:ee(a,e),[A.SOCKET_DISCONNECTED]:ie(a),[A.SOCKET_RECONNECT]:ne(a),[A.CLIENTS_DISCONNECTED]:Q(a),[A.KEY_INFO]:()=>{},[A.CHANNEL_CREATED]:B(a),[A.CLIENTS_WAITING]:q(a),[A.RPC_UPDATE]:e=>{a.emit(A.RPC_UPDATE,e)}};for(const[e,t]of Object.entries(_))try{S.communicationLayer.on(e,t)}catch(e){}}function ce(t){return e(this,arguments,void 0,(function*({options:e,instance:t}){const{state:n}=t;return g.RemoteCommunication(`[RemoteCommunication: disconnect()] channel=${n.channelId}`,e),new Promise(((i,o)=>{var a,c,s,l,d,u;(null==e?void 0:e.terminate)?(t.state.ready&&S({id:null!==(a=t.state.channelId)&&void 0!==a?a:\"\",event:b.TERMINATED},t.state.communicationServerUrl).catch((e=>{})),n.ready=!1,n.paused=!1,null===(c=n.storageManager)||void 0===c||c.terminate(null!==(s=n.channelId)&&void 0!==s?s:\"\"),t.state.terminated=!0,e.sendMessage?(null===(l=n.communicationLayer)||void 0===l?void 0:l.getKeyInfo().keysExchanged)&&t.state.communicationLayer&&M(t.state.communicationLayer,{type:R.TERMINATE}).then((()=>{i(!0)})).catch((e=>{o(e)})):i(!0),n.authorized=!1,n.relayPersistence=!1,n.channelId=r(),e.channelId=n.channelId,n.channelConfig=void 0,n.originatorConnectStarted=!1,null===(d=n.communicationLayer)||void 0===d||d.disconnect(e),t.setConnectionStatus(N.TERMINATED)):(null===(u=n.communicationLayer)||void 0===u||u.disconnect(e),t.setConnectionStatus(N.DISCONNECTED),i(!0))}))}))}!function(e){e.SOCKET=\"socket\"}(W||(W={})),function(e){e.NonBrowser=\"nodejs\",e.MetaMaskMobileWebview=\"in-app-browser\",e.DesktopWeb=\"web-desktop\",e.MobileWeb=\"web-mobile\",e.ReactNative=\"react-native\"}(F||(F={}));class se extends c{constructor(e){super(),this.state={ready:!1,authorized:!1,isOriginator:!1,terminated:!1,protocolVersion:1,paused:!1,deeplinkProtocolAvailable:!1,platformType:\"metamask-mobile\",analytics:!1,reconnection:!1,originatorInfoSent:!1,communicationServerUrl:f,context:\"\",persist:!1,clientsConnected:!1,sessionDuration:K,originatorConnectStarted:!1,debug:!1,_connectionStatus:N.DISCONNECTED},this._options=e;const{platformType:t,communicationLayerPreference:i,otherPublicKey:o,reconnect:a,walletInfo:c,dappMetadata:s,protocolVersion:r,transports:l,context:d,relayPersistence:u,ecies:h,analytics:m=!1,storage:v,sdkVersion:y,communicationServerUrl:E=f,logging:S,autoConnect:p={timeout:I}}=e;this.state.otherPublicKey=o,this.state.dappMetadata=s,this.state.walletInfo=c,this.state.transports=l,this.state.platformType=t,this.state.analytics=m,this.state.protocolVersion=null!=r?r:1,this.state.isOriginator=!o,this.state.relayPersistence=u,this.state.communicationServerUrl=E,this.state.context=d,this.state.terminated=!1,this.state.sdkVersion=y,this.setMaxListeners(50),this.setConnectionStatus(N.DISCONNECTED),(null==v?void 0:v.duration)&&(this.state.sessionDuration=K),this.state.storageOptions=v,this.state.autoConnectOptions=p,this.state.debug=!0===(null==S?void 0:S.remoteLayer),!0===(null==S?void 0:S.remoteLayer)&&n.enable(\"RemoteCommunication:Layer\"),!0===(null==S?void 0:S.serviceLayer)&&n.enable(\"SocketService:Layer\"),!0===(null==S?void 0:S.eciesLayer)&&n.enable(\"ECIES:Layer\"),!0===(null==S?void 0:S.keyExchangeLayer)&&n.enable(\"KeyExchange:Layer\"),this.state.logging=S,(null==v?void 0:v.storageManager)&&(this.state.storageManager=v.storageManager),g.RemoteCommunication(`[RemoteCommunication: constructor()] protocolVersion=${r} relayPersistence=${u} isOriginator=${this.state.isOriginator} communicationLayerPreference=${i} otherPublicKey=${o} reconnect=${a}`),this.state.isOriginator||ae({communicationLayerPreference:i,otherPublicKey:o,reconnect:a,ecies:h,communicationServerUrl:E,instance:this}),this.emitServiceStatusEvent({context:\"constructor\"})}initFromDappStorage(){return e(this,void 0,void 0,(function*(){var e;if(this.state.storageManager){const t=yield this.state.storageManager.getPersistedChannelConfig({});t&&(this.state.channelConfig=t,this.state.channelId=t.channelId,this.state.deeplinkProtocolAvailable=null!==(e=t.deeplinkProtocolAvailable)&&void 0!==e&&e,t.relayPersistence&&(this.state.authorized=!0,this.state.ready=!0,this.setConnectionStatus(N.LINKED),yield this.connectToChannel({channelId:t.channelId})))}ae({communicationLayerPreference:W.SOCKET,otherPublicKey:this.state.otherPublicKey,reconnect:this._options.reconnect,ecies:this._options.ecies,communicationServerUrl:this.state.communicationServerUrl,instance:this})}))}originatorSessionConnect(){return e(this,void 0,void 0,(function*(){return yield function(t){return e(this,void 0,void 0,(function*(){var e;const{state:n}=t;if(!n.storageManager)return void g.RemoteCommunication(\"[RemoteCommunication: originatorSessionConnect()] no storage manager defined - skip\");const i=yield n.storageManager.getPersistedChannelConfig({});if(g.RemoteCommunication(`[RemoteCommunication: originatorSessionConnect()] autoStarted=${n.originatorConnectStarted} channelConfig`,i),null===(e=n.communicationLayer)||void 0===e?void 0:e.isConnected())return g.RemoteCommunication(\"[RemoteCommunication: originatorSessionConnect()] socket already connected - skip\"),i;if(i){if(i.validUntil>Date.now())return n.channelConfig=i,n.originatorConnectStarted=!0,n.channelId=null==i?void 0:i.channelId,n.reconnection=!0,i;g.RemoteCommunication(\"[RemoteCommunication: autoConnect()] Session has expired\")}n.originatorConnectStarted=!1}))}(this)}))}generateChannelIdConnect(){return e(this,void 0,void 0,(function*(){return function(t){return e(this,void 0,void 0,(function*(){var e,n,i,o,a,c;if(!t.communicationLayer)throw new Error(\"communication layer not initialized\");if(t.ready)throw new Error(\"Channel already connected\");if(t.channelId&&(null===(e=t.communicationLayer)||void 0===e?void 0:e.isConnected()))return t.channelConfig=Object.assign(Object.assign({},t.channelConfig),{channelId:t.channelId,validUntil:Date.now()+t.sessionDuration}),null===(n=t.storageManager)||void 0===n||n.persistChannelConfig(t.channelConfig),{channelId:t.channelId,privKey:null===(o=null===(i=t.communicationLayer)||void 0===i?void 0:i.getKeyInfo())||void 0===o?void 0:o.ecies.private,pubKey:null===(c=null===(a=t.communicationLayer)||void 0===a?void 0:a.getKeyInfo())||void 0===c?void 0:c.ecies.public};g.RemoteCommunication(\"[RemoteCommunication: generateChannelId()]\");const s=yield t.communicationLayer.createChannel();g.RemoteCommunication(\"[RemoteCommunication: generateChannelId()] channel created\",s);const r=Object.assign(Object.assign({},t.channelConfig),{channelId:s.channelId,localKey:s.privKey,validUntil:Date.now()+t.sessionDuration});return t.channelId=s.channelId,t.channelConfig=r,{channelId:t.channelId,pubKey:s.pubKey,privKey:s.privKey}}))}(this.state)}))}clean(){return _(this.state)}connectToChannel({channelId:t,withKeyExchange:n,authorized:i}){return function(t){return e(this,arguments,void 0,(function*({channelId:e,withKeyExchange:t,authorized:n,state:i}){var o,a,c;if(!s(e))throw g.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${i.context} invalid channel channelId=${e}`),new Error(`Invalid channel ${e}`);if(g.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${i.context} channelId=${e} withKeyExchange=${t}`),null===(o=i.communicationLayer)||void 0===o?void 0:o.isConnected())return void g.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${i.context} already connected - interrupt connection.`);i.channelId=e,yield null===(a=i.communicationLayer)||void 0===a?void 0:a.connectToChannel({channelId:e,authorized:n,withKeyExchange:t});const r=Object.assign(Object.assign({},i.channelConfig),{channelId:e,validUntil:Date.now()+i.sessionDuration});i.channelConfig=r,null===(c=i.storageManager)||void 0===c||c.persistChannelConfig(r)}))}({channelId:t,authorized:i,withKeyExchange:n,state:this.state})}sendMessage(t){return function(t,n){return e(this,void 0,void 0,(function*(){var i,o;const{state:a}=t;g.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${a.context} paused=${a.paused} ready=${a.ready} relayPersistence=${a.relayPersistence} authorized=${a.authorized} socket=${null===(i=a.communicationLayer)||void 0===i?void 0:i.isConnected()} clientsConnected=${a.clientsConnected} status=${a._connectionStatus}`,n),a.relayPersistence||a.ready&&(null===(o=a.communicationLayer)||void 0===o?void 0:o.isConnected())&&a.clientsConnected||(g.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${a.context} SKIP message waiting for MM mobile readiness.`),yield new Promise((e=>{t.once(A.CLIENTS_READY,e)})),g.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${a.context} AFTER SKIP / READY -- sending pending message`));try{const i=yield function(t,n){return e(this,void 0,void 0,(function*(){return new Promise((e=>{var i;const{state:o}=t;g.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${o.context} ready=${o.ready} authorized=${o.authorized} method=${n.method}`),!o.isOriginator||o.authorized||o.relayPersistence?null===(i=o.communicationLayer)||void 0===i||i.sendMessage(n).then((t=>{e(t)})).catch((t=>{e(!1)})):t.once(A.AUTHORIZED,(()=>{var t;g.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${o.context} AFTER SKIP / AUTHORIZED -- sending pending message`),null===(t=o.communicationLayer)||void 0===t||t.sendMessage(n).then((t=>{e(t)})).catch((t=>{e(!1)}))}))}))}))}(t,n);return i}catch(e){throw e}}))}(this,t)}testStorage(){return e(this,void 0,void 0,(function*(){return function(t){return e(this,void 0,void 0,(function*(){var e;const n=yield null===(e=t.storageManager)||void 0===e?void 0:e.getPersistedChannelConfig();g.RemoteCommunication(\"[RemoteCommunication: testStorage()] res\",n)}))}(this.state)}))}hasDeeplinkProtocol(){return this.state.deeplinkProtocolAvailable}getChannelConfig(){return this.state.channelConfig}isReady(){return this.state.ready}isConnected(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.isConnected()}isAuthorized(){return this.state.authorized}isPaused(){return this.state.paused}getCommunicationLayer(){return this.state.communicationLayer}ping(){return e(this,void 0,void 0,(function*(){var e;g.RemoteCommunication(`[RemoteCommunication: ping()] channel=${this.state.channelId}`),yield null===(e=this.state.communicationLayer)||void 0===e?void 0:e.ping()}))}testLogger(){g.RemoteCommunication(`testLogger() channel=${this.state.channelId}`),g.SocketService(`testLogger() channel=${this.state.channelId}`),g.Ecies(`testLogger() channel=${this.state.channelId}`),g.KeyExchange(`testLogger() channel=${this.state.channelId}`)}keyCheck(){var e;g.RemoteCommunication(`[RemoteCommunication: keyCheck()] channel=${this.state.channelId}`),null===(e=this.state.communicationLayer)||void 0===e||e.keyCheck()}setConnectionStatus(e){this.state._connectionStatus!==e&&(this.state._connectionStatus=e,this.emit(A.CONNECTION_STATUS,e),this.emitServiceStatusEvent({context:\"setConnectionStatus\"}))}emitServiceStatusEvent(e={}){this.emit(A.SERVICE_STATUS,this.getServiceStatus())}getConnectionStatus(){return this.state._connectionStatus}getServiceStatus(){return{originatorInfo:this.state.originatorInfo,keyInfo:this.getKeyInfo(),connectionStatus:this.state._connectionStatus,channelConfig:this.state.channelConfig,channelId:this.state.channelId}}getKeyInfo(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.getKeyInfo()}resetKeys(){var e;null===(e=this.state.communicationLayer)||void 0===e||e.resetKeys()}setOtherPublicKey(e){var t;const n=null===(t=this.state.communicationLayer)||void 0===t?void 0:t.getKeyExchange();if(!n)throw new Error(\"KeyExchange is not initialized.\");n.getOtherPublicKey()!==e&&n.setOtherPublicKey(e)}pause(){return e(this,void 0,void 0,(function*(){var e;g.RemoteCommunication(`[RemoteCommunication: pause()] channel=${this.state.channelId}`),yield null===(e=this.state.communicationLayer)||void 0===e?void 0:e.pause(),this.setConnectionStatus(N.PAUSED)}))}getVersion(){return C.version}hasRelayPersistence(){var e;return null!==(e=this.state.relayPersistence)&&void 0!==e&&e}resume(){return e(this,void 0,void 0,(function*(){return function(t){return e(this,void 0,void 0,(function*(){var e;const{state:n}=t;g.RemoteCommunication(`[RemoteCommunication: resume()] channel=${n.channelId}`),yield null===(e=n.communicationLayer)||void 0===e?void 0:e.resume(),t.setConnectionStatus(N.LINKED)}))}(this)}))}encrypt(e){var t,n,i;const o=null===(t=this.state.communicationLayer)||void 0===t?void 0:t.getKeyExchange(),a=null==o?void 0:o.getOtherPublicKey();if(!a)throw new Error(\"KeyExchange not completed\");return null===(i=null===(n=this.state.communicationLayer)||void 0===n?void 0:n.state.eciesInstance)||void 0===i?void 0:i.encrypt(e,a)}decrypt(e){var t,n,i;if(!(null===(t=this.state.communicationLayer)||void 0===t?void 0:t.state.eciesInstance))throw new Error(\"ECIES instance is not initialized\");return null===(i=null===(n=this.state.communicationLayer)||void 0===n?void 0:n.state.eciesInstance)||void 0===i?void 0:i.decrypt(e)}getChannelId(){return this.state.channelId}getRPCMethodTracker(){var e;return null===(e=this.state.communicationLayer)||void 0===e?void 0:e.getRPCMethodTracker()}reject({channelId:t}){return function(t){return e(this,arguments,void 0,(function*({channelId:e,state:t}){var n,i,o;if(!s(e))throw g.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${t.context} invalid channel channelId=${e}`),new Error(`Invalid channel ${e}`);if(t.isOriginator)return void g.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} isOriginator=${t.isOriginator} channelId=${e}`);const{socket:a}=null!==(i=null===(n=t.communicationLayer)||void 0===n?void 0:n.state)&&void 0!==i?i:{};(null==a?void 0:a.connected)||(g.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} socket already connected`),null==a||a.connect()),S(Object.assign(Object.assign({id:e,event:b.REJECTED},t.originatorInfo),{sdkVersion:t.sdkVersion,commLayerVersion:C.version,walletVersion:null===(o=t.walletInfo)||void 0===o?void 0:o.version}),t.communicationServerUrl).catch((e=>{})),yield new Promise(((n,i)=>{null==a||a.emit(A.REJECTED,{channelId:e},((e,o)=>{g.RemoteCommunication(`[RemoteCommunication: reject()] context=${t.context} socket=${null==a?void 0:a.id}`,{error:e,response:o}),e?i(e):n(o)}))}))}))}({channelId:t,state:this.state})}disconnect(t){return e(this,void 0,void 0,(function*(){return ce({options:t,instance:this})}))}}!function(e){e.RENEW=\"renew\",e.LINK=\"link\"}(J||(J={}));export{J as AutoConnectType,W as CommunicationLayerPreference,N as ConnectionStatus,f as DEFAULT_SERVER_URL,K as DEFAULT_SESSION_TIMEOUT_MS,p as ECIES,A as EventType,T as KeyExchangeMessageType,R as MessageType,F as PlatformType,se as RemoteCommunication,S as SendAnalytics,G as SocketService,b as TrackingEvents};\n//# sourceMappingURL=metamask-sdk-communication-layer.js.map\n","// src/constants.ts\nvar ERC721 = \"ERC721\";\nvar ERC1155 = \"ERC1155\";\nvar ERC20 = \"ERC20\";\n\nexport {\n ERC721,\n ERC1155,\n ERC20\n};\n//# sourceMappingURL=chunk-I6HXGZRD.mjs.map","// src/messages.ts\nvar messages = {\n errors: {\n disconnected: () => \"MetaMask: Disconnected from chain. Attempting to connect.\",\n permanentlyDisconnected: () => \"MetaMask: Disconnected from MetaMask background. Page reload required.\",\n sendSiteMetadata: () => `MetaMask: Failed to send site metadata. This is an internal error, please report this bug.`,\n unsupportedSync: (method) => `MetaMask: The MetaMask Ethereum provider does not support synchronous methods like ${method} without a callback parameter.`,\n invalidDuplexStream: () => \"Must provide a Node.js-style duplex stream.\",\n invalidNetworkParams: () => \"MetaMask: Received invalid network parameters. Please report this bug.\",\n invalidRequestArgs: () => `Expected a single, non-array, object argument.`,\n invalidRequestMethod: () => `'args.method' must be a non-empty string.`,\n invalidRequestParams: () => `'args.params' must be an object or array if provided.`,\n invalidLoggerObject: () => `'args.logger' must be an object if provided.`,\n invalidLoggerMethod: (method) => `'args.logger' must include required method '${method}'.`\n },\n info: {\n connected: (chainId) => `MetaMask: Connected to chain with ID \"${chainId}\".`\n },\n warnings: {\n // deprecated properties\n chainIdDeprecation: `MetaMask: 'ethereum.chainId' is deprecated and may be removed in the future. Please use the 'eth_chainId' RPC method instead.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,\n networkVersionDeprecation: `MetaMask: 'ethereum.networkVersion' is deprecated and may be removed in the future. Please use the 'net_version' RPC method instead.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,\n selectedAddressDeprecation: `MetaMask: 'ethereum.selectedAddress' is deprecated and may be removed in the future. Please use the 'eth_accounts' RPC method instead.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,\n // deprecated methods\n enableDeprecation: `MetaMask: 'ethereum.enable()' is deprecated and may be removed in the future. Please use the 'eth_requestAccounts' RPC method instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1102`,\n sendDeprecation: `MetaMask: 'ethereum.send(...)' is deprecated and may be removed in the future. Please use 'ethereum.sendAsync(...)' or 'ethereum.request(...)' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193`,\n // deprecated events\n events: {\n close: `MetaMask: The event 'close' is deprecated and may be removed in the future. Please use 'disconnect' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#disconnect`,\n data: `MetaMask: The event 'data' is deprecated and will be removed in the future. Use 'message' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`,\n networkChanged: `MetaMask: The event 'networkChanged' is deprecated and may be removed in the future. Use 'chainChanged' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#chainchanged`,\n notification: `MetaMask: The event 'notification' is deprecated and may be removed in the future. Use 'message' instead.\nFor more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`\n },\n rpc: {\n ethDecryptDeprecation: `MetaMask: The RPC method 'eth_decrypt' is deprecated and may be removed in the future.\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,\n ethGetEncryptionPublicKeyDeprecation: `MetaMask: The RPC method 'eth_getEncryptionPublicKey' is deprecated and may be removed in the future.\nFor more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,\n walletWatchAssetNFTExperimental: `MetaMask: The RPC method 'wallet_watchAsset' is experimental for ERC721/ERC1155 assets and may change in the future.\nFor more information, see: https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-1.md and https://github.com/MetaMask/metamask-improvement-proposals/blob/main/PROCESS-GUIDE.md#proposal-lifecycle`\n },\n // misc\n experimentalMethods: `MetaMask: 'ethereum._metamask' exposes non-standard, experimental methods. They may be removed or changed without warning.`\n }\n};\nvar messages_default = messages;\n\nexport {\n messages_default\n};\n//# sourceMappingURL=chunk-ZGDQ3IYD.mjs.map","import {\n ERC1155,\n ERC721\n} from \"./chunk-I6HXGZRD.mjs\";\nimport {\n messages_default\n} from \"./chunk-ZGDQ3IYD.mjs\";\n\n// src/middleware/createRpcWarningMiddleware.ts\nfunction createRpcWarningMiddleware(log) {\n const sentWarnings = {\n ethDecryptDeprecation: false,\n ethGetEncryptionPublicKeyDeprecation: false,\n walletWatchAssetNFTExperimental: false\n };\n return (req, _res, next) => {\n if (!sentWarnings.ethDecryptDeprecation && req.method === \"eth_decrypt\") {\n log.warn(messages_default.warnings.rpc.ethDecryptDeprecation);\n sentWarnings.ethDecryptDeprecation = true;\n } else if (!sentWarnings.ethGetEncryptionPublicKeyDeprecation && req.method === \"eth_getEncryptionPublicKey\") {\n log.warn(messages_default.warnings.rpc.ethGetEncryptionPublicKeyDeprecation);\n sentWarnings.ethGetEncryptionPublicKeyDeprecation = true;\n } else if (!sentWarnings.walletWatchAssetNFTExperimental && req.method === \"wallet_watchAsset\" && [ERC721, ERC1155].includes(\n req.params?.type || \"\"\n )) {\n log.warn(messages_default.warnings.rpc.walletWatchAssetNFTExperimental);\n sentWarnings.walletWatchAssetNFTExperimental = true;\n }\n next();\n };\n}\n\nexport {\n createRpcWarningMiddleware\n};\n//# sourceMappingURL=chunk-5FL6VRJJ.mjs.map","// src/getUniqueId.ts\nvar MAX = 4294967295;\nvar idCounter = Math.floor(Math.random() * MAX);\nfunction getUniqueId() {\n idCounter = (idCounter + 1) % MAX;\n return idCounter;\n}\n\nexport {\n getUniqueId\n};\n//# sourceMappingURL=chunk-6XXPTZV6.mjs.map","import {\n getUniqueId\n} from \"./chunk-6XXPTZV6.mjs\";\n\n// src/idRemapMiddleware.ts\nfunction createIdRemapMiddleware() {\n return (request, response, next, _end) => {\n const originalId = request.id;\n const newId = getUniqueId();\n request.id = newId;\n response.id = newId;\n next((done) => {\n request.id = originalId;\n response.id = originalId;\n done();\n });\n };\n}\n\nexport {\n createIdRemapMiddleware\n};\n//# sourceMappingURL=chunk-R7LKI5H5.mjs.map","var __accessCheck = (obj, member, msg) => {\n if (!member.has(obj))\n throw TypeError(\"Cannot \" + msg);\n};\nvar __privateGet = (obj, member, getter) => {\n __accessCheck(obj, member, \"read from private field\");\n return getter ? getter.call(obj) : member.get(obj);\n};\nvar __privateAdd = (obj, member, value) => {\n if (member.has(obj))\n throw TypeError(\"Cannot add the same private member more than once\");\n member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\n};\nvar __privateSet = (obj, member, value, setter) => {\n __accessCheck(obj, member, \"write to private field\");\n setter ? setter.call(obj, value) : member.set(obj, value);\n return value;\n};\nvar __privateMethod = (obj, member, method) => {\n __accessCheck(obj, member, \"access private method\");\n return method;\n};\n\nexport {\n __privateGet,\n __privateAdd,\n __privateSet,\n __privateMethod\n};\n//# sourceMappingURL=chunk-XUI43LEZ.mjs.map","// src/error-constants.ts\nvar errorCodes = {\n rpc: {\n invalidInput: -32e3,\n resourceNotFound: -32001,\n resourceUnavailable: -32002,\n transactionRejected: -32003,\n methodNotSupported: -32004,\n limitExceeded: -32005,\n parse: -32700,\n invalidRequest: -32600,\n methodNotFound: -32601,\n invalidParams: -32602,\n internal: -32603\n },\n provider: {\n userRejectedRequest: 4001,\n unauthorized: 4100,\n unsupportedMethod: 4200,\n disconnected: 4900,\n chainDisconnected: 4901\n }\n};\nvar errorValues = {\n \"-32700\": {\n standard: \"JSON RPC 2.0\",\n message: \"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.\"\n },\n \"-32600\": {\n standard: \"JSON RPC 2.0\",\n message: \"The JSON sent is not a valid Request object.\"\n },\n \"-32601\": {\n standard: \"JSON RPC 2.0\",\n message: \"The method does not exist / is not available.\"\n },\n \"-32602\": {\n standard: \"JSON RPC 2.0\",\n message: \"Invalid method parameter(s).\"\n },\n \"-32603\": {\n standard: \"JSON RPC 2.0\",\n message: \"Internal JSON-RPC error.\"\n },\n \"-32000\": {\n standard: \"EIP-1474\",\n message: \"Invalid input.\"\n },\n \"-32001\": {\n standard: \"EIP-1474\",\n message: \"Resource not found.\"\n },\n \"-32002\": {\n standard: \"EIP-1474\",\n message: \"Resource unavailable.\"\n },\n \"-32003\": {\n standard: \"EIP-1474\",\n message: \"Transaction rejected.\"\n },\n \"-32004\": {\n standard: \"EIP-1474\",\n message: \"Method not supported.\"\n },\n \"-32005\": {\n standard: \"EIP-1474\",\n message: \"Request limit exceeded.\"\n },\n \"4001\": {\n standard: \"EIP-1193\",\n message: \"User rejected the request.\"\n },\n \"4100\": {\n standard: \"EIP-1193\",\n message: \"The requested account and/or method has not been authorized by the user.\"\n },\n \"4200\": {\n standard: \"EIP-1193\",\n message: \"The requested method is not supported by this Ethereum provider.\"\n },\n \"4900\": {\n standard: \"EIP-1193\",\n message: \"The provider is disconnected from all chains.\"\n },\n \"4901\": {\n standard: \"EIP-1193\",\n message: \"The provider is disconnected from the specified chain.\"\n }\n};\n\nexport {\n errorCodes,\n errorValues\n};\n//# sourceMappingURL=chunk-MIW4NMY6.mjs.map","// src/misc.ts\nfunction isNonEmptyArray(value) {\n return Array.isArray(value) && value.length > 0;\n}\nfunction isNullOrUndefined(value) {\n return value === null || value === void 0;\n}\nfunction isObject(value) {\n return Boolean(value) && typeof value === \"object\" && !Array.isArray(value);\n}\nvar hasProperty = (objectToCheck, name) => Object.hasOwnProperty.call(objectToCheck, name);\nfunction getKnownPropertyNames(object) {\n return Object.getOwnPropertyNames(object);\n}\nvar JsonSize = /* @__PURE__ */ ((JsonSize2) => {\n JsonSize2[JsonSize2[\"Null\"] = 4] = \"Null\";\n JsonSize2[JsonSize2[\"Comma\"] = 1] = \"Comma\";\n JsonSize2[JsonSize2[\"Wrapper\"] = 1] = \"Wrapper\";\n JsonSize2[JsonSize2[\"True\"] = 4] = \"True\";\n JsonSize2[JsonSize2[\"False\"] = 5] = \"False\";\n JsonSize2[JsonSize2[\"Quote\"] = 1] = \"Quote\";\n JsonSize2[JsonSize2[\"Colon\"] = 1] = \"Colon\";\n JsonSize2[JsonSize2[\"Date\"] = 24] = \"Date\";\n return JsonSize2;\n})(JsonSize || {});\nvar ESCAPE_CHARACTERS_REGEXP = /\"|\\\\|\\n|\\r|\\t/gu;\nfunction isPlainObject(value) {\n if (typeof value !== \"object\" || value === null) {\n return false;\n }\n try {\n let proto = value;\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n return Object.getPrototypeOf(value) === proto;\n } catch (_) {\n return false;\n }\n}\nfunction isASCII(character) {\n return character.charCodeAt(0) <= 127;\n}\nfunction calculateStringSize(value) {\n const size = value.split(\"\").reduce((total, character) => {\n if (isASCII(character)) {\n return total + 1;\n }\n return total + 2;\n }, 0);\n return size + (value.match(ESCAPE_CHARACTERS_REGEXP) ?? []).length;\n}\nfunction calculateNumberSize(value) {\n return value.toString().length;\n}\n\nexport {\n isNonEmptyArray,\n isNullOrUndefined,\n isObject,\n hasProperty,\n getKnownPropertyNames,\n JsonSize,\n ESCAPE_CHARACTERS_REGEXP,\n isPlainObject,\n isASCII,\n calculateStringSize,\n calculateNumberSize\n};\n//# sourceMappingURL=chunk-H4YFDLB7.mjs.map","/**\n * A `StructFailure` represents a single specific failure in validation.\n */\n/**\n * `StructError` objects are thrown (or returned) when validation fails.\n *\n * Validation logic is design to exit early for maximum performance. The error\n * represents the first error encountered during validation. For more detail,\n * the `error.failures` property is a generator function that can be run to\n * continue validation and receive all the failures in the data.\n */\nclass StructError extends TypeError {\n constructor(failure, failures) {\n let cached;\n const { message, explanation, ...rest } = failure;\n const { path } = failure;\n const msg = path.length === 0 ? message : `At path: ${path.join('.')} -- ${message}`;\n super(explanation ?? msg);\n if (explanation != null)\n this.cause = msg;\n Object.assign(this, rest);\n this.name = this.constructor.name;\n this.failures = () => {\n return (cached ?? (cached = [failure, ...failures()]));\n };\n }\n}\n\n/**\n * Check if a value is an iterator.\n */\nfunction isIterable(x) {\n return isObject(x) && typeof x[Symbol.iterator] === 'function';\n}\n/**\n * Check if a value is a plain object.\n */\nfunction isObject(x) {\n return typeof x === 'object' && x != null;\n}\n/**\n * Check if a value is a plain object.\n */\nfunction isPlainObject(x) {\n if (Object.prototype.toString.call(x) !== '[object Object]') {\n return false;\n }\n const prototype = Object.getPrototypeOf(x);\n return prototype === null || prototype === Object.prototype;\n}\n/**\n * Return a value as a printable string.\n */\nfunction print(value) {\n if (typeof value === 'symbol') {\n return value.toString();\n }\n return typeof value === 'string' ? JSON.stringify(value) : `${value}`;\n}\n/**\n * Shifts (removes and returns) the first value from the `input` iterator.\n * Like `Array.prototype.shift()` but for an `Iterator`.\n */\nfunction shiftIterator(input) {\n const { done, value } = input.next();\n return done ? undefined : value;\n}\n/**\n * Convert a single validation result to a failure.\n */\nfunction toFailure(result, context, struct, value) {\n if (result === true) {\n return;\n }\n else if (result === false) {\n result = {};\n }\n else if (typeof result === 'string') {\n result = { message: result };\n }\n const { path, branch } = context;\n const { type } = struct;\n const { refinement, message = `Expected a value of type \\`${type}\\`${refinement ? ` with refinement \\`${refinement}\\`` : ''}, but received: \\`${print(value)}\\``, } = result;\n return {\n value,\n type,\n refinement,\n key: path[path.length - 1],\n path,\n branch,\n ...result,\n message,\n };\n}\n/**\n * Convert a validation result to an iterable of failures.\n */\nfunction* toFailures(result, context, struct, value) {\n if (!isIterable(result)) {\n result = [result];\n }\n for (const r of result) {\n const failure = toFailure(r, context, struct, value);\n if (failure) {\n yield failure;\n }\n }\n}\n/**\n * Check a value against a struct, traversing deeply into nested values, and\n * returning an iterator of failures or success.\n */\nfunction* run(value, struct, options = {}) {\n const { path = [], branch = [value], coerce = false, mask = false } = options;\n const ctx = { path, branch };\n if (coerce) {\n value = struct.coercer(value, ctx);\n if (mask &&\n struct.type !== 'type' &&\n isObject(struct.schema) &&\n isObject(value) &&\n !Array.isArray(value)) {\n for (const key in value) {\n if (struct.schema[key] === undefined) {\n delete value[key];\n }\n }\n }\n }\n let status = 'valid';\n for (const failure of struct.validator(value, ctx)) {\n failure.explanation = options.message;\n status = 'not_valid';\n yield [failure, undefined];\n }\n for (let [k, v, s] of struct.entries(value, ctx)) {\n const ts = run(v, s, {\n path: k === undefined ? path : [...path, k],\n branch: k === undefined ? branch : [...branch, v],\n coerce,\n mask,\n message: options.message,\n });\n for (const t of ts) {\n if (t[0]) {\n status = t[0].refinement != null ? 'not_refined' : 'not_valid';\n yield [t[0], undefined];\n }\n else if (coerce) {\n v = t[1];\n if (k === undefined) {\n value = v;\n }\n else if (value instanceof Map) {\n value.set(k, v);\n }\n else if (value instanceof Set) {\n value.add(v);\n }\n else if (isObject(value)) {\n if (v !== undefined || k in value)\n value[k] = v;\n }\n }\n }\n }\n if (status !== 'not_valid') {\n for (const failure of struct.refiner(value, ctx)) {\n failure.explanation = options.message;\n status = 'not_refined';\n yield [failure, undefined];\n }\n }\n if (status === 'valid') {\n yield [undefined, value];\n }\n}\n\n/**\n * `Struct` objects encapsulate the validation logic for a specific type of\n * values. Once constructed, you use the `assert`, `is` or `validate` helpers to\n * validate unknown input data against the struct.\n */\nclass Struct {\n constructor(props) {\n const { type, schema, validator, refiner, coercer = (value) => value, entries = function* () { }, } = props;\n this.type = type;\n this.schema = schema;\n this.entries = entries;\n this.coercer = coercer;\n if (validator) {\n this.validator = (value, context) => {\n const result = validator(value, context);\n return toFailures(result, context, this, value);\n };\n }\n else {\n this.validator = () => [];\n }\n if (refiner) {\n this.refiner = (value, context) => {\n const result = refiner(value, context);\n return toFailures(result, context, this, value);\n };\n }\n else {\n this.refiner = () => [];\n }\n }\n /**\n * Assert that a value passes the struct's validation, throwing if it doesn't.\n */\n assert(value, message) {\n return assert(value, this, message);\n }\n /**\n * Create a value with the struct's coercion logic, then validate it.\n */\n create(value, message) {\n return create(value, this, message);\n }\n /**\n * Check if a value passes the struct's validation.\n */\n is(value) {\n return is(value, this);\n }\n /**\n * Mask a value, coercing and validating it, but returning only the subset of\n * properties defined by the struct's schema.\n */\n mask(value, message) {\n return mask(value, this, message);\n }\n /**\n * Validate a value with the struct's validation logic, returning a tuple\n * representing the result.\n *\n * You may optionally pass `true` for the `withCoercion` argument to coerce\n * the value before attempting to validate it. If you do, the result will\n * contain the coerced result when successful.\n */\n validate(value, options = {}) {\n return validate(value, this, options);\n }\n}\n/**\n * Assert that a value passes a struct, throwing if it doesn't.\n */\nfunction assert(value, struct, message) {\n const result = validate(value, struct, { message });\n if (result[0]) {\n throw result[0];\n }\n}\n/**\n * Create a value with the coercion logic of struct and validate it.\n */\nfunction create(value, struct, message) {\n const result = validate(value, struct, { coerce: true, message });\n if (result[0]) {\n throw result[0];\n }\n else {\n return result[1];\n }\n}\n/**\n * Mask a value, returning only the subset of properties defined by a struct.\n */\nfunction mask(value, struct, message) {\n const result = validate(value, struct, { coerce: true, mask: true, message });\n if (result[0]) {\n throw result[0];\n }\n else {\n return result[1];\n }\n}\n/**\n * Check if a value passes a struct.\n */\nfunction is(value, struct) {\n const result = validate(value, struct);\n return !result[0];\n}\n/**\n * Validate a value against a struct, returning an error if invalid, or the\n * value (with potential coercion) if valid.\n */\nfunction validate(value, struct, options = {}) {\n const tuples = run(value, struct, options);\n const tuple = shiftIterator(tuples);\n if (tuple[0]) {\n const error = new StructError(tuple[0], function* () {\n for (const t of tuples) {\n if (t[0]) {\n yield t[0];\n }\n }\n });\n return [error, undefined];\n }\n else {\n const v = tuple[1];\n return [undefined, v];\n }\n}\n\nfunction assign(...Structs) {\n const isType = Structs[0].type === 'type';\n const schemas = Structs.map((s) => s.schema);\n const schema = Object.assign({}, ...schemas);\n return isType ? type(schema) : object(schema);\n}\n/**\n * Define a new struct type with a custom validation function.\n */\nfunction define(name, validator) {\n return new Struct({ type: name, schema: null, validator });\n}\n/**\n * Create a new struct based on an existing struct, but the value is allowed to\n * be `undefined`. `log` will be called if the value is not `undefined`.\n */\nfunction deprecated(struct, log) {\n return new Struct({\n ...struct,\n refiner: (value, ctx) => value === undefined || struct.refiner(value, ctx),\n validator(value, ctx) {\n if (value === undefined) {\n return true;\n }\n else {\n log(value, ctx);\n return struct.validator(value, ctx);\n }\n },\n });\n}\n/**\n * Create a struct with dynamic validation logic.\n *\n * The callback will receive the value currently being validated, and must\n * return a struct object to validate it with. This can be useful to model\n * validation logic that changes based on its input.\n */\nfunction dynamic(fn) {\n return new Struct({\n type: 'dynamic',\n schema: null,\n *entries(value, ctx) {\n const struct = fn(value, ctx);\n yield* struct.entries(value, ctx);\n },\n validator(value, ctx) {\n const struct = fn(value, ctx);\n return struct.validator(value, ctx);\n },\n coercer(value, ctx) {\n const struct = fn(value, ctx);\n return struct.coercer(value, ctx);\n },\n refiner(value, ctx) {\n const struct = fn(value, ctx);\n return struct.refiner(value, ctx);\n },\n });\n}\n/**\n * Create a struct with lazily evaluated validation logic.\n *\n * The first time validation is run with the struct, the callback will be called\n * and must return a struct object to use. This is useful for cases where you\n * want to have self-referential structs for nested data structures to avoid a\n * circular definition problem.\n */\nfunction lazy(fn) {\n let struct;\n return new Struct({\n type: 'lazy',\n schema: null,\n *entries(value, ctx) {\n struct ?? (struct = fn());\n yield* struct.entries(value, ctx);\n },\n validator(value, ctx) {\n struct ?? (struct = fn());\n return struct.validator(value, ctx);\n },\n coercer(value, ctx) {\n struct ?? (struct = fn());\n return struct.coercer(value, ctx);\n },\n refiner(value, ctx) {\n struct ?? (struct = fn());\n return struct.refiner(value, ctx);\n },\n });\n}\n/**\n * Create a new struct based on an existing object struct, but excluding\n * specific properties.\n *\n * Like TypeScript's `Omit` utility.\n */\nfunction omit(struct, keys) {\n const { schema } = struct;\n const subschema = { ...schema };\n for (const key of keys) {\n delete subschema[key];\n }\n switch (struct.type) {\n case 'type':\n return type(subschema);\n default:\n return object(subschema);\n }\n}\n/**\n * Create a new struct based on an existing object struct, but with all of its\n * properties allowed to be `undefined`.\n *\n * Like TypeScript's `Partial` utility.\n */\nfunction partial(struct) {\n const schema = struct instanceof Struct ? { ...struct.schema } : { ...struct };\n for (const key in schema) {\n schema[key] = optional(schema[key]);\n }\n return object(schema);\n}\n/**\n * Create a new struct based on an existing object struct, but only including\n * specific properties.\n *\n * Like TypeScript's `Pick` utility.\n */\nfunction pick(struct, keys) {\n const { schema } = struct;\n const subschema = {};\n for (const key of keys) {\n subschema[key] = schema[key];\n }\n return object(subschema);\n}\n/**\n * Define a new struct type with a custom validation function.\n *\n * @deprecated This function has been renamed to `define`.\n */\nfunction struct(name, validator) {\n console.warn('superstruct@0.11 - The `struct` helper has been renamed to `define`.');\n return define(name, validator);\n}\n\n/**\n * Ensure that any value passes validation.\n */\nfunction any() {\n return define('any', () => true);\n}\nfunction array(Element) {\n return new Struct({\n type: 'array',\n schema: Element,\n *entries(value) {\n if (Element && Array.isArray(value)) {\n for (const [i, v] of value.entries()) {\n yield [i, v, Element];\n }\n }\n },\n coercer(value) {\n return Array.isArray(value) ? value.slice() : value;\n },\n validator(value) {\n return (Array.isArray(value) ||\n `Expected an array value, but received: ${print(value)}`);\n },\n });\n}\n/**\n * Ensure that a value is a bigint.\n */\nfunction bigint() {\n return define('bigint', (value) => {\n return typeof value === 'bigint';\n });\n}\n/**\n * Ensure that a value is a boolean.\n */\nfunction boolean() {\n return define('boolean', (value) => {\n return typeof value === 'boolean';\n });\n}\n/**\n * Ensure that a value is a valid `Date`.\n *\n * Note: this also ensures that the value is *not* an invalid `Date` object,\n * which can occur when parsing a date fails but still returns a `Date`.\n */\nfunction date() {\n return define('date', (value) => {\n return ((value instanceof Date && !isNaN(value.getTime())) ||\n `Expected a valid \\`Date\\` object, but received: ${print(value)}`);\n });\n}\nfunction enums(values) {\n const schema = {};\n const description = values.map((v) => print(v)).join();\n for (const key of values) {\n schema[key] = key;\n }\n return new Struct({\n type: 'enums',\n schema,\n validator(value) {\n return (values.includes(value) ||\n `Expected one of \\`${description}\\`, but received: ${print(value)}`);\n },\n });\n}\n/**\n * Ensure that a value is a function.\n */\nfunction func() {\n return define('func', (value) => {\n return (typeof value === 'function' ||\n `Expected a function, but received: ${print(value)}`);\n });\n}\n/**\n * Ensure that a value is an instance of a specific class.\n */\nfunction instance(Class) {\n return define('instance', (value) => {\n return (value instanceof Class ||\n `Expected a \\`${Class.name}\\` instance, but received: ${print(value)}`);\n });\n}\n/**\n * Ensure that a value is an integer.\n */\nfunction integer() {\n return define('integer', (value) => {\n return ((typeof value === 'number' && !isNaN(value) && Number.isInteger(value)) ||\n `Expected an integer, but received: ${print(value)}`);\n });\n}\n/**\n * Ensure that a value matches all of a set of types.\n */\nfunction intersection(Structs) {\n return new Struct({\n type: 'intersection',\n schema: null,\n *entries(value, ctx) {\n for (const S of Structs) {\n yield* S.entries(value, ctx);\n }\n },\n *validator(value, ctx) {\n for (const S of Structs) {\n yield* S.validator(value, ctx);\n }\n },\n *refiner(value, ctx) {\n for (const S of Structs) {\n yield* S.refiner(value, ctx);\n }\n },\n });\n}\nfunction literal(constant) {\n const description = print(constant);\n const t = typeof constant;\n return new Struct({\n type: 'literal',\n schema: t === 'string' || t === 'number' || t === 'boolean' ? constant : null,\n validator(value) {\n return (value === constant ||\n `Expected the literal \\`${description}\\`, but received: ${print(value)}`);\n },\n });\n}\nfunction map(Key, Value) {\n return new Struct({\n type: 'map',\n schema: null,\n *entries(value) {\n if (Key && Value && value instanceof Map) {\n for (const [k, v] of value.entries()) {\n yield [k, k, Key];\n yield [k, v, Value];\n }\n }\n },\n coercer(value) {\n return value instanceof Map ? new Map(value) : value;\n },\n validator(value) {\n return (value instanceof Map ||\n `Expected a \\`Map\\` object, but received: ${print(value)}`);\n },\n });\n}\n/**\n * Ensure that no value ever passes validation.\n */\nfunction never() {\n return define('never', () => false);\n}\n/**\n * Augment an existing struct to allow `null` values.\n */\nfunction nullable(struct) {\n return new Struct({\n ...struct,\n validator: (value, ctx) => value === null || struct.validator(value, ctx),\n refiner: (value, ctx) => value === null || struct.refiner(value, ctx),\n });\n}\n/**\n * Ensure that a value is a number.\n */\nfunction number() {\n return define('number', (value) => {\n return ((typeof value === 'number' && !isNaN(value)) ||\n `Expected a number, but received: ${print(value)}`);\n });\n}\nfunction object(schema) {\n const knowns = schema ? Object.keys(schema) : [];\n const Never = never();\n return new Struct({\n type: 'object',\n schema: schema ? schema : null,\n *entries(value) {\n if (schema && isObject(value)) {\n const unknowns = new Set(Object.keys(value));\n for (const key of knowns) {\n unknowns.delete(key);\n yield [key, value[key], schema[key]];\n }\n for (const key of unknowns) {\n yield [key, value[key], Never];\n }\n }\n },\n validator(value) {\n return (isObject(value) || `Expected an object, but received: ${print(value)}`);\n },\n coercer(value) {\n return isObject(value) ? { ...value } : value;\n },\n });\n}\n/**\n * Augment a struct to allow `undefined` values.\n */\nfunction optional(struct) {\n return new Struct({\n ...struct,\n validator: (value, ctx) => value === undefined || struct.validator(value, ctx),\n refiner: (value, ctx) => value === undefined || struct.refiner(value, ctx),\n });\n}\n/**\n * Ensure that a value is an object with keys and values of specific types, but\n * without ensuring any specific shape of properties.\n *\n * Like TypeScript's `Record` utility.\n */\nfunction record(Key, Value) {\n return new Struct({\n type: 'record',\n schema: null,\n *entries(value) {\n if (isObject(value)) {\n for (const k in value) {\n const v = value[k];\n yield [k, k, Key];\n yield [k, v, Value];\n }\n }\n },\n validator(value) {\n return (isObject(value) || `Expected an object, but received: ${print(value)}`);\n },\n });\n}\n/**\n * Ensure that a value is a `RegExp`.\n *\n * Note: this does not test the value against the regular expression! For that\n * you need to use the `pattern()` refinement.\n */\nfunction regexp() {\n return define('regexp', (value) => {\n return value instanceof RegExp;\n });\n}\nfunction set(Element) {\n return new Struct({\n type: 'set',\n schema: null,\n *entries(value) {\n if (Element && value instanceof Set) {\n for (const v of value) {\n yield [v, v, Element];\n }\n }\n },\n coercer(value) {\n return value instanceof Set ? new Set(value) : value;\n },\n validator(value) {\n return (value instanceof Set ||\n `Expected a \\`Set\\` object, but received: ${print(value)}`);\n },\n });\n}\n/**\n * Ensure that a value is a string.\n */\nfunction string() {\n return define('string', (value) => {\n return (typeof value === 'string' ||\n `Expected a string, but received: ${print(value)}`);\n });\n}\n/**\n * Ensure that a value is a tuple of a specific length, and that each of its\n * elements is of a specific type.\n */\nfunction tuple(Structs) {\n const Never = never();\n return new Struct({\n type: 'tuple',\n schema: null,\n *entries(value) {\n if (Array.isArray(value)) {\n const length = Math.max(Structs.length, value.length);\n for (let i = 0; i < length; i++) {\n yield [i, value[i], Structs[i] || Never];\n }\n }\n },\n validator(value) {\n return (Array.isArray(value) ||\n `Expected an array, but received: ${print(value)}`);\n },\n });\n}\n/**\n * Ensure that a value has a set of known properties of specific types.\n *\n * Note: Unrecognized properties are allowed and untouched. This is similar to\n * how TypeScript's structural typing works.\n */\nfunction type(schema) {\n const keys = Object.keys(schema);\n return new Struct({\n type: 'type',\n schema,\n *entries(value) {\n if (isObject(value)) {\n for (const k of keys) {\n yield [k, value[k], schema[k]];\n }\n }\n },\n validator(value) {\n return (isObject(value) || `Expected an object, but received: ${print(value)}`);\n },\n coercer(value) {\n return isObject(value) ? { ...value } : value;\n },\n });\n}\n/**\n * Ensure that a value matches one of a set of types.\n */\nfunction union(Structs) {\n const description = Structs.map((s) => s.type).join(' | ');\n return new Struct({\n type: 'union',\n schema: null,\n coercer(value) {\n for (const S of Structs) {\n const [error, coerced] = S.validate(value, { coerce: true });\n if (!error) {\n return coerced;\n }\n }\n return value;\n },\n validator(value, ctx) {\n const failures = [];\n for (const S of Structs) {\n const [...tuples] = run(value, S, ctx);\n const [first] = tuples;\n if (!first[0]) {\n return [];\n }\n else {\n for (const [failure] of tuples) {\n if (failure) {\n failures.push(failure);\n }\n }\n }\n }\n return [\n `Expected the value to satisfy a union of \\`${description}\\`, but received: ${print(value)}`,\n ...failures,\n ];\n },\n });\n}\n/**\n * Ensure that any value passes validation, without widening its type to `any`.\n */\nfunction unknown() {\n return define('unknown', () => true);\n}\n\n/**\n * Augment a `Struct` to add an additional coercion step to its input.\n *\n * This allows you to transform input data before validating it, to increase the\n * likelihood that it passes validation—for example for default values, parsing\n * different formats, etc.\n *\n * Note: You must use `create(value, Struct)` on the value to have the coercion\n * take effect! Using simply `assert()` or `is()` will not use coercion.\n */\nfunction coerce(struct, condition, coercer) {\n return new Struct({\n ...struct,\n coercer: (value, ctx) => {\n return is(value, condition)\n ? struct.coercer(coercer(value, ctx), ctx)\n : struct.coercer(value, ctx);\n },\n });\n}\n/**\n * Augment a struct to replace `undefined` values with a default.\n *\n * Note: You must use `create(value, Struct)` on the value to have the coercion\n * take effect! Using simply `assert()` or `is()` will not use coercion.\n */\nfunction defaulted(struct, fallback, options = {}) {\n return coerce(struct, unknown(), (x) => {\n const f = typeof fallback === 'function' ? fallback() : fallback;\n if (x === undefined) {\n return f;\n }\n if (!options.strict && isPlainObject(x) && isPlainObject(f)) {\n const ret = { ...x };\n let changed = false;\n for (const key in f) {\n if (ret[key] === undefined) {\n ret[key] = f[key];\n changed = true;\n }\n }\n if (changed) {\n return ret;\n }\n }\n return x;\n });\n}\n/**\n * Augment a struct to trim string inputs.\n *\n * Note: You must use `create(value, Struct)` on the value to have the coercion\n * take effect! Using simply `assert()` or `is()` will not use coercion.\n */\nfunction trimmed(struct) {\n return coerce(struct, string(), (x) => x.trim());\n}\n\n/**\n * Ensure that a string, array, map, or set is empty.\n */\nfunction empty(struct) {\n return refine(struct, 'empty', (value) => {\n const size = getSize(value);\n return (size === 0 ||\n `Expected an empty ${struct.type} but received one with a size of \\`${size}\\``);\n });\n}\nfunction getSize(value) {\n if (value instanceof Map || value instanceof Set) {\n return value.size;\n }\n else {\n return value.length;\n }\n}\n/**\n * Ensure that a number or date is below a threshold.\n */\nfunction max(struct, threshold, options = {}) {\n const { exclusive } = options;\n return refine(struct, 'max', (value) => {\n return exclusive\n ? value < threshold\n : value <= threshold ||\n `Expected a ${struct.type} less than ${exclusive ? '' : 'or equal to '}${threshold} but received \\`${value}\\``;\n });\n}\n/**\n * Ensure that a number or date is above a threshold.\n */\nfunction min(struct, threshold, options = {}) {\n const { exclusive } = options;\n return refine(struct, 'min', (value) => {\n return exclusive\n ? value > threshold\n : value >= threshold ||\n `Expected a ${struct.type} greater than ${exclusive ? '' : 'or equal to '}${threshold} but received \\`${value}\\``;\n });\n}\n/**\n * Ensure that a string, array, map or set is not empty.\n */\nfunction nonempty(struct) {\n return refine(struct, 'nonempty', (value) => {\n const size = getSize(value);\n return (size > 0 || `Expected a nonempty ${struct.type} but received an empty one`);\n });\n}\n/**\n * Ensure that a string matches a regular expression.\n */\nfunction pattern(struct, regexp) {\n return refine(struct, 'pattern', (value) => {\n return (regexp.test(value) ||\n `Expected a ${struct.type} matching \\`/${regexp.source}/\\` but received \"${value}\"`);\n });\n}\n/**\n * Ensure that a string, array, number, date, map, or set has a size (or length, or time) between `min` and `max`.\n */\nfunction size(struct, min, max = min) {\n const expected = `Expected a ${struct.type}`;\n const of = min === max ? `of \\`${min}\\`` : `between \\`${min}\\` and \\`${max}\\``;\n return refine(struct, 'size', (value) => {\n if (typeof value === 'number' || value instanceof Date) {\n return ((min <= value && value <= max) ||\n `${expected} ${of} but received \\`${value}\\``);\n }\n else if (value instanceof Map || value instanceof Set) {\n const { size } = value;\n return ((min <= size && size <= max) ||\n `${expected} with a size ${of} but received one with a size of \\`${size}\\``);\n }\n else {\n const { length } = value;\n return ((min <= length && length <= max) ||\n `${expected} with a length ${of} but received one with a length of \\`${length}\\``);\n }\n });\n}\n/**\n * Augment a `Struct` to add an additional refinement to the validation.\n *\n * The refiner function is guaranteed to receive a value of the struct's type,\n * because the struct's existing validation will already have passed. This\n * allows you to layer additional validation on top of existing structs.\n */\nfunction refine(struct, name, refiner) {\n return new Struct({\n ...struct,\n *refiner(value, ctx) {\n yield* struct.refiner(value, ctx);\n const result = refiner(value, ctx);\n const failures = toFailures(result, ctx, struct, value);\n for (const failure of failures) {\n yield { ...failure, refinement: name };\n }\n },\n });\n}\n\nexport { Struct, StructError, any, array, assert, assign, bigint, boolean, coerce, create, date, defaulted, define, deprecated, dynamic, empty, enums, func, instance, integer, intersection, is, lazy, literal, map, mask, max, min, never, nonempty, nullable, number, object, omit, optional, partial, pattern, pick, record, refine, regexp, set, size, string, struct, trimmed, tuple, type, union, unknown, validate };\n//# sourceMappingURL=index.mjs.map\n","import {\n getErrorMessage\n} from \"./chunk-XYGUOY6N.mjs\";\n\n// src/assert.ts\nimport { assert as assertSuperstruct } from \"superstruct\";\nfunction isConstructable(fn) {\n return Boolean(typeof fn?.prototype?.constructor?.name === \"string\");\n}\nfunction getErrorMessageWithoutTrailingPeriod(error) {\n return getErrorMessage(error).replace(/\\.$/u, \"\");\n}\nfunction getError(ErrorWrapper, message) {\n if (isConstructable(ErrorWrapper)) {\n return new ErrorWrapper({\n message\n });\n }\n return ErrorWrapper({\n message\n });\n}\nvar AssertionError = class extends Error {\n constructor(options) {\n super(options.message);\n this.code = \"ERR_ASSERTION\";\n }\n};\nfunction assert(value, message = \"Assertion failed.\", ErrorWrapper = AssertionError) {\n if (!value) {\n if (message instanceof Error) {\n throw message;\n }\n throw getError(ErrorWrapper, message);\n }\n}\nfunction assertStruct(value, struct, errorPrefix = \"Assertion failed\", ErrorWrapper = AssertionError) {\n try {\n assertSuperstruct(value, struct);\n } catch (error) {\n throw getError(\n ErrorWrapper,\n `${errorPrefix}: ${getErrorMessageWithoutTrailingPeriod(error)}.`\n );\n }\n}\nfunction assertExhaustive(_object) {\n throw new Error(\n \"Invalid branch reached. Should be detected during compilation.\"\n );\n}\n\nexport {\n AssertionError,\n assert,\n assertStruct,\n assertExhaustive\n};\n//# sourceMappingURL=chunk-74DGVJVE.mjs.map","import {\n isNullOrUndefined,\n isObject\n} from \"./chunk-H4YFDLB7.mjs\";\n\n// src/errors.ts\nimport { ErrorWithCause } from \"pony-cause\";\nfunction isError(error) {\n return error instanceof Error || isObject(error) && error.constructor.name === \"Error\";\n}\nfunction isErrorWithCode(error) {\n return typeof error === \"object\" && error !== null && \"code\" in error;\n}\nfunction isErrorWithMessage(error) {\n return typeof error === \"object\" && error !== null && \"message\" in error;\n}\nfunction isErrorWithStack(error) {\n return typeof error === \"object\" && error !== null && \"stack\" in error;\n}\nfunction getErrorMessage(error) {\n if (isErrorWithMessage(error) && typeof error.message === \"string\") {\n return error.message;\n }\n if (isNullOrUndefined(error)) {\n return \"\";\n }\n return String(error);\n}\nfunction wrapError(originalError, message) {\n if (isError(originalError)) {\n let error;\n if (Error.length === 2) {\n error = new Error(message, { cause: originalError });\n } else {\n error = new ErrorWithCause(message, { cause: originalError });\n }\n if (isErrorWithCode(originalError)) {\n error.code = originalError.code;\n }\n return error;\n }\n if (message.length > 0) {\n return new Error(`${String(originalError)}: ${message}`);\n }\n return new Error(String(originalError));\n}\n\nexport {\n isErrorWithCode,\n isErrorWithMessage,\n isErrorWithStack,\n getErrorMessage,\n wrapError\n};\n//# sourceMappingURL=chunk-XYGUOY6N.mjs.map","import {\n assertStruct\n} from \"./chunk-74DGVJVE.mjs\";\nimport {\n hasProperty\n} from \"./chunk-H4YFDLB7.mjs\";\n\n// src/json.ts\nimport {\n any,\n array,\n boolean,\n coerce,\n create,\n define,\n integer,\n is,\n lazy,\n literal,\n nullable,\n number,\n object as superstructObject,\n optional,\n record,\n string,\n union,\n unknown,\n Struct\n} from \"superstruct\";\nvar object = (schema) => (\n // The type is slightly different from a regular object struct, because we\n // want to make properties with `undefined` in their type optional, but not\n // `undefined` itself. This means that we need a type cast.\n superstructObject(schema)\n);\nfunction hasOptional({ path, branch }) {\n const field = path[path.length - 1];\n return hasProperty(branch[branch.length - 2], field);\n}\nfunction exactOptional(struct) {\n return new Struct({\n ...struct,\n type: `optional ${struct.type}`,\n validator: (value, context) => !hasOptional(context) || struct.validator(value, context),\n refiner: (value, context) => !hasOptional(context) || struct.refiner(value, context)\n });\n}\nvar finiteNumber = () => define(\"finite number\", (value) => {\n return is(value, number()) && Number.isFinite(value);\n});\nvar UnsafeJsonStruct = union([\n literal(null),\n boolean(),\n finiteNumber(),\n string(),\n array(lazy(() => UnsafeJsonStruct)),\n record(\n string(),\n lazy(() => UnsafeJsonStruct)\n )\n]);\nvar JsonStruct = coerce(UnsafeJsonStruct, any(), (value) => {\n assertStruct(value, UnsafeJsonStruct);\n return JSON.parse(\n JSON.stringify(value, (propKey, propValue) => {\n if (propKey === \"__proto__\" || propKey === \"constructor\") {\n return void 0;\n }\n return propValue;\n })\n );\n});\nfunction isValidJson(value) {\n try {\n getSafeJson(value);\n return true;\n } catch {\n return false;\n }\n}\nfunction getSafeJson(value) {\n return create(value, JsonStruct);\n}\nfunction getJsonSize(value) {\n assertStruct(value, JsonStruct, \"Invalid JSON value\");\n const json = JSON.stringify(value);\n return new TextEncoder().encode(json).byteLength;\n}\nvar jsonrpc2 = \"2.0\";\nvar JsonRpcVersionStruct = literal(jsonrpc2);\nvar JsonRpcIdStruct = nullable(union([number(), string()]));\nvar JsonRpcErrorStruct = object({\n code: integer(),\n message: string(),\n data: exactOptional(JsonStruct),\n stack: exactOptional(string())\n});\nvar JsonRpcParamsStruct = union([record(string(), JsonStruct), array(JsonStruct)]);\nvar JsonRpcRequestStruct = object({\n id: JsonRpcIdStruct,\n jsonrpc: JsonRpcVersionStruct,\n method: string(),\n params: exactOptional(JsonRpcParamsStruct)\n});\nvar JsonRpcNotificationStruct = object({\n jsonrpc: JsonRpcVersionStruct,\n method: string(),\n params: exactOptional(JsonRpcParamsStruct)\n});\nfunction isJsonRpcNotification(value) {\n return is(value, JsonRpcNotificationStruct);\n}\nfunction assertIsJsonRpcNotification(value, ErrorWrapper) {\n assertStruct(\n value,\n JsonRpcNotificationStruct,\n \"Invalid JSON-RPC notification\",\n ErrorWrapper\n );\n}\nfunction isJsonRpcRequest(value) {\n return is(value, JsonRpcRequestStruct);\n}\nfunction assertIsJsonRpcRequest(value, ErrorWrapper) {\n assertStruct(\n value,\n JsonRpcRequestStruct,\n \"Invalid JSON-RPC request\",\n ErrorWrapper\n );\n}\nvar PendingJsonRpcResponseStruct = superstructObject({\n id: JsonRpcIdStruct,\n jsonrpc: JsonRpcVersionStruct,\n result: optional(unknown()),\n error: optional(JsonRpcErrorStruct)\n});\nvar JsonRpcSuccessStruct = object({\n id: JsonRpcIdStruct,\n jsonrpc: JsonRpcVersionStruct,\n result: JsonStruct\n});\nvar JsonRpcFailureStruct = object({\n id: JsonRpcIdStruct,\n jsonrpc: JsonRpcVersionStruct,\n error: JsonRpcErrorStruct\n});\nvar JsonRpcResponseStruct = union([\n JsonRpcSuccessStruct,\n JsonRpcFailureStruct\n]);\nfunction isPendingJsonRpcResponse(response) {\n return is(response, PendingJsonRpcResponseStruct);\n}\nfunction assertIsPendingJsonRpcResponse(response, ErrorWrapper) {\n assertStruct(\n response,\n PendingJsonRpcResponseStruct,\n \"Invalid pending JSON-RPC response\",\n ErrorWrapper\n );\n}\nfunction isJsonRpcResponse(response) {\n return is(response, JsonRpcResponseStruct);\n}\nfunction assertIsJsonRpcResponse(value, ErrorWrapper) {\n assertStruct(\n value,\n JsonRpcResponseStruct,\n \"Invalid JSON-RPC response\",\n ErrorWrapper\n );\n}\nfunction isJsonRpcSuccess(value) {\n return is(value, JsonRpcSuccessStruct);\n}\nfunction assertIsJsonRpcSuccess(value, ErrorWrapper) {\n assertStruct(\n value,\n JsonRpcSuccessStruct,\n \"Invalid JSON-RPC success response\",\n ErrorWrapper\n );\n}\nfunction isJsonRpcFailure(value) {\n return is(value, JsonRpcFailureStruct);\n}\nfunction assertIsJsonRpcFailure(value, ErrorWrapper) {\n assertStruct(\n value,\n JsonRpcFailureStruct,\n \"Invalid JSON-RPC failure response\",\n ErrorWrapper\n );\n}\nfunction isJsonRpcError(value) {\n return is(value, JsonRpcErrorStruct);\n}\nfunction assertIsJsonRpcError(value, ErrorWrapper) {\n assertStruct(\n value,\n JsonRpcErrorStruct,\n \"Invalid JSON-RPC error\",\n ErrorWrapper\n );\n}\nfunction getJsonRpcIdValidator(options) {\n const { permitEmptyString, permitFractions, permitNull } = {\n permitEmptyString: true,\n permitFractions: false,\n permitNull: true,\n ...options\n };\n const isValidJsonRpcId = (id) => {\n return Boolean(\n typeof id === \"number\" && (permitFractions || Number.isInteger(id)) || typeof id === \"string\" && (permitEmptyString || id.length > 0) || permitNull && id === null\n );\n };\n return isValidJsonRpcId;\n}\n\nexport {\n object,\n exactOptional,\n UnsafeJsonStruct,\n JsonStruct,\n isValidJson,\n getSafeJson,\n getJsonSize,\n jsonrpc2,\n JsonRpcVersionStruct,\n JsonRpcIdStruct,\n JsonRpcErrorStruct,\n JsonRpcParamsStruct,\n JsonRpcRequestStruct,\n JsonRpcNotificationStruct,\n isJsonRpcNotification,\n assertIsJsonRpcNotification,\n isJsonRpcRequest,\n assertIsJsonRpcRequest,\n PendingJsonRpcResponseStruct,\n JsonRpcSuccessStruct,\n JsonRpcFailureStruct,\n JsonRpcResponseStruct,\n isPendingJsonRpcResponse,\n assertIsPendingJsonRpcResponse,\n isJsonRpcResponse,\n assertIsJsonRpcResponse,\n isJsonRpcSuccess,\n assertIsJsonRpcSuccess,\n isJsonRpcFailure,\n assertIsJsonRpcFailure,\n isJsonRpcError,\n assertIsJsonRpcError,\n getJsonRpcIdValidator\n};\n//# sourceMappingURL=chunk-6C35XQOF.mjs.map","import {\n errorCodes,\n errorValues\n} from \"./chunk-MIW4NMY6.mjs\";\n\n// src/utils.ts\nimport {\n hasProperty,\n isValidJson,\n isObject,\n isJsonRpcError\n} from \"@metamask/utils\";\nvar FALLBACK_ERROR_CODE = errorCodes.rpc.internal;\nvar FALLBACK_MESSAGE = \"Unspecified error message. This is a bug, please report it.\";\nvar FALLBACK_ERROR = {\n code: FALLBACK_ERROR_CODE,\n message: getMessageFromCode(FALLBACK_ERROR_CODE)\n};\nvar JSON_RPC_SERVER_ERROR_MESSAGE = \"Unspecified server error.\";\nfunction getMessageFromCode(code, fallbackMessage = FALLBACK_MESSAGE) {\n if (isValidCode(code)) {\n const codeString = code.toString();\n if (hasProperty(errorValues, codeString)) {\n return errorValues[codeString].message;\n }\n if (isJsonRpcServerError(code)) {\n return JSON_RPC_SERVER_ERROR_MESSAGE;\n }\n }\n return fallbackMessage;\n}\nfunction isValidCode(code) {\n return Number.isInteger(code);\n}\nfunction serializeError(error, { fallbackError = FALLBACK_ERROR, shouldIncludeStack = true } = {}) {\n if (!isJsonRpcError(fallbackError)) {\n throw new Error(\n \"Must provide fallback error with integer number code and string message.\"\n );\n }\n const serialized = buildError(error, fallbackError);\n if (!shouldIncludeStack) {\n delete serialized.stack;\n }\n return serialized;\n}\nfunction buildError(error, fallbackError) {\n if (error && typeof error === \"object\" && \"serialize\" in error && typeof error.serialize === \"function\") {\n return error.serialize();\n }\n if (isJsonRpcError(error)) {\n return error;\n }\n const cause = serializeCause(error);\n const fallbackWithCause = {\n ...fallbackError,\n data: { cause }\n };\n return fallbackWithCause;\n}\nfunction isJsonRpcServerError(code) {\n return code >= -32099 && code <= -32e3;\n}\nfunction serializeCause(error) {\n if (Array.isArray(error)) {\n return error.map((entry) => {\n if (isValidJson(entry)) {\n return entry;\n } else if (isObject(entry)) {\n return serializeObject(entry);\n }\n return null;\n });\n } else if (isObject(error)) {\n return serializeObject(error);\n }\n if (isValidJson(error)) {\n return error;\n }\n return null;\n}\nfunction serializeObject(object) {\n return Object.getOwnPropertyNames(object).reduce(\n (acc, key) => {\n const value = object[key];\n if (isValidJson(value)) {\n acc[key] = value;\n }\n return acc;\n },\n {}\n );\n}\n\nexport {\n JSON_RPC_SERVER_ERROR_MESSAGE,\n getMessageFromCode,\n isValidCode,\n serializeError,\n serializeCause\n};\n//# sourceMappingURL=chunk-MPU3CVX3.mjs.map","module.exports = stringify\nstringify.default = stringify\nstringify.stable = deterministicStringify\nstringify.stableStringify = deterministicStringify\n\nvar LIMIT_REPLACE_NODE = '[...]'\nvar CIRCULAR_REPLACE_NODE = '[Circular]'\n\nvar arr = []\nvar replacerStack = []\n\nfunction defaultOptions () {\n return {\n depthLimit: Number.MAX_SAFE_INTEGER,\n edgesLimit: Number.MAX_SAFE_INTEGER\n }\n}\n\n// Regular stringify\nfunction stringify (obj, replacer, spacer, options) {\n if (typeof options === 'undefined') {\n options = defaultOptions()\n }\n\n decirc(obj, '', 0, [], undefined, 0, options)\n var res\n try {\n if (replacerStack.length === 0) {\n res = JSON.stringify(obj, replacer, spacer)\n } else {\n res = JSON.stringify(obj, replaceGetterValues(replacer), spacer)\n }\n } catch (_) {\n return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]')\n } finally {\n while (arr.length !== 0) {\n var part = arr.pop()\n if (part.length === 4) {\n Object.defineProperty(part[0], part[1], part[3])\n } else {\n part[0][part[1]] = part[2]\n }\n }\n }\n return res\n}\n\nfunction setReplace (replace, val, k, parent) {\n var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k)\n if (propertyDescriptor.get !== undefined) {\n if (propertyDescriptor.configurable) {\n Object.defineProperty(parent, k, { value: replace })\n arr.push([parent, k, val, propertyDescriptor])\n } else {\n replacerStack.push([val, k, replace])\n }\n } else {\n parent[k] = replace\n arr.push([parent, k, val])\n }\n}\n\nfunction decirc (val, k, edgeIndex, stack, parent, depth, options) {\n depth += 1\n var i\n if (typeof val === 'object' && val !== null) {\n for (i = 0; i < stack.length; i++) {\n if (stack[i] === val) {\n setReplace(CIRCULAR_REPLACE_NODE, val, k, parent)\n return\n }\n }\n\n if (\n typeof options.depthLimit !== 'undefined' &&\n depth > options.depthLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent)\n return\n }\n\n if (\n typeof options.edgesLimit !== 'undefined' &&\n edgeIndex + 1 > options.edgesLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent)\n return\n }\n\n stack.push(val)\n // Optimize for Arrays. Big arrays could kill the performance otherwise!\n if (Array.isArray(val)) {\n for (i = 0; i < val.length; i++) {\n decirc(val[i], i, i, stack, val, depth, options)\n }\n } else {\n var keys = Object.keys(val)\n for (i = 0; i < keys.length; i++) {\n var key = keys[i]\n decirc(val[key], key, i, stack, val, depth, options)\n }\n }\n stack.pop()\n }\n}\n\n// Stable-stringify\nfunction compareFunction (a, b) {\n if (a < b) {\n return -1\n }\n if (a > b) {\n return 1\n }\n return 0\n}\n\nfunction deterministicStringify (obj, replacer, spacer, options) {\n if (typeof options === 'undefined') {\n options = defaultOptions()\n }\n\n var tmp = deterministicDecirc(obj, '', 0, [], undefined, 0, options) || obj\n var res\n try {\n if (replacerStack.length === 0) {\n res = JSON.stringify(tmp, replacer, spacer)\n } else {\n res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer)\n }\n } catch (_) {\n return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]')\n } finally {\n // Ensure that we restore the object as it was.\n while (arr.length !== 0) {\n var part = arr.pop()\n if (part.length === 4) {\n Object.defineProperty(part[0], part[1], part[3])\n } else {\n part[0][part[1]] = part[2]\n }\n }\n }\n return res\n}\n\nfunction deterministicDecirc (val, k, edgeIndex, stack, parent, depth, options) {\n depth += 1\n var i\n if (typeof val === 'object' && val !== null) {\n for (i = 0; i < stack.length; i++) {\n if (stack[i] === val) {\n setReplace(CIRCULAR_REPLACE_NODE, val, k, parent)\n return\n }\n }\n try {\n if (typeof val.toJSON === 'function') {\n return\n }\n } catch (_) {\n return\n }\n\n if (\n typeof options.depthLimit !== 'undefined' &&\n depth > options.depthLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent)\n return\n }\n\n if (\n typeof options.edgesLimit !== 'undefined' &&\n edgeIndex + 1 > options.edgesLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent)\n return\n }\n\n stack.push(val)\n // Optimize for Arrays. Big arrays could kill the performance otherwise!\n if (Array.isArray(val)) {\n for (i = 0; i < val.length; i++) {\n deterministicDecirc(val[i], i, i, stack, val, depth, options)\n }\n } else {\n // Create a temporary object in the required way\n var tmp = {}\n var keys = Object.keys(val).sort(compareFunction)\n for (i = 0; i < keys.length; i++) {\n var key = keys[i]\n deterministicDecirc(val[key], key, i, stack, val, depth, options)\n tmp[key] = val[key]\n }\n if (typeof parent !== 'undefined') {\n arr.push([parent, k, val])\n parent[k] = tmp\n } else {\n return tmp\n }\n }\n stack.pop()\n }\n}\n\n// wraps replacer function to handle values we couldn't replace\n// and mark them as replaced value\nfunction replaceGetterValues (replacer) {\n replacer =\n typeof replacer !== 'undefined'\n ? replacer\n : function (k, v) {\n return v\n }\n return function (key, val) {\n if (replacerStack.length > 0) {\n for (var i = 0; i < replacerStack.length; i++) {\n var part = replacerStack[i]\n if (part[1] === key && part[0] === val) {\n val = part[2]\n replacerStack.splice(i, 1)\n break\n }\n }\n }\n return replacer.call(this, key, val)\n }\n}\n","import {\n serializeCause\n} from \"./chunk-MPU3CVX3.mjs\";\n\n// src/classes.ts\nimport { isPlainObject } from \"@metamask/utils\";\nimport safeStringify from \"fast-safe-stringify\";\nvar JsonRpcError = class extends Error {\n constructor(code, message, data) {\n if (!Number.isInteger(code)) {\n throw new Error('\"code\" must be an integer.');\n }\n if (!message || typeof message !== \"string\") {\n throw new Error('\"message\" must be a non-empty string.');\n }\n super(message);\n this.code = code;\n if (data !== void 0) {\n this.data = data;\n }\n }\n /**\n * Get the error as JSON-serializable object.\n *\n * @returns A plain object with all public class properties.\n */\n serialize() {\n const serialized = {\n code: this.code,\n message: this.message\n };\n if (this.data !== void 0) {\n serialized.data = this.data;\n if (isPlainObject(this.data)) {\n serialized.data.cause = serializeCause(this.data.cause);\n }\n }\n if (this.stack) {\n serialized.stack = this.stack;\n }\n return serialized;\n }\n /**\n * Get a string representation of the serialized error, omitting any circular\n * references.\n *\n * @returns A string representation of the serialized error.\n */\n toString() {\n return safeStringify(this.serialize(), stringifyReplacer, 2);\n }\n};\nvar EthereumProviderError = class extends JsonRpcError {\n /**\n * Create an Ethereum Provider JSON-RPC error.\n *\n * @param code - The JSON-RPC error code. Must be an integer in the\n * `1000 <= n <= 4999` range.\n * @param message - The JSON-RPC error message.\n * @param data - Optional data to include in the error.\n */\n constructor(code, message, data) {\n if (!isValidEthProviderCode(code)) {\n throw new Error(\n '\"code\" must be an integer such that: 1000 <= code <= 4999'\n );\n }\n super(code, message, data);\n }\n};\nfunction isValidEthProviderCode(code) {\n return Number.isInteger(code) && code >= 1e3 && code <= 4999;\n}\nfunction stringifyReplacer(_, value) {\n if (value === \"[Circular]\") {\n return void 0;\n }\n return value;\n}\n\nexport {\n JsonRpcError,\n EthereumProviderError\n};\n//# sourceMappingURL=chunk-XSKO3GXZ.mjs.map","import {\n EthereumProviderError,\n JsonRpcError\n} from \"./chunk-XSKO3GXZ.mjs\";\nimport {\n getMessageFromCode\n} from \"./chunk-MPU3CVX3.mjs\";\nimport {\n errorCodes\n} from \"./chunk-MIW4NMY6.mjs\";\n\n// src/errors.ts\nvar rpcErrors = {\n /**\n * Get a JSON RPC 2.0 Parse (-32700) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n parse: (arg) => getJsonRpcError(errorCodes.rpc.parse, arg),\n /**\n * Get a JSON RPC 2.0 Invalid Request (-32600) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n invalidRequest: (arg) => getJsonRpcError(errorCodes.rpc.invalidRequest, arg),\n /**\n * Get a JSON RPC 2.0 Invalid Params (-32602) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n invalidParams: (arg) => getJsonRpcError(errorCodes.rpc.invalidParams, arg),\n /**\n * Get a JSON RPC 2.0 Method Not Found (-32601) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n methodNotFound: (arg) => getJsonRpcError(errorCodes.rpc.methodNotFound, arg),\n /**\n * Get a JSON RPC 2.0 Internal (-32603) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n internal: (arg) => getJsonRpcError(errorCodes.rpc.internal, arg),\n /**\n * Get a JSON RPC 2.0 Server error.\n * Permits integer error codes in the [ -32099 <= -32005 ] range.\n * Codes -32000 through -32004 are reserved by EIP-1474.\n *\n * @param opts - The error options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n server: (opts) => {\n if (!opts || typeof opts !== \"object\" || Array.isArray(opts)) {\n throw new Error(\n \"Ethereum RPC Server errors must provide single object argument.\"\n );\n }\n const { code } = opts;\n if (!Number.isInteger(code) || code > -32005 || code < -32099) {\n throw new Error(\n '\"code\" must be an integer such that: -32099 <= code <= -32005'\n );\n }\n return getJsonRpcError(code, opts);\n },\n /**\n * Get an Ethereum JSON RPC Invalid Input (-32000) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n invalidInput: (arg) => getJsonRpcError(errorCodes.rpc.invalidInput, arg),\n /**\n * Get an Ethereum JSON RPC Resource Not Found (-32001) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n resourceNotFound: (arg) => getJsonRpcError(errorCodes.rpc.resourceNotFound, arg),\n /**\n * Get an Ethereum JSON RPC Resource Unavailable (-32002) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n resourceUnavailable: (arg) => getJsonRpcError(errorCodes.rpc.resourceUnavailable, arg),\n /**\n * Get an Ethereum JSON RPC Transaction Rejected (-32003) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n transactionRejected: (arg) => getJsonRpcError(errorCodes.rpc.transactionRejected, arg),\n /**\n * Get an Ethereum JSON RPC Method Not Supported (-32004) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n methodNotSupported: (arg) => getJsonRpcError(errorCodes.rpc.methodNotSupported, arg),\n /**\n * Get an Ethereum JSON RPC Limit Exceeded (-32005) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link JsonRpcError} class.\n */\n limitExceeded: (arg) => getJsonRpcError(errorCodes.rpc.limitExceeded, arg)\n};\nvar providerErrors = {\n /**\n * Get an Ethereum Provider User Rejected Request (4001) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link EthereumProviderError} class.\n */\n userRejectedRequest: (arg) => {\n return getEthProviderError(errorCodes.provider.userRejectedRequest, arg);\n },\n /**\n * Get an Ethereum Provider Unauthorized (4100) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link EthereumProviderError} class.\n */\n unauthorized: (arg) => {\n return getEthProviderError(errorCodes.provider.unauthorized, arg);\n },\n /**\n * Get an Ethereum Provider Unsupported Method (4200) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link EthereumProviderError} class.\n */\n unsupportedMethod: (arg) => {\n return getEthProviderError(errorCodes.provider.unsupportedMethod, arg);\n },\n /**\n * Get an Ethereum Provider Not Connected (4900) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link EthereumProviderError} class.\n */\n disconnected: (arg) => {\n return getEthProviderError(errorCodes.provider.disconnected, arg);\n },\n /**\n * Get an Ethereum Provider Chain Not Connected (4901) error.\n *\n * @param arg - The error message or options bag.\n * @returns An instance of the {@link EthereumProviderError} class.\n */\n chainDisconnected: (arg) => {\n return getEthProviderError(errorCodes.provider.chainDisconnected, arg);\n },\n /**\n * Get a custom Ethereum Provider error.\n *\n * @param opts - The error options bag.\n * @returns An instance of the {@link EthereumProviderError} class.\n */\n custom: (opts) => {\n if (!opts || typeof opts !== \"object\" || Array.isArray(opts)) {\n throw new Error(\n \"Ethereum Provider custom errors must provide single object argument.\"\n );\n }\n const { code, message, data } = opts;\n if (!message || typeof message !== \"string\") {\n throw new Error('\"message\" must be a nonempty string');\n }\n return new EthereumProviderError(code, message, data);\n }\n};\nfunction getJsonRpcError(code, arg) {\n const [message, data] = parseOpts(arg);\n return new JsonRpcError(code, message ?? getMessageFromCode(code), data);\n}\nfunction getEthProviderError(code, arg) {\n const [message, data] = parseOpts(arg);\n return new EthereumProviderError(\n code,\n message ?? getMessageFromCode(code),\n data\n );\n}\nfunction parseOpts(arg) {\n if (arg) {\n if (typeof arg === \"string\") {\n return [arg];\n } else if (typeof arg === \"object\" && !Array.isArray(arg)) {\n const { message, data } = arg;\n if (message && typeof message !== \"string\") {\n throw new Error(\"Must specify string message.\");\n }\n return [message ?? void 0, data];\n }\n }\n return [];\n}\n\nexport {\n rpcErrors,\n providerErrors\n};\n//# sourceMappingURL=chunk-KYP27U3C.mjs.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst events_1 = require(\"events\");\nfunction safeApply(handler, context, args) {\n try {\n Reflect.apply(handler, context, args);\n }\n catch (err) {\n // Throw error after timeout so as not to interrupt the stack\n setTimeout(() => {\n throw err;\n });\n }\n}\nfunction arrayClone(arr) {\n const n = arr.length;\n const copy = new Array(n);\n for (let i = 0; i < n; i += 1) {\n copy[i] = arr[i];\n }\n return copy;\n}\nclass SafeEventEmitter extends events_1.EventEmitter {\n emit(type, ...args) {\n let doError = type === 'error';\n const events = this._events;\n if (events !== undefined) {\n doError = doError && events.error === undefined;\n }\n else if (!doError) {\n return false;\n }\n // If there is no 'error' event listener then throw.\n if (doError) {\n let er;\n if (args.length > 0) {\n [er] = args;\n }\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n const err = new Error(`Unhandled error.${er ? ` (${er.message})` : ''}`);\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n const handler = events[type];\n if (handler === undefined) {\n return false;\n }\n if (typeof handler === 'function') {\n safeApply(handler, this, args);\n }\n else {\n const len = handler.length;\n const listeners = arrayClone(handler);\n for (let i = 0; i < len; i += 1) {\n safeApply(listeners[i], this, args);\n }\n }\n return true;\n }\n}\nexports.default = SafeEventEmitter;\n//# sourceMappingURL=index.js.map","import {\n __privateAdd,\n __privateGet,\n __privateMethod,\n __privateSet\n} from \"./chunk-XUI43LEZ.mjs\";\n\n// src/JsonRpcEngine.ts\nimport { errorCodes, JsonRpcError, serializeError } from \"@metamask/rpc-errors\";\nimport SafeEventEmitter from \"@metamask/safe-event-emitter\";\nimport {\n hasProperty,\n isJsonRpcNotification,\n isJsonRpcRequest\n} from \"@metamask/utils\";\nvar DESTROYED_ERROR_MESSAGE = \"This engine is destroyed and can no longer be used.\";\nvar _isDestroyed, _middleware, _notificationHandler, _assertIsNotDestroyed, assertIsNotDestroyed_fn, _handleBatch, handleBatch_fn, _handle, handle_fn, _processRequest, processRequest_fn, _runAllMiddleware, runAllMiddleware_fn, _runMiddleware, runMiddleware_fn, _runReturnHandlers, runReturnHandlers_fn, _checkForCompletion, checkForCompletion_fn;\nvar _JsonRpcEngine = class _JsonRpcEngine extends SafeEventEmitter {\n /**\n * Constructs a {@link JsonRpcEngine} instance.\n *\n * @param options - Options bag.\n * @param options.notificationHandler - A function for handling JSON-RPC\n * notifications. A JSON-RPC notification is defined as a JSON-RPC request\n * without an `id` property. If this option is _not_ provided, notifications\n * will be treated the same as requests. If this option _is_ provided,\n * notifications will be passed to the handler function without touching\n * the engine's middleware stack. This function should not throw or reject.\n */\n constructor({ notificationHandler } = {}) {\n super();\n /**\n * Throws an error if this engine is destroyed.\n */\n __privateAdd(this, _assertIsNotDestroyed);\n /**\n * Handles a batch of JSON-RPC requests, either in `async` or callback\n * fashion.\n *\n * @param requests - The request objects to process.\n * @param callback - The completion callback.\n * @returns The array of responses, or nothing if a callback was specified.\n */\n __privateAdd(this, _handleBatch);\n /**\n * Ensures that the request / notification object is valid, processes it, and\n * passes any error and response object to the given callback.\n *\n * Does not reject.\n *\n * @param callerReq - The request object from the caller.\n * @param callback - The callback function.\n * @returns Nothing.\n */\n __privateAdd(this, _handle);\n /**\n * Indicating whether this engine is destroyed or not.\n */\n __privateAdd(this, _isDestroyed, false);\n __privateAdd(this, _middleware, void 0);\n __privateAdd(this, _notificationHandler, void 0);\n __privateSet(this, _middleware, []);\n __privateSet(this, _notificationHandler, notificationHandler);\n }\n /**\n * Calls the `destroy()` function of any middleware with that property, clears\n * the middleware array, and marks this engine as destroyed. A destroyed\n * engine cannot be used.\n */\n destroy() {\n __privateGet(this, _middleware).forEach(\n (middleware) => {\n if (\n // `in` walks the prototype chain, which is probably the desired\n // behavior here.\n \"destroy\" in middleware && typeof middleware.destroy === \"function\"\n ) {\n middleware.destroy();\n }\n }\n );\n __privateSet(this, _middleware, []);\n __privateSet(this, _isDestroyed, true);\n }\n /**\n * Add a middleware function to the engine's middleware stack.\n *\n * @param middleware - The middleware function to add.\n */\n push(middleware) {\n __privateMethod(this, _assertIsNotDestroyed, assertIsNotDestroyed_fn).call(this);\n __privateGet(this, _middleware).push(middleware);\n }\n handle(req, callback) {\n __privateMethod(this, _assertIsNotDestroyed, assertIsNotDestroyed_fn).call(this);\n if (callback && typeof callback !== \"function\") {\n throw new Error('\"callback\" must be a function if provided.');\n }\n if (Array.isArray(req)) {\n if (callback) {\n return __privateMethod(this, _handleBatch, handleBatch_fn).call(\n this,\n req,\n // This assertion is safe because of the runtime checks validating that `req` is an array and `callback` is defined.\n // There is only one overload signature that satisfies both conditions, and its `callback` type is the one that's being asserted.\n callback\n );\n }\n return __privateMethod(this, _handleBatch, handleBatch_fn).call(this, req);\n }\n if (callback) {\n return __privateMethod(this, _handle, handle_fn).call(this, req, callback);\n }\n return this._promiseHandle(req);\n }\n /**\n * Returns this engine as a middleware function that can be pushed to other\n * engines.\n *\n * @returns This engine as a middleware function.\n */\n asMiddleware() {\n __privateMethod(this, _assertIsNotDestroyed, assertIsNotDestroyed_fn).call(this);\n return async (req, res, next, end) => {\n var _a, _b;\n try {\n const [middlewareError, isComplete, returnHandlers] = await __privateMethod(_a = _JsonRpcEngine, _runAllMiddleware, runAllMiddleware_fn).call(_a, req, res, __privateGet(this, _middleware));\n if (isComplete) {\n await __privateMethod(_b = _JsonRpcEngine, _runReturnHandlers, runReturnHandlers_fn).call(_b, returnHandlers);\n return end(middlewareError);\n }\n return next(async (handlerCallback) => {\n var _a2;\n try {\n await __privateMethod(_a2 = _JsonRpcEngine, _runReturnHandlers, runReturnHandlers_fn).call(_a2, returnHandlers);\n } catch (error) {\n return handlerCallback(error);\n }\n return handlerCallback();\n });\n } catch (error) {\n return end(error);\n }\n };\n }\n /**\n * A promise-wrapped _handle.\n *\n * @param request - The JSON-RPC request.\n * @returns The JSON-RPC response.\n */\n // This function is used in tests, so we cannot easily change it to use the\n // hash syntax.\n // eslint-disable-next-line no-restricted-syntax\n async _promiseHandle(request) {\n return new Promise((resolve, reject) => {\n __privateMethod(this, _handle, handle_fn).call(this, request, (error, res) => {\n if (error && res === void 0) {\n reject(error);\n } else {\n resolve(res);\n }\n }).catch(reject);\n });\n }\n};\n_isDestroyed = new WeakMap();\n_middleware = new WeakMap();\n_notificationHandler = new WeakMap();\n_assertIsNotDestroyed = new WeakSet();\nassertIsNotDestroyed_fn = function() {\n if (__privateGet(this, _isDestroyed)) {\n throw new Error(DESTROYED_ERROR_MESSAGE);\n }\n};\n_handleBatch = new WeakSet();\nhandleBatch_fn = async function(requests, callback) {\n try {\n if (requests.length === 0) {\n const response = [\n {\n id: null,\n jsonrpc: \"2.0\",\n error: new JsonRpcError(\n errorCodes.rpc.invalidRequest,\n \"Request batch must contain plain objects. Received an empty array\"\n )\n }\n ];\n if (callback) {\n return callback(null, response);\n }\n return response;\n }\n const responses = (await Promise.all(\n // 1. Begin executing each request in the order received\n requests.map(this._promiseHandle.bind(this))\n )).filter(\n // Filter out any notification responses.\n (response) => response !== void 0\n );\n if (callback) {\n return callback(null, responses);\n }\n return responses;\n } catch (error) {\n if (callback) {\n return callback(error);\n }\n throw error;\n }\n};\n_handle = new WeakSet();\nhandle_fn = async function(callerReq, callback) {\n var _a;\n if (!callerReq || Array.isArray(callerReq) || typeof callerReq !== \"object\") {\n const error2 = new JsonRpcError(\n errorCodes.rpc.invalidRequest,\n `Requests must be plain objects. Received: ${typeof callerReq}`,\n { request: callerReq }\n );\n return callback(error2, { id: null, jsonrpc: \"2.0\", error: error2 });\n }\n if (typeof callerReq.method !== \"string\") {\n const error2 = new JsonRpcError(\n errorCodes.rpc.invalidRequest,\n `Must specify a string method. Received: ${typeof callerReq.method}`,\n { request: callerReq }\n );\n if (__privateGet(this, _notificationHandler) && !isJsonRpcRequest(callerReq)) {\n return callback(null);\n }\n return callback(error2, {\n // Typecast: This could be a notification, but we want to access the\n // `id` even if it doesn't exist.\n id: callerReq.id ?? null,\n jsonrpc: \"2.0\",\n error: error2\n });\n } else if (__privateGet(this, _notificationHandler) && isJsonRpcNotification(callerReq) && !isJsonRpcRequest(callerReq)) {\n try {\n await __privateGet(this, _notificationHandler).call(this, callerReq);\n } catch (error2) {\n return callback(error2);\n }\n return callback(null);\n }\n let error = null;\n const req = { ...callerReq };\n const res = {\n id: req.id,\n jsonrpc: req.jsonrpc\n };\n try {\n await __privateMethod(_a = _JsonRpcEngine, _processRequest, processRequest_fn).call(_a, req, res, __privateGet(this, _middleware));\n } catch (_error) {\n error = _error;\n }\n if (error) {\n delete res.result;\n if (!res.error) {\n res.error = serializeError(error);\n }\n }\n return callback(error, res);\n};\n_processRequest = new WeakSet();\nprocessRequest_fn = async function(req, res, middlewares) {\n var _a, _b, _c;\n const [error, isComplete, returnHandlers] = await __privateMethod(_a = _JsonRpcEngine, _runAllMiddleware, runAllMiddleware_fn).call(_a, req, res, middlewares);\n __privateMethod(_b = _JsonRpcEngine, _checkForCompletion, checkForCompletion_fn).call(_b, req, res, isComplete);\n await __privateMethod(_c = _JsonRpcEngine, _runReturnHandlers, runReturnHandlers_fn).call(_c, returnHandlers);\n if (error) {\n throw error;\n }\n};\n_runAllMiddleware = new WeakSet();\nrunAllMiddleware_fn = async function(req, res, middlewares) {\n var _a;\n const returnHandlers = [];\n let error = null;\n let isComplete = false;\n for (const middleware of middlewares) {\n [error, isComplete] = await __privateMethod(_a = _JsonRpcEngine, _runMiddleware, runMiddleware_fn).call(_a, req, res, middleware, returnHandlers);\n if (isComplete) {\n break;\n }\n }\n return [error, isComplete, returnHandlers.reverse()];\n};\n_runMiddleware = new WeakSet();\nrunMiddleware_fn = async function(request, response, middleware, returnHandlers) {\n return new Promise((resolve) => {\n const end = (error) => {\n const parsedError = error || response.error;\n if (parsedError) {\n response.error = serializeError(parsedError);\n }\n resolve([parsedError, true]);\n };\n const next = (returnHandler) => {\n if (response.error) {\n end(response.error);\n } else {\n if (returnHandler) {\n if (typeof returnHandler !== \"function\") {\n end(\n new JsonRpcError(\n errorCodes.rpc.internal,\n `JsonRpcEngine: \"next\" return handlers must be functions. Received \"${typeof returnHandler}\" for request:\n${jsonify(\n request\n )}`,\n { request }\n )\n );\n }\n returnHandlers.push(returnHandler);\n }\n resolve([null, false]);\n }\n };\n try {\n middleware(request, response, next, end);\n } catch (error) {\n end(error);\n }\n });\n};\n_runReturnHandlers = new WeakSet();\nrunReturnHandlers_fn = async function(handlers) {\n for (const handler of handlers) {\n await new Promise((resolve, reject) => {\n handler((error) => error ? reject(error) : resolve());\n });\n }\n};\n_checkForCompletion = new WeakSet();\ncheckForCompletion_fn = function(request, response, isComplete) {\n if (!hasProperty(response, \"result\") && !hasProperty(response, \"error\")) {\n throw new JsonRpcError(\n errorCodes.rpc.internal,\n `JsonRpcEngine: Response has no error or result for request:\n${jsonify(\n request\n )}`,\n { request }\n );\n }\n if (!isComplete) {\n throw new JsonRpcError(\n errorCodes.rpc.internal,\n `JsonRpcEngine: Nothing ended request:\n${jsonify(request)}`,\n { request }\n );\n }\n};\n/**\n * For the given request and response, runs all middleware and their return\n * handlers, if any, and ensures that internal request processing semantics\n * are satisfied.\n *\n * @param req - The request object.\n * @param res - The response object.\n * @param middlewares - The stack of middleware functions.\n */\n__privateAdd(_JsonRpcEngine, _processRequest);\n/**\n * Serially executes the given stack of middleware.\n *\n * @param req - The request object.\n * @param res - The response object.\n * @param middlewares - The stack of middleware functions to execute.\n * @returns An array of any error encountered during middleware execution,\n * a boolean indicating whether the request was completed, and an array of\n * middleware-defined return handlers.\n */\n__privateAdd(_JsonRpcEngine, _runAllMiddleware);\n/**\n * Runs an individual middleware function.\n *\n * @param request - The request object.\n * @param response - The response object.\n * @param middleware - The middleware function to execute.\n * @param returnHandlers - The return handlers array for the current request.\n * @returns An array of any error encountered during middleware exection,\n * and a boolean indicating whether the request should end.\n */\n__privateAdd(_JsonRpcEngine, _runMiddleware);\n/**\n * Serially executes array of return handlers. The request and response are\n * assumed to be in their scope.\n *\n * @param handlers - The return handlers to execute.\n */\n__privateAdd(_JsonRpcEngine, _runReturnHandlers);\n/**\n * Throws an error if the response has neither a result nor an error, or if\n * the \"isComplete\" flag is falsy.\n *\n * @param request - The request object.\n * @param response - The response object.\n * @param isComplete - Boolean from {@link JsonRpcEngine.#runAllMiddleware}\n * indicating whether a middleware ended the request.\n */\n__privateAdd(_JsonRpcEngine, _checkForCompletion);\nvar JsonRpcEngine = _JsonRpcEngine;\nfunction jsonify(request) {\n return JSON.stringify(request, null, 2);\n}\n\nexport {\n JsonRpcEngine\n};\n//# sourceMappingURL=chunk-5HCYV4FV.mjs.map","import {\n createRpcWarningMiddleware\n} from \"./chunk-5FL6VRJJ.mjs\";\n\n// src/utils.ts\nimport { createIdRemapMiddleware } from \"@metamask/json-rpc-engine\";\nimport { rpcErrors } from \"@metamask/rpc-errors\";\nvar EMITTED_NOTIFICATIONS = Object.freeze([\n \"eth_subscription\"\n // per eth-json-rpc-filters/subscriptionManager\n]);\nvar getDefaultExternalMiddleware = (logger = console) => [\n createIdRemapMiddleware(),\n createErrorMiddleware(logger),\n createRpcWarningMiddleware(logger)\n];\nfunction createErrorMiddleware(log) {\n return (request, response, next) => {\n if (typeof request.method !== \"string\" || !request.method) {\n response.error = rpcErrors.invalidRequest({\n message: `The request 'method' must be a non-empty string.`,\n data: request\n });\n }\n next((done) => {\n const { error } = response;\n if (!error) {\n return done();\n }\n log.error(`MetaMask - RPC Error: ${error.message}`, error);\n return done();\n });\n };\n}\nvar getRpcPromiseCallback = (resolve, reject, unwrapResult = true) => (error, response) => {\n if (error || response.error) {\n reject(error || response.error);\n } else {\n !unwrapResult || Array.isArray(response) ? resolve(response) : resolve(response.result);\n }\n};\nvar isValidChainId = (chainId) => Boolean(chainId) && typeof chainId === \"string\" && chainId.startsWith(\"0x\");\nvar isValidNetworkVersion = (networkVersion) => Boolean(networkVersion) && typeof networkVersion === \"string\";\nvar NOOP = () => void 0;\n\nexport {\n EMITTED_NOTIFICATIONS,\n getDefaultExternalMiddleware,\n getRpcPromiseCallback,\n isValidChainId,\n isValidNetworkVersion,\n NOOP\n};\n//# sourceMappingURL=chunk-ZN7WV55J.mjs.map","import {\n NOOP\n} from \"./chunk-ZN7WV55J.mjs\";\nimport {\n messages_default\n} from \"./chunk-ZGDQ3IYD.mjs\";\n\n// src/siteMetadata.ts\nasync function sendSiteMetadata(engine, log) {\n try {\n const domainMetadata = await getSiteMetadata();\n engine.handle(\n {\n jsonrpc: \"2.0\",\n id: 1,\n method: \"metamask_sendDomainMetadata\",\n params: domainMetadata\n },\n NOOP\n );\n } catch (error) {\n log.error({\n message: messages_default.errors.sendSiteMetadata(),\n originalError: error\n });\n }\n}\nasync function getSiteMetadata() {\n return {\n name: getSiteName(window),\n icon: await getSiteIcon(window)\n };\n}\nfunction getSiteName(windowObject) {\n const { document: document2 } = windowObject;\n const siteName = document2.querySelector(\n 'head > meta[property=\"og:site_name\"]'\n );\n if (siteName) {\n return siteName.content;\n }\n const metaTitle = document2.querySelector(\n 'head > meta[name=\"title\"]'\n );\n if (metaTitle) {\n return metaTitle.content;\n }\n if (document2.title && document2.title.length > 0) {\n return document2.title;\n }\n return window.location.hostname;\n}\nasync function getSiteIcon(windowObject) {\n const { document: document2 } = windowObject;\n const icons = document2.querySelectorAll(\n 'head > link[rel~=\"icon\"]'\n );\n for (const icon of Array.from(icons)) {\n if (icon && await imgExists(icon.href)) {\n return icon.href;\n }\n }\n return null;\n}\nasync function imgExists(url) {\n return new Promise((resolve, reject) => {\n try {\n const img = document.createElement(\"img\");\n img.onload = () => resolve(true);\n img.onerror = () => resolve(false);\n img.src = url;\n } catch (error) {\n reject(error);\n }\n });\n}\n\nexport {\n sendSiteMetadata\n};\n//# sourceMappingURL=chunk-55ZQ55PO.mjs.map","var __accessCheck = (obj, member, msg) => {\n if (!member.has(obj))\n throw TypeError(\"Cannot \" + msg);\n};\nvar __privateGet = (obj, member, getter) => {\n __accessCheck(obj, member, \"read from private field\");\n return getter ? getter.call(obj) : member.get(obj);\n};\nvar __privateAdd = (obj, member, value) => {\n if (member.has(obj))\n throw TypeError(\"Cannot add the same private member more than once\");\n member instanceof WeakSet ? member.add(obj) : member.set(obj, value);\n};\nvar __privateSet = (obj, member, value, setter) => {\n __accessCheck(obj, member, \"write to private field\");\n setter ? setter.call(obj, value) : member.set(obj, value);\n return value;\n};\n\nexport {\n __privateGet,\n __privateAdd,\n __privateSet\n};\n//# sourceMappingURL=chunk-X66SUIEF.mjs.map","import { EventEmitter } from 'events';\nfunction safeApply(handler, context, args) {\n try {\n Reflect.apply(handler, context, args);\n }\n catch (err) {\n // Throw error after timeout so as not to interrupt the stack\n setTimeout(() => {\n throw err;\n });\n }\n}\nfunction arrayClone(arr) {\n const n = arr.length;\n const copy = new Array(n);\n for (let i = 0; i < n; i += 1) {\n copy[i] = arr[i];\n }\n return copy;\n}\nexport default class SafeEventEmitter extends EventEmitter {\n emit(type, ...args) {\n let doError = type === 'error';\n const events = this._events;\n if (events !== undefined) {\n doError = doError && events.error === undefined;\n }\n else if (!doError) {\n return false;\n }\n // If there is no 'error' event listener then throw.\n if (doError) {\n let er;\n if (args.length > 0) {\n [er] = args;\n }\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n const err = new Error(`Unhandled error.${er ? ` (${er.message})` : ''}`);\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n const handler = events[type];\n if (handler === undefined) {\n return false;\n }\n if (typeof handler === 'function') {\n safeApply(handler, this, args);\n }\n else {\n const len = handler.length;\n const listeners = arrayClone(handler);\n for (let i = 0; i < len; i += 1) {\n safeApply(listeners[i], this, args);\n }\n }\n return true;\n }\n}\n//# sourceMappingURL=index.mjs.map","'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n","import {\n getRpcPromiseCallback,\n isValidChainId\n} from \"./chunk-ZN7WV55J.mjs\";\nimport {\n messages_default\n} from \"./chunk-ZGDQ3IYD.mjs\";\nimport {\n __privateAdd,\n __privateGet,\n __privateSet\n} from \"./chunk-X66SUIEF.mjs\";\n\n// src/BaseProvider.ts\nimport { JsonRpcEngine } from \"@metamask/json-rpc-engine\";\nimport { rpcErrors, JsonRpcError } from \"@metamask/rpc-errors\";\nimport SafeEventEmitter from \"@metamask/safe-event-emitter\";\nimport dequal from \"fast-deep-equal\";\nvar _chainId, _selectedAddress;\nvar _BaseProvider = class _BaseProvider extends SafeEventEmitter {\n /**\n * Create a new instance of the provider.\n *\n * @param options - An options bag.\n * @param options.logger - The logging API to use. Default: `console`.\n * @param options.maxEventListeners - The maximum number of event\n * listeners. Default: 100.\n * @param options.rpcMiddleware - The RPC middleware stack. Default: [].\n */\n constructor({\n logger = console,\n maxEventListeners = 100,\n rpcMiddleware = []\n } = {}) {\n super();\n /**\n * The chain ID of the currently connected Ethereum chain.\n * See [chainId.network]{@link https://chainid.network} for more information.\n */\n __privateAdd(this, _chainId, void 0);\n /**\n * The user's currently selected Ethereum address.\n * If null, MetaMask is either locked or the user has not permitted any\n * addresses to be viewed.\n */\n __privateAdd(this, _selectedAddress, void 0);\n this._log = logger;\n this.setMaxListeners(maxEventListeners);\n this._state = {\n ..._BaseProvider._defaultState\n };\n __privateSet(this, _selectedAddress, null);\n __privateSet(this, _chainId, null);\n this._handleAccountsChanged = this._handleAccountsChanged.bind(this);\n this._handleConnect = this._handleConnect.bind(this);\n this._handleChainChanged = this._handleChainChanged.bind(this);\n this._handleDisconnect = this._handleDisconnect.bind(this);\n this._handleUnlockStateChanged = this._handleUnlockStateChanged.bind(this);\n this._rpcRequest = this._rpcRequest.bind(this);\n this.request = this.request.bind(this);\n const rpcEngine = new JsonRpcEngine();\n rpcMiddleware.forEach((middleware) => rpcEngine.push(middleware));\n this._rpcEngine = rpcEngine;\n }\n //====================\n // Public Properties\n //====================\n get chainId() {\n return __privateGet(this, _chainId);\n }\n get selectedAddress() {\n return __privateGet(this, _selectedAddress);\n }\n //====================\n // Public Methods\n //====================\n /**\n * Returns whether the provider can process RPC requests.\n *\n * @returns Whether the provider can process RPC requests.\n */\n isConnected() {\n return this._state.isConnected;\n }\n /**\n * Submits an RPC request for the given method, with the given params.\n * Resolves with the result of the method call, or rejects on error.\n *\n * @param args - The RPC request arguments.\n * @param args.method - The RPC method name.\n * @param args.params - The parameters for the RPC method.\n * @returns A Promise that resolves with the result of the RPC method,\n * or rejects if an error is encountered.\n */\n async request(args) {\n if (!args || typeof args !== \"object\" || Array.isArray(args)) {\n throw rpcErrors.invalidRequest({\n message: messages_default.errors.invalidRequestArgs(),\n data: args\n });\n }\n const { method, params } = args;\n if (typeof method !== \"string\" || method.length === 0) {\n throw rpcErrors.invalidRequest({\n message: messages_default.errors.invalidRequestMethod(),\n data: args\n });\n }\n if (params !== void 0 && !Array.isArray(params) && (typeof params !== \"object\" || params === null)) {\n throw rpcErrors.invalidRequest({\n message: messages_default.errors.invalidRequestParams(),\n data: args\n });\n }\n const payload = params === void 0 || params === null ? {\n method\n } : {\n method,\n params\n };\n return new Promise((resolve, reject) => {\n this._rpcRequest(payload, getRpcPromiseCallback(resolve, reject));\n });\n }\n //====================\n // Private Methods\n //====================\n /**\n * MUST be called by child classes.\n *\n * Sets initial state if provided and marks this provider as initialized.\n * Throws if called more than once.\n *\n * Permits the `networkVersion` field in the parameter object for\n * compatibility with child classes that use this value.\n *\n * @param initialState - The provider's initial state.\n * @param initialState.accounts - The user's accounts.\n * @param initialState.chainId - The chain ID.\n * @param initialState.isUnlocked - Whether the user has unlocked MetaMask.\n * @param initialState.networkVersion - The network version.\n * @fires BaseProvider#_initialized - If `initialState` is defined.\n * @fires BaseProvider#connect - If `initialState` is defined.\n */\n _initializeState(initialState) {\n if (this._state.initialized) {\n throw new Error(\"Provider already initialized.\");\n }\n if (initialState) {\n const { accounts, chainId, isUnlocked, networkVersion } = initialState;\n this._handleConnect(chainId);\n this._handleChainChanged({ chainId, networkVersion });\n this._handleUnlockStateChanged({ accounts, isUnlocked });\n this._handleAccountsChanged(accounts);\n }\n this._state.initialized = true;\n this.emit(\"_initialized\");\n }\n /**\n * Internal RPC method. Forwards requests to background via the RPC engine.\n * Also remap ids inbound and outbound.\n *\n * @param payload - The RPC request object.\n * @param callback - The consumer's callback.\n * @returns The result of the RPC request.\n */\n _rpcRequest(payload, callback) {\n let callbackWrapper = callback;\n if (!Array.isArray(payload)) {\n if (!payload.jsonrpc) {\n payload.jsonrpc = \"2.0\";\n }\n if (payload.method === \"eth_accounts\" || payload.method === \"eth_requestAccounts\") {\n callbackWrapper = (error, response) => {\n this._handleAccountsChanged(\n response.result ?? [],\n payload.method === \"eth_accounts\"\n );\n callback(error, response);\n };\n }\n return this._rpcEngine.handle(payload, callbackWrapper);\n }\n return this._rpcEngine.handle(payload, callbackWrapper);\n }\n /**\n * When the provider becomes connected, updates internal state and emits\n * required events. Idempotent.\n *\n * @param chainId - The ID of the newly connected chain.\n * @fires MetaMaskInpageProvider#connect\n */\n _handleConnect(chainId) {\n if (!this._state.isConnected) {\n this._state.isConnected = true;\n this.emit(\"connect\", { chainId });\n this._log.debug(messages_default.info.connected(chainId));\n }\n }\n /**\n * When the provider becomes disconnected, updates internal state and emits\n * required events. Idempotent with respect to the isRecoverable parameter.\n *\n * Error codes per the CloseEvent status codes as required by EIP-1193:\n * https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent#Status_codes.\n *\n * @param isRecoverable - Whether the disconnection is recoverable.\n * @param errorMessage - A custom error message.\n * @fires BaseProvider#disconnect - If the disconnection is not recoverable.\n */\n _handleDisconnect(isRecoverable, errorMessage) {\n if (this._state.isConnected || !this._state.isPermanentlyDisconnected && !isRecoverable) {\n this._state.isConnected = false;\n let error;\n if (isRecoverable) {\n error = new JsonRpcError(\n 1013,\n // Try again later\n errorMessage ?? messages_default.errors.disconnected()\n );\n this._log.debug(error);\n } else {\n error = new JsonRpcError(\n 1011,\n // Internal error\n errorMessage ?? messages_default.errors.permanentlyDisconnected()\n );\n this._log.error(error);\n __privateSet(this, _chainId, null);\n this._state.accounts = null;\n __privateSet(this, _selectedAddress, null);\n this._state.isUnlocked = false;\n this._state.isPermanentlyDisconnected = true;\n }\n this.emit(\"disconnect\", error);\n }\n }\n /**\n * Upon receipt of a new `chainId`, emits the corresponding event and sets\n * and sets relevant public state. Does nothing if the given `chainId` is\n * equivalent to the existing value.\n *\n * Permits the `networkVersion` field in the parameter object for\n * compatibility with child classes that use this value.\n *\n * @fires BaseProvider#chainChanged\n * @param networkInfo - An object with network info.\n * @param networkInfo.chainId - The latest chain ID.\n */\n _handleChainChanged({\n chainId\n } = {}) {\n if (!isValidChainId(chainId)) {\n this._log.error(messages_default.errors.invalidNetworkParams(), { chainId });\n return;\n }\n this._handleConnect(chainId);\n if (chainId !== __privateGet(this, _chainId)) {\n __privateSet(this, _chainId, chainId);\n if (this._state.initialized) {\n this.emit(\"chainChanged\", __privateGet(this, _chainId));\n }\n }\n }\n /**\n * Called when accounts may have changed. Diffs the new accounts value with\n * the current one, updates all state as necessary, and emits the\n * accountsChanged event.\n *\n * @param accounts - The new accounts value.\n * @param isEthAccounts - Whether the accounts value was returned by\n * a call to eth_accounts.\n */\n _handleAccountsChanged(accounts, isEthAccounts = false) {\n let _accounts = accounts;\n if (!Array.isArray(accounts)) {\n this._log.error(\n \"MetaMask: Received invalid accounts parameter. Please report this bug.\",\n accounts\n );\n _accounts = [];\n }\n for (const account of accounts) {\n if (typeof account !== \"string\") {\n this._log.error(\n \"MetaMask: Received non-string account. Please report this bug.\",\n accounts\n );\n _accounts = [];\n break;\n }\n }\n if (!dequal(this._state.accounts, _accounts)) {\n if (isEthAccounts && this._state.accounts !== null) {\n this._log.error(\n `MetaMask: 'eth_accounts' unexpectedly updated accounts. Please report this bug.`,\n _accounts\n );\n }\n this._state.accounts = _accounts;\n if (__privateGet(this, _selectedAddress) !== _accounts[0]) {\n __privateSet(this, _selectedAddress, _accounts[0] || null);\n }\n if (this._state.initialized) {\n const _nextAccounts = [..._accounts];\n this.emit(\"accountsChanged\", _nextAccounts);\n }\n }\n }\n /**\n * Upon receipt of a new isUnlocked state, sets relevant public state.\n * Calls the accounts changed handler with the received accounts, or an empty\n * array.\n *\n * Does nothing if the received value is equal to the existing value.\n * There are no lock/unlock events.\n *\n * @param opts - Options bag.\n * @param opts.accounts - The exposed accounts, if any.\n * @param opts.isUnlocked - The latest isUnlocked value.\n */\n _handleUnlockStateChanged({\n accounts,\n isUnlocked\n } = {}) {\n if (typeof isUnlocked !== \"boolean\") {\n this._log.error(\n \"MetaMask: Received invalid isUnlocked parameter. Please report this bug.\"\n );\n return;\n }\n if (isUnlocked !== this._state.isUnlocked) {\n this._state.isUnlocked = isUnlocked;\n this._handleAccountsChanged(accounts ?? []);\n }\n }\n};\n_chainId = new WeakMap();\n_selectedAddress = new WeakMap();\n_BaseProvider._defaultState = {\n accounts: null,\n isConnected: false,\n isUnlocked: false,\n initialized: false,\n isPermanentlyDisconnected: false\n};\nvar BaseProvider = _BaseProvider;\n\nexport {\n BaseProvider\n};\n//# sourceMappingURL=chunk-OGPA5Q76.mjs.map","module.exports = require('events').EventEmitter;\n","'use strict';\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar _require = require('buffer'),\n Buffer = _require.Buffer;\nvar _require2 = require('util'),\n inspect = _require2.inspect;\nvar custom = inspect && inspect.custom || 'inspect';\nfunction copyBuffer(src, target, offset) {\n Buffer.prototype.copy.call(src, target, offset);\n}\nmodule.exports = /*#__PURE__*/function () {\n function BufferList() {\n _classCallCheck(this, BufferList);\n this.head = null;\n this.tail = null;\n this.length = 0;\n }\n _createClass(BufferList, [{\n key: \"push\",\n value: function push(v) {\n var entry = {\n data: v,\n next: null\n };\n if (this.length > 0) this.tail.next = entry;else this.head = entry;\n this.tail = entry;\n ++this.length;\n }\n }, {\n key: \"unshift\",\n value: function unshift(v) {\n var entry = {\n data: v,\n next: this.head\n };\n if (this.length === 0) this.tail = entry;\n this.head = entry;\n ++this.length;\n }\n }, {\n key: \"shift\",\n value: function shift() {\n if (this.length === 0) return;\n var ret = this.head.data;\n if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;\n --this.length;\n return ret;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.head = this.tail = null;\n this.length = 0;\n }\n }, {\n key: \"join\",\n value: function join(s) {\n if (this.length === 0) return '';\n var p = this.head;\n var ret = '' + p.data;\n while (p = p.next) ret += s + p.data;\n return ret;\n }\n }, {\n key: \"concat\",\n value: function concat(n) {\n if (this.length === 0) return Buffer.alloc(0);\n var ret = Buffer.allocUnsafe(n >>> 0);\n var p = this.head;\n var i = 0;\n while (p) {\n copyBuffer(p.data, ret, i);\n i += p.data.length;\n p = p.next;\n }\n return ret;\n }\n\n // Consumes a specified amount of bytes or characters from the buffered data.\n }, {\n key: \"consume\",\n value: function consume(n, hasStrings) {\n var ret;\n if (n < this.head.data.length) {\n // `slice` is the same for buffers and strings.\n ret = this.head.data.slice(0, n);\n this.head.data = this.head.data.slice(n);\n } else if (n === this.head.data.length) {\n // First chunk is a perfect match.\n ret = this.shift();\n } else {\n // Result spans more than one buffer.\n ret = hasStrings ? this._getString(n) : this._getBuffer(n);\n }\n return ret;\n }\n }, {\n key: \"first\",\n value: function first() {\n return this.head.data;\n }\n\n // Consumes a specified amount of characters from the buffered data.\n }, {\n key: \"_getString\",\n value: function _getString(n) {\n var p = this.head;\n var c = 1;\n var ret = p.data;\n n -= ret.length;\n while (p = p.next) {\n var str = p.data;\n var nb = n > str.length ? str.length : n;\n if (nb === str.length) ret += str;else ret += str.slice(0, n);\n n -= nb;\n if (n === 0) {\n if (nb === str.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = str.slice(nb);\n }\n break;\n }\n ++c;\n }\n this.length -= c;\n return ret;\n }\n\n // Consumes a specified amount of bytes from the buffered data.\n }, {\n key: \"_getBuffer\",\n value: function _getBuffer(n) {\n var ret = Buffer.allocUnsafe(n);\n var p = this.head;\n var c = 1;\n p.data.copy(ret);\n n -= p.data.length;\n while (p = p.next) {\n var buf = p.data;\n var nb = n > buf.length ? buf.length : n;\n buf.copy(ret, ret.length - n, 0, nb);\n n -= nb;\n if (n === 0) {\n if (nb === buf.length) {\n ++c;\n if (p.next) this.head = p.next;else this.head = this.tail = null;\n } else {\n this.head = p;\n p.data = buf.slice(nb);\n }\n break;\n }\n ++c;\n }\n this.length -= c;\n return ret;\n }\n\n // Make sure the linked list only shows the minimal necessary information.\n }, {\n key: custom,\n value: function value(_, options) {\n return inspect(this, _objectSpread(_objectSpread({}, options), {}, {\n // Only inspect one level.\n depth: 0,\n // It should not recurse.\n customInspect: false\n }));\n }\n }]);\n return BufferList;\n}();","'use strict';\n\n// undocumented cb() API, needed for core, not for public API\nfunction destroy(err, cb) {\n var _this = this;\n var readableDestroyed = this._readableState && this._readableState.destroyed;\n var writableDestroyed = this._writableState && this._writableState.destroyed;\n if (readableDestroyed || writableDestroyed) {\n if (cb) {\n cb(err);\n } else if (err) {\n if (!this._writableState) {\n process.nextTick(emitErrorNT, this, err);\n } else if (!this._writableState.errorEmitted) {\n this._writableState.errorEmitted = true;\n process.nextTick(emitErrorNT, this, err);\n }\n }\n return this;\n }\n\n // we set destroyed to true before firing error callbacks in order\n // to make it re-entrance safe in case destroy() is called within callbacks\n\n if (this._readableState) {\n this._readableState.destroyed = true;\n }\n\n // if this is a duplex stream mark the writable part as destroyed as well\n if (this._writableState) {\n this._writableState.destroyed = true;\n }\n this._destroy(err || null, function (err) {\n if (!cb && err) {\n if (!_this._writableState) {\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else if (!_this._writableState.errorEmitted) {\n _this._writableState.errorEmitted = true;\n process.nextTick(emitErrorAndCloseNT, _this, err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n } else if (cb) {\n process.nextTick(emitCloseNT, _this);\n cb(err);\n } else {\n process.nextTick(emitCloseNT, _this);\n }\n });\n return this;\n}\nfunction emitErrorAndCloseNT(self, err) {\n emitErrorNT(self, err);\n emitCloseNT(self);\n}\nfunction emitCloseNT(self) {\n if (self._writableState && !self._writableState.emitClose) return;\n if (self._readableState && !self._readableState.emitClose) return;\n self.emit('close');\n}\nfunction undestroy() {\n if (this._readableState) {\n this._readableState.destroyed = false;\n this._readableState.reading = false;\n this._readableState.ended = false;\n this._readableState.endEmitted = false;\n }\n if (this._writableState) {\n this._writableState.destroyed = false;\n this._writableState.ended = false;\n this._writableState.ending = false;\n this._writableState.finalCalled = false;\n this._writableState.prefinished = false;\n this._writableState.finished = false;\n this._writableState.errorEmitted = false;\n }\n}\nfunction emitErrorNT(self, err) {\n self.emit('error', err);\n}\nfunction errorOrDestroy(stream, err) {\n // We have tests that rely on errors being emitted\n // in the same tick, so changing this is semver major.\n // For now when you opt-in to autoDestroy we allow\n // the error to be emitted nextTick. In a future\n // semver major update we should change the default to this.\n\n var rState = stream._readableState;\n var wState = stream._writableState;\n if (rState && rState.autoDestroy || wState && wState.autoDestroy) stream.destroy(err);else stream.emit('error', err);\n}\nmodule.exports = {\n destroy: destroy,\n undestroy: undestroy,\n errorOrDestroy: errorOrDestroy\n};","'use strict';\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar codes = {};\n\nfunction createErrorType(code, message, Base) {\n if (!Base) {\n Base = Error;\n }\n\n function getMessage(arg1, arg2, arg3) {\n if (typeof message === 'string') {\n return message;\n } else {\n return message(arg1, arg2, arg3);\n }\n }\n\n var NodeError =\n /*#__PURE__*/\n function (_Base) {\n _inheritsLoose(NodeError, _Base);\n\n function NodeError(arg1, arg2, arg3) {\n return _Base.call(this, getMessage(arg1, arg2, arg3)) || this;\n }\n\n return NodeError;\n }(Base);\n\n NodeError.prototype.name = Base.name;\n NodeError.prototype.code = code;\n codes[code] = NodeError;\n} // https://github.com/nodejs/node/blob/v10.8.0/lib/internal/errors.js\n\n\nfunction oneOf(expected, thing) {\n if (Array.isArray(expected)) {\n var len = expected.length;\n expected = expected.map(function (i) {\n return String(i);\n });\n\n if (len > 2) {\n return \"one of \".concat(thing, \" \").concat(expected.slice(0, len - 1).join(', '), \", or \") + expected[len - 1];\n } else if (len === 2) {\n return \"one of \".concat(thing, \" \").concat(expected[0], \" or \").concat(expected[1]);\n } else {\n return \"of \".concat(thing, \" \").concat(expected[0]);\n }\n } else {\n return \"of \".concat(thing, \" \").concat(String(expected));\n }\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith\n\n\nfunction startsWith(str, search, pos) {\n return str.substr(!pos || pos < 0 ? 0 : +pos, search.length) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith\n\n\nfunction endsWith(str, search, this_len) {\n if (this_len === undefined || this_len > str.length) {\n this_len = str.length;\n }\n\n return str.substring(this_len - search.length, this_len) === search;\n} // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes\n\n\nfunction includes(str, search, start) {\n if (typeof start !== 'number') {\n start = 0;\n }\n\n if (start + search.length > str.length) {\n return false;\n } else {\n return str.indexOf(search, start) !== -1;\n }\n}\n\ncreateErrorType('ERR_INVALID_OPT_VALUE', function (name, value) {\n return 'The value \"' + value + '\" is invalid for option \"' + name + '\"';\n}, TypeError);\ncreateErrorType('ERR_INVALID_ARG_TYPE', function (name, expected, actual) {\n // determiner: 'must be' or 'must not be'\n var determiner;\n\n if (typeof expected === 'string' && startsWith(expected, 'not ')) {\n determiner = 'must not be';\n expected = expected.replace(/^not /, '');\n } else {\n determiner = 'must be';\n }\n\n var msg;\n\n if (endsWith(name, ' argument')) {\n // For cases like 'first argument'\n msg = \"The \".concat(name, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n } else {\n var type = includes(name, '.') ? 'property' : 'argument';\n msg = \"The \\\"\".concat(name, \"\\\" \").concat(type, \" \").concat(determiner, \" \").concat(oneOf(expected, 'type'));\n }\n\n msg += \". Received type \".concat(typeof actual);\n return msg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_PUSH_AFTER_EOF', 'stream.push() after EOF');\ncreateErrorType('ERR_METHOD_NOT_IMPLEMENTED', function (name) {\n return 'The ' + name + ' method is not implemented';\n});\ncreateErrorType('ERR_STREAM_PREMATURE_CLOSE', 'Premature close');\ncreateErrorType('ERR_STREAM_DESTROYED', function (name) {\n return 'Cannot call ' + name + ' after a stream was destroyed';\n});\ncreateErrorType('ERR_MULTIPLE_CALLBACK', 'Callback called multiple times');\ncreateErrorType('ERR_STREAM_CANNOT_PIPE', 'Cannot pipe, not readable');\ncreateErrorType('ERR_STREAM_WRITE_AFTER_END', 'write after end');\ncreateErrorType('ERR_STREAM_NULL_VALUES', 'May not write null values to stream', TypeError);\ncreateErrorType('ERR_UNKNOWN_ENCODING', function (arg) {\n return 'Unknown encoding: ' + arg;\n}, TypeError);\ncreateErrorType('ERR_STREAM_UNSHIFT_AFTER_END_EVENT', 'stream.unshift() after end event');\nmodule.exports.codes = codes;\n","'use strict';\n\nvar ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE;\nfunction highWaterMarkFrom(options, isDuplex, duplexKey) {\n return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null;\n}\nfunction getHighWaterMark(state, options, duplexKey, isDuplex) {\n var hwm = highWaterMarkFrom(options, isDuplex, duplexKey);\n if (hwm != null) {\n if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) {\n var name = isDuplex ? duplexKey : 'highWaterMark';\n throw new ERR_INVALID_OPT_VALUE(name, hwm);\n }\n return Math.floor(hwm);\n }\n\n // Default value\n return state.objectMode ? 16 : 16 * 1024;\n}\nmodule.exports = {\n getHighWaterMark: getHighWaterMark\n};","\n/**\n * Module exports.\n */\n\nmodule.exports = deprecate;\n\n/**\n * Mark that a method should not be used.\n * Returns a modified function which warns once by default.\n *\n * If `localStorage.noDeprecation = true` is set, then it is a no-op.\n *\n * If `localStorage.throwDeprecation = true` is set, then deprecated functions\n * will throw an Error when invoked.\n *\n * If `localStorage.traceDeprecation = true` is set, then deprecated functions\n * will invoke `console.trace()` instead of `console.error()`.\n *\n * @param {Function} fn - the function to deprecate\n * @param {String} msg - the string to print to the console when `fn` is invoked\n * @returns {Function} a new \"deprecated\" version of `fn`\n * @api public\n */\n\nfunction deprecate (fn, msg) {\n if (config('noDeprecation')) {\n return fn;\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (config('throwDeprecation')) {\n throw new Error(msg);\n } else if (config('traceDeprecation')) {\n console.trace(msg);\n } else {\n console.warn(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n}\n\n/**\n * Checks `localStorage` for boolean values for the given `name`.\n *\n * @param {String} name\n * @returns {Boolean}\n * @api private\n */\n\nfunction config (name) {\n // accessing global.localStorage can trigger a DOMException in sandboxed iframes\n try {\n if (!global.localStorage) return false;\n } catch (_) {\n return false;\n }\n var val = global.localStorage[name];\n if (null == val) return false;\n return String(val).toLowerCase() === 'true';\n}\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// A bit simpler than readable streams.\n// Implement an async ._write(chunk, encoding, cb), and it'll handle all\n// the drain event emission and buffering.\n\n'use strict';\n\nmodule.exports = Writable;\n\n/* */\nfunction WriteReq(chunk, encoding, cb) {\n this.chunk = chunk;\n this.encoding = encoding;\n this.callback = cb;\n this.next = null;\n}\n\n// It seems a linked list but it is not\n// there will be only 2 of these for each stream\nfunction CorkedRequest(state) {\n var _this = this;\n this.next = null;\n this.entry = null;\n this.finish = function () {\n onCorkedFinish(_this, state);\n };\n}\n/* */\n\n/**/\nvar Duplex;\n/**/\n\nWritable.WritableState = WritableState;\n\n/**/\nvar internalUtil = {\n deprecate: require('util-deprecate')\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\nvar Buffer = require('buffer').Buffer;\nvar OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\nvar destroyImpl = require('./internal/streams/destroy');\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_STREAM_CANNOT_PIPE = _require$codes.ERR_STREAM_CANNOT_PIPE,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED,\n ERR_STREAM_NULL_VALUES = _require$codes.ERR_STREAM_NULL_VALUES,\n ERR_STREAM_WRITE_AFTER_END = _require$codes.ERR_STREAM_WRITE_AFTER_END,\n ERR_UNKNOWN_ENCODING = _require$codes.ERR_UNKNOWN_ENCODING;\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nrequire('inherits')(Writable, Stream);\nfunction nop() {}\nfunction WritableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream,\n // e.g. options.readableObjectMode vs. options.writableObjectMode, etc.\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex;\n\n // object stream flag to indicate whether or not this stream\n // contains buffers or objects.\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;\n\n // the point at which write() starts returning false\n // Note: 0 is a valid value, means that we always return false if\n // the entire buffer is not flushed immediately on write()\n this.highWaterMark = getHighWaterMark(this, options, 'writableHighWaterMark', isDuplex);\n\n // if _final has been called\n this.finalCalled = false;\n\n // drain event flag.\n this.needDrain = false;\n // at the start of calling end()\n this.ending = false;\n // when end() has been called, and returned\n this.ended = false;\n // when 'finish' is emitted\n this.finished = false;\n\n // has it been destroyed\n this.destroyed = false;\n\n // should we decode strings into buffers before passing to _write?\n // this is here so that some node-core streams can optimize string\n // handling at a lower level.\n var noDecode = options.decodeStrings === false;\n this.decodeStrings = !noDecode;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // not an actual buffer we keep track of, but a measurement\n // of how much we're waiting to get pushed to some underlying\n // socket or file.\n this.length = 0;\n\n // a flag to see when we're in the middle of a write.\n this.writing = false;\n\n // when true all writes will be buffered until .uncork() call\n this.corked = 0;\n\n // a flag to be able to tell if the onwrite cb is called immediately,\n // or on a later tick. We set this to true at first, because any\n // actions that shouldn't happen until \"later\" should generally also\n // not happen before the first write call.\n this.sync = true;\n\n // a flag to know if we're processing previously buffered items, which\n // may call the _write() callback in the same tick, so that we don't\n // end up in an overlapped onwrite situation.\n this.bufferProcessing = false;\n\n // the callback that's passed to _write(chunk,cb)\n this.onwrite = function (er) {\n onwrite(stream, er);\n };\n\n // the callback that the user supplies to write(chunk,encoding,cb)\n this.writecb = null;\n\n // the amount that is being written when _write is called.\n this.writelen = 0;\n this.bufferedRequest = null;\n this.lastBufferedRequest = null;\n\n // number of pending user-supplied write callbacks\n // this must be 0 before 'finish' can be emitted\n this.pendingcb = 0;\n\n // emit prefinish if the only thing we're waiting for is _write cbs\n // This is relevant for synchronous Transform streams\n this.prefinished = false;\n\n // True if the error was already emitted and should not be thrown again\n this.errorEmitted = false;\n\n // Should close be emitted on destroy. Defaults to true.\n this.emitClose = options.emitClose !== false;\n\n // Should .destroy() be called after 'finish' (and potentially 'end')\n this.autoDestroy = !!options.autoDestroy;\n\n // count buffered requests\n this.bufferedRequestCount = 0;\n\n // allocate the first CorkedRequest, there is always\n // one allocated and free to use, and we maintain at most two\n this.corkedRequestsFree = new CorkedRequest(this);\n}\nWritableState.prototype.getBuffer = function getBuffer() {\n var current = this.bufferedRequest;\n var out = [];\n while (current) {\n out.push(current);\n current = current.next;\n }\n return out;\n};\n(function () {\n try {\n Object.defineProperty(WritableState.prototype, 'buffer', {\n get: internalUtil.deprecate(function writableStateBufferGetter() {\n return this.getBuffer();\n }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')\n });\n } catch (_) {}\n})();\n\n// Test _writableState for inheritance to account for Duplex streams,\n// whose prototype chain only points to Readable.\nvar realHasInstance;\nif (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {\n realHasInstance = Function.prototype[Symbol.hasInstance];\n Object.defineProperty(Writable, Symbol.hasInstance, {\n value: function value(object) {\n if (realHasInstance.call(this, object)) return true;\n if (this !== Writable) return false;\n return object && object._writableState instanceof WritableState;\n }\n });\n} else {\n realHasInstance = function realHasInstance(object) {\n return object instanceof this;\n };\n}\nfunction Writable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n\n // Writable ctor is applied to Duplexes, too.\n // `realHasInstance` is necessary because using plain `instanceof`\n // would return false, as no `_writableState` property is attached.\n\n // Trying to use the custom `instanceof` for Writable here will also break the\n // Node.js LazyTransform implementation, which has a non-trivial getter for\n // `_writableState` that would lead to infinite recursion.\n\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the WritableState constructor, at least with V8 6.5\n var isDuplex = this instanceof Duplex;\n if (!isDuplex && !realHasInstance.call(Writable, this)) return new Writable(options);\n this._writableState = new WritableState(options, this, isDuplex);\n\n // legacy.\n this.writable = true;\n if (options) {\n if (typeof options.write === 'function') this._write = options.write;\n if (typeof options.writev === 'function') this._writev = options.writev;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n if (typeof options.final === 'function') this._final = options.final;\n }\n Stream.call(this);\n}\n\n// Otherwise people can pipe Writable streams, which is just wrong.\nWritable.prototype.pipe = function () {\n errorOrDestroy(this, new ERR_STREAM_CANNOT_PIPE());\n};\nfunction writeAfterEnd(stream, cb) {\n var er = new ERR_STREAM_WRITE_AFTER_END();\n // TODO: defer error events consistently everywhere, not just the cb\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n}\n\n// Checks that a user-supplied chunk is valid, especially for the particular\n// mode the stream is in. Currently this means that `null` is never accepted\n// and undefined/non-string values are only allowed in object mode.\nfunction validChunk(stream, state, chunk, cb) {\n var er;\n if (chunk === null) {\n er = new ERR_STREAM_NULL_VALUES();\n } else if (typeof chunk !== 'string' && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer'], chunk);\n }\n if (er) {\n errorOrDestroy(stream, er);\n process.nextTick(cb, er);\n return false;\n }\n return true;\n}\nWritable.prototype.write = function (chunk, encoding, cb) {\n var state = this._writableState;\n var ret = false;\n var isBuf = !state.objectMode && _isUint8Array(chunk);\n if (isBuf && !Buffer.isBuffer(chunk)) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;\n if (typeof cb !== 'function') cb = nop;\n if (state.ending) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {\n state.pendingcb++;\n ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);\n }\n return ret;\n};\nWritable.prototype.cork = function () {\n this._writableState.corked++;\n};\nWritable.prototype.uncork = function () {\n var state = this._writableState;\n if (state.corked) {\n state.corked--;\n if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);\n }\n};\nWritable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {\n // node::ParseEncoding() requires lower case.\n if (typeof encoding === 'string') encoding = encoding.toLowerCase();\n if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new ERR_UNKNOWN_ENCODING(encoding);\n this._writableState.defaultEncoding = encoding;\n return this;\n};\nObject.defineProperty(Writable.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nfunction decodeChunk(state, chunk, encoding) {\n if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {\n chunk = Buffer.from(chunk, encoding);\n }\n return chunk;\n}\nObject.defineProperty(Writable.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\n\n// if we're already writing something, then just put this\n// in the queue, and wait our turn. Otherwise, call _write\n// If we return false, then we need a drain event, so set that flag.\nfunction writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {\n if (!isBuf) {\n var newChunk = decodeChunk(state, chunk, encoding);\n if (chunk !== newChunk) {\n isBuf = true;\n encoding = 'buffer';\n chunk = newChunk;\n }\n }\n var len = state.objectMode ? 1 : chunk.length;\n state.length += len;\n var ret = state.length < state.highWaterMark;\n // we must ensure that previous needDrain will not be reset to false.\n if (!ret) state.needDrain = true;\n if (state.writing || state.corked) {\n var last = state.lastBufferedRequest;\n state.lastBufferedRequest = {\n chunk: chunk,\n encoding: encoding,\n isBuf: isBuf,\n callback: cb,\n next: null\n };\n if (last) {\n last.next = state.lastBufferedRequest;\n } else {\n state.bufferedRequest = state.lastBufferedRequest;\n }\n state.bufferedRequestCount += 1;\n } else {\n doWrite(stream, state, false, len, chunk, encoding, cb);\n }\n return ret;\n}\nfunction doWrite(stream, state, writev, len, chunk, encoding, cb) {\n state.writelen = len;\n state.writecb = cb;\n state.writing = true;\n state.sync = true;\n if (state.destroyed) state.onwrite(new ERR_STREAM_DESTROYED('write'));else if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);\n state.sync = false;\n}\nfunction onwriteError(stream, state, sync, er, cb) {\n --state.pendingcb;\n if (sync) {\n // defer the callback if we are being called synchronously\n // to avoid piling up things on the stack\n process.nextTick(cb, er);\n // this can emit finish, and it will always happen\n // after error\n process.nextTick(finishMaybe, stream, state);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n } else {\n // the caller expect this to happen before if\n // it is async\n cb(er);\n stream._writableState.errorEmitted = true;\n errorOrDestroy(stream, er);\n // this can emit finish, but finish must\n // always follow error\n finishMaybe(stream, state);\n }\n}\nfunction onwriteStateUpdate(state) {\n state.writing = false;\n state.writecb = null;\n state.length -= state.writelen;\n state.writelen = 0;\n}\nfunction onwrite(stream, er) {\n var state = stream._writableState;\n var sync = state.sync;\n var cb = state.writecb;\n if (typeof cb !== 'function') throw new ERR_MULTIPLE_CALLBACK();\n onwriteStateUpdate(state);\n if (er) onwriteError(stream, state, sync, er, cb);else {\n // Check if we're actually ready to finish, but don't emit yet\n var finished = needFinish(state) || stream.destroyed;\n if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {\n clearBuffer(stream, state);\n }\n if (sync) {\n process.nextTick(afterWrite, stream, state, finished, cb);\n } else {\n afterWrite(stream, state, finished, cb);\n }\n }\n}\nfunction afterWrite(stream, state, finished, cb) {\n if (!finished) onwriteDrain(stream, state);\n state.pendingcb--;\n cb();\n finishMaybe(stream, state);\n}\n\n// Must force callback to be called on nextTick, so that we don't\n// emit 'drain' before the write() consumer gets the 'false' return\n// value, and has a chance to attach a 'drain' listener.\nfunction onwriteDrain(stream, state) {\n if (state.length === 0 && state.needDrain) {\n state.needDrain = false;\n stream.emit('drain');\n }\n}\n\n// if there's something in the buffer waiting, then process it\nfunction clearBuffer(stream, state) {\n state.bufferProcessing = true;\n var entry = state.bufferedRequest;\n if (stream._writev && entry && entry.next) {\n // Fast case, write everything using _writev()\n var l = state.bufferedRequestCount;\n var buffer = new Array(l);\n var holder = state.corkedRequestsFree;\n holder.entry = entry;\n var count = 0;\n var allBuffers = true;\n while (entry) {\n buffer[count] = entry;\n if (!entry.isBuf) allBuffers = false;\n entry = entry.next;\n count += 1;\n }\n buffer.allBuffers = allBuffers;\n doWrite(stream, state, true, state.length, buffer, '', holder.finish);\n\n // doWrite is almost always async, defer these to save a bit of time\n // as the hot path ends with doWrite\n state.pendingcb++;\n state.lastBufferedRequest = null;\n if (holder.next) {\n state.corkedRequestsFree = holder.next;\n holder.next = null;\n } else {\n state.corkedRequestsFree = new CorkedRequest(state);\n }\n state.bufferedRequestCount = 0;\n } else {\n // Slow case, write chunks one-by-one\n while (entry) {\n var chunk = entry.chunk;\n var encoding = entry.encoding;\n var cb = entry.callback;\n var len = state.objectMode ? 1 : chunk.length;\n doWrite(stream, state, false, len, chunk, encoding, cb);\n entry = entry.next;\n state.bufferedRequestCount--;\n // if we didn't call the onwrite immediately, then\n // it means that we need to wait until it does.\n // also, that means that the chunk and cb are currently\n // being processed, so move the buffer counter past them.\n if (state.writing) {\n break;\n }\n }\n if (entry === null) state.lastBufferedRequest = null;\n }\n state.bufferedRequest = entry;\n state.bufferProcessing = false;\n}\nWritable.prototype._write = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_write()'));\n};\nWritable.prototype._writev = null;\nWritable.prototype.end = function (chunk, encoding, cb) {\n var state = this._writableState;\n if (typeof chunk === 'function') {\n cb = chunk;\n chunk = null;\n encoding = null;\n } else if (typeof encoding === 'function') {\n cb = encoding;\n encoding = null;\n }\n if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);\n\n // .end() fully uncorks\n if (state.corked) {\n state.corked = 1;\n this.uncork();\n }\n\n // ignore unnecessary end() calls.\n if (!state.ending) endWritable(this, state, cb);\n return this;\n};\nObject.defineProperty(Writable.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\nfunction needFinish(state) {\n return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;\n}\nfunction callFinal(stream, state) {\n stream._final(function (err) {\n state.pendingcb--;\n if (err) {\n errorOrDestroy(stream, err);\n }\n state.prefinished = true;\n stream.emit('prefinish');\n finishMaybe(stream, state);\n });\n}\nfunction prefinish(stream, state) {\n if (!state.prefinished && !state.finalCalled) {\n if (typeof stream._final === 'function' && !state.destroyed) {\n state.pendingcb++;\n state.finalCalled = true;\n process.nextTick(callFinal, stream, state);\n } else {\n state.prefinished = true;\n stream.emit('prefinish');\n }\n }\n}\nfunction finishMaybe(stream, state) {\n var need = needFinish(state);\n if (need) {\n prefinish(stream, state);\n if (state.pendingcb === 0) {\n state.finished = true;\n stream.emit('finish');\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the readable side is ready for autoDestroy as well\n var rState = stream._readableState;\n if (!rState || rState.autoDestroy && rState.endEmitted) {\n stream.destroy();\n }\n }\n }\n }\n return need;\n}\nfunction endWritable(stream, state, cb) {\n state.ending = true;\n finishMaybe(stream, state);\n if (cb) {\n if (state.finished) process.nextTick(cb);else stream.once('finish', cb);\n }\n state.ended = true;\n stream.writable = false;\n}\nfunction onCorkedFinish(corkReq, state, err) {\n var entry = corkReq.entry;\n corkReq.entry = null;\n while (entry) {\n var cb = entry.callback;\n state.pendingcb--;\n cb(err);\n entry = entry.next;\n }\n\n // reuse the free corkReq.\n state.corkedRequestsFree.next = corkReq;\n}\nObject.defineProperty(Writable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._writableState === undefined) {\n return false;\n }\n return this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._writableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._writableState.destroyed = value;\n }\n});\nWritable.prototype.destroy = destroyImpl.destroy;\nWritable.prototype._undestroy = destroyImpl.undestroy;\nWritable.prototype._destroy = function (err, cb) {\n cb(err);\n};","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a duplex stream is just a stream that is both readable and writable.\n// Since JS doesn't have multiple prototypal inheritance, this class\n// prototypally inherits from Readable, and then parasitically from\n// Writable.\n\n'use strict';\n\n/**/\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) keys.push(key);\n return keys;\n};\n/**/\n\nmodule.exports = Duplex;\nvar Readable = require('./_stream_readable');\nvar Writable = require('./_stream_writable');\nrequire('inherits')(Duplex, Readable);\n{\n // Allow the keys array to be GC'ed.\n var keys = objectKeys(Writable.prototype);\n for (var v = 0; v < keys.length; v++) {\n var method = keys[v];\n if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];\n }\n}\nfunction Duplex(options) {\n if (!(this instanceof Duplex)) return new Duplex(options);\n Readable.call(this, options);\n Writable.call(this, options);\n this.allowHalfOpen = true;\n if (options) {\n if (options.readable === false) this.readable = false;\n if (options.writable === false) this.writable = false;\n if (options.allowHalfOpen === false) {\n this.allowHalfOpen = false;\n this.once('end', onend);\n }\n }\n}\nObject.defineProperty(Duplex.prototype, 'writableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.highWaterMark;\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState && this._writableState.getBuffer();\n }\n});\nObject.defineProperty(Duplex.prototype, 'writableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._writableState.length;\n }\n});\n\n// the no-half-open enforcer\nfunction onend() {\n // If the writable side ended, then we're ok.\n if (this._writableState.ended) return;\n\n // no more data can be written.\n // But allow more writes to happen in this tick.\n process.nextTick(onEndNT, this);\n}\nfunction onEndNT(self) {\n self.end();\n}\nObject.defineProperty(Duplex.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined || this._writableState === undefined) {\n return false;\n }\n return this._readableState.destroyed && this._writableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (this._readableState === undefined || this._writableState === undefined) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n this._writableState.destroyed = value;\n }\n});","// Ported from https://github.com/mafintosh/end-of-stream with\n// permission from the author, Mathias Buus (@mafintosh).\n\n'use strict';\n\nvar ERR_STREAM_PREMATURE_CLOSE = require('../../../errors').codes.ERR_STREAM_PREMATURE_CLOSE;\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n callback.apply(this, args);\n };\n}\nfunction noop() {}\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\nfunction eos(stream, opts, callback) {\n if (typeof opts === 'function') return eos(stream, null, opts);\n if (!opts) opts = {};\n callback = once(callback || noop);\n var readable = opts.readable || opts.readable !== false && stream.readable;\n var writable = opts.writable || opts.writable !== false && stream.writable;\n var onlegacyfinish = function onlegacyfinish() {\n if (!stream.writable) onfinish();\n };\n var writableEnded = stream._writableState && stream._writableState.finished;\n var onfinish = function onfinish() {\n writable = false;\n writableEnded = true;\n if (!readable) callback.call(stream);\n };\n var readableEnded = stream._readableState && stream._readableState.endEmitted;\n var onend = function onend() {\n readable = false;\n readableEnded = true;\n if (!writable) callback.call(stream);\n };\n var onerror = function onerror(err) {\n callback.call(stream, err);\n };\n var onclose = function onclose() {\n var err;\n if (readable && !readableEnded) {\n if (!stream._readableState || !stream._readableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n if (writable && !writableEnded) {\n if (!stream._writableState || !stream._writableState.ended) err = new ERR_STREAM_PREMATURE_CLOSE();\n return callback.call(stream, err);\n }\n };\n var onrequest = function onrequest() {\n stream.req.on('finish', onfinish);\n };\n if (isRequest(stream)) {\n stream.on('complete', onfinish);\n stream.on('abort', onclose);\n if (stream.req) onrequest();else stream.on('request', onrequest);\n } else if (writable && !stream._writableState) {\n // legacy streams\n stream.on('end', onlegacyfinish);\n stream.on('close', onlegacyfinish);\n }\n stream.on('end', onend);\n stream.on('finish', onfinish);\n if (opts.error !== false) stream.on('error', onerror);\n stream.on('close', onclose);\n return function () {\n stream.removeListener('complete', onfinish);\n stream.removeListener('abort', onclose);\n stream.removeListener('request', onrequest);\n if (stream.req) stream.req.removeListener('finish', onfinish);\n stream.removeListener('end', onlegacyfinish);\n stream.removeListener('close', onlegacyfinish);\n stream.removeListener('finish', onfinish);\n stream.removeListener('end', onend);\n stream.removeListener('error', onerror);\n stream.removeListener('close', onclose);\n };\n}\nmodule.exports = eos;","'use strict';\n\nvar _Object$setPrototypeO;\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar finished = require('./end-of-stream');\nvar kLastResolve = Symbol('lastResolve');\nvar kLastReject = Symbol('lastReject');\nvar kError = Symbol('error');\nvar kEnded = Symbol('ended');\nvar kLastPromise = Symbol('lastPromise');\nvar kHandlePromise = Symbol('handlePromise');\nvar kStream = Symbol('stream');\nfunction createIterResult(value, done) {\n return {\n value: value,\n done: done\n };\n}\nfunction readAndResolve(iter) {\n var resolve = iter[kLastResolve];\n if (resolve !== null) {\n var data = iter[kStream].read();\n // we defer if data is null\n // we can be expecting either 'end' or\n // 'error'\n if (data !== null) {\n iter[kLastPromise] = null;\n iter[kLastResolve] = null;\n iter[kLastReject] = null;\n resolve(createIterResult(data, false));\n }\n }\n}\nfunction onReadable(iter) {\n // we wait for the next tick, because it might\n // emit an error with process.nextTick\n process.nextTick(readAndResolve, iter);\n}\nfunction wrapForNext(lastPromise, iter) {\n return function (resolve, reject) {\n lastPromise.then(function () {\n if (iter[kEnded]) {\n resolve(createIterResult(undefined, true));\n return;\n }\n iter[kHandlePromise](resolve, reject);\n }, reject);\n };\n}\nvar AsyncIteratorPrototype = Object.getPrototypeOf(function () {});\nvar ReadableStreamAsyncIteratorPrototype = Object.setPrototypeOf((_Object$setPrototypeO = {\n get stream() {\n return this[kStream];\n },\n next: function next() {\n var _this = this;\n // if we have detected an error in the meanwhile\n // reject straight away\n var error = this[kError];\n if (error !== null) {\n return Promise.reject(error);\n }\n if (this[kEnded]) {\n return Promise.resolve(createIterResult(undefined, true));\n }\n if (this[kStream].destroyed) {\n // We need to defer via nextTick because if .destroy(err) is\n // called, the error will be emitted via nextTick, and\n // we cannot guarantee that there is no error lingering around\n // waiting to be emitted.\n return new Promise(function (resolve, reject) {\n process.nextTick(function () {\n if (_this[kError]) {\n reject(_this[kError]);\n } else {\n resolve(createIterResult(undefined, true));\n }\n });\n });\n }\n\n // if we have multiple next() calls\n // we will wait for the previous Promise to finish\n // this logic is optimized to support for await loops,\n // where next() is only called once at a time\n var lastPromise = this[kLastPromise];\n var promise;\n if (lastPromise) {\n promise = new Promise(wrapForNext(lastPromise, this));\n } else {\n // fast path needed to support multiple this.push()\n // without triggering the next() queue\n var data = this[kStream].read();\n if (data !== null) {\n return Promise.resolve(createIterResult(data, false));\n }\n promise = new Promise(this[kHandlePromise]);\n }\n this[kLastPromise] = promise;\n return promise;\n }\n}, _defineProperty(_Object$setPrototypeO, Symbol.asyncIterator, function () {\n return this;\n}), _defineProperty(_Object$setPrototypeO, \"return\", function _return() {\n var _this2 = this;\n // destroy(err, cb) is a private API\n // we can guarantee we have that here, because we control the\n // Readable class this is attached to\n return new Promise(function (resolve, reject) {\n _this2[kStream].destroy(null, function (err) {\n if (err) {\n reject(err);\n return;\n }\n resolve(createIterResult(undefined, true));\n });\n });\n}), _Object$setPrototypeO), AsyncIteratorPrototype);\nvar createReadableStreamAsyncIterator = function createReadableStreamAsyncIterator(stream) {\n var _Object$create;\n var iterator = Object.create(ReadableStreamAsyncIteratorPrototype, (_Object$create = {}, _defineProperty(_Object$create, kStream, {\n value: stream,\n writable: true\n }), _defineProperty(_Object$create, kLastResolve, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kLastReject, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kError, {\n value: null,\n writable: true\n }), _defineProperty(_Object$create, kEnded, {\n value: stream._readableState.endEmitted,\n writable: true\n }), _defineProperty(_Object$create, kHandlePromise, {\n value: function value(resolve, reject) {\n var data = iterator[kStream].read();\n if (data) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(data, false));\n } else {\n iterator[kLastResolve] = resolve;\n iterator[kLastReject] = reject;\n }\n },\n writable: true\n }), _Object$create));\n iterator[kLastPromise] = null;\n finished(stream, function (err) {\n if (err && err.code !== 'ERR_STREAM_PREMATURE_CLOSE') {\n var reject = iterator[kLastReject];\n // reject if we are waiting for data in the Promise\n // returned by next() and store the error\n if (reject !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n reject(err);\n }\n iterator[kError] = err;\n return;\n }\n var resolve = iterator[kLastResolve];\n if (resolve !== null) {\n iterator[kLastPromise] = null;\n iterator[kLastResolve] = null;\n iterator[kLastReject] = null;\n resolve(createIterResult(undefined, true));\n }\n iterator[kEnded] = true;\n });\n stream.on('readable', onReadable.bind(null, iterator));\n return iterator;\n};\nmodule.exports = createReadableStreamAsyncIterator;","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nmodule.exports = Readable;\n\n/**/\nvar Duplex;\n/**/\n\nReadable.ReadableState = ReadableState;\n\n/**/\nvar EE = require('events').EventEmitter;\nvar EElistenerCount = function EElistenerCount(emitter, type) {\n return emitter.listeners(type).length;\n};\n/**/\n\n/**/\nvar Stream = require('./internal/streams/stream');\n/**/\n\nvar Buffer = require('buffer').Buffer;\nvar OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};\nfunction _uint8ArrayToBuffer(chunk) {\n return Buffer.from(chunk);\n}\nfunction _isUint8Array(obj) {\n return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;\n}\n\n/**/\nvar debugUtil = require('util');\nvar debug;\nif (debugUtil && debugUtil.debuglog) {\n debug = debugUtil.debuglog('stream');\n} else {\n debug = function debug() {};\n}\n/**/\n\nvar BufferList = require('./internal/streams/buffer_list');\nvar destroyImpl = require('./internal/streams/destroy');\nvar _require = require('./internal/streams/state'),\n getHighWaterMark = _require.getHighWaterMark;\nvar _require$codes = require('../errors').codes,\n ERR_INVALID_ARG_TYPE = _require$codes.ERR_INVALID_ARG_TYPE,\n ERR_STREAM_PUSH_AFTER_EOF = _require$codes.ERR_STREAM_PUSH_AFTER_EOF,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_STREAM_UNSHIFT_AFTER_END_EVENT = _require$codes.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;\n\n// Lazy loaded to improve the startup performance.\nvar StringDecoder;\nvar createReadableStreamAsyncIterator;\nvar from;\nrequire('inherits')(Readable, Stream);\nvar errorOrDestroy = destroyImpl.errorOrDestroy;\nvar kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];\nfunction prependListener(emitter, event, fn) {\n // Sadly this is not cacheable as some libraries bundle their own\n // event emitter implementation with them.\n if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);\n\n // This is a hack to make sure that our error handler is attached before any\n // userland ones. NEVER DO THIS. This is here only because this code needs\n // to continue to work with older versions of Node.js that do not include\n // the prependListener() method. The goal is to eventually remove this hack.\n if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (Array.isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];\n}\nfunction ReadableState(options, stream, isDuplex) {\n Duplex = Duplex || require('./_stream_duplex');\n options = options || {};\n\n // Duplex streams are both readable and writable, but share\n // the same options object.\n // However, some cases require setting options to different\n // values for the readable and the writable sides of the duplex stream.\n // These options can be provided separately as readableXXX and writableXXX.\n if (typeof isDuplex !== 'boolean') isDuplex = stream instanceof Duplex;\n\n // object stream flag. Used to make read(n) ignore n and to\n // make all the buffer merging and length checks go away\n this.objectMode = !!options.objectMode;\n if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;\n\n // the point at which it stops calling _read() to fill the buffer\n // Note: 0 is a valid value, means \"don't call _read preemptively ever\"\n this.highWaterMark = getHighWaterMark(this, options, 'readableHighWaterMark', isDuplex);\n\n // A linked list is used to store data chunks instead of an array because the\n // linked list can remove elements from the beginning faster than\n // array.shift()\n this.buffer = new BufferList();\n this.length = 0;\n this.pipes = null;\n this.pipesCount = 0;\n this.flowing = null;\n this.ended = false;\n this.endEmitted = false;\n this.reading = false;\n\n // a flag to be able to tell if the event 'readable'/'data' is emitted\n // immediately, or on a later tick. We set this to true at first, because\n // any actions that shouldn't happen until \"later\" should generally also\n // not happen before the first read call.\n this.sync = true;\n\n // whenever we return null, then we set a flag to say\n // that we're awaiting a 'readable' event emission.\n this.needReadable = false;\n this.emittedReadable = false;\n this.readableListening = false;\n this.resumeScheduled = false;\n this.paused = true;\n\n // Should close be emitted on destroy. Defaults to true.\n this.emitClose = options.emitClose !== false;\n\n // Should .destroy() be called after 'end' (and potentially 'finish')\n this.autoDestroy = !!options.autoDestroy;\n\n // has it been destroyed\n this.destroyed = false;\n\n // Crypto is kind of old and crusty. Historically, its default string\n // encoding is 'binary' so we have to make this configurable.\n // Everything else in the universe uses 'utf8', though.\n this.defaultEncoding = options.defaultEncoding || 'utf8';\n\n // the number of writers that are awaiting a drain event in .pipe()s\n this.awaitDrain = 0;\n\n // if true, a maybeReadMore has been scheduled\n this.readingMore = false;\n this.decoder = null;\n this.encoding = null;\n if (options.encoding) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n this.decoder = new StringDecoder(options.encoding);\n this.encoding = options.encoding;\n }\n}\nfunction Readable(options) {\n Duplex = Duplex || require('./_stream_duplex');\n if (!(this instanceof Readable)) return new Readable(options);\n\n // Checking for a Stream.Duplex instance is faster here instead of inside\n // the ReadableState constructor, at least with V8 6.5\n var isDuplex = this instanceof Duplex;\n this._readableState = new ReadableState(options, this, isDuplex);\n\n // legacy\n this.readable = true;\n if (options) {\n if (typeof options.read === 'function') this._read = options.read;\n if (typeof options.destroy === 'function') this._destroy = options.destroy;\n }\n Stream.call(this);\n}\nObject.defineProperty(Readable.prototype, 'destroyed', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n if (this._readableState === undefined) {\n return false;\n }\n return this._readableState.destroyed;\n },\n set: function set(value) {\n // we ignore the value if the stream\n // has not been initialized yet\n if (!this._readableState) {\n return;\n }\n\n // backward compatibility, the user is explicitly\n // managing destroyed\n this._readableState.destroyed = value;\n }\n});\nReadable.prototype.destroy = destroyImpl.destroy;\nReadable.prototype._undestroy = destroyImpl.undestroy;\nReadable.prototype._destroy = function (err, cb) {\n cb(err);\n};\n\n// Manually shove something into the read() buffer.\n// This returns true if the highWaterMark has not been hit yet,\n// similar to how Writable.write() returns true if you should\n// write() some more.\nReadable.prototype.push = function (chunk, encoding) {\n var state = this._readableState;\n var skipChunkCheck;\n if (!state.objectMode) {\n if (typeof chunk === 'string') {\n encoding = encoding || state.defaultEncoding;\n if (encoding !== state.encoding) {\n chunk = Buffer.from(chunk, encoding);\n encoding = '';\n }\n skipChunkCheck = true;\n }\n } else {\n skipChunkCheck = true;\n }\n return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);\n};\n\n// Unshift should *always* be something directly out of read()\nReadable.prototype.unshift = function (chunk) {\n return readableAddChunk(this, chunk, null, true, false);\n};\nfunction readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {\n debug('readableAddChunk', chunk);\n var state = stream._readableState;\n if (chunk === null) {\n state.reading = false;\n onEofChunk(stream, state);\n } else {\n var er;\n if (!skipChunkCheck) er = chunkInvalid(state, chunk);\n if (er) {\n errorOrDestroy(stream, er);\n } else if (state.objectMode || chunk && chunk.length > 0) {\n if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {\n chunk = _uint8ArrayToBuffer(chunk);\n }\n if (addToFront) {\n if (state.endEmitted) errorOrDestroy(stream, new ERR_STREAM_UNSHIFT_AFTER_END_EVENT());else addChunk(stream, state, chunk, true);\n } else if (state.ended) {\n errorOrDestroy(stream, new ERR_STREAM_PUSH_AFTER_EOF());\n } else if (state.destroyed) {\n return false;\n } else {\n state.reading = false;\n if (state.decoder && !encoding) {\n chunk = state.decoder.write(chunk);\n if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);\n } else {\n addChunk(stream, state, chunk, false);\n }\n }\n } else if (!addToFront) {\n state.reading = false;\n maybeReadMore(stream, state);\n }\n }\n\n // We can push more data if we are below the highWaterMark.\n // Also, if we have no data yet, we can stand some more bytes.\n // This is to work around cases where hwm=0, such as the repl.\n return !state.ended && (state.length < state.highWaterMark || state.length === 0);\n}\nfunction addChunk(stream, state, chunk, addToFront) {\n if (state.flowing && state.length === 0 && !state.sync) {\n state.awaitDrain = 0;\n stream.emit('data', chunk);\n } else {\n // update the buffer info.\n state.length += state.objectMode ? 1 : chunk.length;\n if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);\n if (state.needReadable) emitReadable(stream);\n }\n maybeReadMore(stream, state);\n}\nfunction chunkInvalid(state, chunk) {\n var er;\n if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {\n er = new ERR_INVALID_ARG_TYPE('chunk', ['string', 'Buffer', 'Uint8Array'], chunk);\n }\n return er;\n}\nReadable.prototype.isPaused = function () {\n return this._readableState.flowing === false;\n};\n\n// backwards compatibility.\nReadable.prototype.setEncoding = function (enc) {\n if (!StringDecoder) StringDecoder = require('string_decoder/').StringDecoder;\n var decoder = new StringDecoder(enc);\n this._readableState.decoder = decoder;\n // If setEncoding(null), decoder.encoding equals utf8\n this._readableState.encoding = this._readableState.decoder.encoding;\n\n // Iterate over current buffer to convert already stored Buffers:\n var p = this._readableState.buffer.head;\n var content = '';\n while (p !== null) {\n content += decoder.write(p.data);\n p = p.next;\n }\n this._readableState.buffer.clear();\n if (content !== '') this._readableState.buffer.push(content);\n this._readableState.length = content.length;\n return this;\n};\n\n// Don't raise the hwm > 1GB\nvar MAX_HWM = 0x40000000;\nfunction computeNewHighWaterMark(n) {\n if (n >= MAX_HWM) {\n // TODO(ronag): Throw ERR_VALUE_OUT_OF_RANGE.\n n = MAX_HWM;\n } else {\n // Get the next highest power of 2 to prevent increasing hwm excessively in\n // tiny amounts\n n--;\n n |= n >>> 1;\n n |= n >>> 2;\n n |= n >>> 4;\n n |= n >>> 8;\n n |= n >>> 16;\n n++;\n }\n return n;\n}\n\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction howMuchToRead(n, state) {\n if (n <= 0 || state.length === 0 && state.ended) return 0;\n if (state.objectMode) return 1;\n if (n !== n) {\n // Only flow one buffer at a time\n if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;\n }\n // If we're asking for more than the current hwm, then raise the hwm.\n if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);\n if (n <= state.length) return n;\n // Don't have enough\n if (!state.ended) {\n state.needReadable = true;\n return 0;\n }\n return state.length;\n}\n\n// you can override either this method, or the async _read(n) below.\nReadable.prototype.read = function (n) {\n debug('read', n);\n n = parseInt(n, 10);\n var state = this._readableState;\n var nOrig = n;\n if (n !== 0) state.emittedReadable = false;\n\n // if we're doing read(0) to trigger a readable event, but we\n // already have a bunch of data in the buffer, then just trigger\n // the 'readable' event and move on.\n if (n === 0 && state.needReadable && ((state.highWaterMark !== 0 ? state.length >= state.highWaterMark : state.length > 0) || state.ended)) {\n debug('read: emitReadable', state.length, state.ended);\n if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);\n return null;\n }\n n = howMuchToRead(n, state);\n\n // if we've ended, and we're now clear, then finish it up.\n if (n === 0 && state.ended) {\n if (state.length === 0) endReadable(this);\n return null;\n }\n\n // All the actual chunk generation logic needs to be\n // *below* the call to _read. The reason is that in certain\n // synthetic stream cases, such as passthrough streams, _read\n // may be a completely synchronous operation which may change\n // the state of the read buffer, providing enough data when\n // before there was *not* enough.\n //\n // So, the steps are:\n // 1. Figure out what the state of things will be after we do\n // a read from the buffer.\n //\n // 2. If that resulting state will trigger a _read, then call _read.\n // Note that this may be asynchronous, or synchronous. Yes, it is\n // deeply ugly to write APIs this way, but that still doesn't mean\n // that the Readable class should behave improperly, as streams are\n // designed to be sync/async agnostic.\n // Take note if the _read call is sync or async (ie, if the read call\n // has returned yet), so that we know whether or not it's safe to emit\n // 'readable' etc.\n //\n // 3. Actually pull the requested chunks out of the buffer and return.\n\n // if we need a readable event, then we need to do some reading.\n var doRead = state.needReadable;\n debug('need readable', doRead);\n\n // if we currently have less than the highWaterMark, then also read some\n if (state.length === 0 || state.length - n < state.highWaterMark) {\n doRead = true;\n debug('length less than watermark', doRead);\n }\n\n // however, if we've ended, then there's no point, and if we're already\n // reading, then it's unnecessary.\n if (state.ended || state.reading) {\n doRead = false;\n debug('reading or ended', doRead);\n } else if (doRead) {\n debug('do read');\n state.reading = true;\n state.sync = true;\n // if the length is currently zero, then we *need* a readable event.\n if (state.length === 0) state.needReadable = true;\n // call internal read method\n this._read(state.highWaterMark);\n state.sync = false;\n // If _read pushed data synchronously, then `reading` will be false,\n // and we need to re-evaluate how much data we can return to the user.\n if (!state.reading) n = howMuchToRead(nOrig, state);\n }\n var ret;\n if (n > 0) ret = fromList(n, state);else ret = null;\n if (ret === null) {\n state.needReadable = state.length <= state.highWaterMark;\n n = 0;\n } else {\n state.length -= n;\n state.awaitDrain = 0;\n }\n if (state.length === 0) {\n // If we have nothing in the buffer, then we want to know\n // as soon as we *do* get something into the buffer.\n if (!state.ended) state.needReadable = true;\n\n // If we tried to read() past the EOF, then emit end on the next tick.\n if (nOrig !== n && state.ended) endReadable(this);\n }\n if (ret !== null) this.emit('data', ret);\n return ret;\n};\nfunction onEofChunk(stream, state) {\n debug('onEofChunk');\n if (state.ended) return;\n if (state.decoder) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) {\n state.buffer.push(chunk);\n state.length += state.objectMode ? 1 : chunk.length;\n }\n }\n state.ended = true;\n if (state.sync) {\n // if we are sync, wait until next tick to emit the data.\n // Otherwise we risk emitting data in the flow()\n // the readable code triggers during a read() call\n emitReadable(stream);\n } else {\n // emit 'readable' now to make sure it gets picked up.\n state.needReadable = false;\n if (!state.emittedReadable) {\n state.emittedReadable = true;\n emitReadable_(stream);\n }\n }\n}\n\n// Don't emit readable right away in sync mode, because this can trigger\n// another read() call => stack overflow. This way, it might trigger\n// a nextTick recursion warning, but that's not so bad.\nfunction emitReadable(stream) {\n var state = stream._readableState;\n debug('emitReadable', state.needReadable, state.emittedReadable);\n state.needReadable = false;\n if (!state.emittedReadable) {\n debug('emitReadable', state.flowing);\n state.emittedReadable = true;\n process.nextTick(emitReadable_, stream);\n }\n}\nfunction emitReadable_(stream) {\n var state = stream._readableState;\n debug('emitReadable_', state.destroyed, state.length, state.ended);\n if (!state.destroyed && (state.length || state.ended)) {\n stream.emit('readable');\n state.emittedReadable = false;\n }\n\n // The stream needs another readable event if\n // 1. It is not flowing, as the flow mechanism will take\n // care of it.\n // 2. It is not ended.\n // 3. It is below the highWaterMark, so we can schedule\n // another readable later.\n state.needReadable = !state.flowing && !state.ended && state.length <= state.highWaterMark;\n flow(stream);\n}\n\n// at this point, the user has presumably seen the 'readable' event,\n// and called read() to consume some data. that may have triggered\n// in turn another _read(n) call, in which case reading = true if\n// it's in progress.\n// However, if we're not ended, or reading, and the length < hwm,\n// then go ahead and try to read some more preemptively.\nfunction maybeReadMore(stream, state) {\n if (!state.readingMore) {\n state.readingMore = true;\n process.nextTick(maybeReadMore_, stream, state);\n }\n}\nfunction maybeReadMore_(stream, state) {\n // Attempt to read more data if we should.\n //\n // The conditions for reading more data are (one of):\n // - Not enough data buffered (state.length < state.highWaterMark). The loop\n // is responsible for filling the buffer with enough data if such data\n // is available. If highWaterMark is 0 and we are not in the flowing mode\n // we should _not_ attempt to buffer any extra data. We'll get more data\n // when the stream consumer calls read() instead.\n // - No data in the buffer, and the stream is in flowing mode. In this mode\n // the loop below is responsible for ensuring read() is called. Failing to\n // call read here would abort the flow and there's no other mechanism for\n // continuing the flow if the stream consumer has just subscribed to the\n // 'data' event.\n //\n // In addition to the above conditions to keep reading data, the following\n // conditions prevent the data from being read:\n // - The stream has ended (state.ended).\n // - There is already a pending 'read' operation (state.reading). This is a\n // case where the the stream has called the implementation defined _read()\n // method, but they are processing the call asynchronously and have _not_\n // called push() with new data. In this case we skip performing more\n // read()s. The execution ends in this method again after the _read() ends\n // up calling push() with more data.\n while (!state.reading && !state.ended && (state.length < state.highWaterMark || state.flowing && state.length === 0)) {\n var len = state.length;\n debug('maybeReadMore read 0');\n stream.read(0);\n if (len === state.length)\n // didn't get any data, stop spinning.\n break;\n }\n state.readingMore = false;\n}\n\n// abstract method. to be overridden in specific implementation classes.\n// call cb(er, data) where data is <= n in length.\n// for virtual (non-string, non-buffer) streams, \"length\" is somewhat\n// arbitrary, and perhaps not very meaningful.\nReadable.prototype._read = function (n) {\n errorOrDestroy(this, new ERR_METHOD_NOT_IMPLEMENTED('_read()'));\n};\nReadable.prototype.pipe = function (dest, pipeOpts) {\n var src = this;\n var state = this._readableState;\n switch (state.pipesCount) {\n case 0:\n state.pipes = dest;\n break;\n case 1:\n state.pipes = [state.pipes, dest];\n break;\n default:\n state.pipes.push(dest);\n break;\n }\n state.pipesCount += 1;\n debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);\n var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;\n var endFn = doEnd ? onend : unpipe;\n if (state.endEmitted) process.nextTick(endFn);else src.once('end', endFn);\n dest.on('unpipe', onunpipe);\n function onunpipe(readable, unpipeInfo) {\n debug('onunpipe');\n if (readable === src) {\n if (unpipeInfo && unpipeInfo.hasUnpiped === false) {\n unpipeInfo.hasUnpiped = true;\n cleanup();\n }\n }\n }\n function onend() {\n debug('onend');\n dest.end();\n }\n\n // when the dest drains, it reduces the awaitDrain counter\n // on the source. This would be more elegant with a .once()\n // handler in flow(), but adding and removing repeatedly is\n // too slow.\n var ondrain = pipeOnDrain(src);\n dest.on('drain', ondrain);\n var cleanedUp = false;\n function cleanup() {\n debug('cleanup');\n // cleanup event handlers once the pipe is broken\n dest.removeListener('close', onclose);\n dest.removeListener('finish', onfinish);\n dest.removeListener('drain', ondrain);\n dest.removeListener('error', onerror);\n dest.removeListener('unpipe', onunpipe);\n src.removeListener('end', onend);\n src.removeListener('end', unpipe);\n src.removeListener('data', ondata);\n cleanedUp = true;\n\n // if the reader is waiting for a drain event from this\n // specific writer, then it would cause it to never start\n // flowing again.\n // So, if this is awaiting a drain, then we just call it now.\n // If we don't know, then assume that we are waiting for one.\n if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();\n }\n src.on('data', ondata);\n function ondata(chunk) {\n debug('ondata');\n var ret = dest.write(chunk);\n debug('dest.write', ret);\n if (ret === false) {\n // If the user unpiped during `dest.write()`, it is possible\n // to get stuck in a permanently paused state if that write\n // also returned false.\n // => Check whether `dest` is still a piping destination.\n if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {\n debug('false write response, pause', state.awaitDrain);\n state.awaitDrain++;\n }\n src.pause();\n }\n }\n\n // if the dest has an error, then stop piping into it.\n // however, don't suppress the throwing behavior for this.\n function onerror(er) {\n debug('onerror', er);\n unpipe();\n dest.removeListener('error', onerror);\n if (EElistenerCount(dest, 'error') === 0) errorOrDestroy(dest, er);\n }\n\n // Make sure our error handler is attached before userland ones.\n prependListener(dest, 'error', onerror);\n\n // Both close and finish should trigger unpipe, but only once.\n function onclose() {\n dest.removeListener('finish', onfinish);\n unpipe();\n }\n dest.once('close', onclose);\n function onfinish() {\n debug('onfinish');\n dest.removeListener('close', onclose);\n unpipe();\n }\n dest.once('finish', onfinish);\n function unpipe() {\n debug('unpipe');\n src.unpipe(dest);\n }\n\n // tell the dest that it's being piped to\n dest.emit('pipe', src);\n\n // start the flow if it hasn't been started already.\n if (!state.flowing) {\n debug('pipe resume');\n src.resume();\n }\n return dest;\n};\nfunction pipeOnDrain(src) {\n return function pipeOnDrainFunctionResult() {\n var state = src._readableState;\n debug('pipeOnDrain', state.awaitDrain);\n if (state.awaitDrain) state.awaitDrain--;\n if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {\n state.flowing = true;\n flow(src);\n }\n };\n}\nReadable.prototype.unpipe = function (dest) {\n var state = this._readableState;\n var unpipeInfo = {\n hasUnpiped: false\n };\n\n // if we're not piping anywhere, then do nothing.\n if (state.pipesCount === 0) return this;\n\n // just one destination. most common case.\n if (state.pipesCount === 1) {\n // passed in one, but it's not the right one.\n if (dest && dest !== state.pipes) return this;\n if (!dest) dest = state.pipes;\n\n // got a match.\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n if (dest) dest.emit('unpipe', this, unpipeInfo);\n return this;\n }\n\n // slow case. multiple pipe destinations.\n\n if (!dest) {\n // remove all.\n var dests = state.pipes;\n var len = state.pipesCount;\n state.pipes = null;\n state.pipesCount = 0;\n state.flowing = false;\n for (var i = 0; i < len; i++) dests[i].emit('unpipe', this, {\n hasUnpiped: false\n });\n return this;\n }\n\n // try to find the right one.\n var index = indexOf(state.pipes, dest);\n if (index === -1) return this;\n state.pipes.splice(index, 1);\n state.pipesCount -= 1;\n if (state.pipesCount === 1) state.pipes = state.pipes[0];\n dest.emit('unpipe', this, unpipeInfo);\n return this;\n};\n\n// set up data events if they are asked for\n// Ensure readable listeners eventually get something\nReadable.prototype.on = function (ev, fn) {\n var res = Stream.prototype.on.call(this, ev, fn);\n var state = this._readableState;\n if (ev === 'data') {\n // update readableListening so that resume() may be a no-op\n // a few lines down. This is needed to support once('readable').\n state.readableListening = this.listenerCount('readable') > 0;\n\n // Try start flowing on next tick if stream isn't explicitly paused\n if (state.flowing !== false) this.resume();\n } else if (ev === 'readable') {\n if (!state.endEmitted && !state.readableListening) {\n state.readableListening = state.needReadable = true;\n state.flowing = false;\n state.emittedReadable = false;\n debug('on readable', state.length, state.reading);\n if (state.length) {\n emitReadable(this);\n } else if (!state.reading) {\n process.nextTick(nReadingNextTick, this);\n }\n }\n }\n return res;\n};\nReadable.prototype.addListener = Readable.prototype.on;\nReadable.prototype.removeListener = function (ev, fn) {\n var res = Stream.prototype.removeListener.call(this, ev, fn);\n if (ev === 'readable') {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n return res;\n};\nReadable.prototype.removeAllListeners = function (ev) {\n var res = Stream.prototype.removeAllListeners.apply(this, arguments);\n if (ev === 'readable' || ev === undefined) {\n // We need to check if there is someone still listening to\n // readable and reset the state. However this needs to happen\n // after readable has been emitted but before I/O (nextTick) to\n // support once('readable', fn) cycles. This means that calling\n // resume within the same tick will have no\n // effect.\n process.nextTick(updateReadableListening, this);\n }\n return res;\n};\nfunction updateReadableListening(self) {\n var state = self._readableState;\n state.readableListening = self.listenerCount('readable') > 0;\n if (state.resumeScheduled && !state.paused) {\n // flowing needs to be set to true now, otherwise\n // the upcoming resume will not flow.\n state.flowing = true;\n\n // crude way to check if we should resume\n } else if (self.listenerCount('data') > 0) {\n self.resume();\n }\n}\nfunction nReadingNextTick(self) {\n debug('readable nexttick read 0');\n self.read(0);\n}\n\n// pause() and resume() are remnants of the legacy readable stream API\n// If the user uses them, then switch into old mode.\nReadable.prototype.resume = function () {\n var state = this._readableState;\n if (!state.flowing) {\n debug('resume');\n // we flow only if there is no one listening\n // for readable, but we still have to call\n // resume()\n state.flowing = !state.readableListening;\n resume(this, state);\n }\n state.paused = false;\n return this;\n};\nfunction resume(stream, state) {\n if (!state.resumeScheduled) {\n state.resumeScheduled = true;\n process.nextTick(resume_, stream, state);\n }\n}\nfunction resume_(stream, state) {\n debug('resume', state.reading);\n if (!state.reading) {\n stream.read(0);\n }\n state.resumeScheduled = false;\n stream.emit('resume');\n flow(stream);\n if (state.flowing && !state.reading) stream.read(0);\n}\nReadable.prototype.pause = function () {\n debug('call pause flowing=%j', this._readableState.flowing);\n if (this._readableState.flowing !== false) {\n debug('pause');\n this._readableState.flowing = false;\n this.emit('pause');\n }\n this._readableState.paused = true;\n return this;\n};\nfunction flow(stream) {\n var state = stream._readableState;\n debug('flow', state.flowing);\n while (state.flowing && stream.read() !== null);\n}\n\n// wrap an old-style stream as the async data source.\n// This is *not* part of the readable stream interface.\n// It is an ugly unfortunate mess of history.\nReadable.prototype.wrap = function (stream) {\n var _this = this;\n var state = this._readableState;\n var paused = false;\n stream.on('end', function () {\n debug('wrapped end');\n if (state.decoder && !state.ended) {\n var chunk = state.decoder.end();\n if (chunk && chunk.length) _this.push(chunk);\n }\n _this.push(null);\n });\n stream.on('data', function (chunk) {\n debug('wrapped data');\n if (state.decoder) chunk = state.decoder.write(chunk);\n\n // don't skip over falsy values in objectMode\n if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;\n var ret = _this.push(chunk);\n if (!ret) {\n paused = true;\n stream.pause();\n }\n });\n\n // proxy all the other methods.\n // important when wrapping filters and duplexes.\n for (var i in stream) {\n if (this[i] === undefined && typeof stream[i] === 'function') {\n this[i] = function methodWrap(method) {\n return function methodWrapReturnFunction() {\n return stream[method].apply(stream, arguments);\n };\n }(i);\n }\n }\n\n // proxy certain important events.\n for (var n = 0; n < kProxyEvents.length; n++) {\n stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));\n }\n\n // when we try to consume some more bytes, simply unpause the\n // underlying stream.\n this._read = function (n) {\n debug('wrapped _read', n);\n if (paused) {\n paused = false;\n stream.resume();\n }\n };\n return this;\n};\nif (typeof Symbol === 'function') {\n Readable.prototype[Symbol.asyncIterator] = function () {\n if (createReadableStreamAsyncIterator === undefined) {\n createReadableStreamAsyncIterator = require('./internal/streams/async_iterator');\n }\n return createReadableStreamAsyncIterator(this);\n };\n}\nObject.defineProperty(Readable.prototype, 'readableHighWaterMark', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.highWaterMark;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableBuffer', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState && this._readableState.buffer;\n }\n});\nObject.defineProperty(Readable.prototype, 'readableFlowing', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.flowing;\n },\n set: function set(state) {\n if (this._readableState) {\n this._readableState.flowing = state;\n }\n }\n});\n\n// exposed for testing purposes only.\nReadable._fromList = fromList;\nObject.defineProperty(Readable.prototype, 'readableLength', {\n // making it explicit this property is not enumerable\n // because otherwise some prototype manipulation in\n // userland will fail\n enumerable: false,\n get: function get() {\n return this._readableState.length;\n }\n});\n\n// Pluck off n bytes from an array of buffers.\n// Length is the combined lengths of all the buffers in the list.\n// This function is designed to be inlinable, so please take care when making\n// changes to the function body.\nfunction fromList(n, state) {\n // nothing buffered\n if (state.length === 0) return null;\n var ret;\n if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {\n // read it all, truncate the list\n if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.first();else ret = state.buffer.concat(state.length);\n state.buffer.clear();\n } else {\n // read part of list\n ret = state.buffer.consume(n, state.decoder);\n }\n return ret;\n}\nfunction endReadable(stream) {\n var state = stream._readableState;\n debug('endReadable', state.endEmitted);\n if (!state.endEmitted) {\n state.ended = true;\n process.nextTick(endReadableNT, state, stream);\n }\n}\nfunction endReadableNT(state, stream) {\n debug('endReadableNT', state.endEmitted, state.length);\n\n // Check that we didn't get one last unshift.\n if (!state.endEmitted && state.length === 0) {\n state.endEmitted = true;\n stream.readable = false;\n stream.emit('end');\n if (state.autoDestroy) {\n // In case of duplex streams we need a way to detect\n // if the writable side is ready for autoDestroy as well\n var wState = stream._writableState;\n if (!wState || wState.autoDestroy && wState.finished) {\n stream.destroy();\n }\n }\n }\n}\nif (typeof Symbol === 'function') {\n Readable.from = function (iterable, opts) {\n if (from === undefined) {\n from = require('./internal/streams/from');\n }\n return from(Readable, iterable, opts);\n };\n}\nfunction indexOf(xs, x) {\n for (var i = 0, l = xs.length; i < l; i++) {\n if (xs[i] === x) return i;\n }\n return -1;\n}","module.exports = function () {\n throw new Error('Readable.from is not available in the browser')\n};\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a transform stream is a readable/writable stream where you do\n// something with the data. Sometimes it's called a \"filter\",\n// but that's not a great name for it, since that implies a thing where\n// some bits pass through, and others are simply ignored. (That would\n// be a valid example of a transform, of course.)\n//\n// While the output is causally related to the input, it's not a\n// necessarily symmetric or synchronous transformation. For example,\n// a zlib stream might take multiple plain-text writes(), and then\n// emit a single compressed chunk some time in the future.\n//\n// Here's how this works:\n//\n// The Transform stream has all the aspects of the readable and writable\n// stream classes. When you write(chunk), that calls _write(chunk,cb)\n// internally, and returns false if there's a lot of pending writes\n// buffered up. When you call read(), that calls _read(n) until\n// there's enough pending readable data buffered up.\n//\n// In a transform stream, the written data is placed in a buffer. When\n// _read(n) is called, it transforms the queued up data, calling the\n// buffered _write cb's as it consumes chunks. If consuming a single\n// written chunk would result in multiple output chunks, then the first\n// outputted bit calls the readcb, and subsequent chunks just go into\n// the read buffer, and will cause it to emit 'readable' if necessary.\n//\n// This way, back-pressure is actually determined by the reading side,\n// since _read has to be called to start processing a new chunk. However,\n// a pathological inflate type of transform can cause excessive buffering\n// here. For example, imagine a stream where every byte of input is\n// interpreted as an integer from 0-255, and then results in that many\n// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in\n// 1kb of data being output. In this case, you could write a very small\n// amount of input, and end up with a very large amount of output. In\n// such a pathological inflating mechanism, there'd be no way to tell\n// the system to stop doing the transform. A single 4MB write could\n// cause the system to run out of memory.\n//\n// However, even in such a pathological case, only a single written chunk\n// would be consumed, and then the rest would wait (un-transformed) until\n// the results of the previous transformed chunk were consumed.\n\n'use strict';\n\nmodule.exports = Transform;\nvar _require$codes = require('../errors').codes,\n ERR_METHOD_NOT_IMPLEMENTED = _require$codes.ERR_METHOD_NOT_IMPLEMENTED,\n ERR_MULTIPLE_CALLBACK = _require$codes.ERR_MULTIPLE_CALLBACK,\n ERR_TRANSFORM_ALREADY_TRANSFORMING = _require$codes.ERR_TRANSFORM_ALREADY_TRANSFORMING,\n ERR_TRANSFORM_WITH_LENGTH_0 = _require$codes.ERR_TRANSFORM_WITH_LENGTH_0;\nvar Duplex = require('./_stream_duplex');\nrequire('inherits')(Transform, Duplex);\nfunction afterTransform(er, data) {\n var ts = this._transformState;\n ts.transforming = false;\n var cb = ts.writecb;\n if (cb === null) {\n return this.emit('error', new ERR_MULTIPLE_CALLBACK());\n }\n ts.writechunk = null;\n ts.writecb = null;\n if (data != null)\n // single equals check for both `null` and `undefined`\n this.push(data);\n cb(er);\n var rs = this._readableState;\n rs.reading = false;\n if (rs.needReadable || rs.length < rs.highWaterMark) {\n this._read(rs.highWaterMark);\n }\n}\nfunction Transform(options) {\n if (!(this instanceof Transform)) return new Transform(options);\n Duplex.call(this, options);\n this._transformState = {\n afterTransform: afterTransform.bind(this),\n needTransform: false,\n transforming: false,\n writecb: null,\n writechunk: null,\n writeencoding: null\n };\n\n // start out asking for a readable event once data is transformed.\n this._readableState.needReadable = true;\n\n // we have implemented the _read method, and done the other things\n // that Readable wants before the first _read call, so unset the\n // sync guard flag.\n this._readableState.sync = false;\n if (options) {\n if (typeof options.transform === 'function') this._transform = options.transform;\n if (typeof options.flush === 'function') this._flush = options.flush;\n }\n\n // When the writable side finishes, then flush out anything remaining.\n this.on('prefinish', prefinish);\n}\nfunction prefinish() {\n var _this = this;\n if (typeof this._flush === 'function' && !this._readableState.destroyed) {\n this._flush(function (er, data) {\n done(_this, er, data);\n });\n } else {\n done(this, null, null);\n }\n}\nTransform.prototype.push = function (chunk, encoding) {\n this._transformState.needTransform = false;\n return Duplex.prototype.push.call(this, chunk, encoding);\n};\n\n// This is the part where you do stuff!\n// override this function in implementation classes.\n// 'chunk' is an input chunk.\n//\n// Call `push(newChunk)` to pass along transformed output\n// to the readable side. You may call 'push' zero or more times.\n//\n// Call `cb(err)` when you are done with this chunk. If you pass\n// an error, then that'll put the hurt on the whole operation. If you\n// never call cb(), then you'll never get another chunk.\nTransform.prototype._transform = function (chunk, encoding, cb) {\n cb(new ERR_METHOD_NOT_IMPLEMENTED('_transform()'));\n};\nTransform.prototype._write = function (chunk, encoding, cb) {\n var ts = this._transformState;\n ts.writecb = cb;\n ts.writechunk = chunk;\n ts.writeencoding = encoding;\n if (!ts.transforming) {\n var rs = this._readableState;\n if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);\n }\n};\n\n// Doesn't matter what the args are here.\n// _transform does all the work.\n// That we got here means that the readable side wants more data.\nTransform.prototype._read = function (n) {\n var ts = this._transformState;\n if (ts.writechunk !== null && !ts.transforming) {\n ts.transforming = true;\n this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);\n } else {\n // mark that we need a transform, so that any data that comes in\n // will get processed, now that we've asked for it.\n ts.needTransform = true;\n }\n};\nTransform.prototype._destroy = function (err, cb) {\n Duplex.prototype._destroy.call(this, err, function (err2) {\n cb(err2);\n });\n};\nfunction done(stream, er, data) {\n if (er) return stream.emit('error', er);\n if (data != null)\n // single equals check for both `null` and `undefined`\n stream.push(data);\n\n // TODO(BridgeAR): Write a test for these two error cases\n // if there's nothing in the write buffer, then that means\n // that nothing more will ever be provided\n if (stream._writableState.length) throw new ERR_TRANSFORM_WITH_LENGTH_0();\n if (stream._transformState.transforming) throw new ERR_TRANSFORM_ALREADY_TRANSFORMING();\n return stream.push(null);\n}","// Ported from https://github.com/mafintosh/pump with\n// permission from the author, Mathias Buus (@mafintosh).\n\n'use strict';\n\nvar eos;\nfunction once(callback) {\n var called = false;\n return function () {\n if (called) return;\n called = true;\n callback.apply(void 0, arguments);\n };\n}\nvar _require$codes = require('../../../errors').codes,\n ERR_MISSING_ARGS = _require$codes.ERR_MISSING_ARGS,\n ERR_STREAM_DESTROYED = _require$codes.ERR_STREAM_DESTROYED;\nfunction noop(err) {\n // Rethrow the error if it exists to avoid swallowing it\n if (err) throw err;\n}\nfunction isRequest(stream) {\n return stream.setHeader && typeof stream.abort === 'function';\n}\nfunction destroyer(stream, reading, writing, callback) {\n callback = once(callback);\n var closed = false;\n stream.on('close', function () {\n closed = true;\n });\n if (eos === undefined) eos = require('./end-of-stream');\n eos(stream, {\n readable: reading,\n writable: writing\n }, function (err) {\n if (err) return callback(err);\n closed = true;\n callback();\n });\n var destroyed = false;\n return function (err) {\n if (closed) return;\n if (destroyed) return;\n destroyed = true;\n\n // request.destroy just do .end - .abort is what we want\n if (isRequest(stream)) return stream.abort();\n if (typeof stream.destroy === 'function') return stream.destroy();\n callback(err || new ERR_STREAM_DESTROYED('pipe'));\n };\n}\nfunction call(fn) {\n fn();\n}\nfunction pipe(from, to) {\n return from.pipe(to);\n}\nfunction popCallback(streams) {\n if (!streams.length) return noop;\n if (typeof streams[streams.length - 1] !== 'function') return noop;\n return streams.pop();\n}\nfunction pipeline() {\n for (var _len = arguments.length, streams = new Array(_len), _key = 0; _key < _len; _key++) {\n streams[_key] = arguments[_key];\n }\n var callback = popCallback(streams);\n if (Array.isArray(streams[0])) streams = streams[0];\n if (streams.length < 2) {\n throw new ERR_MISSING_ARGS('streams');\n }\n var error;\n var destroys = streams.map(function (stream, i) {\n var reading = i < streams.length - 1;\n var writing = i > 0;\n return destroyer(stream, reading, writing, function (err) {\n if (!error) error = err;\n if (err) destroys.forEach(call);\n if (reading) return;\n destroys.forEach(call);\n callback(error);\n });\n });\n return streams.reduce(pipe);\n}\nmodule.exports = pipeline;","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n// a passthrough stream.\n// basically just the most minimal sort of Transform stream.\n// Every written chunk gets output as-is.\n\n'use strict';\n\nmodule.exports = PassThrough;\nvar Transform = require('./_stream_transform');\nrequire('inherits')(PassThrough, Transform);\nfunction PassThrough(options) {\n if (!(this instanceof PassThrough)) return new PassThrough(options);\n Transform.call(this, options);\n}\nPassThrough.prototype._transform = function (chunk, encoding, cb) {\n cb(null, chunk);\n};","exports = module.exports = require('./lib/_stream_readable.js');\nexports.Stream = exports;\nexports.Readable = exports;\nexports.Writable = require('./lib/_stream_writable.js');\nexports.Duplex = require('./lib/_stream_duplex.js');\nexports.Transform = require('./lib/_stream_transform.js');\nexports.PassThrough = require('./lib/_stream_passthrough.js');\nexports.finished = require('./lib/internal/streams/end-of-stream.js');\nexports.pipeline = require('./lib/internal/streams/pipeline.js');\n","// src/createStreamMiddleware.ts\nimport SafeEventEmitter from \"@metamask/safe-event-emitter\";\nimport { Duplex } from \"readable-stream\";\nfunction createStreamMiddleware(options = {}) {\n const idMap = {};\n const stream = new Duplex({\n objectMode: true,\n read: () => void 0,\n write: processMessage\n });\n const events = new SafeEventEmitter();\n const middleware = (req, res, next, end) => {\n idMap[req.id] = { req, res, next, end };\n sendToStream(req);\n };\n return { events, middleware, stream };\n function sendToStream(req) {\n stream.push(req);\n }\n function processMessage(res, _encoding, streamWriteCallback) {\n let errorObj = null;\n try {\n const isNotification = !res.id;\n if (isNotification) {\n processNotification(res);\n } else {\n processResponse(res);\n }\n } catch (_err) {\n errorObj = _err;\n }\n streamWriteCallback(errorObj);\n }\n function processResponse(res) {\n const { id: responseId } = res;\n if (responseId === null) {\n return;\n }\n const context = idMap[responseId];\n if (!context) {\n console.warn(`StreamMiddleware - Unknown response id \"${responseId}\"`);\n return;\n }\n delete idMap[responseId];\n Object.assign(context.res, res);\n setTimeout(context.end);\n }\n function processNotification(notif) {\n if (options?.retryOnMessage && notif.method === options.retryOnMessage) {\n retryStuckRequests();\n }\n events.emit(\"notification\", notif);\n }\n function retryStuckRequests() {\n Object.values(idMap).forEach(({ req, retryCount = 0 }) => {\n if (!req.id) {\n return;\n }\n if (retryCount >= 3) {\n throw new Error(\n `StreamMiddleware - Retry limit exceeded for request id \"${req.id}\"`\n );\n }\n const idMapObject = idMap[req.id];\n if (idMapObject) {\n idMapObject.retryCount = retryCount + 1;\n }\n sendToStream(req);\n });\n }\n}\n\nexport {\n createStreamMiddleware\n};\n//# sourceMappingURL=chunk-446QYOBP.mjs.map","// Returns a wrapper function that returns a wrapped callback\n// The wrapper function should do some stuff, and return a\n// presumably different callback function.\n// This makes sure that own properties are retained, so that\n// decorations and such are not lost along the way.\nmodule.exports = wrappy\nfunction wrappy (fn, cb) {\n if (fn && cb) return wrappy(fn)(cb)\n\n if (typeof fn !== 'function')\n throw new TypeError('need wrapper function')\n\n Object.keys(fn).forEach(function (k) {\n wrapper[k] = fn[k]\n })\n\n return wrapper\n\n function wrapper() {\n var args = new Array(arguments.length)\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n var ret = fn.apply(this, args)\n var cb = args[args.length-1]\n if (typeof ret === 'function' && ret !== cb) {\n Object.keys(cb).forEach(function (k) {\n ret[k] = cb[k]\n })\n }\n return ret\n }\n}\n","var wrappy = require('wrappy')\nmodule.exports = wrappy(once)\nmodule.exports.strict = wrappy(onceStrict)\n\nonce.proto = once(function () {\n Object.defineProperty(Function.prototype, 'once', {\n value: function () {\n return once(this)\n },\n configurable: true\n })\n\n Object.defineProperty(Function.prototype, 'onceStrict', {\n value: function () {\n return onceStrict(this)\n },\n configurable: true\n })\n})\n\nfunction once (fn) {\n var f = function () {\n if (f.called) return f.value\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n f.called = false\n return f\n}\n\nfunction onceStrict (fn) {\n var f = function () {\n if (f.called)\n throw new Error(f.onceError)\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n var name = fn.name || 'Function wrapped with `once`'\n f.onceError = name + \" shouldn't be called more than once\"\n f.called = false\n return f\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Substream = void 0;\nconst readable_stream_1 = require(\"readable-stream\");\nclass Substream extends readable_stream_1.Duplex {\n constructor({ parent, name }) {\n super({ objectMode: true });\n this._parent = parent;\n this._name = name;\n }\n /**\n * Explicitly sets read operations to a no-op.\n */\n _read() {\n return undefined;\n }\n /**\n * Called when data should be written to this writable stream.\n *\n * @param chunk - Arbitrary object to write\n * @param encoding - Encoding to use when writing payload\n * @param callback - Called when writing is complete or an error occurs\n */\n _write(chunk, _encoding, callback) {\n this._parent.push({\n name: this._name,\n data: chunk,\n });\n callback();\n }\n}\nexports.Substream = Substream;\n//# sourceMappingURL=Substream.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ObjectMultiplex = void 0;\nconst readable_stream_1 = require(\"readable-stream\");\nconst once_1 = __importDefault(require(\"once\"));\nconst Substream_1 = require(\"./Substream\");\nconst IGNORE_SUBSTREAM = Symbol('IGNORE_SUBSTREAM');\nclass ObjectMultiplex extends readable_stream_1.Duplex {\n constructor(opts = {}) {\n super(Object.assign(Object.assign({}, opts), { objectMode: true }));\n this._substreams = {};\n }\n createStream(name) {\n // guard stream against destroyed already\n if (this.destroyed) {\n throw new Error(`ObjectMultiplex - parent stream for name \"${name}\" already destroyed`);\n }\n // guard stream against ended already\n if (this._readableState.ended || this._writableState.ended) {\n throw new Error(`ObjectMultiplex - parent stream for name \"${name}\" already ended`);\n }\n // validate name\n if (!name) {\n throw new Error('ObjectMultiplex - name must not be empty');\n }\n if (this._substreams[name]) {\n throw new Error(`ObjectMultiplex - Substream for name \"${name}\" already exists`);\n }\n // create substream\n const substream = new Substream_1.Substream({ parent: this, name });\n this._substreams[name] = substream;\n // listen for parent stream to end\n anyStreamEnd(this, (_error) => {\n return substream.destroy(_error || undefined);\n });\n return substream;\n }\n // ignore streams (dont display orphaned data warning)\n ignoreStream(name) {\n // validate name\n if (!name) {\n throw new Error('ObjectMultiplex - name must not be empty');\n }\n if (this._substreams[name]) {\n throw new Error(`ObjectMultiplex - Substream for name \"${name}\" already exists`);\n }\n // set\n this._substreams[name] = IGNORE_SUBSTREAM;\n }\n _read() {\n return undefined;\n }\n _write(chunk, _encoding, callback) {\n const { name, data } = chunk;\n if (!name) {\n console.warn(`ObjectMultiplex - malformed chunk without name \"${chunk}\"`);\n return callback();\n }\n // get corresponding substream\n const substream = this._substreams[name];\n if (!substream) {\n console.warn(`ObjectMultiplex - orphaned data for stream \"${name}\"`);\n return callback();\n }\n // push data into substream\n if (substream !== IGNORE_SUBSTREAM) {\n substream.push(data);\n }\n return callback();\n }\n}\nexports.ObjectMultiplex = ObjectMultiplex;\n// util\nfunction anyStreamEnd(stream, _cb) {\n const cb = (0, once_1.default)(_cb);\n (0, readable_stream_1.finished)(stream, { readable: false }, cb);\n (0, readable_stream_1.finished)(stream, { writable: false }, cb);\n}\n//# sourceMappingURL=ObjectMultiplex.js.map","\"use strict\";\nconst ObjectMultiplex_1 = require(\"./ObjectMultiplex\");\nmodule.exports = ObjectMultiplex_1.ObjectMultiplex;\n//# sourceMappingURL=index.js.map","'use strict';\n\nconst isStream = stream =>\n\tstream !== null &&\n\ttypeof stream === 'object' &&\n\ttypeof stream.pipe === 'function';\n\nisStream.writable = stream =>\n\tisStream(stream) &&\n\tstream.writable !== false &&\n\ttypeof stream._write === 'function' &&\n\ttypeof stream._writableState === 'object';\n\nisStream.readable = stream =>\n\tisStream(stream) &&\n\tstream.readable !== false &&\n\ttypeof stream._read === 'function' &&\n\ttypeof stream._readableState === 'object';\n\nisStream.duplex = stream =>\n\tisStream.writable(stream) &&\n\tisStream.readable(stream);\n\nisStream.transform = stream =>\n\tisStream.duplex(stream) &&\n\ttypeof stream._transform === 'function';\n\nmodule.exports = isStream;\n","import {\n sendSiteMetadata\n} from \"./chunk-55ZQ55PO.mjs\";\nimport {\n AbstractStreamProvider\n} from \"./chunk-UTROHXPT.mjs\";\nimport {\n EMITTED_NOTIFICATIONS,\n NOOP,\n getDefaultExternalMiddleware,\n getRpcPromiseCallback\n} from \"./chunk-ZN7WV55J.mjs\";\nimport {\n messages_default\n} from \"./chunk-ZGDQ3IYD.mjs\";\nimport {\n __privateAdd,\n __privateGet,\n __privateSet\n} from \"./chunk-X66SUIEF.mjs\";\n\n// src/MetaMaskInpageProvider.ts\nimport { rpcErrors } from \"@metamask/rpc-errors\";\nvar MetaMaskInpageProviderStreamName = \"metamask-provider\";\nvar _networkVersion;\nvar MetaMaskInpageProvider = class extends AbstractStreamProvider {\n /**\n * Creates a new `MetaMaskInpageProvider`.\n *\n * @param connectionStream - A Node.js duplex stream.\n * @param options - An options bag.\n * @param options.jsonRpcStreamName - The name of the internal JSON-RPC stream.\n * Default: `metamask-provider`.\n * @param options.logger - The logging API to use. Default: `console`.\n * @param options.maxEventListeners - The maximum number of event\n * listeners. Default: 100.\n * @param options.shouldSendMetadata - Whether the provider should\n * send page metadata. Default: `true`.\n */\n constructor(connectionStream, {\n jsonRpcStreamName = MetaMaskInpageProviderStreamName,\n logger = console,\n maxEventListeners = 100,\n shouldSendMetadata\n } = {}) {\n super(connectionStream, {\n jsonRpcStreamName,\n logger,\n maxEventListeners,\n rpcMiddleware: getDefaultExternalMiddleware(logger)\n });\n this._sentWarnings = {\n // properties\n chainId: false,\n networkVersion: false,\n selectedAddress: false,\n // methods\n enable: false,\n experimentalMethods: false,\n send: false,\n // events\n events: {\n close: false,\n data: false,\n networkChanged: false,\n notification: false\n }\n };\n __privateAdd(this, _networkVersion, void 0);\n this._initializeStateAsync();\n __privateSet(this, _networkVersion, null);\n this.isMetaMask = true;\n this._sendSync = this._sendSync.bind(this);\n this.enable = this.enable.bind(this);\n this.send = this.send.bind(this);\n this.sendAsync = this.sendAsync.bind(this);\n this._warnOfDeprecation = this._warnOfDeprecation.bind(this);\n this._metamask = this._getExperimentalApi();\n this._jsonRpcConnection.events.on(\"notification\", (payload) => {\n const { method } = payload;\n if (EMITTED_NOTIFICATIONS.includes(method)) {\n this.emit(\"data\", payload);\n this.emit(\"notification\", payload.params.result);\n }\n });\n if (shouldSendMetadata) {\n if (document.readyState === \"complete\") {\n sendSiteMetadata(this._rpcEngine, this._log);\n } else {\n const domContentLoadedHandler = () => {\n sendSiteMetadata(this._rpcEngine, this._log);\n window.removeEventListener(\n \"DOMContentLoaded\",\n domContentLoadedHandler\n );\n };\n window.addEventListener(\"DOMContentLoaded\", domContentLoadedHandler);\n }\n }\n }\n //====================\n // Deprecated Properties\n //====================\n get chainId() {\n if (!this._sentWarnings.chainId) {\n this._log.warn(messages_default.warnings.chainIdDeprecation);\n this._sentWarnings.chainId = true;\n }\n return super.chainId;\n }\n get networkVersion() {\n if (!this._sentWarnings.networkVersion) {\n this._log.warn(messages_default.warnings.networkVersionDeprecation);\n this._sentWarnings.networkVersion = true;\n }\n return __privateGet(this, _networkVersion);\n }\n get selectedAddress() {\n if (!this._sentWarnings.selectedAddress) {\n this._log.warn(messages_default.warnings.selectedAddressDeprecation);\n this._sentWarnings.selectedAddress = true;\n }\n return super.selectedAddress;\n }\n //====================\n // Public Methods\n //====================\n /**\n * Submits an RPC request per the given JSON-RPC request object.\n *\n * @param payload - The RPC request object.\n * @param callback - The callback function.\n */\n sendAsync(payload, callback) {\n this._rpcRequest(payload, callback);\n }\n /**\n * We override the following event methods so that we can warn consumers\n * about deprecated events:\n * `addListener`, `on`, `once`, `prependListener`, `prependOnceListener`.\n */\n addListener(eventName, listener) {\n this._warnOfDeprecation(eventName);\n return super.addListener(eventName, listener);\n }\n on(eventName, listener) {\n this._warnOfDeprecation(eventName);\n return super.on(eventName, listener);\n }\n once(eventName, listener) {\n this._warnOfDeprecation(eventName);\n return super.once(eventName, listener);\n }\n prependListener(eventName, listener) {\n this._warnOfDeprecation(eventName);\n return super.prependListener(eventName, listener);\n }\n prependOnceListener(eventName, listener) {\n this._warnOfDeprecation(eventName);\n return super.prependOnceListener(eventName, listener);\n }\n //====================\n // Private Methods\n //====================\n /**\n * When the provider becomes disconnected, updates internal state and emits\n * required events. Idempotent with respect to the isRecoverable parameter.\n *\n * Error codes per the CloseEvent status codes as required by EIP-1193:\n * https://developer.mozilla.org/en-US/docs/Web/API/CloseEvent#Status_codes.\n *\n * @param isRecoverable - Whether the disconnection is recoverable.\n * @param errorMessage - A custom error message.\n * @fires BaseProvider#disconnect - If the disconnection is not recoverable.\n */\n _handleDisconnect(isRecoverable, errorMessage) {\n super._handleDisconnect(isRecoverable, errorMessage);\n if (__privateGet(this, _networkVersion) && !isRecoverable) {\n __privateSet(this, _networkVersion, null);\n }\n }\n /**\n * Warns of deprecation for the given event, if applicable.\n *\n * @param eventName - The name of the event.\n */\n _warnOfDeprecation(eventName) {\n if (this._sentWarnings?.events[eventName] === false) {\n this._log.warn(messages_default.warnings.events[eventName]);\n this._sentWarnings.events[eventName] = true;\n }\n }\n //====================\n // Deprecated Methods\n //====================\n /**\n * Equivalent to: `ethereum.request('eth_requestAccounts')`.\n *\n * @deprecated Use request({ method: 'eth_requestAccounts' }) instead.\n * @returns A promise that resolves to an array of addresses.\n */\n async enable() {\n if (!this._sentWarnings.enable) {\n this._log.warn(messages_default.warnings.enableDeprecation);\n this._sentWarnings.enable = true;\n }\n return new Promise((resolve, reject) => {\n try {\n this._rpcRequest(\n { method: \"eth_requestAccounts\", params: [] },\n getRpcPromiseCallback(resolve, reject)\n );\n } catch (error) {\n reject(error);\n }\n });\n }\n // eslint-disable-next-line @typescript-eslint/promise-function-async\n send(methodOrPayload, callbackOrArgs) {\n if (!this._sentWarnings.send) {\n this._log.warn(messages_default.warnings.sendDeprecation);\n this._sentWarnings.send = true;\n }\n if (typeof methodOrPayload === \"string\" && (!callbackOrArgs || Array.isArray(callbackOrArgs))) {\n return new Promise((resolve, reject) => {\n try {\n this._rpcRequest(\n { method: methodOrPayload, params: callbackOrArgs },\n getRpcPromiseCallback(resolve, reject, false)\n );\n } catch (error) {\n reject(error);\n }\n });\n } else if (methodOrPayload && typeof methodOrPayload === \"object\" && typeof callbackOrArgs === \"function\") {\n return this._rpcRequest(\n methodOrPayload,\n callbackOrArgs\n );\n }\n return this._sendSync(methodOrPayload);\n }\n /**\n * Internal backwards compatibility method, used in send.\n *\n * @param payload - A JSON-RPC request object.\n * @returns A JSON-RPC response object.\n * @deprecated\n */\n _sendSync(payload) {\n let result;\n switch (payload.method) {\n case \"eth_accounts\":\n result = this.selectedAddress ? [this.selectedAddress] : [];\n break;\n case \"eth_coinbase\":\n result = this.selectedAddress ?? null;\n break;\n case \"eth_uninstallFilter\":\n this._rpcRequest(payload, NOOP);\n result = true;\n break;\n case \"net_version\":\n result = __privateGet(this, _networkVersion) ?? null;\n break;\n default:\n throw new Error(messages_default.errors.unsupportedSync(payload.method));\n }\n return {\n id: payload.id,\n jsonrpc: payload.jsonrpc,\n result\n };\n }\n /**\n * Constructor helper.\n *\n * Gets the experimental _metamask API as Proxy, so that we can warn consumers\n * about its experimental nature.\n *\n * @returns The experimental _metamask API.\n */\n _getExperimentalApi() {\n return new Proxy(\n {\n /**\n * Determines if MetaMask is unlocked by the user.\n *\n * @returns Promise resolving to true if MetaMask is currently unlocked.\n */\n isUnlocked: async () => {\n if (!this._state.initialized) {\n await new Promise((resolve) => {\n this.on(\"_initialized\", () => resolve());\n });\n }\n return this._state.isUnlocked;\n },\n /**\n * Make a batch RPC request.\n *\n * @param requests - The RPC requests to make.\n */\n requestBatch: async (requests) => {\n if (!Array.isArray(requests)) {\n throw rpcErrors.invalidRequest({\n message: \"Batch requests must be made with an array of request objects.\",\n data: requests\n });\n }\n return new Promise((resolve, reject) => {\n this._rpcRequest(requests, getRpcPromiseCallback(resolve, reject));\n });\n }\n },\n {\n get: (obj, prop, ...args) => {\n if (!this._sentWarnings.experimentalMethods) {\n this._log.warn(messages_default.warnings.experimentalMethods);\n this._sentWarnings.experimentalMethods = true;\n }\n return Reflect.get(obj, prop, ...args);\n }\n }\n );\n }\n /**\n * Upon receipt of a new chainId and networkVersion, emits corresponding\n * events and sets relevant public state. Does nothing if neither the chainId\n * nor the networkVersion are different from existing values.\n *\n * @fires MetamaskInpageProvider#networkChanged\n * @param networkInfo - An object with network info.\n * @param networkInfo.chainId - The latest chain ID.\n * @param networkInfo.networkVersion - The latest network ID.\n */\n _handleChainChanged({\n chainId,\n networkVersion\n } = {}) {\n super._handleChainChanged({ chainId, networkVersion });\n if (this._state.isConnected && networkVersion !== __privateGet(this, _networkVersion)) {\n __privateSet(this, _networkVersion, networkVersion);\n if (this._state.initialized) {\n this.emit(\"networkChanged\", __privateGet(this, _networkVersion));\n }\n }\n }\n};\n_networkVersion = new WeakMap();\n\nexport {\n MetaMaskInpageProviderStreamName,\n MetaMaskInpageProvider\n};\n//# sourceMappingURL=chunk-URMSZO7Z.mjs.map","import {\n BaseProvider\n} from \"./chunk-OGPA5Q76.mjs\";\nimport {\n EMITTED_NOTIFICATIONS,\n isValidChainId,\n isValidNetworkVersion\n} from \"./chunk-ZN7WV55J.mjs\";\nimport {\n messages_default\n} from \"./chunk-ZGDQ3IYD.mjs\";\n\n// src/StreamProvider.ts\nimport { createStreamMiddleware } from \"@metamask/json-rpc-middleware-stream\";\nimport ObjectMultiplex from \"@metamask/object-multiplex\";\nimport { duplex as isDuplex } from \"is-stream\";\nimport { pipeline } from \"readable-stream\";\nvar AbstractStreamProvider = class extends BaseProvider {\n /**\n * Creates a new AbstractStreamProvider instance.\n *\n * @param connectionStream - A Node.js duplex stream.\n * @param options - An options bag.\n * @param options.jsonRpcStreamName - The name of the internal JSON-RPC stream.\n * @param options.logger - The logging API to use. Default: `console`.\n * @param options.maxEventListeners - The maximum number of event\n * listeners. Default: 100.\n * @param options.rpcMiddleware - The RPC middleware stack to use.\n */\n constructor(connectionStream, {\n jsonRpcStreamName,\n logger = console,\n maxEventListeners = 100,\n rpcMiddleware = []\n }) {\n super({ logger, maxEventListeners, rpcMiddleware });\n if (!isDuplex(connectionStream)) {\n throw new Error(messages_default.errors.invalidDuplexStream());\n }\n this._handleStreamDisconnect = this._handleStreamDisconnect.bind(this);\n const mux = new ObjectMultiplex();\n pipeline(\n connectionStream,\n mux,\n connectionStream,\n this._handleStreamDisconnect.bind(this, \"MetaMask\")\n );\n this._jsonRpcConnection = createStreamMiddleware({\n retryOnMessage: \"METAMASK_EXTENSION_CONNECT_CAN_RETRY\"\n });\n pipeline(\n this._jsonRpcConnection.stream,\n mux.createStream(jsonRpcStreamName),\n this._jsonRpcConnection.stream,\n this._handleStreamDisconnect.bind(this, \"MetaMask RpcProvider\")\n );\n this._rpcEngine.push(this._jsonRpcConnection.middleware);\n this._jsonRpcConnection.events.on(\"notification\", (payload) => {\n const { method, params } = payload;\n if (method === \"metamask_accountsChanged\") {\n this._handleAccountsChanged(params);\n } else if (method === \"metamask_unlockStateChanged\") {\n this._handleUnlockStateChanged(params);\n } else if (method === \"metamask_chainChanged\") {\n this._handleChainChanged(params);\n } else if (EMITTED_NOTIFICATIONS.includes(method)) {\n this.emit(\"message\", {\n type: method,\n data: params\n });\n } else if (method === \"METAMASK_STREAM_FAILURE\") {\n connectionStream.destroy(\n new Error(messages_default.errors.permanentlyDisconnected())\n );\n }\n });\n }\n //====================\n // Private Methods\n //====================\n /**\n * MUST be called by child classes.\n *\n * Calls `metamask_getProviderState` and passes the result to\n * {@link BaseProvider._initializeState}. Logs an error if getting initial state\n * fails. Throws if called after initialization has completed.\n */\n async _initializeStateAsync() {\n let initialState;\n try {\n initialState = await this.request({\n method: \"metamask_getProviderState\"\n });\n } catch (error) {\n this._log.error(\n \"MetaMask: Failed to get initial state. Please report this bug.\",\n error\n );\n }\n this._initializeState(initialState);\n }\n /**\n * Called when connection is lost to critical streams. Emits an 'error' event\n * from the provider with the error message and stack if present.\n *\n * @param streamName - The name of the stream that disconnected.\n * @param error - The error that caused the disconnection.\n * @fires BaseProvider#disconnect - If the provider is not already\n * disconnected.\n */\n // eslint-disable-next-line no-restricted-syntax\n _handleStreamDisconnect(streamName, error) {\n let warningMsg = `MetaMask: Lost connection to \"${streamName}\".`;\n if (error?.stack) {\n warningMsg += `\n${error.stack}`;\n }\n this._log.warn(warningMsg);\n if (this.listenerCount(\"error\") > 0) {\n this.emit(\"error\", warningMsg);\n }\n this._handleDisconnect(false, error ? error.message : void 0);\n }\n /**\n * Upon receipt of a new chainId and networkVersion, emits corresponding\n * events and sets relevant public state. This class does not have a\n * `networkVersion` property, but we rely on receiving a `networkVersion`\n * with the value of `loading` to detect when the network is changing and\n * a recoverable `disconnect` even has occurred. Child classes that use the\n * `networkVersion` for other purposes must implement additional handling\n * therefore.\n *\n * @fires BaseProvider#chainChanged\n * @param networkInfo - An object with network info.\n * @param networkInfo.chainId - The latest chain ID.\n * @param networkInfo.networkVersion - The latest network ID.\n */\n _handleChainChanged({\n chainId,\n networkVersion\n } = {}) {\n if (!isValidChainId(chainId) || !isValidNetworkVersion(networkVersion)) {\n this._log.error(messages_default.errors.invalidNetworkParams(), {\n chainId,\n networkVersion\n });\n return;\n }\n if (networkVersion === \"loading\") {\n this._handleDisconnect(true);\n } else {\n super._handleChainChanged({ chainId });\n }\n }\n};\nvar StreamProvider = class extends AbstractStreamProvider {\n /**\n * MUST be called after instantiation to complete initialization.\n *\n * Calls `metamask_getProviderState` and passes the result to\n * {@link BaseProvider._initializeState}. Logs an error if getting initial state\n * fails. Throws if called after initialization has completed.\n */\n async initialize() {\n return this._initializeStateAsync();\n }\n};\n\nexport {\n AbstractStreamProvider,\n StreamProvider\n};\n//# sourceMappingURL=chunk-UTROHXPT.mjs.map","import debug from 'debug';\n\n/**\n * Logger for the SDK.\n * This logger uses the 'debug' library for outputting debug information.\n * Logging is enabled in the code via `debug.enable('__NAMESPACE__')`.\n */\nexport const logger = debug('MM_SDK');\n\nlogger.color = '#FFAC1C';\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EthereumProviderError = exports.EthereumRpcError = void 0;\nconst fast_safe_stringify_1 = require(\"fast-safe-stringify\");\n/**\n * Error subclass implementing JSON RPC 2.0 errors and Ethereum RPC errors\n * per EIP-1474.\n * Permits any integer error code.\n */\nclass EthereumRpcError extends Error {\n constructor(code, message, data) {\n if (!Number.isInteger(code)) {\n throw new Error('\"code\" must be an integer.');\n }\n if (!message || typeof message !== 'string') {\n throw new Error('\"message\" must be a nonempty string.');\n }\n super(message);\n this.code = code;\n if (data !== undefined) {\n this.data = data;\n }\n }\n /**\n * Returns a plain object with all public class properties.\n */\n serialize() {\n const serialized = {\n code: this.code,\n message: this.message,\n };\n if (this.data !== undefined) {\n serialized.data = this.data;\n }\n if (this.stack) {\n serialized.stack = this.stack;\n }\n return serialized;\n }\n /**\n * Return a string representation of the serialized error, omitting\n * any circular references.\n */\n toString() {\n return fast_safe_stringify_1.default(this.serialize(), stringifyReplacer, 2);\n }\n}\nexports.EthereumRpcError = EthereumRpcError;\n/**\n * Error subclass implementing Ethereum Provider errors per EIP-1193.\n * Permits integer error codes in the [ 1000 <= 4999 ] range.\n */\nclass EthereumProviderError extends EthereumRpcError {\n /**\n * Create an Ethereum Provider JSON-RPC error.\n * `code` must be an integer in the 1000 <= 4999 range.\n */\n constructor(code, message, data) {\n if (!isValidEthProviderCode(code)) {\n throw new Error('\"code\" must be an integer such that: 1000 <= code <= 4999');\n }\n super(code, message, data);\n }\n}\nexports.EthereumProviderError = EthereumProviderError;\n// Internal\nfunction isValidEthProviderCode(code) {\n return Number.isInteger(code) && code >= 1000 && code <= 4999;\n}\nfunction stringifyReplacer(_, value) {\n if (value === '[Circular]') {\n return undefined;\n }\n return value;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xhc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jbGFzc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZEQUFnRDtBQVNoRDs7OztHQUlHO0FBQ0gsTUFBYSxnQkFBb0IsU0FBUSxLQUFLO0lBTTVDLFlBQVksSUFBWSxFQUFFLE9BQWUsRUFBRSxJQUFRO1FBRWpELElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQ2IsNEJBQTRCLENBQzdCLENBQUM7U0FDSDtRQUNELElBQUksQ0FBQyxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFO1lBQzNDLE1BQU0sSUFBSSxLQUFLLENBQ2Isc0NBQXNDLENBQ3ZDLENBQUM7U0FDSDtRQUVELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUN0QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztTQUNsQjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVM7UUFDUCxNQUFNLFVBQVUsR0FBK0I7WUFDN0MsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1NBQ3RCLENBQUM7UUFDRixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxFQUFFO1lBQzNCLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztTQUM3QjtRQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLFVBQVUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUMvQjtRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxRQUFRO1FBQ04sT0FBTyw2QkFBYSxDQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLEVBQ2hCLGlCQUFpQixFQUNqQixDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXRERCw0Q0FzREM7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLHFCQUF5QixTQUFRLGdCQUFtQjtJQUUvRDs7O09BR0c7SUFDSCxZQUFZLElBQVksRUFBRSxPQUFlLEVBQUUsSUFBUTtRQUVqRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FDYiwyREFBMkQsQ0FDNUQsQ0FBQztTQUNIO1FBRUQsS0FBSyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztDQUNGO0FBaEJELHNEQWdCQztBQUVELFdBQVc7QUFFWCxTQUFTLHNCQUFzQixDQUFDLElBQVk7SUFDMUMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQztBQUNoRSxDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxDQUFVLEVBQUUsS0FBYztJQUNuRCxJQUFJLEtBQUssS0FBSyxZQUFZLEVBQUU7UUFDMUIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMifQ==","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.errorValues = exports.errorCodes = void 0;\nexports.errorCodes = {\n rpc: {\n invalidInput: -32000,\n resourceNotFound: -32001,\n resourceUnavailable: -32002,\n transactionRejected: -32003,\n methodNotSupported: -32004,\n limitExceeded: -32005,\n parse: -32700,\n invalidRequest: -32600,\n methodNotFound: -32601,\n invalidParams: -32602,\n internal: -32603,\n },\n provider: {\n userRejectedRequest: 4001,\n unauthorized: 4100,\n unsupportedMethod: 4200,\n disconnected: 4900,\n chainDisconnected: 4901,\n },\n};\nexports.errorValues = {\n '-32700': {\n standard: 'JSON RPC 2.0',\n message: 'Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.',\n },\n '-32600': {\n standard: 'JSON RPC 2.0',\n message: 'The JSON sent is not a valid Request object.',\n },\n '-32601': {\n standard: 'JSON RPC 2.0',\n message: 'The method does not exist / is not available.',\n },\n '-32602': {\n standard: 'JSON RPC 2.0',\n message: 'Invalid method parameter(s).',\n },\n '-32603': {\n standard: 'JSON RPC 2.0',\n message: 'Internal JSON-RPC error.',\n },\n '-32000': {\n standard: 'EIP-1474',\n message: 'Invalid input.',\n },\n '-32001': {\n standard: 'EIP-1474',\n message: 'Resource not found.',\n },\n '-32002': {\n standard: 'EIP-1474',\n message: 'Resource unavailable.',\n },\n '-32003': {\n standard: 'EIP-1474',\n message: 'Transaction rejected.',\n },\n '-32004': {\n standard: 'EIP-1474',\n message: 'Method not supported.',\n },\n '-32005': {\n standard: 'EIP-1474',\n message: 'Request limit exceeded.',\n },\n '4001': {\n standard: 'EIP-1193',\n message: 'User rejected the request.',\n },\n '4100': {\n standard: 'EIP-1193',\n message: 'The requested account and/or method has not been authorized by the user.',\n },\n '4200': {\n standard: 'EIP-1193',\n message: 'The requested method is not supported by this Ethereum provider.',\n },\n '4900': {\n standard: 'EIP-1193',\n message: 'The provider is disconnected from all chains.',\n },\n '4901': {\n standard: 'EIP-1193',\n message: 'The provider is disconnected from the specified chain.',\n },\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Vycm9yLWNvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1QmEsUUFBQSxVQUFVLEdBQWU7SUFDcEMsR0FBRyxFQUFFO1FBQ0gsWUFBWSxFQUFFLENBQUMsS0FBSztRQUNwQixnQkFBZ0IsRUFBRSxDQUFDLEtBQUs7UUFDeEIsbUJBQW1CLEVBQUUsQ0FBQyxLQUFLO1FBQzNCLG1CQUFtQixFQUFFLENBQUMsS0FBSztRQUMzQixrQkFBa0IsRUFBRSxDQUFDLEtBQUs7UUFDMUIsYUFBYSxFQUFFLENBQUMsS0FBSztRQUNyQixLQUFLLEVBQUUsQ0FBQyxLQUFLO1FBQ2IsY0FBYyxFQUFFLENBQUMsS0FBSztRQUN0QixjQUFjLEVBQUUsQ0FBQyxLQUFLO1FBQ3RCLGFBQWEsRUFBRSxDQUFDLEtBQUs7UUFDckIsUUFBUSxFQUFFLENBQUMsS0FBSztLQUNqQjtJQUNELFFBQVEsRUFBRTtRQUNSLG1CQUFtQixFQUFFLElBQUk7UUFDekIsWUFBWSxFQUFFLElBQUk7UUFDbEIsaUJBQWlCLEVBQUUsSUFBSTtRQUN2QixZQUFZLEVBQUUsSUFBSTtRQUNsQixpQkFBaUIsRUFBRSxJQUFJO0tBQ3hCO0NBQ0YsQ0FBQztBQUVXLFFBQUEsV0FBVyxHQUFHO0lBQ3pCLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLE9BQU8sRUFBRSx1R0FBdUc7S0FDakg7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsY0FBYztRQUN4QixPQUFPLEVBQUUsOENBQThDO0tBQ3hEO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLGNBQWM7UUFDeEIsT0FBTyxFQUFFLCtDQUErQztLQUN6RDtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLE9BQU8sRUFBRSw4QkFBOEI7S0FDeEM7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsY0FBYztRQUN4QixPQUFPLEVBQUUsMEJBQTBCO0tBQ3BDO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsT0FBTyxFQUFFLGdCQUFnQjtLQUMxQjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLE9BQU8sRUFBRSxxQkFBcUI7S0FDL0I7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsVUFBVTtRQUNwQixPQUFPLEVBQUUsdUJBQXVCO0tBQ2pDO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsT0FBTyxFQUFFLHVCQUF1QjtLQUNqQztJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLE9BQU8sRUFBRSx1QkFBdUI7S0FDakM7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsVUFBVTtRQUNwQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLFVBQVU7UUFDcEIsT0FBTyxFQUFFLDRCQUE0QjtLQUN0QztJQUNELE1BQU0sRUFBRTtRQUNOLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLE9BQU8sRUFBRSwwRUFBMEU7S0FDcEY7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsVUFBVTtRQUNwQixPQUFPLEVBQUUsa0VBQWtFO0tBQzVFO0lBQ0QsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLFVBQVU7UUFDcEIsT0FBTyxFQUFFLCtDQUErQztLQUN6RDtJQUNELE1BQU0sRUFBRTtRQUNOLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLE9BQU8sRUFBRSx3REFBd0Q7S0FDbEU7Q0FDRixDQUFDIn0=","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.serializeError = exports.isValidCode = exports.getMessageFromCode = exports.JSON_RPC_SERVER_ERROR_MESSAGE = void 0;\nconst error_constants_1 = require(\"./error-constants\");\nconst classes_1 = require(\"./classes\");\nconst FALLBACK_ERROR_CODE = error_constants_1.errorCodes.rpc.internal;\nconst FALLBACK_MESSAGE = 'Unspecified error message. This is a bug, please report it.';\nconst FALLBACK_ERROR = {\n code: FALLBACK_ERROR_CODE,\n message: getMessageFromCode(FALLBACK_ERROR_CODE),\n};\nexports.JSON_RPC_SERVER_ERROR_MESSAGE = 'Unspecified server error.';\n/**\n * Gets the message for a given code, or a fallback message if the code has\n * no corresponding message.\n */\nfunction getMessageFromCode(code, fallbackMessage = FALLBACK_MESSAGE) {\n if (Number.isInteger(code)) {\n const codeString = code.toString();\n if (hasKey(error_constants_1.errorValues, codeString)) {\n return error_constants_1.errorValues[codeString].message;\n }\n if (isJsonRpcServerError(code)) {\n return exports.JSON_RPC_SERVER_ERROR_MESSAGE;\n }\n }\n return fallbackMessage;\n}\nexports.getMessageFromCode = getMessageFromCode;\n/**\n * Returns whether the given code is valid.\n * A code is only valid if it has a message.\n */\nfunction isValidCode(code) {\n if (!Number.isInteger(code)) {\n return false;\n }\n const codeString = code.toString();\n if (error_constants_1.errorValues[codeString]) {\n return true;\n }\n if (isJsonRpcServerError(code)) {\n return true;\n }\n return false;\n}\nexports.isValidCode = isValidCode;\n/**\n * Serializes the given error to an Ethereum JSON RPC-compatible error object.\n * Merely copies the given error's values if it is already compatible.\n * If the given error is not fully compatible, it will be preserved on the\n * returned object's data.originalError property.\n */\nfunction serializeError(error, { fallbackError = FALLBACK_ERROR, shouldIncludeStack = false, } = {}) {\n var _a, _b;\n if (!fallbackError ||\n !Number.isInteger(fallbackError.code) ||\n typeof fallbackError.message !== 'string') {\n throw new Error('Must provide fallback error with integer number code and string message.');\n }\n if (error instanceof classes_1.EthereumRpcError) {\n return error.serialize();\n }\n const serialized = {};\n if (error &&\n typeof error === 'object' &&\n !Array.isArray(error) &&\n hasKey(error, 'code') &&\n isValidCode(error.code)) {\n const _error = error;\n serialized.code = _error.code;\n if (_error.message && typeof _error.message === 'string') {\n serialized.message = _error.message;\n if (hasKey(_error, 'data')) {\n serialized.data = _error.data;\n }\n }\n else {\n serialized.message = getMessageFromCode(serialized.code);\n serialized.data = { originalError: assignOriginalError(error) };\n }\n }\n else {\n serialized.code = fallbackError.code;\n const message = (_a = error) === null || _a === void 0 ? void 0 : _a.message;\n serialized.message = (message && typeof message === 'string'\n ? message\n : fallbackError.message);\n serialized.data = { originalError: assignOriginalError(error) };\n }\n const stack = (_b = error) === null || _b === void 0 ? void 0 : _b.stack;\n if (shouldIncludeStack && error && stack && typeof stack === 'string') {\n serialized.stack = stack;\n }\n return serialized;\n}\nexports.serializeError = serializeError;\n// Internal\nfunction isJsonRpcServerError(code) {\n return code >= -32099 && code <= -32000;\n}\nfunction assignOriginalError(error) {\n if (error && typeof error === 'object' && !Array.isArray(error)) {\n return Object.assign({}, error);\n }\n return error;\n}\nfunction hasKey(obj, key) {\n return Object.prototype.hasOwnProperty.call(obj, key);\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdURBQTREO0FBQzVELHVDQUF5RTtBQUV6RSxNQUFNLG1CQUFtQixHQUFHLDRCQUFVLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztBQUNwRCxNQUFNLGdCQUFnQixHQUFHLDZEQUE2RCxDQUFDO0FBQ3ZGLE1BQU0sY0FBYyxHQUErQjtJQUNqRCxJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQztDQUNqRCxDQUFDO0FBRVcsUUFBQSw2QkFBNkIsR0FBRywyQkFBMkIsQ0FBQztBQUl6RTs7O0dBR0c7QUFDSCxTQUFnQixrQkFBa0IsQ0FDaEMsSUFBWSxFQUNaLGtCQUEwQixnQkFBZ0I7SUFFMUMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQzFCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVuQyxJQUFJLE1BQU0sQ0FBQyw2QkFBVyxFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQ25DLE9BQU8sNkJBQVcsQ0FBQyxVQUEyQixDQUFDLENBQUMsT0FBTyxDQUFDO1NBQ3pEO1FBQ0QsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5QixPQUFPLHFDQUE2QixDQUFDO1NBQ3RDO0tBQ0Y7SUFDRCxPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDO0FBZkQsZ0RBZUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixXQUFXLENBQUMsSUFBWTtJQUN0QyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUMzQixPQUFPLEtBQUssQ0FBQztLQUNkO0lBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ25DLElBQUksNkJBQVcsQ0FBQyxVQUEy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","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ethErrors = void 0;\nconst classes_1 = require(\"./classes\");\nconst utils_1 = require(\"./utils\");\nconst error_constants_1 = require(\"./error-constants\");\nexports.ethErrors = {\n rpc: {\n /**\n * Get a JSON RPC 2.0 Parse (-32700) error.\n */\n parse: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.parse, arg),\n /**\n * Get a JSON RPC 2.0 Invalid Request (-32600) error.\n */\n invalidRequest: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.invalidRequest, arg),\n /**\n * Get a JSON RPC 2.0 Invalid Params (-32602) error.\n */\n invalidParams: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.invalidParams, arg),\n /**\n * Get a JSON RPC 2.0 Method Not Found (-32601) error.\n */\n methodNotFound: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.methodNotFound, arg),\n /**\n * Get a JSON RPC 2.0 Internal (-32603) error.\n */\n internal: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.internal, arg),\n /**\n * Get a JSON RPC 2.0 Server error.\n * Permits integer error codes in the [ -32099 <= -32005 ] range.\n * Codes -32000 through -32004 are reserved by EIP-1474.\n */\n server: (opts) => {\n if (!opts || typeof opts !== 'object' || Array.isArray(opts)) {\n throw new Error('Ethereum RPC Server errors must provide single object argument.');\n }\n const { code } = opts;\n if (!Number.isInteger(code) || code > -32005 || code < -32099) {\n throw new Error('\"code\" must be an integer such that: -32099 <= code <= -32005');\n }\n return getEthJsonRpcError(code, opts);\n },\n /**\n * Get an Ethereum JSON RPC Invalid Input (-32000) error.\n */\n invalidInput: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.invalidInput, arg),\n /**\n * Get an Ethereum JSON RPC Resource Not Found (-32001) error.\n */\n resourceNotFound: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.resourceNotFound, arg),\n /**\n * Get an Ethereum JSON RPC Resource Unavailable (-32002) error.\n */\n resourceUnavailable: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.resourceUnavailable, arg),\n /**\n * Get an Ethereum JSON RPC Transaction Rejected (-32003) error.\n */\n transactionRejected: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.transactionRejected, arg),\n /**\n * Get an Ethereum JSON RPC Method Not Supported (-32004) error.\n */\n methodNotSupported: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.methodNotSupported, arg),\n /**\n * Get an Ethereum JSON RPC Limit Exceeded (-32005) error.\n */\n limitExceeded: (arg) => getEthJsonRpcError(error_constants_1.errorCodes.rpc.limitExceeded, arg),\n },\n provider: {\n /**\n * Get an Ethereum Provider User Rejected Request (4001) error.\n */\n userRejectedRequest: (arg) => {\n return getEthProviderError(error_constants_1.errorCodes.provider.userRejectedRequest, arg);\n },\n /**\n * Get an Ethereum Provider Unauthorized (4100) error.\n */\n unauthorized: (arg) => {\n return getEthProviderError(error_constants_1.errorCodes.provider.unauthorized, arg);\n },\n /**\n * Get an Ethereum Provider Unsupported Method (4200) error.\n */\n unsupportedMethod: (arg) => {\n return getEthProviderError(error_constants_1.errorCodes.provider.unsupportedMethod, arg);\n },\n /**\n * Get an Ethereum Provider Not Connected (4900) error.\n */\n disconnected: (arg) => {\n return getEthProviderError(error_constants_1.errorCodes.provider.disconnected, arg);\n },\n /**\n * Get an Ethereum Provider Chain Not Connected (4901) error.\n */\n chainDisconnected: (arg) => {\n return getEthProviderError(error_constants_1.errorCodes.provider.chainDisconnected, arg);\n },\n /**\n * Get a custom Ethereum Provider error.\n */\n custom: (opts) => {\n if (!opts || typeof opts !== 'object' || Array.isArray(opts)) {\n throw new Error('Ethereum Provider custom errors must provide single object argument.');\n }\n const { code, message, data } = opts;\n if (!message || typeof message !== 'string') {\n throw new Error('\"message\" must be a nonempty string');\n }\n return new classes_1.EthereumProviderError(code, message, data);\n },\n },\n};\n// Internal\nfunction getEthJsonRpcError(code, arg) {\n const [message, data] = parseOpts(arg);\n return new classes_1.EthereumRpcError(code, message || utils_1.getMessageFromCode(code), data);\n}\nfunction getEthProviderError(code, arg) {\n const [message, data] = parseOpts(arg);\n return new classes_1.EthereumProviderError(code, message || utils_1.getMessageFromCode(code), data);\n}\nfunction parseOpts(arg) {\n if (arg) {\n if (typeof arg === 'string') {\n return [arg];\n }\n else if (typeof arg === 'object' && !Array.isArray(arg)) {\n const { message, data } = arg;\n if (message && typeof message !== 'string') {\n throw new Error('Must specify string message.');\n }\n return [message || undefined, data];\n }\n }\n return [];\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1Q0FBb0U7QUFDcEUsbUNBQTZDO0FBQzdDLHVEQUErQztBQWVsQyxRQUFBLFNBQVMsR0FBRztJQUN2QixHQUFHLEVBQUU7UUFFSDs7V0FFRztRQUNILEtBQUssRUFBRSxDQUFJLEdBQXFCLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUNyRCw0QkFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUMxQjtRQUVEOztXQUVHO1FBQ0gsY0FBYyxFQUFFLENBQUksR0FBcUIsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQzlELDRCQUFVLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxHQUFHLENBQ25DO1FBRUQ7O1dBRUc7UUFDSCxhQUFhLEVBQUUsQ0FBSSxHQUFxQixFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FDN0QsNEJBQVUsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FDbEM7UUFFRDs7V0FFRztRQUNILGNBQWMsRUFBRSxDQUFJLEdBQXFCLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUM5RCw0QkFBVSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUNuQztRQUVEOztXQUVHO1FBQ0gsUUFBUSxFQUFFLENBQUksR0FBcUIsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQ3hELDRCQUFVLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQzdCO1FBRUQ7Ozs7V0FJRztRQUNILE1BQU0sRUFBRSxDQUFJLElBQTJCLEVBQUUsRUFBRTtZQUN6QyxJQUFJLENBQUMsSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUM1RCxNQUFNLElBQUksS0FBSyxDQUFDLGlFQUFpRSxDQUFDLENBQUM7YUFDcEY7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","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getMessageFromCode = exports.serializeError = exports.EthereumProviderError = exports.EthereumRpcError = exports.ethErrors = exports.errorCodes = void 0;\nconst classes_1 = require(\"./classes\");\nObject.defineProperty(exports, \"EthereumRpcError\", { enumerable: true, get: function () { return classes_1.EthereumRpcError; } });\nObject.defineProperty(exports, \"EthereumProviderError\", { enumerable: true, get: function () { return classes_1.EthereumProviderError; } });\nconst utils_1 = require(\"./utils\");\nObject.defineProperty(exports, \"serializeError\", { enumerable: true, get: function () { return utils_1.serializeError; } });\nObject.defineProperty(exports, \"getMessageFromCode\", { enumerable: true, get: function () { return utils_1.getMessageFromCode; } });\nconst errors_1 = require(\"./errors\");\nObject.defineProperty(exports, \"ethErrors\", { enumerable: true, get: function () { return errors_1.ethErrors; } });\nconst error_constants_1 = require(\"./error-constants\");\nObject.defineProperty(exports, \"errorCodes\", { enumerable: true, get: function () { return error_constants_1.errorCodes; } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBQW9FO0FBVWxFLGlHQVZPLDBCQUFnQixPQVVQO0FBQ2hCLHNHQVh5QiwrQkFBcUIsT0FXekI7QUFWdkIsbUNBRWlCO0FBU2YsK0ZBVkEsc0JBQWMsT0FVQTtBQUNkLG1HQVhnQiwwQkFBa0IsT0FXaEI7QUFUcEIscUNBQXFDO0FBS25DLDBGQUxPLGtCQUFTLE9BS1A7QUFKWCx1REFBK0M7QUFHN0MsMkZBSE8sNEJBQVUsT0FHUCJ9","export const RPC_METHODS = {\n METAMASK_GETPROVIDERSTATE: 'metamask_getProviderState',\n METAMASK_CONNECTSIGN: 'metamask_connectSign',\n METAMASK_CONNECTWITH: 'metamask_connectWith',\n METAMASK_OPEN: 'metamask_open',\n METAMASK_BATCH: 'metamask_batch',\n PERSONAL_SIGN: 'personal_sign',\n WALLET_REQUESTPERMISSIONS: 'wallet_requestPermissions',\n WALLET_REVOKEPERMISSIONS: 'wallet_revokePermissions',\n WALLET_GETPERMISSIONS: 'wallet_getPermissions',\n WALLET_WATCHASSET: 'wallet_watchAsset',\n WALLET_ADDETHEREUMCHAIN: 'wallet_addEthereumChain',\n WALLET_SWITCHETHETHEREUMCHAIN: 'wallet_switchEthereumChain',\n ETH_REQUESTACCOUNTS: 'eth_requestAccounts',\n ETH_ACCOUNTS: 'eth_accounts',\n ETH_CHAINID: 'eth_chainId',\n ETH_SENDTRANSACTION: 'eth_sendTransaction',\n ETH_SIGNTYPEDDATA: 'eth_signTypedData',\n ETH_SIGNTYPEDDATA_V3: 'eth_signTypedData_v3',\n ETH_SIGNTYPEDDATA_V4: 'eth_signTypedData_v4',\n ETH_SIGNTRANSACTION: 'eth_signTransaction',\n ETH_SIGN: 'eth_sign',\n PERSONAL_EC_RECOVER: 'personal_ecRecover',\n};\n\nexport const METHODS_TO_REDIRECT: { [method: string]: boolean } = {\n [RPC_METHODS.ETH_REQUESTACCOUNTS]: true,\n [RPC_METHODS.ETH_SENDTRANSACTION]: true,\n [RPC_METHODS.ETH_SIGNTRANSACTION]: true,\n [RPC_METHODS.ETH_SIGN]: true,\n [RPC_METHODS.PERSONAL_SIGN]: true,\n // stop redirecting these as we are caching values in the provider\n [RPC_METHODS.ETH_ACCOUNTS]: false,\n [RPC_METHODS.ETH_CHAINID]: false,\n //\n [RPC_METHODS.PERSONAL_SIGN]: true,\n [RPC_METHODS.ETH_SIGNTYPEDDATA]: true,\n [RPC_METHODS.ETH_SIGNTYPEDDATA_V3]: true,\n [RPC_METHODS.ETH_SIGNTYPEDDATA_V4]: true,\n [RPC_METHODS.WALLET_REQUESTPERMISSIONS]: true,\n [RPC_METHODS.WALLET_GETPERMISSIONS]: true,\n [RPC_METHODS.WALLET_WATCHASSET]: true,\n [RPC_METHODS.WALLET_ADDETHEREUMCHAIN]: true,\n [RPC_METHODS.WALLET_SWITCHETHETHEREUMCHAIN]: true,\n [RPC_METHODS.METAMASK_CONNECTSIGN]: true,\n [RPC_METHODS.METAMASK_CONNECTWITH]: true,\n [RPC_METHODS.PERSONAL_EC_RECOVER]: true,\n [RPC_METHODS.METAMASK_BATCH]: true,\n [RPC_METHODS.METAMASK_OPEN]: true,\n};\n\nexport const lcAnalyticsRPCs = Object.keys(METHODS_TO_REDIRECT).map((method) =>\n method.toLowerCase(),\n);\n\n// unsupported extension connectWith methods\nexport const rpcWithAccountParam = [\n 'eth_signTypedData',\n 'eth_signTypedData_v3',\n 'eth_signTypedData_v4',\n 'eth_sign',\n].map((method) => method.toLowerCase());\n\nexport const STORAGE_PATH = '.sdk-comm';\nexport const STORAGE_PROVIDER_TYPE = 'providerType';\nexport const STORAGE_DAPP_SELECTED_ADDRESS = '.MMSDK_cached_address';\nexport const STORAGE_DAPP_CHAINID = '.MMSDK_cached_chainId';\n\nexport const EXTENSION_EVENTS = {\n CHAIN_CHANGED: 'chainChanged',\n ACCOUNTS_CHANGED: 'accountsChanged',\n DISCONNECT: 'disconnect',\n CONNECT: 'connect',\n CONNECTED: 'connected',\n};\n","import {\n ChannelConfig,\n // eslint-disable-next-line @typescript-eslint/no-shadow\n StorageManager,\n StorageManagerProps,\n} from '@metamask/sdk-communication-layer';\nimport {\n STORAGE_DAPP_CHAINID,\n STORAGE_DAPP_SELECTED_ADDRESS,\n STORAGE_PATH,\n} from '../config';\nimport { logger } from '../utils/logger';\n\nexport class StorageManagerWeb implements StorageManager {\n private enabled = false;\n\n constructor(\n { enabled }: StorageManagerProps | undefined = {\n enabled: false,\n },\n ) {\n this.enabled = enabled;\n }\n\n public async persistChannelConfig(channelConfig: ChannelConfig) {\n const payload = JSON.stringify(channelConfig);\n\n logger(\n `[StorageManagerWeb: persistChannelConfig()] enabled=${this.enabled}`,\n channelConfig,\n );\n\n localStorage.setItem(STORAGE_PATH, payload);\n }\n\n public async getPersistedChannelConfig(): Promise {\n let payload;\n\n try {\n logger(\n `[StorageManagerWeb: getPersistedChannelConfig()] enabled=${this.enabled}`,\n );\n\n payload = localStorage.getItem(STORAGE_PATH);\n\n logger(`[StorageManagerWeb: getPersistedChannelConfig()]`, payload);\n\n if (!payload) {\n return undefined;\n }\n\n const channelConfig = JSON.parse(payload) as ChannelConfig;\n logger(\n `[StorageManagerWeb: getPersistedChannelConfig()] channelConfig`,\n channelConfig,\n );\n\n return channelConfig;\n } catch (e) {\n console.error(\n `[StorageManagerWeb: getPersistedChannelConfig()] Can't find existing channel config`,\n e,\n );\n // Ignore errors\n return undefined;\n }\n }\n\n public async persistAccounts(accounts: string[]) {\n logger(\n `[StorageManagerWeb: persistAccounts()] enabled=${this.enabled}`,\n accounts,\n );\n\n const payload = JSON.stringify(accounts);\n localStorage.setItem(STORAGE_DAPP_SELECTED_ADDRESS, payload);\n }\n\n public async getCachedAccounts(): Promise {\n try {\n const rawAccounts = localStorage.getItem(STORAGE_DAPP_SELECTED_ADDRESS);\n if (!rawAccounts) {\n return [];\n }\n return JSON.parse(rawAccounts) as string[];\n } catch (error) {\n console.error(\n `[StorageManagerWeb: getCachedAccounts()] Error reading cached accounts`,\n error,\n );\n throw error;\n }\n }\n\n public async persistChainId(chainId: string) {\n logger(\n `[StorageManagerWeb: persistChainId()] enabled=${this.enabled}`,\n chainId,\n );\n\n localStorage.setItem(STORAGE_DAPP_CHAINID, chainId);\n }\n\n public async getCachedChainId(): Promise {\n try {\n const chainId = localStorage.getItem(STORAGE_DAPP_CHAINID);\n return chainId ?? undefined;\n } catch (error) {\n console.error(\n `[StorageManagerWeb: getCachedChainId()] Error reading cached chainId`,\n error,\n );\n throw error;\n }\n }\n\n public async terminate(): Promise {\n logger(`[StorageManagerWeb: terminate()] enabled=${this.enabled}`);\n\n localStorage.removeItem(STORAGE_PATH);\n }\n}\n","import {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n StorageManager,\n StorageManagerProps,\n} from '@metamask/sdk-communication-layer';\n\n/* #if _NODEJS\nimport { StorageManagerNode as SMDyn } from './StorageManagerNode';\n//#elif _WEB\nimport { StorageManagerWeb as SMDyn } from './StorageManagerWeb';\n//#elif _REACTNATIVE\nimport { StorageManagerAS as SMDyn } from './StorageManagerAS';\n//#else */\n// This is ONLY used during development with devnext/devreactnative or via transpiling\nimport { StorageManagerAS as SMDyn } from './StorageManagerAS';\n// eslint-disable-next-line spaced-comment\n//#endif\n\nexport const getStorageManager = (\n // platformManager: PlatformManager,\n options: StorageManagerProps,\n): StorageManager => {\n // TODO uncomment and test to use similar dynamic imports for each platforms and drop support for JSCC\n // Currently might have an issue with NextJS and server side rendering\n // if (platformManager.isNotBrowser()) {\n // const { StorageManagerNode } = await import('./StorageManagerNode');\n // return new StorageManagerNode(options);\n // }\n return new SMDyn(options);\n};\n","import { Duplex } from 'readable-stream';\nimport { MetaMaskInpageProvider } from '@metamask/providers';\nimport { logger } from '../utils/logger';\nimport { handleChainChanged } from '../services/SDKProvider/ChainManager/handleChainChanged';\nimport { handleDisconnect } from '../services/SDKProvider/ConnectionManager/handleDisconnect';\nimport { initializeState } from '../services/SDKProvider/InitializationManager/initializeState';\nimport { initializeStateAsync } from '../services/SDKProvider/InitializationManager/initializeStateAsync';\n\nexport interface SDKProviderProps {\n /**\n * The stream used to connect to the wallet.\n */\n connectionStream: Duplex;\n\n /**\n * Automatically call eth_requestAccounts on initialization.\n */\n autoRequestAccounts?: boolean;\n\n /**\n * Whether the provider should be set as window.ethereum.\n */\n shouldSetOnWindow?: boolean;\n shouldSendMetadata?: boolean;\n /**\n * Whether the window.web3 shim should be set.\n */\n shouldShimWeb3?: boolean;\n}\n\ninterface SDKProviderState {\n accounts: string[] | null;\n selectedAddress?: string;\n autoRequestAccounts: boolean;\n providerStateRequested: boolean;\n chainId: string;\n networkVersion?: string;\n}\n\nexport class SDKProvider extends MetaMaskInpageProvider {\n public state: SDKProviderState = {\n accounts: null,\n autoRequestAccounts: false,\n providerStateRequested: false,\n chainId: '',\n networkVersion: '',\n };\n\n constructor({\n connectionStream,\n shouldSendMetadata,\n autoRequestAccounts = false,\n }: SDKProviderProps) {\n super(connectionStream, {\n logger: console,\n maxEventListeners: 100,\n shouldSendMetadata,\n });\n\n logger(\n `[SDKProvider: constructor()] autoRequestAccounts=${autoRequestAccounts}`,\n );\n this.state.autoRequestAccounts = autoRequestAccounts;\n }\n\n async forceInitializeState() {\n logger(\n `[SDKProvider: forceInitializeState()] autoRequestAccounts=${this.state.autoRequestAccounts}`,\n );\n\n return this._initializeStateAsync();\n }\n\n _setConnected() {\n logger(`[SDKProvider: _setConnected()] Setting connected state`);\n\n this._state.isConnected = true;\n }\n\n getState() {\n return this._state;\n }\n\n getSDKProviderState() {\n return this.state;\n }\n\n getSelectedAddress() {\n const { accounts } = this._state;\n\n if (!accounts || accounts.length === 0) {\n logger('[SDKProvider: getSelectedAddress] No accounts found');\n return null;\n }\n\n return accounts[0]?.toLowerCase() || '';\n }\n\n getChainId() {\n return this.state.chainId;\n }\n\n getNetworkVersion() {\n return this.state.networkVersion;\n }\n\n setSDKProviderState(state: Partial) {\n this.state = {\n ...this.state,\n ...state,\n };\n }\n\n handleAccountsChanged(accounts: string[], isEthAccounts?: boolean) {\n return this._handleAccountsChanged(accounts, isEthAccounts);\n }\n\n handleDisconnect({ terminate = false }: { terminate: boolean }) {\n handleDisconnect({\n terminate,\n instance: this,\n });\n }\n\n protected async _initializeStateAsync(): Promise {\n return initializeStateAsync(this);\n }\n\n protected _initializeState(\n initialState?:\n | {\n accounts: string[];\n chainId: string;\n isUnlocked: boolean;\n networkVersion?: string | undefined;\n }\n | undefined,\n ): void {\n logger('[SDKProvider: _initializeState()]', initialState);\n return initializeState(\n this,\n super._initializeState.bind(this),\n initialState,\n );\n }\n\n protected _handleChainChanged({\n chainId,\n networkVersion,\n }: { chainId?: string; networkVersion?: string } = {}) {\n this.state.chainId = chainId as string;\n this.state.networkVersion = networkVersion as string;\n\n handleChainChanged({\n instance: this,\n chainId,\n networkVersion,\n superHandleChainChanged: super._handleChainChanged.bind(this),\n });\n }\n}\n","import { ethErrors } from 'eth-rpc-errors';\nimport { logger } from '../../../utils/logger';\nimport { SDKProvider } from '../../../provider/SDKProvider';\n\n/**\n * Handles the disconnection of an SDKProvider instance.\n *\n * This function is responsible for cleaning up the state of an SDKProvider instance upon disconnection.\n * If the `terminate` flag is set to true, it clears various state attributes like `chainId`, `accounts`, and `selectedAddress`.\n * It also sets the `_state.isUnlocked` and `_state.isPermanentlyDisconnected` flags to false, marking the provider as disconnected.\n * An 'eth-rpc-error' for disconnection is emitted at the end.\n *\n * @param options An object containing:\n * - `terminate`: A boolean flag indicating whether to terminate the connection and clear state variables.\n * - `instance`: The SDKProvider instance that is being disconnected.\n * @returns void\n * @emits 'disconnect' event along with an 'eth-rpc-error' describing the disconnection.\n */\nexport function handleDisconnect({\n terminate = false,\n instance,\n}: {\n terminate: boolean;\n instance: SDKProvider;\n}) {\n const { state } = instance;\n\n logger(\n `[SDKProvider: handleDisconnect()] cleaning up provider state terminate=${terminate}`,\n instance,\n );\n\n if (terminate) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.accounts = null;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.isUnlocked = false;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.isPermanentlyDisconnected = true;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.initialized = false;\n }\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._handleAccountsChanged([]);\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.isConnected = false;\n instance.emit('disconnect', ethErrors.provider.disconnected());\n\n state.providerStateRequested = false;\n}\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { SDKProvider } from '../../../provider/SDKProvider';\nimport { getStorageManager } from '../../../storage-manager/getStorageManager';\nimport { logger } from '../../../utils/logger';\n\n/**\n * Asynchronously initializes the state of an SDKProvider instance.\n *\n * The function performs multiple operations to ensure the state of the SDKProvider instance\n * is properly initialized. If debug mode is enabled, it logs the process to the console.\n *\n * - Checks if an initialization is already in progress to avoid redundant calls.\n * - Fetches the initial provider state via the 'metamask_getProviderState' request.\n * - If the initial state lacks account information, attempts to use `instance.selectedAddress` or makes a remote 'eth_requestAccounts' call to populate the accounts.\n *\n * @param instance The SDKProvider instance whose state is to be initialized asynchronously.\n * @returns Promise\n * @throws Error if the initialization fails.\n */\nexport async function initializeStateAsync(instance: SDKProvider) {\n // Don't remove this logic, it's required to initialize the state in some cases.\n if (instance.state === undefined) {\n /**\n * The Workaround: Initializing the state here to address an issue where properties\n * were not set before this method was invoked, possibly by the parent class, leading to\n * unexpected behavior.\n *\n */\n instance.state = {\n accounts: null,\n autoRequestAccounts: false,\n providerStateRequested: false,\n chainId: '',\n };\n }\n\n const { state } = instance;\n // Replace super.initialState logic to automatically request account if not found in providerstate.\n let initialState: Parameters[0];\n\n if (state.providerStateRequested) {\n logger(\n `[SDKProvider: initializeStateAsync()] initialization already in progress`,\n );\n } else {\n state.providerStateRequested = true;\n\n let cachedChainId: undefined | string;\n let cachedSelectedAddress: null | string = null;\n let relayPersistence = false;\n\n let useCache = false;\n const storageManager = getStorageManager({ enabled: true });\n\n // FIXME: currently set for backward compatibility so new sdk don't autoconnect with old wallet\n // Only use cache if relayPersistence is enabled for current channel.\n if (storageManager) {\n // Try to initialize optimistacally with cached value which would be updated once wallet is fully connected.\n const channelConfig = await storageManager.getPersistedChannelConfig({});\n relayPersistence = channelConfig?.relayPersistence ?? false;\n cachedChainId = await storageManager.getCachedChainId();\n const cachedAccounts = await storageManager.getCachedAccounts();\n if (cachedAccounts.length > 0) {\n cachedSelectedAddress = cachedAccounts[0];\n }\n }\n\n logger(\n `[SDKProvider: initializeStateAsync()] relayPersistence=${relayPersistence}`,\n {\n relayPersistence,\n cachedChainId,\n cachedSelectedAddress,\n },\n );\n\n if (relayPersistence) {\n if (cachedChainId && cachedSelectedAddress) {\n initialState = {\n accounts: [cachedSelectedAddress],\n chainId: cachedChainId,\n isUnlocked: false,\n };\n\n useCache = true;\n } else {\n try {\n initialState = (await instance.request({\n method: 'metamask_getProviderState',\n })) as Parameters[0];\n } catch (error) {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._log.error(\n 'MetaMask: Failed to get initial state. Please report this bug.',\n error,\n );\n state.providerStateRequested = false;\n return;\n }\n }\n }\n\n if (initialState?.accounts?.length === 0) {\n if (instance.getSelectedAddress()) {\n initialState.accounts = [instance.getSelectedAddress() as string];\n } else {\n logger(\n `[SDKProvider: initializeStateAsync()] Fetch accounts remotely.`,\n );\n\n const accounts = (await instance.request({\n method: 'eth_requestAccounts',\n params: [],\n })) as string[];\n initialState.accounts = accounts;\n }\n }\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._initializeState(initialState);\n state.providerStateRequested = false;\n\n if (useCache) {\n // Force isConnected to true to avoid unnecessary request to metamask.\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.isConnected = true;\n instance.emit('connect', { chainId: initialState?.chainId });\n }\n }\n}\n","import { logger } from '../../../utils/logger';\nimport { SDKProvider } from '../../../provider/SDKProvider';\n\ntype InitializeStateArgs = Parameters[0];\n\n/**\n * Initializes the state of an SDKProvider instance.\n *\n * This function is responsible for setting the initial state of an SDKProvider instance.\n * If debug mode is enabled, it logs the process to the console. It sets the `_state.initialized`\n * property to false, thereby forcing re-initialization without error.\n *\n * @param instance The SDKProvider instance whose state is to be initialized.\n * @param superInitializeState A function responsible for performing the actual state initialization.\n * @param initialState An optional initial state object to be passed to `superInitializeState`.\n * @returns void\n */\nexport function initializeState(\n instance: SDKProvider,\n superInitializeState: (initialState: InitializeStateArgs) => void,\n initialState?: InitializeStateArgs | undefined,\n): void {\n logger(`[SDKProvider: initializeState()] set state._initialized to false`);\n\n // Force re-initialize without error.\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.initialized = false;\n return superInitializeState(initialState);\n}\n","import { logger } from '../../../utils/logger';\nimport { SDKProvider } from '../../../provider/SDKProvider';\n\n/**\n * Handles a change in the blockchain network for an SDKProvider instance.\n *\n * This function is responsible for updating the state and emitting events when the chain or network version changes.\n * It updates the `_state.isConnected` property to true and emits a 'connect' event with the new `chainId`.\n * The function then calls `superHandleChainChanged` to perform additional updates.\n *\n * If the `networkVersion` parameter is missing (observed especially on RN IOS), the function sets it to '1' as a fallback to prevent provider errors.\n *\n * @param options An object containing:\n * - `chainId`: An optional string representing the new blockchain chain ID.\n * - `networkVersion`: An optional string representing the new network version.\n * - `instance`: The SDKProvider instance that is experiencing the chain change.\n * - `superHandleChainChanged`: A function to perform additional updates and passed the new `chainId` and `networkVersion`.\n * @returns void\n * @emits 'connect' event with the new `chainId`.\n */\nexport function handleChainChanged({\n instance,\n chainId,\n networkVersion,\n superHandleChainChanged,\n}: {\n chainId?: string;\n networkVersion?: string;\n instance: SDKProvider;\n superHandleChainChanged: (args: {\n chainId?: string;\n networkVersion?: string;\n }) => void;\n}) {\n logger(\n `[SDKProvider: handleChainChanged()] chainId=${chainId} networkVersion=${networkVersion}`,\n );\n\n // FIXME on RN IOS networkVersion is sometime missing? why?\n let forcedNetworkVersion = networkVersion;\n if (!networkVersion) {\n logger(\n `[SDKProvider: handleChainChanged()] forced network version to prevent provider error`,\n );\n forcedNetworkVersion = '1';\n }\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n instance._state.isConnected = true;\n instance.emit('connect', { chainId });\n superHandleChainChanged({\n chainId,\n networkVersion: forcedNetworkVersion,\n });\n}\n","export enum ProviderConstants {\n INPAGE = 'metamask-inpage',\n CONTENT_SCRIPT = 'metamask-contentscript',\n PROVIDER = 'metamask-provider',\n}\n\nexport const ErrorMessages = {\n MANUAL_DISCONNECT: 'manual-disconnect',\n};\n\nexport const DEFAULT_SDK_SOURCE = 'direct';\n\nexport const METAMASK_CONNECT_BASE_URL = 'https://metamask.app.link/connect';\n\nexport const METAMASK_DEEPLINK_BASE = 'metamask://connect';\n\nexport const METAMASK_EIP_6369_PROVIDER_INFO = {\n NAME: 'MetaMask',\n RDNS: 'io.metamask',\n};\n\nexport const UUID_V4_REGEX =\n /(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u;\n\nexport const ONE_MINUTE_IN_MS = 60 * 1000;\nexport const ONE_HOUR_IN_MS = ONE_MINUTE_IN_MS * 60;\n","import {\n ConnectionStatus,\n ServiceStatus,\n} from '@metamask/sdk-communication-layer';\nimport { PROVIDER_UPDATE_TYPE } from './ProviderUpdateType';\n\nexport const MetaMaskSDKEvent = {\n Initialized: 'initialized',\n DisplayURI: 'display_uri',\n ProviderUpdate: 'provider_update',\n ConnectWithResponse: 'connectWithResponse',\n ConnectionStatus: 'connection_status',\n ServiceStatus: 'service_status',\n} as const;\n\nexport type MetaMaskSDKEventType =\n (typeof MetaMaskSDKEvent)[keyof typeof MetaMaskSDKEvent];\n\nexport interface MetaMaskSDKEvents {\n [MetaMaskSDKEvent.Initialized]: {\n chainId: string;\n isConnected: boolean;\n isMetaMask: boolean;\n selectedAddress: string | null | undefined;\n networkVersion: string | null | undefined;\n };\n [MetaMaskSDKEvent.DisplayURI]: string;\n [MetaMaskSDKEvent.ProviderUpdate]: PROVIDER_UPDATE_TYPE;\n [MetaMaskSDKEvent.ConnectWithResponse]: unknown;\n [MetaMaskSDKEvent.ConnectionStatus]: ConnectionStatus;\n [MetaMaskSDKEvent.ServiceStatus]: ServiceStatus;\n}\n\nexport type MetaMaskSDKEventPayload =\n T extends keyof MetaMaskSDKEvents ? MetaMaskSDKEvents[T] : unknown;\n","export enum PROVIDER_UPDATE_TYPE {\n /**\n * Emitted when the sdk is terminated.\n */\n TERMINATE = 'terminate',\n /**\n * Emitted when the sdk is initialized via extension.\n */\n EXTENSION = 'extension',\n /**\n * Emitted when the sdk is initialized via any providers (extension / mobile / in-app browser ).\n */\n INITIALIZED = 'initialized',\n}\n","import {\n RPC_METHODS,\n STORAGE_DAPP_CHAINID,\n STORAGE_DAPP_SELECTED_ADDRESS,\n STORAGE_PROVIDER_TYPE,\n} from '../../../config';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { MetaMaskSDKEvent } from '../../../types/MetaMaskSDKEvents';\nimport { PROVIDER_UPDATE_TYPE } from '../../../types/ProviderUpdateType';\nimport { logger } from '../../../utils/logger';\n\nconst hasLocalStoage = typeof window !== 'undefined' && window.localStorage;\n\n/**\n * Terminates the MetaMask connection, switching back to the injected provider if connected via extension.\n *\n * This function first checks if the SDK is running within MetaMask Mobile WebView; if it is,\n * no termination is performed. If connected via extension, it removes the active extension provider\n * and switches back to the SDK's default provider. Finally, it emits a PROVIDER_UPDATE event of type TERMINATE.\n *\n * @param instance The MetaMaskSDK instance whose connection should be terminated.\n * @returns void\n * @emits EventType.PROVIDER_UPDATE with payload PROVIDER_UPDATE_TYPE.TERMINATE when the provider is updated.\n */\nexport async function terminate(instance: MetaMaskSDK) {\n // nothing to do on inapp browser.\n if (instance.platformManager?.isMetaMaskMobileWebView()) {\n return;\n }\n\n if (hasLocalStoage) {\n window.localStorage.removeItem(STORAGE_PROVIDER_TYPE);\n window.localStorage.removeItem(STORAGE_DAPP_CHAINID);\n window.localStorage.removeItem(STORAGE_DAPP_SELECTED_ADDRESS);\n }\n\n // check if connected with extension provider\n // if it is, disconnect from it and switch back to injected provider\n if (instance.extensionActive) {\n try {\n // Revoke permissions\n await instance.activeProvider?.request({\n method: RPC_METHODS.WALLET_REVOKEPERMISSIONS,\n params: [{ eth_accounts: {} }],\n });\n } catch (error) {\n logger(`[MetaMaskSDK: terminate()] error revoking permissions`, error);\n }\n\n if (instance.options.extensionOnly) {\n logger(\n `[MetaMaskSDK: terminate()] extensionOnly --- prevent switching providers`,\n );\n return;\n }\n\n // Re-use default extension provider as default\n instance.activeProvider = instance.sdkProvider;\n window.ethereum = instance.activeProvider;\n instance.extensionActive = false;\n instance.emit(\n MetaMaskSDKEvent.ProviderUpdate,\n PROVIDER_UPDATE_TYPE.TERMINATE,\n );\n return;\n }\n\n instance.emit(\n MetaMaskSDKEvent.ProviderUpdate,\n PROVIDER_UPDATE_TYPE.TERMINATE,\n );\n\n logger(\n `[MetaMaskSDK: terminate()] remoteConnection=${instance.remoteConnection}`,\n );\n\n // Only disconnect if the connection is active\n instance.remoteConnection?.disconnect({\n terminate: true,\n sendMessage: true,\n });\n}\n","import { logger } from '../../../utils/logger';\nimport { RPC_METHODS } from '../../../config';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { isHexString, stringToHex } from '../../../utils/hex.utils';\n\n/**\n * Asynchronously connects to MetaMask, requests account access and sign message.\n *\n * This function first checks whether the MetaMaskSDK instance is initialized.\n * If not, it initializes the instance. It then makes a request to access accounts\n * and the sign the message with the first account.\n *\n * @param instance The MetaMaskSDK instance to connect to.\n * @returns Promise resolving to the result of personal_sign on the msg.\n * @throws Error if the activeProvider is undefined.\n */\nexport async function connectAndSign({\n instance,\n msg,\n}: {\n instance: MetaMaskSDK;\n msg: string;\n}) {\n if (!instance._initialized) {\n logger(\n `[MetaMaskSDK: connectAndSign()] provider not ready -- wait for init()`,\n );\n\n await instance.init();\n }\n\n logger(\n `[MetaMaskSDK: connectAndSign()] activeProvider=${instance.activeProvider}`,\n );\n\n if (!instance.activeProvider) {\n throw new Error(`SDK state invalid -- undefined provider`);\n }\n\n // Check if msg is a hex string and convert if not\n const hexMsg = isHexString(msg) ? msg : stringToHex(msg);\n\n return instance.activeProvider.request({\n method: RPC_METHODS.METAMASK_CONNECTWITH,\n params: [\n {\n method: RPC_METHODS.PERSONAL_SIGN,\n params: [hexMsg],\n },\n ],\n });\n}\n","// Helper functions\nexport function isHexString(value: string): boolean {\n return /^0x([0-9A-Fa-f]{2})*$/u.test(value);\n}\n\nexport function stringToHex(value: string): string {\n let hexString: string;\n\n if (typeof Buffer !== 'undefined') {\n // Node.js environment\n hexString = Buffer.from(value, 'utf8').toString('hex');\n } else if (typeof TextEncoder !== 'undefined') {\n // Web environment\n const encoder = new TextEncoder();\n const uint8Array = encoder.encode(value);\n hexString = Array.from(uint8Array)\n .map((byte) => byte.toString(16).padStart(2, '0'))\n .join('');\n } else if (typeof global === 'object' && 'Buffer' in global) {\n // React Native environment\n hexString = global.Buffer.from(value, 'utf8').toString('hex');\n } else {\n throw new Error('Unable to convert string to hex: No available method.');\n }\n\n return `0x${hexString}`;\n}\n\nexport function hexToString(hex: string): string {\n if (!isHexString(hex)) {\n throw new Error('Invalid hex string');\n }\n\n if (hex === '0x') {\n return '';\n }\n\n const hexWithoutPrefix = hex.slice(2);\n let string: string;\n\n if (typeof Buffer !== 'undefined') {\n // Node.js environment\n string = Buffer.from(hexWithoutPrefix, 'hex').toString('utf8');\n } else if (typeof TextDecoder !== 'undefined') {\n // Web environment\n const matches = hexWithoutPrefix.match(/.{1,2}/gu);\n if (!matches) {\n throw new Error('Invalid hex string');\n }\n const bytes = new Uint8Array(matches.map((byte) => parseInt(byte, 16)));\n string = new TextDecoder('utf-8').decode(bytes);\n } else if (typeof global === 'object' && 'Buffer' in global) {\n // React Native environment\n string = global.Buffer.from(hexWithoutPrefix, 'hex').toString('utf8');\n } else {\n throw new Error('Unable to convert hex to string: No available method.');\n }\n\n return string;\n}\n","import { TrackingEvents } from '@metamask/sdk-communication-layer';\nimport { STORAGE_PROVIDER_TYPE } from '../../../config';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { MetaMaskSDKEvent } from '../../../types/MetaMaskSDKEvents';\nimport { PROVIDER_UPDATE_TYPE } from '../../../types/ProviderUpdateType';\nimport { logger } from '../../../utils/logger';\n\n/**\n * Connects the MetaMaskSDK instance to the MetaMask browser extension as the active provider.\n *\n * This function swaps the current active provider of the SDK with the MetaMask browser extension and sets it\n * as the default Ethereum provider in the window object. It then attempts to initialize a connection with\n * the extension by requesting access to the user's accounts.\n *\n * If successful, the function updates the local storage to remember this preference for future sessions. An event\n * and an analytics event are also emitted to indicate that the active provider has been updated to the extension.\n *\n * @param instance The current instance of the MetaMaskSDK, which contains user-defined or default options.\n * @returns {Promise} A Promise that resolves when the connection has been established or an error has been caught.\n */\nexport async function connectWithExtensionProvider(instance: MetaMaskSDK) {\n logger(`[MetaMaskSDK: connectWithExtensionProvider()] `, instance);\n\n // save a copy of the instance before it gets overwritten\n instance.sdkProvider = instance.activeProvider;\n instance.activeProvider = window.extension as any;\n // Set extension provider as default on window\n window.ethereum = window.extension as any;\n\n try {\n // always create initial query to connect the account\n const accounts = await window.extension?.request({\n method: 'eth_requestAccounts',\n });\n\n logger(\n `[MetaMaskSDK: connectWithExtensionProvider()] accounts=${accounts}`,\n );\n } catch (err) {\n // ignore error\n console.warn(\n `[MetaMaskSDK: connectWithExtensionProvider()] can't request accounts error`,\n err,\n );\n return;\n }\n\n // remember setting for next time (until terminated)\n localStorage.setItem(STORAGE_PROVIDER_TYPE, 'extension');\n // eslint-disable-next-line require-atomic-updates\n instance.extensionActive = true;\n instance.emit(\n MetaMaskSDKEvent.ProviderUpdate,\n PROVIDER_UPDATE_TYPE.EXTENSION,\n );\n\n if (instance.options.enableAnalytics) {\n instance.analytics?.send({ event: TrackingEvents.SDK_USE_EXTENSION });\n }\n}\n","export function base64Encode(str: string): string {\n let base64string: string;\n\n if (typeof Buffer !== 'undefined') {\n base64string = Buffer.from(str, 'utf8').toString('base64');\n } else if (typeof btoa === 'function') {\n base64string = btoa(\n encodeURIComponent(str).replace(/%([0-9A-F]{2})/gu, (_match, p1) =>\n String.fromCharCode(parseInt(p1, 16)),\n ),\n );\n } else if (typeof global === 'object' && 'Buffer' in global) {\n base64string = global.Buffer.from(str, 'utf8').toString('base64');\n } else {\n throw new Error('Unable to base64 encode: No available method.');\n }\n return base64string;\n}\n","import { setGlobalProvider, shimWeb3 } from '@metamask/providers';\nimport { Duplex } from 'readable-stream';\nimport { SDKProvider } from '../provider/SDKProvider';\nimport { logger } from '../utils/logger';\nimport { MetaMaskSDK } from '../sdk';\nimport { MetaMaskSDKEvent } from '../types/MetaMaskSDKEvents';\n\nexport interface EthereumProps {\n shouldSetOnWindow: boolean;\n connectionStream: Duplex;\n shouldSendMetadata?: boolean;\n shouldShimWeb3: boolean;\n sdkInstance: MetaMaskSDK;\n}\n\nexport class Ethereum {\n private static instance?: Ethereum;\n\n private provider: SDKProvider;\n\n private sdkInstance: MetaMaskSDK;\n\n private constructor({\n shouldSetOnWindow,\n connectionStream,\n shouldSendMetadata = false,\n shouldShimWeb3,\n sdkInstance,\n }: EthereumProps) {\n const provider = new SDKProvider({\n connectionStream,\n shouldSendMetadata,\n shouldSetOnWindow,\n shouldShimWeb3,\n autoRequestAccounts: false,\n });\n\n const proxiedProvider = new Proxy(provider, {\n // some common libraries, e.g. web3@1.x, can conflict with our API.\n deleteProperty: () => true,\n });\n\n this.provider = proxiedProvider;\n this.sdkInstance = sdkInstance;\n\n // Add try-catch block around window modifications\n if (shouldSetOnWindow && typeof window !== 'undefined') {\n try {\n setGlobalProvider(provider);\n } catch (error) {\n logger(\n '[Ethereum] Unable to set global provider - window.ethereum may be read-only',\n error,\n );\n // Continue execution without throwing\n }\n }\n\n if (shouldShimWeb3 && typeof window !== 'undefined') {\n try {\n shimWeb3(this.provider);\n } catch (error) {\n logger(\n '[Ethereum] Unable to shim web3 - window.web3 may be read-only',\n error,\n );\n // Continue execution without throwing\n }\n }\n\n // Propagate display_uri events to the SDK\n this.provider.on('display_uri', (uri) => {\n this.sdkInstance.emit(MetaMaskSDKEvent.DisplayURI, uri as string);\n });\n\n this.provider.on('_initialized', () => {\n const info = {\n chainId: this.provider.getChainId(),\n isConnected: this.provider.isConnected(),\n isMetaMask: this.provider.isMetaMask,\n selectedAddress: this.provider.getSelectedAddress(),\n networkVersion: this.provider.getNetworkVersion(),\n };\n\n // Also emit initialized event on sdk.\n this.sdkInstance.emit(MetaMaskSDKEvent.Initialized, info);\n\n logger(`[Ethereum: constructor()] provider initialized`, info);\n });\n }\n\n /**\n * Factory method to initialize an Ethereum service.\n *\n * @param props\n */\n static init(props: EthereumProps) {\n logger(`[Ethereum: init()] Initializing Ethereum service`);\n\n this.instance = new Ethereum(props);\n return this.instance?.provider;\n }\n\n static destroy() {\n // Do not reinitialize to instance to avoid throwing on terminated.\n }\n\n static getInstance() {\n if (!this.instance?.provider) {\n throw new Error(\n 'Ethereum instance not intiialized - call Ethereum.factory first.',\n );\n }\n return this.instance;\n }\n\n static getProvider() {\n if (!this.instance?.provider) {\n throw new Error(\n 'Ethereum instance not intiialized - call Ethereum.factory first.',\n );\n }\n\n return this.instance.provider;\n }\n}\n","import {\n shimWeb3\n} from \"./chunk-F2Z5ZMH3.mjs\";\nimport {\n announceProvider\n} from \"./chunk-ZUJYX37P.mjs\";\nimport {\n MetaMaskInpageProvider\n} from \"./chunk-URMSZO7Z.mjs\";\n\n// src/initializeInpageProvider.ts\nfunction initializeProvider({\n connectionStream,\n jsonRpcStreamName,\n logger = console,\n maxEventListeners = 100,\n providerInfo,\n shouldSendMetadata = true,\n shouldSetOnWindow = true,\n shouldShimWeb3 = false\n}) {\n const provider = new MetaMaskInpageProvider(connectionStream, {\n jsonRpcStreamName,\n logger,\n maxEventListeners,\n shouldSendMetadata\n });\n const proxiedProvider = new Proxy(provider, {\n // some common libraries, e.g. web3@1.x, mess with our API\n deleteProperty: () => true,\n // fix issue with Proxy unable to access private variables from getters\n // https://stackoverflow.com/a/73051482\n get(target, propName) {\n return target[propName];\n }\n });\n if (providerInfo) {\n announceProvider({\n info: providerInfo,\n provider: proxiedProvider\n });\n }\n if (shouldSetOnWindow) {\n setGlobalProvider(proxiedProvider);\n }\n if (shouldShimWeb3) {\n shimWeb3(proxiedProvider, logger);\n }\n return proxiedProvider;\n}\nfunction setGlobalProvider(providerInstance) {\n window.ethereum = providerInstance;\n window.dispatchEvent(new Event(\"ethereum#initialized\"));\n}\n\nexport {\n initializeProvider,\n setGlobalProvider\n};\n//# sourceMappingURL=chunk-LF2KN6ZT.mjs.map","// src/shimWeb3.ts\nfunction shimWeb3(provider, log = console) {\n let loggedCurrentProvider = false;\n let loggedMissingProperty = false;\n if (!window.web3) {\n const SHIM_IDENTIFIER = \"__isMetaMaskShim__\";\n let web3Shim = { currentProvider: provider };\n Object.defineProperty(web3Shim, SHIM_IDENTIFIER, {\n value: true,\n enumerable: true,\n configurable: false,\n writable: false\n });\n web3Shim = new Proxy(web3Shim, {\n get: (target, property, ...args) => {\n if (property === \"currentProvider\" && !loggedCurrentProvider) {\n loggedCurrentProvider = true;\n log.warn(\n \"You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\"\n );\n } else if (property !== \"currentProvider\" && property !== SHIM_IDENTIFIER && !loggedMissingProperty) {\n loggedMissingProperty = true;\n log.error(\n `MetaMask no longer injects web3. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3`\n );\n provider.request({ method: \"metamask_logWeb3ShimUsage\" }).catch((error) => {\n log.debug(\"MetaMask: Failed to log web3 shim usage.\", error);\n });\n }\n return Reflect.get(target, property, ...args);\n },\n set: (...args) => {\n log.warn(\n \"You are accessing the MetaMask window.web3 shim. This object is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3\"\n );\n return Reflect.set(...args);\n }\n });\n Object.defineProperty(window, \"web3\", {\n value: web3Shim,\n enumerable: false,\n configurable: true,\n writable: true\n });\n }\n}\n\nexport {\n shimWeb3\n};\n//# sourceMappingURL=chunk-F2Z5ZMH3.mjs.map","import { RemoteCommunicationPostMessageStream } from '../../PostMessageStream/RemoteCommunicationPostMessageStream';\nimport { METHODS_TO_REDIRECT, RPC_METHODS } from '../../config';\nimport {\n METAMASK_CONNECT_BASE_URL,\n METAMASK_DEEPLINK_BASE,\n} from '../../constants';\nimport { base64Encode } from '../../utils/base64';\nimport { logger } from '../../utils/logger';\nimport { Ethereum } from '../Ethereum';\nimport { extractMethod } from './extractMethod';\n\nexport async function write(\n instance: RemoteCommunicationPostMessageStream,\n chunk: any,\n _encoding: BufferEncoding,\n callback: (error?: Error | null) => void,\n) {\n // Special Case if trusted device (RN or mobile web), we still create deeplink to wake up the connection.\n const isRemoteReady = instance.state.remote?.isReady();\n const socketConnected = instance.state.remote?.isConnected();\n const isPaused = instance.state.remote?.isPaused();\n const provider = Ethereum.getProvider();\n const channelId = instance.state.remote?.getChannelId();\n const authorized = instance.state.remote?.isAuthorized();\n const { deeplinkProtocol } = instance.state;\n const {\n method: targetMethod,\n data,\n triggeredInstaller,\n } = extractMethod(chunk);\n\n logger(\n `[RCPMS: write()] method='${targetMethod}' isRemoteReady=${isRemoteReady} channelId=${channelId} isSocketConnected=${socketConnected} isRemotePaused=${isPaused} providerConnected=${provider.isConnected()}`,\n chunk,\n );\n\n if (!channelId) {\n // ignore initial metamask_getProviderState() call from ethereum.init()\n if (targetMethod !== RPC_METHODS.METAMASK_GETPROVIDERSTATE) {\n logger(`[RCPMS: write()] ${targetMethod} --> channelId is undefined`);\n }\n\n return callback(new Error('disconnected'));\n }\n\n logger(\n `[RCPMS: write()] remote.isPaused()=${instance.state.remote?.isPaused()} authorized=${authorized} ready=${isRemoteReady} socketConnected=${socketConnected}`,\n chunk,\n );\n\n // isSecure is only available in RN and mobile web\n const isSecure = instance.state.platformManager?.isSecure();\n const mobileWeb = instance.state.platformManager?.isMobileWeb() ?? false;\n const deeplinkProtocolAvailable =\n instance.state.remote?.hasDeeplinkProtocol() ?? false;\n const activeDeeplinkProtocol =\n deeplinkProtocolAvailable && mobileWeb && authorized;\n\n try {\n console.warn(\n `[RCPMS: _write()] triggeredInstaller=${triggeredInstaller} activeDeeplinkProtocol=${activeDeeplinkProtocol}`,\n );\n\n if (!triggeredInstaller) {\n // The only reason not to send via network is because the rpc call will be sent in the deeplink\n instance.state.remote\n ?.sendMessage(data?.data)\n .then(() => {\n logger(`[RCPMS: _write()] ${targetMethod} sent successfully`);\n })\n .catch((err: unknown) => {\n logger(`[RCPMS: _write()] error sending message`, err);\n });\n }\n\n if (!isSecure) {\n // Redirect early if nodejs or browser...\n logger(\n `[RCPMS: _write()] unsecure platform for method ${targetMethod} -- return callback`,\n );\n return callback();\n }\n\n if (triggeredInstaller) {\n logger(\n `[RCPMS: _write()] prevent deeplink -- installation completed separately.`,\n );\n return callback();\n }\n\n const pubKey = instance.state.remote?.getKeyInfo()?.ecies.public ?? '';\n let urlParams = encodeURI(\n `channelId=${channelId}&pubkey=${pubKey}&comm=socket&t=d&v=2`,\n );\n\n if (activeDeeplinkProtocol) {\n const jsonrpc = JSON.stringify(data?.data);\n const encrypted = instance.state.remote?.encrypt(jsonrpc);\n if (!encrypted) {\n logger(`[RCPMS: _write()] error encrypting message`);\n return callback(\n new Error('RemoteCommunicationPostMessageStream - disconnected'),\n );\n }\n const encoded = base64Encode(encrypted);\n urlParams += `&scheme=${deeplinkProtocol}&rpc=${encoded}`;\n }\n\n if (!instance.state.platformManager?.isMetaMaskInstalled()) {\n logger(\n `[RCPMS: _write()] prevent deeplink until installation is completed.`,\n );\n return callback();\n }\n\n if (METHODS_TO_REDIRECT[targetMethod]) {\n logger(\n `[RCPMS: _write()] redirect link for '${targetMethod}' socketConnected=${socketConnected} connect?${urlParams}`,\n );\n\n instance.state.platformManager?.openDeeplink(\n `${METAMASK_CONNECT_BASE_URL}?${urlParams}`,\n `${METAMASK_DEEPLINK_BASE}?${urlParams}`,\n '_self',\n );\n } else if (instance.state.remote?.isPaused()) {\n logger(\n `[RCPMS: _write()] MM is PAUSED! deeplink with connect! targetMethod=${targetMethod}`,\n );\n\n instance.state.platformManager?.openDeeplink(\n `${METAMASK_CONNECT_BASE_URL}?redirect=true&${urlParams}`,\n `${METAMASK_DEEPLINK_BASE}?redirect=true&${urlParams}`,\n '_self',\n );\n } else {\n // Already connected with custom rpc method (don't need redirect) - send message without opening metamask mobile.\n // instance only happens when metamask was opened in last 30seconds.\n logger(`[RCPMS: _write()] method ${targetMethod} doesn't need redirect.`);\n }\n } catch (err) {\n logger(`[RCPMS: _write()] error sending message`, err);\n\n return callback(\n new Error('RemoteCommunicationPostMessageStream - disconnected'),\n );\n }\n\n return callback();\n}\n","import { Buffer } from 'buffer';\n\n// TODO refactor to have proper types on data\nexport const extractMethod = (\n chunk: any,\n): { method: string; data: any; triggeredInstaller?: boolean } => {\n let data: any;\n if (Buffer.isBuffer(chunk)) {\n data = chunk.toJSON();\n data._isBuffer = true;\n } else {\n data = chunk;\n }\n\n const targetMethod = data?.data?.method as string;\n\n // Check if this request triggered the installer\n let triggeredInstaller = false;\n if (\n typeof data?.data?.params === 'object' &&\n data?.data?.params?.__triggeredInstaller === true\n ) {\n triggeredInstaller = true;\n // unwrap the params object\n data.data.params = data.data.params.wrappedParams;\n }\n\n return { method: targetMethod, data, triggeredInstaller };\n};\n","import {\n CommunicationLayerMessage,\n EventType,\n RemoteCommunication,\n} from '@metamask/sdk-communication-layer';\nimport { Duplex } from 'readable-stream';\nimport { PlatformManager } from '../Platform/PlatfformManager';\nimport { ProviderConstants } from '../constants';\nimport { onMessage } from '../services/RemoteCommunicationPostMessageStream/onMessage';\nimport { write } from '../services/RemoteCommunicationPostMessageStream/write';\nimport { PostMessageStream } from './PostMessageStream';\n\ninterface RemoteCommunicationPostMessageStreamState {\n _name: any;\n remote: RemoteCommunication | null;\n deeplinkProtocol: boolean;\n platformManager: PlatformManager | null;\n}\n\nexport class RemoteCommunicationPostMessageStream\n extends Duplex\n implements PostMessageStream\n{\n public state: RemoteCommunicationPostMessageStreamState = {\n _name: null,\n remote: null,\n deeplinkProtocol: false,\n platformManager: null,\n };\n\n constructor({\n name,\n remote,\n deeplinkProtocol,\n platformManager,\n }: {\n name: ProviderConstants;\n deeplinkProtocol: boolean;\n remote: RemoteCommunication;\n platformManager: PlatformManager;\n }) {\n super({\n objectMode: true,\n });\n this.state._name = name;\n this.state.remote = remote;\n this.state.deeplinkProtocol = deeplinkProtocol;\n this.state.platformManager = platformManager;\n\n this._onMessage = this._onMessage.bind(this);\n this.state.remote.on(EventType.MESSAGE, this._onMessage);\n }\n\n /**\n * Called when querying the sdk provider with ethereum.request\n */\n async _write(\n chunk: any,\n _encoding: BufferEncoding,\n callback: (error?: Error | null) => void,\n ) {\n return write(this, chunk, _encoding, callback);\n }\n\n _read() {\n return undefined;\n }\n\n _onMessage(message: CommunicationLayerMessage) {\n return onMessage(this, message);\n }\n\n start() {\n // Ethereum.ethereum.isConnected = () => RemoteConnection.isConnected();\n }\n}\n","import { Buffer } from 'buffer';\nimport { CommunicationLayerMessage } from '@metamask/sdk-communication-layer';\nimport { logger } from '../../utils/logger';\nimport { RemoteCommunicationPostMessageStream } from '../../PostMessageStream/RemoteCommunicationPostMessageStream';\nimport { ProviderConstants } from '../../constants';\n\nexport function onMessage(\n instance: RemoteCommunicationPostMessageStream,\n message: CommunicationLayerMessage,\n) {\n try {\n // validate message\n /* if (instance.state._origin !== '*' && event.origin !== instance.state._origin) {\n return;\n }*/\n\n logger(`[RCPMS: onMessage()] message`, message);\n\n const typeOfMsg = typeof message;\n\n if (!message || typeOfMsg !== 'object') {\n return;\n }\n\n // We only want reply from MetaMask.\n const typeOfData = typeof message?.data;\n if (typeOfData !== 'object') {\n return;\n }\n\n if (!message?.name) {\n logger(`[RCPMS: onMessage()] ignore message without name`, message);\n return;\n }\n\n if (message?.name !== ProviderConstants.PROVIDER) {\n logger(\n `[RCPMS: onMessage()] ignore message with wrong name message=${message}`,\n );\n return;\n }\n\n if (Buffer.isBuffer(message)) {\n const data = Buffer.from(message);\n instance.push(data);\n } else {\n instance.push(message);\n }\n } catch (err) {\n logger(`[RCPMS: onMessage()] ignore message error err=${err}`);\n }\n}\n","import crossFetch from 'cross-fetch';\n\nlet rpcId = 1;\n\nfunction getNextRpcId() {\n rpcId += 1;\n return rpcId;\n}\n\ninterface RpcResponse {\n id: number;\n jsonrpc: string;\n result: unknown;\n}\n\nexport const rpcRequestHandler = async ({\n rpcEndpoint,\n method,\n sdkInfo,\n params,\n}: {\n rpcEndpoint: string;\n sdkInfo: string;\n method: string;\n params: unknown[];\n}) => {\n const body = JSON.stringify({\n jsonrpc: '2.0',\n method,\n params,\n id: getNextRpcId(),\n });\n\n const headers: { [key: string]: string } = {\n // eslint-disable-next-line prettier/prettier\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n };\n if (rpcEndpoint.includes('infura')) {\n headers['Metamask-Sdk-Info'] = sdkInfo;\n }\n\n let response;\n try {\n response = await crossFetch(rpcEndpoint, {\n method: 'POST',\n headers,\n body,\n });\n } catch (error) {\n if (error instanceof Error) {\n throw new Error(`Failed to fetch from RPC: ${error.message}`);\n } else {\n throw new Error(`Failed to fetch from RPC: ${error}`);\n }\n }\n\n if (!response.ok) {\n throw new Error(`Server responded with a status of ${response.status}`);\n }\n\n const rpcResponse = (await response.json()) as RpcResponse;\n return rpcResponse.result;\n};\n","export const wait = (time: number) => {\n return new Promise((resolve) => {\n setTimeout(() => {\n resolve(true);\n }, time);\n });\n};\n","import {\n CommunicationLayerPreference,\n EventType,\n PlatformType,\n RemoteCommunication,\n} from '@metamask/sdk-communication-layer';\nimport { Listener } from 'eventemitter2';\nimport packageJson from '../../package.json';\nimport { MetaMaskInstaller } from '../Platform/MetaMaskInstaller';\nimport { PlatformManager } from '../Platform/PlatfformManager';\nimport { getPostMessageStream } from '../PostMessageStream/getPostMessageStream';\nimport { METHODS_TO_REDIRECT, RPC_METHODS } from '../config';\nimport { ProviderConstants } from '../constants';\nimport { MetaMaskSDK } from '../sdk';\nimport { Ethereum } from '../services/Ethereum';\nimport { RemoteConnection } from '../services/RemoteConnection';\nimport { rpcRequestHandler } from '../services/rpc-requests/RPCRequestHandler';\nimport { MetaMaskSDKEvent } from '../types/MetaMaskSDKEvents';\nimport { PROVIDER_UPDATE_TYPE } from '../types/ProviderUpdateType';\nimport { logger } from '../utils/logger';\nimport { wait } from '../utils/wait';\nimport { extensionConnectWithOverwrite } from './extensionConnectWithOverwrite';\n\nconst initializeMobileProvider = async ({\n checkInstallationOnAllCalls = false,\n communicationLayerPreference,\n injectProvider,\n shouldShimWeb3,\n platformManager,\n installer,\n sdk,\n remoteConnection,\n debug,\n}: {\n communicationLayerPreference: CommunicationLayerPreference;\n checkInstallationOnAllCalls?: boolean;\n injectProvider?: boolean;\n shouldShimWeb3: boolean;\n sdk: MetaMaskSDK;\n platformManager: PlatformManager;\n installer: MetaMaskInstaller;\n remoteConnection?: RemoteConnection;\n debug: boolean;\n}) => {\n // Setup stream for content script communication\n const metamaskStream = getPostMessageStream({\n name: ProviderConstants.INPAGE,\n target: ProviderConstants.CONTENT_SCRIPT,\n platformManager,\n communicationLayerPreference,\n remoteConnection,\n });\n\n const platformType = platformManager.getPlatformType();\n const dappInfo = sdk.options.dappMetadata;\n const sdkInfo = `Sdk/Javascript SdkVersion/${\n packageJson.version\n } Platform/${platformType} dApp/${dappInfo.url ?? dappInfo.name} dAppTitle/${\n dappInfo.name\n }`;\n\n let cachedAccountAddress: string | null = null;\n let cachedChainId: string | null = null;\n const storageManager = sdk.options.storage?.storageManager;\n\n // check if localStorage is available\n if (storageManager) {\n try {\n const cachedAddresses = await storageManager.getCachedAccounts();\n if (cachedAddresses.length > 0) {\n cachedAccountAddress = cachedAddresses[0];\n }\n } catch (err) {\n console.error(\n `[initializeMobileProvider] failed to get cached addresses: ${err}`,\n );\n }\n\n try {\n const cachedChain = await storageManager.getCachedChainId();\n if (cachedChain) {\n cachedChainId = cachedChain;\n }\n } catch (err) {\n console.error(\n `[initializeMobileProvider] failed to parse cached chainId: ${err}`,\n );\n }\n }\n\n logger(\n `[initializeMobileProvider] cachedAccountAddress: ${cachedAccountAddress}, cachedChainId: ${cachedChainId}`,\n );\n\n // Initialize provider object (window.ethereum)\n const shouldSetOnWindow = !(\n !injectProvider ||\n // Don't inject if it's non browser or RN\n platformType === PlatformType.NonBrowser ||\n platformType === PlatformType.ReactNative\n );\n\n // ethereum.init will automatically call metamask_getProviderState\n const ethereum = Ethereum.init({\n shouldSetOnWindow,\n connectionStream: metamaskStream,\n shouldShimWeb3,\n sdkInstance: sdk,\n });\n\n let initializationOngoing = false;\n const setInitializing = (ongoing: boolean) => {\n initializationOngoing = ongoing;\n };\n\n const getInitializing = () => {\n return initializationOngoing;\n };\n\n const sendRequest = async (\n method: string,\n args: any,\n executeRequest: any,\n debugRequest: boolean,\n ) => {\n const provider = Ethereum.getProvider();\n\n if (initializationOngoing) {\n // Always re-emit the display_uri event\n provider.emit('display_uri', remoteConnection?.state.qrcodeLink || '');\n\n // make sure the active modal is displayed\n remoteConnection?.showActiveModal();\n\n let loop = getInitializing();\n while (loop) {\n const initializing = getInitializing();\n const authorized = remoteConnection?.isAuthorized();\n loop = initializing && !authorized;\n logger(\n `[initializeMobileProvider: sendRequest()] waiting for initialization to complete - initializing: ${initializing} authorized: ${authorized}`,\n );\n // Wait for already ongoing method that triggered installation to complete\n await wait(1000);\n }\n\n logger(\n `[initializeMobileProvider: sendRequest()] initial method completed -- prevent installation and call provider`,\n );\n // Previous init has completed, meaning we can safely interrup and call the provider.\n return executeRequest(...args);\n }\n\n const isInstalled = platformManager.isMetaMaskInstalled();\n // Also check that socket is connected -- otherwise it would be in inconherant state.\n const socketConnected = remoteConnection?.isConnected();\n\n let selectedAddress: string | null = null;\n let connectedAccounts: string[] | null = null;\n let chainId: string | null = null;\n\n selectedAddress = provider.getSelectedAddress() ?? cachedAccountAddress;\n chainId = provider.getChainId() || cachedChainId;\n\n // keep cached values for selectedAddress and chainId\n if (selectedAddress) {\n if (storageManager && selectedAddress !== cachedAccountAddress) {\n storageManager.persistAccounts([selectedAddress]).catch((err) => {\n console.error(\n `[initializeMobileProvider] failed to persist account: ${err}`,\n );\n });\n }\n }\n\n if (chainId) {\n cachedChainId = chainId;\n if (storageManager) {\n storageManager.persistChainId(chainId).catch((err) => {\n console.error(\n `[initializeMobileProvider] failed to persist chainId: ${err}`,\n );\n });\n }\n }\n\n logger('[initializeMobileProvider: sendRequest()]', {\n selectedAddress,\n chainId,\n });\n\n if (debugRequest) {\n logger(\n `[initializeMobileProvider: sendRequest()] method=${method} ongoing=${initializationOngoing} selectedAddress=${selectedAddress} isInstalled=${isInstalled} checkInstallationOnAllCalls=${checkInstallationOnAllCalls} socketConnected=${socketConnected}`,\n );\n }\n\n // Special case for eth_accounts to allow working with read-only RPC\n if (\n selectedAddress &&\n method.toLowerCase() === RPC_METHODS.ETH_ACCOUNTS.toLowerCase()\n ) {\n return [selectedAddress];\n }\n\n // Special case for eth_chainId to allow working with read-only RPC\n if (\n chainId &&\n method.toLowerCase() === RPC_METHODS.ETH_CHAINID.toLowerCase()\n ) {\n return chainId;\n }\n\n const ALLOWED_CONNECT_METHODS = [\n RPC_METHODS.ETH_REQUESTACCOUNTS,\n RPC_METHODS.WALLET_REQUESTPERMISSIONS,\n RPC_METHODS.METAMASK_CONNECTSIGN,\n RPC_METHODS.METAMASK_CONNECTWITH,\n ];\n\n // is it a readonly method with infura supported chain?\n const isReadOnlyMethod = !METHODS_TO_REDIRECT[method];\n const rpcEndpoint = sdk.options.readonlyRPCMap?.[chainId as `0x${string}`];\n if (rpcEndpoint && isReadOnlyMethod) {\n try {\n const params = args?.[0]?.params;\n\n const readOnlyResponse = await rpcRequestHandler({\n rpcEndpoint,\n sdkInfo,\n method,\n params: params || [],\n });\n\n if (debugRequest) {\n logger(`initializeProvider::ReadOnlyRPCResponse ${readOnlyResponse}`);\n }\n return readOnlyResponse;\n } catch (err) {\n // Log error and fallback to mobile provider\n console.warn(\n `[initializeMobileProvider: sendRequest()] method=${method} readOnlyRPCRequest failed:`,\n err,\n );\n }\n }\n\n if (\n (!isInstalled || (isInstalled && !socketConnected)) &&\n method !== RPC_METHODS.METAMASK_GETPROVIDERSTATE\n ) {\n const params = args?.[0]?.params || [];\n\n if (\n ALLOWED_CONNECT_METHODS.indexOf(method) !== -1 ||\n checkInstallationOnAllCalls\n ) {\n setInitializing(true);\n\n const isConnectWith = method === RPC_METHODS.METAMASK_CONNECTWITH;\n // Only used with connectWith\n const rpcInstallId = `${Date.now()}`;\n try {\n await installer.start({\n wait: false,\n connectWith: isConnectWith\n ? {\n method,\n // We dont need a better id, this is only for current user session.\n // future rpc calls will have ids generated via JSON-RPC package.\n id: rpcInstallId,\n params,\n }\n : undefined,\n });\n\n // wait for authorization\n await new Promise((resolve, reject) => {\n const authorized = remoteConnection?.isAuthorized();\n if (authorized) {\n logger(\n `[initializeMobileProvider: sendRequest()] already authorized`,\n );\n resolve(true);\n }\n\n remoteConnection?.getConnector().once(EventType.AUTHORIZED, () => {\n resolve(true);\n });\n\n // Also detect changes of provider\n sdk.once(\n EventType.PROVIDER_UPDATE,\n (type: PROVIDER_UPDATE_TYPE) => {\n logger(\n `[initializeMobileProvider: sendRequest()] PROVIDER_UPDATE --- remote provider request interupted type=${type}`,\n );\n\n if (type === PROVIDER_UPDATE_TYPE.EXTENSION) {\n reject(EventType.PROVIDER_UPDATE);\n } else {\n reject(new Error('Connection Terminated'));\n }\n },\n );\n });\n } catch (installError: unknown) {\n if (PROVIDER_UPDATE_TYPE.EXTENSION === installError) {\n logger(\n `[initializeMobileProvider: sendRequest()] extension provider detect: re-create ${method} on the active provider`,\n );\n\n // Special case for metamask_connectSign, split the request in 2 parts (connect + sign)\n if (\n method.toLowerCase() ===\n RPC_METHODS.METAMASK_CONNECTSIGN.toLowerCase()\n ) {\n const accounts = (await sdk.getProvider()?.request({\n method: RPC_METHODS.ETH_REQUESTACCOUNTS,\n params: [],\n })) as string[];\n if (!accounts.length) {\n throw new Error(`SDK state invalid -- undefined accounts`);\n }\n\n const response = await sdk.getProvider()?.request({\n method: RPC_METHODS.PERSONAL_SIGN,\n params: [params[0], accounts[0]],\n });\n\n // Emit connectResponse\n sdk.emit(MetaMaskSDKEvent.ConnectWithResponse, response);\n\n return response;\n } else if (\n method.toLowerCase() ===\n RPC_METHODS.METAMASK_CONNECTWITH.toLowerCase()\n ) {\n const [rpc] = params;\n // Overwrite rpc method with correct account information\n const response = await extensionConnectWithOverwrite({\n method: rpc.method,\n sdk,\n params: rpc.params,\n });\n\n // Emit connectResponse\n sdk.emit(MetaMaskSDKEvent.ConnectWithResponse, response);\n\n return response;\n }\n\n logger(\n `[initializeMobileProvider: sendRequest()] sending '${method}' on active provider`,\n params,\n );\n // Re-create the query on the active provider\n return await sdk.getProvider()?.request({\n method,\n params,\n });\n } else if (installError === EventType.REJECTED) {\n // Close modal, connection was rejected\n remoteConnection?.closeModal();\n sdk.getProvider()?.handleDisconnect({ terminate: false });\n\n throw Object.assign(new Error('User rejected connection'), {\n code: 4001,\n });\n }\n\n logger(\n `[initializeMobileProvider: sendRequest()] failed to start installer: ${installError}`,\n );\n\n throw installError;\n } finally {\n setInitializing(false);\n }\n\n // We should now have obtained the authorization and account infos so we can skip sending that rpc call.\n if (method === RPC_METHODS.ETH_REQUESTACCOUNTS) {\n // wait for provider address to be updated\n connectedAccounts = await new Promise((resolve) => {\n const interval = setInterval(() => {\n const { accounts } = provider.getState();\n\n if (accounts) {\n clearInterval(interval);\n resolve(accounts);\n }\n }, 100);\n });\n\n logger(\n `[initializeMobileProvider: sendRequest()] selectedAddress: ${selectedAddress} --- SKIP rpc call`,\n );\n\n return connectedAccounts;\n } else if (method === RPC_METHODS.METAMASK_CONNECTWITH) {\n // wait for tracker to be updated\n\n try {\n let messageCount = 0;\n const maxMessages = 5; // Wait for 5 messages before timing out\n const onRPCUpdate = ({\n resolve,\n reject,\n }: {\n resolve: (value: unknown) => void;\n reject: (reason?: any) => void;\n }) => {\n messageCount += 1;\n const Localtracker = remoteConnection\n ?.getConnector()\n .getRPCMethodTracker();\n\n const target = Localtracker?.[rpcInstallId];\n logger(`TRACKER: update method ${rpcInstallId}`, target);\n\n if (target?.result) {\n logger(\n `[initializeMobileProvider: sendRequest()] found result`,\n target.result,\n );\n // Emit connectWith response\n sdk.emit(MetaMaskSDKEvent.ConnectWithResponse, target.result);\n\n resolve(target.result);\n return;\n } else if (target?.error) {\n logger(\n `[initializeMobileProvider: sendRequest()] found error`,\n target.error,\n );\n\n reject(target.error);\n return;\n } else if (messageCount >= maxMessages) {\n logger(\n `[initializeMobileProvider: sendRequest()] max message count reached without result`,\n );\n\n reject(new Error('Max message count reached without result'));\n return;\n }\n\n // not found yet, need to wait for next update\n logger(\n `[initializeMobileProvider: sendRequest()] not found yet, need to wait for next update`,\n );\n };\n\n let listener: RemoteCommunication | Listener | undefined;\n let rpcUpdateHandler: (() => void) | undefined;\n\n const result = await new Promise((resolve, reject) => {\n const tracker = remoteConnection\n ?.getConnector()\n .getRPCMethodTracker();\n logger(`TRACKER: method ${rpcInstallId}`, tracker);\n\n if (tracker?.[rpcInstallId].result) {\n logger(\n `[initializeMobileProvider: sendRequest()] found result`,\n tracker?.[rpcInstallId].result,\n );\n resolve(tracker?.[rpcInstallId].result);\n } else if (tracker?.[rpcInstallId].error) {\n logger(\n `[initializeMobileProvider: sendRequest()] found error`,\n tracker?.[rpcInstallId].error,\n );\n reject(tracker?.[rpcInstallId].error);\n }\n\n rpcUpdateHandler = () => onRPCUpdate({ resolve, reject });\n\n listener = remoteConnection\n ?.getConnector()\n .on(EventType.RPC_UPDATE, rpcUpdateHandler);\n });\n\n if (rpcUpdateHandler) {\n listener?.off(EventType.RPC_UPDATE, rpcUpdateHandler);\n }\n\n logger(`TRACKER: result`, result);\n return result;\n } catch (error) {\n logger(`[initializeMobileProvider: sendRequest()] error:`, error);\n throw error;\n }\n }\n\n // Inform next step that this method triggered installer\n // TODO: change logic to avoid this call and instead send initial method in the installer to avoid back and forth on mobile.\n if (args[0] && typeof args[0] === 'object') {\n args[0].params = {\n __triggeredInstaller: true,\n wrappedParams: args[0].params,\n };\n }\n\n // Initialize the request (otherwise the rpc call is not sent)\n const response = executeRequest(...args);\n\n return response;\n } else if (platformManager.isSecure() && METHODS_TO_REDIRECT[method]) {\n // Should be connected to call f ==> redirect to RPCMS\n return executeRequest(...args);\n }\n\n if (sdk.isExtensionActive()) {\n // It means there was a switch of provider while waiting for initialization -- redirect to the extension.\n logger(\n `[initializeMobileProvider: sendRequest()] EXTENSION active - redirect request '${method}' to it`,\n args,\n params,\n );\n\n // redirect to extension\n return await sdk.getProvider()?.request({\n method,\n params,\n });\n }\n\n logger(\n `[initializeMobileProvider: sendRequest()] method=${method} --- skip --- not connected/installed`,\n );\n throw new Error(\n 'MetaMask is not connected/installed, please call eth_requestAccounts to connect first.',\n );\n }\n\n try {\n const rpcResponse = await executeRequest(...args);\n logger(\n `[initializeMobileProvider: sendRequest()] method=${method} rpcResponse`,\n rpcResponse,\n );\n\n // Check for wallet_requestPermissions to update local list of accounts since metamask mobile doesn't update the list automatically\n if (method === RPC_METHODS.WALLET_REQUESTPERMISSIONS) {\n const permissions = rpcResponse as {\n caveats: { type: string; value: string[] }[];\n parentCapability: string;\n }[];\n\n const accountsToPersist = permissions.reduce(\n (acc: string[], permission) => {\n if (permission.parentCapability === 'eth_accounts') {\n const restrictedAccounts = permission.caveats.find(\n (caveat) => caveat.type === 'restrictReturnedAccounts',\n )?.value;\n\n if (restrictedAccounts) {\n acc.push(...restrictedAccounts);\n }\n }\n return acc;\n },\n [],\n );\n\n logger(\n `[initializeMobileProvider: sendRequest()] accountsToPersist:`,\n accountsToPersist,\n );\n\n if (accountsToPersist.length > 0) {\n // Emulate 'accountsChanged' on the provider\n provider.handleAccountsChanged(accountsToPersist, false);\n // provider.emit('accountsChanged', accountsToPersist);\n storageManager?.persistAccounts(accountsToPersist);\n }\n }\n\n return rpcResponse;\n } catch (error) {\n console.error(`[initializeMobileProvider: sendRequest()] error:`, error);\n throw error;\n }\n };\n\n // Wrap ethereum.request call to check if the user needs to install MetaMask\n const { request } = ethereum;\n // request(args: RequestArguments): Promise>;\n ethereum.request = async (...args) => {\n return sendRequest(args?.[0].method, args, request, debug);\n };\n\n // send(payload: SendSyncJsonRpcRequest): JsonRpcResponse;\n const { send } = ethereum;\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore // TODO remove support for deprecated method\n ethereum.send = async (...args) => {\n return sendRequest(args?.[0] as string, args, send, debug);\n };\n\n logger(`[initializeMobileProvider: sendRequest()] metamaskStream.start()`);\n metamaskStream.start();\n return ethereum;\n};\n\nexport default initializeMobileProvider;\n","import { CommunicationLayerPreference } from '@metamask/sdk-communication-layer';\nimport { PlatformManager } from '../Platform/PlatfformManager';\nimport { ProviderConstants } from '../constants';\nimport { RemoteConnection } from '../services/RemoteConnection';\nimport { PostMessageStream } from './PostMessageStream';\nimport { RemoteCommunicationPostMessageStream } from './RemoteCommunicationPostMessageStream';\n\nexport interface GetPostMessageStreamProps {\n name: ProviderConstants;\n target: ProviderConstants;\n remoteConnection?: RemoteConnection;\n platformManager: PlatformManager;\n communicationLayerPreference: CommunicationLayerPreference;\n}\n\nexport const getPostMessageStream = ({\n name,\n remoteConnection,\n}: GetPostMessageStreamProps): PostMessageStream => {\n if (!remoteConnection || !remoteConnection?.getConnector()) {\n throw new Error(`Missing remote connection parameter`);\n }\n\n return new RemoteCommunicationPostMessageStream({\n name,\n remote: remoteConnection?.getConnector(),\n deeplinkProtocol: remoteConnection?.state.deeplinkProtocol,\n platformManager: remoteConnection?.getPlatformManager(),\n });\n};\n","import { rpcWithAccountParam, RPC_METHODS } from '../config';\nimport { MetaMaskSDK } from '../sdk';\nimport { logger } from '../utils/logger';\n\nexport const extensionConnectWithOverwrite = async ({\n method,\n sdk,\n params,\n}: {\n method: string;\n sdk: MetaMaskSDK;\n params: any;\n}) => {\n if (!sdk.isExtensionActive()) {\n throw new Error(`SDK state invalid -- extension is not active`);\n }\n\n logger(\n `[MetaMaskProvider: extensionConnectWithOverwrite()] Overwriting request method`,\n method,\n params,\n );\n\n const accounts = (await sdk.getProvider()?.request({\n method: RPC_METHODS.ETH_REQUESTACCOUNTS,\n params: [],\n })) as string[];\n if (!accounts.length) {\n throw new Error(`SDK state invalid -- undefined accounts`);\n }\n\n if (method?.toLowerCase() === RPC_METHODS.PERSONAL_SIGN.toLowerCase()) {\n const connectedRpc = {\n method,\n params: [params[0], accounts[0]],\n };\n return await sdk.getProvider()?.request(connectedRpc);\n } else if (\n method?.toLowerCase() === RPC_METHODS.ETH_SENDTRANSACTION.toLowerCase()\n ) {\n const connectedRpc = {\n method,\n params: [\n {\n ...params[0],\n from: accounts[0],\n },\n ],\n };\n return await sdk.getProvider()?.request(connectedRpc);\n }\n\n // TODO: implement overwrite for each remaining signedTyped methods\n if (rpcWithAccountParam.includes(method.toLowerCase())) {\n console.warn(\n `MetaMaskSDK connectWith method=${method} -- not handled by the extension -- call separately`,\n );\n return accounts;\n }\n\n // Re-create the query on the active provider\n return await sdk.getProvider()?.request({\n method,\n params,\n });\n};\n","import { CommunicationLayerPreference } from '@metamask/sdk-communication-layer';\nimport { MetaMaskInstaller } from '../../../Platform/MetaMaskInstaller';\nimport { PlatformManager } from '../../../Platform/PlatfformManager';\nimport initializeMobileProvider from '../../../provider/initializeMobileProvider';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { initEventListeners } from './initEventListeners';\n\n/**\n * Initializes the MetaMask provider and event listeners for the SDK instance.\n *\n * This function first initializes the active provider by calling 'initializeProvider' with relevant options.\n * It then sets up event listeners for the SDK instance by calling 'initEventListeners'.\n *\n * @param instance The MetaMaskSDK instance for which the provider and event listeners will be initialized.\n * @returns void\n * @async\n */\nexport async function initializeProviderAndEventListeners(\n instance: MetaMaskSDK,\n) {\n const { options } = instance;\n\n // Create a local copy of the provider setup options\n const providerOptions = {\n communicationLayerPreference:\n options.communicationLayerPreference ??\n CommunicationLayerPreference.SOCKET,\n platformManager: instance.platformManager as PlatformManager,\n sdk: instance,\n checkInstallationOnAllCalls: options.checkInstallationOnAllCalls as boolean,\n injectProvider: options.injectProvider ?? true,\n shouldShimWeb3: options.shouldShimWeb3 ?? true,\n extensionOnly: options.extensionOnly ?? true,\n installer: instance.installer as MetaMaskInstaller,\n remoteConnection: instance.remoteConnection,\n debug: instance.debug,\n };\n\n // Inject our provider into window.ethereum\n const provider = await initializeMobileProvider(providerOptions);\n\n // eslint-disable-next-line require-atomic-updates\n instance.activeProvider = provider;\n\n initEventListeners(instance);\n}\n","import {\n ConnectionStatus,\n ServiceStatus,\n} from '@metamask/sdk-communication-layer';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { MetaMaskSDKEvent } from '../../../types/MetaMaskSDKEvents';\n\n/**\n * Initializes event listeners for MetaMask SDK's remote connection.\n *\n * This function attaches listeners for CONNECTION_STATUS and SERVICE_STATUS events\n * on the remote connection's connector. These events are then emitted on the instance\n * itself, effectively propagating these events to whoever is using the instance.\n *\n * @param instance The MetaMaskSDK instance for which event listeners are being initialized.\n * @returns void\n */\nexport function initEventListeners(instance: MetaMaskSDK) {\n instance.remoteConnection\n ?.getConnector()\n ?.on(\n MetaMaskSDKEvent.ConnectionStatus,\n (connectionStatus: ConnectionStatus) => {\n instance.emit(MetaMaskSDKEvent.ConnectionStatus, connectionStatus);\n },\n );\n\n instance.remoteConnection\n ?.getConnector()\n ?.on(MetaMaskSDKEvent.ServiceStatus, (serviceStatus: ServiceStatus) => {\n instance.emit(MetaMaskSDKEvent.ServiceStatus, serviceStatus);\n });\n}\n","import {\n DEFAULT_SERVER_URL,\n SendAnalytics,\n AnalyticsProps,\n TrackingEvents,\n} from '@metamask/sdk-communication-layer';\nimport { logger } from '../utils/logger';\nimport packageJson from '../../package.json';\n\nexport const ANALYTICS_CONSTANTS = {\n DEFAULT_ID: 'sdk',\n NO_VERSION: 'NONE',\n};\n\nexport class Analytics {\n private serverURL: string = DEFAULT_SERVER_URL;\n\n private enabled: boolean;\n\n private readonly originatorInfo: Readonly;\n\n constructor({\n serverUrl,\n enabled,\n originatorInfo,\n }: {\n serverUrl: string;\n originatorInfo: AnalyticsProps['originatorInfo'];\n enabled?: boolean;\n }) {\n this.serverURL = serverUrl;\n this.originatorInfo = originatorInfo;\n this.enabled = enabled ?? true;\n }\n\n send({\n event,\n params,\n }: {\n event: TrackingEvents;\n params?: Record;\n }) {\n if (!this.enabled) {\n return;\n }\n\n const props: AnalyticsProps = {\n id: ANALYTICS_CONSTANTS.DEFAULT_ID,\n event,\n sdkVersion: packageJson.version,\n ...this.originatorInfo,\n params,\n };\n logger(`[Analytics: send()] event: ${event}`, props);\n\n SendAnalytics(props, this.serverURL).catch((error: unknown) => {\n logger(`[Analytics: send()] error: ${error}`);\n });\n }\n}\n","export const extractFavicon = () => {\n if (typeof document === 'undefined') {\n return undefined;\n }\n\n let favicon;\n const nodeList = document.getElementsByTagName('link');\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < nodeList.length; i++) {\n if (\n nodeList[i].getAttribute('rel') === 'icon' ||\n nodeList[i].getAttribute('rel') === 'shortcut icon'\n ) {\n favicon = nodeList[i].getAttribute('href');\n }\n }\n return favicon;\n};\n","import { MetaMaskSDK } from '../../../sdk';\nimport { extractFavicon } from '../../../utils/extractFavicon';\n\n/**\n * Validates and attaches Dapp metadata to a MetaMask SDK instance.\n *\n * This function checks 'iconUrl' and 'url' in the Dapp metadata, ensuring they start with 'http://' or 'https://'.\n * If these URLs are incorrectly formatted, an error is thrown. Valid metadata is then attached to the SDK instance.\n * Note: This function does not handle favicon extraction or base64 conversion.\n *\n * @param instance The MetaMaskSDK instance for which Dapp metadata will be set up.\n * @returns void\n */\n\nconst BASE_64_ICON_MAX_LENGTH = 163400;\n\nexport async function setupDappMetadata(instance: MetaMaskSDK) {\n const { options } = instance;\n\n // Check if iconUrl and url are valid\n // eslint-disable-next-line require-unicode-regexp\n const urlPattern = /^(http|https):\\/\\/[^\\s]*$/; // Regular expression for URLs starting with http:// or https://\n\n if (options.dappMetadata) {\n if (\n options.dappMetadata.iconUrl &&\n !urlPattern.test(options.dappMetadata.iconUrl)\n ) {\n console.warn(\n 'Invalid dappMetadata.iconUrl: URL must start with http:// or https://',\n );\n\n options.dappMetadata.iconUrl = undefined;\n }\n\n // This check ensures that the base64Icon string in the dappMetadata does not exceed 163,400 characters.\n // The character limit is important because a longer base64-encoded string causes the connection to the mobile app to fail.\n // Keeping the base64Icon string length below this threshold ensures reliable communication and functionality.\n if (\n options.dappMetadata.base64Icon &&\n options.dappMetadata.base64Icon.length > BASE_64_ICON_MAX_LENGTH\n ) {\n console.warn(\n 'Invalid dappMetadata.base64Icon: Base64-encoded icon string length must be less than 163400 characters',\n );\n\n options.dappMetadata.base64Icon = undefined;\n }\n\n if (\n options.dappMetadata.url &&\n !urlPattern.test(options.dappMetadata.url)\n ) {\n console.warn(\n 'Invalid dappMetadata.url: URL must start with http:// or https://',\n );\n }\n\n const favicon = extractFavicon();\n\n if (\n favicon &&\n !options.dappMetadata.iconUrl &&\n !options.dappMetadata.base64Icon\n ) {\n const faviconUrl = `${window.location.protocol}//${window.location.host}${favicon}`;\n\n options.dappMetadata.iconUrl = faviconUrl;\n }\n }\n // eslint-disable-next-line require-atomic-updates\n instance.dappMetadata = options.dappMetadata;\n}\n","import { v4 as uuidv4 } from 'uuid';\nimport { PlatformType } from '@metamask/sdk-communication-layer';\nimport { MetaMaskSDK } from '../../sdk';\nimport { base64Encode } from '../../utils/base64';\n\ninterface DappIdentifier {\n url: string;\n name: string;\n}\n\n/**\n * Retrieves or generates a unique identifier for a dapp based on its metadata,\n * and determines the platform type from which the request is originating.\n *\n * @param {SDKInstance} sdkInstance - The SDK instance containing metadata and platform manager information.\n *\n * The `sdkInstance` parameter should have the following structure:\n * - `dappMetadata` (optional): An object containing metadata about the dapp.\n * - `url`: The URL of the dapp (e.g., 'https://example.com').\n * - `name`: The name of the dapp (e.g., 'Example Dapp').\n * - `platformManager` (optional): An object responsible for managing platform-specific details.\n * - `getPlatformType`: A function that returns the platform type, typically an enum like `PlatformType.DesktopWeb` or `PlatformType.MetaMaskMobileWebview`.\n *\n * @returns {{ id: string, from: string }} - An object containing the following properties:\n * - `id`: A unique identifier (UUID) for the dapp, generated based on the dapp's URL and name.\n * - `from`: A string indicating the platform type from which the request originates:\n * - `'extension'` if the platform type is `DesktopWeb`.\n * - `'mobile'` if the platform type is `MetaMaskMobileWebview`.\n * - `'N/A'` if the platform type is neither of the above or undefined.\n */\nfunction getPlatformDetails(sdkInstance: MetaMaskSDK) {\n const { dappMetadata } = sdkInstance;\n const url = dappMetadata?.url ?? 'no_url';\n const name = dappMetadata?.name ?? 'no_name';\n const id = getOrCreateUuidForIdentifier({ url, name });\n\n const platFormType = sdkInstance.platformManager?.getPlatformType();\n const isExtension = platFormType === PlatformType.DesktopWeb;\n const isInAppBrowser = platFormType === PlatformType.MetaMaskMobileWebview;\n\n let from = 'N/A';\n if (isExtension) {\n from = 'extension';\n } else if (isInAppBrowser) {\n from = 'mobile';\n }\n\n return {\n id,\n from,\n };\n}\n\n/**\n * Gets or creates a unique identifier (UUID) based on the provided url and name.\n * The identifier is stored in localStorage using a Base64 encoded combination of `url` and `name`.\n *\n * @param {DappIdentifier} identifier - An object containing the `url` and `name` of the dapp.\n * @returns {string} - The unique identifier (UUID) for the dapp.\n */\nfunction getOrCreateUuidForIdentifier({ url, name }: DappIdentifier): string {\n const rawIdentifier = url + name;\n const encodedIdentifier = base64Encode(rawIdentifier);\n\n if (!localStorage) {\n return '';\n }\n\n let storedUuid = localStorage.getItem(encodedIdentifier) ?? '';\n\n if (!storedUuid) {\n storedUuid = uuidv4();\n try {\n localStorage.setItem(encodedIdentifier, storedUuid);\n } catch (error) {\n return '';\n }\n }\n\n return storedUuid;\n}\nexport { getOrCreateUuidForIdentifier, getPlatformDetails };\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { TrackingEvents } from '@metamask/sdk-communication-layer';\nimport { MetaMaskSDK } from '../../sdk';\nimport { RequestArguments } from '../wrapExtensionProvider';\nimport { getPlatformDetails } from './handleUuid';\n\nexport const handleBatchMethod = async ({\n target,\n args,\n trackEvent,\n sdkInstance,\n}: {\n target: MetaMaskInpageProvider;\n args: RequestArguments;\n trackEvent: boolean;\n sdkInstance: MetaMaskSDK;\n}) => {\n if (args.method !== 'metamask_batch') {\n throw new Error('Invalid usage');\n }\n\n // params is a list of RPCs to call\n const responses = [];\n const params = args?.params ?? [];\n for (const rpc of params) {\n const response = await target?.request({\n method: rpc.method,\n params: rpc.params,\n });\n responses.push(response);\n }\n\n const { id, from } = getPlatformDetails(sdkInstance);\n\n if (trackEvent) {\n sdkInstance.analytics?.send({\n event: TrackingEvents.SDK_RPC_REQUEST_DONE,\n params: {\n method: args.method,\n from,\n id,\n },\n });\n }\n return responses;\n};\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { TrackingEvents } from '@metamask/sdk-communication-layer';\n\nimport { lcAnalyticsRPCs, RPC_METHODS } from '../config';\nimport { MetaMaskSDK } from '../sdk';\nimport { logger } from '../utils/logger';\nimport { handleBatchMethod } from './extensionProviderHelpers/handleBatchMethod';\nimport { handleConnectSignMethod } from './extensionProviderHelpers/handleConnectSignMethod';\nimport { handleConnectWithMethod } from './extensionProviderHelpers/handleConnectWithMethod';\nimport { getPlatformDetails } from './extensionProviderHelpers/handleUuid';\n\nexport interface RequestArguments {\n method: string;\n params?: any[];\n}\n\nexport const wrapExtensionProvider = ({\n provider,\n sdkInstance,\n}: {\n provider: MetaMaskInpageProvider;\n sdkInstance: MetaMaskSDK;\n}) => {\n if ('state' in provider) {\n throw new Error('INVALID EXTENSION PROVIDER');\n }\n\n return new Proxy(provider, {\n get(target, propKey) {\n if (propKey === 'request') {\n return async function (args: RequestArguments) {\n logger(`[wrapExtensionProvider()] Overwriting request method`, args);\n\n const { method, params } = args;\n const trackEvent = lcAnalyticsRPCs.includes(method.toLowerCase());\n\n const { id, from } = getPlatformDetails(sdkInstance);\n\n if (trackEvent) {\n sdkInstance.analytics?.send({\n event: TrackingEvents.SDK_RPC_REQUEST,\n params: {\n method,\n from,\n id,\n },\n });\n }\n\n if (method === RPC_METHODS.METAMASK_BATCH && Array.isArray(params)) {\n return handleBatchMethod({\n target,\n args,\n trackEvent,\n sdkInstance,\n });\n }\n\n if (\n method.toLowerCase() ===\n RPC_METHODS.METAMASK_CONNECTSIGN.toLowerCase() &&\n Array.isArray(params)\n ) {\n return handleConnectSignMethod({ target, params });\n }\n\n if (\n method.toLowerCase() ===\n RPC_METHODS.METAMASK_CONNECTWITH.toLowerCase() &&\n Array.isArray(params)\n ) {\n return handleConnectWithMethod({ target, params });\n }\n\n let resp;\n try {\n resp = await target.request(args);\n return resp;\n } finally {\n if (trackEvent) {\n sdkInstance.analytics?.send({\n event: TrackingEvents.SDK_RPC_REQUEST_DONE,\n params: {\n method,\n from,\n id,\n },\n });\n }\n }\n };\n } else if (propKey === 'getChainId') {\n return function () {\n return provider.chainId;\n };\n } else if (propKey === 'getNetworkVersion') {\n return function () {\n return provider.networkVersion;\n };\n } else if (propKey === 'getSelectedAddress') {\n return function () {\n return provider.selectedAddress;\n };\n } else if (propKey === 'isConnected') {\n return function () {\n // TODO: allowed because of issue on inpavge provider\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return provider._state.isConnected;\n };\n }\n\n return target[propKey as keyof MetaMaskInpageProvider];\n },\n });\n};\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { RPC_METHODS } from '../../config';\n\nexport const handleConnectSignMethod = async ({\n target,\n params,\n}: {\n target: MetaMaskInpageProvider;\n params: any[];\n}) => {\n const accounts = (await target.request({\n method: RPC_METHODS.ETH_REQUESTACCOUNTS,\n params: [],\n })) as string[];\n\n if (!accounts.length) {\n throw new Error('SDK state invalid -- undefined accounts');\n }\n\n return await target.request({\n method: RPC_METHODS.PERSONAL_SIGN,\n params: [params[0], accounts[0]],\n });\n};\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { RPC_METHODS, rpcWithAccountParam } from '../../config';\n\nexport const handleConnectWithMethod = async ({\n target,\n params,\n}: {\n target: MetaMaskInpageProvider;\n params: any[];\n}) => {\n const [rpc] = params;\n const currentRpcMethod = rpc.method;\n const currentRpcParams = rpc.params;\n const accounts = (await target.request({\n method: RPC_METHODS.ETH_REQUESTACCOUNTS,\n params: [],\n })) as string[];\n\n if (!accounts.length) {\n throw new Error('SDK state invalid -- undefined accounts');\n }\n\n if (\n currentRpcMethod?.toLowerCase() === RPC_METHODS.PERSONAL_SIGN.toLowerCase()\n ) {\n return await target.request({\n method: currentRpcMethod,\n params: [currentRpcParams[0], accounts[0]],\n });\n } else if (\n currentRpcMethod?.toLowerCase() ===\n RPC_METHODS.ETH_SENDTRANSACTION.toLowerCase()\n ) {\n return await target.request({\n method: currentRpcMethod,\n params: [{ ...currentRpcParams[0], from: accounts[0] }],\n });\n }\n\n if (rpcWithAccountParam.includes(currentRpcMethod.toLowerCase())) {\n console.warn(\n `MetaMaskSDK connectWith method=${currentRpcMethod} -- not handled by the extension -- call separately`,\n );\n return accounts;\n }\n\n const response = await target.request({\n method: currentRpcMethod,\n params: currentRpcParams,\n });\n\n return response;\n};\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { METAMASK_EIP_6369_PROVIDER_INFO, UUID_V4_REGEX } from '../constants';\nimport { SDKProvider } from '../provider/SDKProvider';\n\nexport enum EIP6963EventNames {\n Announce = 'eip6963:announceProvider',\n Request = 'eip6963:requestProvider', // eslint-disable-line @typescript-eslint/no-shadow\n}\n\nexport interface EIP6963ProviderInfo {\n uuid: string;\n name: string;\n icon: string;\n rdns: string;\n}\n\nexport interface EIP6963ProviderDetail {\n info: EIP6963ProviderInfo;\n provider: SDKProvider;\n}\n\nexport type EIP6963AnnounceProviderEvent = CustomEvent & {\n type: EIP6963EventNames.Announce;\n detail: EIP6963ProviderDetail;\n};\n\nexport function eip6963RequestProvider(): Promise {\n return new Promise((resolve, reject) => {\n const timeoutId = setTimeout(() => {\n reject(new Error('eip6963RequestProvider timed out'));\n }, 500);\n\n window.addEventListener(\n EIP6963EventNames.Announce,\n (eip6963AnnounceProviderEvent) => {\n const event =\n eip6963AnnounceProviderEvent as EIP6963AnnounceProviderEvent;\n\n const { detail: { info, provider } = {} } = event;\n\n const { name, rdns, uuid } = info ?? {};\n\n const isValid =\n UUID_V4_REGEX.test(uuid) &&\n (name as string).startsWith(METAMASK_EIP_6369_PROVIDER_INFO.NAME) &&\n rdns === METAMASK_EIP_6369_PROVIDER_INFO.RDNS;\n\n if (isValid) {\n clearTimeout(timeoutId);\n\n resolve(provider);\n }\n },\n );\n\n window.dispatchEvent(new Event(EIP6963EventNames.Request));\n });\n}\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport { MetaMaskSDK } from '../sdk';\nimport { wrapExtensionProvider } from '../provider/wrapExtensionProvider';\nimport { eip6963RequestProvider } from './eip6963RequestProvider';\n\nexport async function getBrowserExtension({\n mustBeMetaMask,\n sdkInstance,\n}: {\n mustBeMetaMask: boolean;\n sdkInstance: MetaMaskSDK;\n}): Promise {\n if (typeof window === 'undefined') {\n throw new Error('window not available');\n }\n\n try {\n // Try EIP-6963 first\n const extensionProvider = await eip6963RequestProvider();\n return wrapExtensionProvider({ provider: extensionProvider, sdkInstance });\n } catch (e) {\n // Legacy fallback only for non-MetaMask cases\n if (!mustBeMetaMask && window.ethereum) {\n return wrapExtensionProvider({\n provider: window.ethereum,\n sdkInstance,\n });\n }\n\n throw new Error('Provider not found');\n }\n}\n","import { MetaMaskSDK } from '../../../sdk';\nimport { RPC_URLS_MAP } from './setupReadOnlyRPCProviders';\n\nexport const setupInfuraProvider = async (instance: MetaMaskSDK) => {\n const { options } = instance;\n const { infuraAPIKey } = options;\n\n if (!infuraAPIKey) {\n return;\n }\n\n const infuraRpcUrls: RPC_URLS_MAP = {\n // ###### Ethereum ######\n // Mainnet\n '0x1': `https://mainnet.infura.io/v3/${infuraAPIKey}`,\n // Goerli\n '0x5': `https://goerli.infura.io/v3/${infuraAPIKey}`,\n // Sepolia 11155111\n '0xaa36a7': `https://sepolia.infura.io/v3/${infuraAPIKey}`,\n // ###### Linea ######\n // Mainnet Alpha\n '0xe708': `https://linea-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Testnet ( linea goerli )\n '0xe704': `https://linea-goerli.infura.io/v3/${infuraAPIKey}`,\n // ###### Polygon ######\n // Mainnet\n '0x89': `https://polygon-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Mumbai\n '0x13881': `https://polygon-mumbai.infura.io/v3/${infuraAPIKey}`,\n // ###### Optimism ######\n // Mainnet\n '0x45': `https://optimism-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Goerli\n '0x1a4': `https://optimism-goerli.infura.io/v3/${infuraAPIKey}`,\n // ###### Arbitrum ######\n // Mainnet\n '0xa4b1': `https://arbitrum-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Goerli\n '0x66eed': `https://arbitrum-goerli.infura.io/v3/${infuraAPIKey}`,\n // ###### Palm ######\n // Mainnet\n '0x2a15c308d': `https://palm-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Testnet\n '0x2a15c3083': `https://palm-testnet.infura.io/v3/${infuraAPIKey}`,\n // ###### Avalanche C-Chain ######\n // Mainnet\n '0xa86a': `https://avalanche-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Fuji\n '0xa869': `https://avalanche-fuji.infura.io/v3/${infuraAPIKey}`,\n // // ###### NEAR ######\n // // Mainnet\n // '0x4e454152': `https://near-mainnet.infura.io/v3/${infuraAPIKey}`,\n // // Testnet\n // '0x4e454153': `https://near-testnet.infura.io/v3/${infuraAPIKey}`,\n // ###### Aurora ######\n // Mainnet\n '0x4e454152': `https://aurora-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Testnet\n '0x4e454153': `https://aurora-testnet.infura.io/v3/${infuraAPIKey}`,\n // ###### StarkNet ######\n // Mainnet\n '0x534e5f4d41494e': `https://starknet-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Goerli\n '0x534e5f474f45524c49': `https://starknet-goerli.infura.io/v3/${infuraAPIKey}`,\n // Goerli 2\n '0x534e5f474f45524c4932': `https://starknet-goerli2.infura.io/v3/${infuraAPIKey}`,\n // ###### Celo ######\n // Mainnet\n '0xa4ec': `https://celo-mainnet.infura.io/v3/${infuraAPIKey}`,\n // Alfajores Testnet\n '0xaef3': `https://celo-alfajores.infura.io/v3/${infuraAPIKey}`,\n };\n\n // should we enable check if infura apiKey is valid?\n // try {\n // const response = await rpcRequestHandler({\n // // chainId: '0x1',\n // rpcEndpoint: infuraRpcUrls['0x1'],\n // method: 'net_version',\n // params: [],\n // });\n // if (instance.debug) {\n // console.debug(\n // `[setupInfuraProvider] test infuraApiKey=${infuraAPIKey} response:`,\n // response,\n // );\n // }\n // } catch (err) {\n // throw new Error(`Invalid Infura Settings`);\n // }\n\n if (instance.options.readonlyRPCMap) {\n // add infura rpc urls to readonlyRPCMap\n instance.options.readonlyRPCMap = {\n ...instance.options.readonlyRPCMap,\n ...infuraRpcUrls,\n };\n } else {\n instance.options.readonlyRPCMap = infuraRpcUrls;\n }\n};\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));","import { PlatformType } from '@metamask/sdk-communication-layer';\nimport Bowser from 'bowser';\nimport { getPlatformType } from '../services/PlatfformManager/getPlatformType';\nimport { isMetaMaskInstalled } from '../services/PlatfformManager/isMetaMaskInstalled';\nimport { openDeeplink } from '../services/PlatfformManager/openDeeplink';\n\nexport const TEMPORARY_WAKE_LOCK_TIME = 2000;\nexport const UNTIL_RESPONSE_WAKE_LOCK_TIME = 40000;\n\ninterface PlatformProps {\n useDeepLink: boolean;\n preferredOpenLink?: (link: string, target?: string) => void;\n debug?: boolean;\n}\n\ninterface PlatformManagerState {\n platformType?: PlatformType;\n useDeeplink: boolean;\n preferredOpenLink?: (link: string, target?: string) => void;\n debug: boolean;\n}\n\nexport class PlatformManager {\n public state: PlatformManagerState = {\n platformType: undefined,\n useDeeplink: false,\n preferredOpenLink: undefined,\n debug: false,\n };\n\n constructor({\n useDeepLink,\n preferredOpenLink,\n debug = false,\n }: PlatformProps) {\n this.state.platformType = this.getPlatformType();\n this.state.useDeeplink = useDeepLink;\n this.state.preferredOpenLink = preferredOpenLink;\n this.state.debug = debug;\n }\n\n openDeeplink(universalLink: string, deeplink: string, target?: string) {\n return openDeeplink(this, universalLink, deeplink, target);\n }\n\n isReactNative() {\n // Avoid grouping in single condition for readibility\n return (\n this.isNotBrowser() &&\n typeof window !== 'undefined' &&\n window?.navigator &&\n window.navigator?.product === 'ReactNative'\n );\n }\n\n isMetaMaskInstalled() {\n return isMetaMaskInstalled();\n }\n\n isDesktopWeb() {\n return this.isBrowser() && !this.isMobileWeb();\n }\n\n isMobile() {\n const browser = Bowser.parse(window.navigator.userAgent);\n\n return (\n browser?.platform?.type === 'mobile' ||\n browser?.platform?.type === 'tablet'\n );\n }\n\n isSecure() {\n return this.isReactNative() || this.isMobileWeb();\n }\n\n isMetaMaskMobileWebView() {\n if (typeof window === 'undefined') {\n return false;\n }\n\n return (\n Boolean(window.ReactNativeWebView) &&\n Boolean(navigator.userAgent.endsWith('MetaMaskMobile'))\n );\n }\n\n isMobileWeb() {\n return this.state.platformType === PlatformType.MobileWeb;\n }\n\n isNotBrowser() {\n return (\n typeof window === 'undefined' ||\n !window?.navigator ||\n (typeof global !== 'undefined' &&\n global?.navigator?.product === 'ReactNative') ||\n navigator?.product === 'ReactNative'\n );\n }\n\n isNodeJS() {\n return this.isNotBrowser() && !this.isReactNative();\n }\n\n isBrowser() {\n return !this.isNotBrowser();\n }\n\n isUseDeepLink() {\n return this.state.useDeeplink;\n }\n\n getPlatformType() {\n return getPlatformType(this);\n }\n}\n","import { logger } from '../../utils/logger';\nimport { PlatformManager } from '../../Platform/PlatfformManager';\n\nexport function openDeeplink(\n instance: PlatformManager,\n universalLink: string,\n deeplink: string,\n target?: string,\n) {\n const { state } = instance;\n\n logger(\n `[PlatfformManager: openDeeplink()] universalLink --> ${universalLink}`,\n );\n logger(`[PlatfformManager: openDeeplink()] deepLink --> ${deeplink}`);\n\n try {\n if (state.preferredOpenLink) {\n state.preferredOpenLink(\n state.useDeeplink ? deeplink : universalLink,\n target,\n );\n return;\n }\n\n logger(\n `[PlatfformManager: openDeeplink()] open link now useDeepLink=${\n state.useDeeplink\n } link=${state.useDeeplink ? deeplink : universalLink}`,\n );\n\n // It should only open after we can acknowledge that the rpc call that triggered the deeplink has been sent\n // TODO how can we know that the rpc call has been sent?\n if (state.useDeeplink) {\n if (typeof window !== 'undefined') {\n // We don't need to open a deeplink in a new tab\n // It avoid the browser to display a blank page\n window.location.href = deeplink;\n }\n } else if (typeof document !== 'undefined') {\n // Workaround for https://github.com/rainbow-me/rainbowkit/issues/524.\n // Using 'window.open' causes issues on iOS in non-Safari browsers and\n // WebViews where a blank tab is left behind after connecting.\n // This is especially bad in some WebView scenarios (e.g. following a\n // link from Twitter) where the user doesn't have any mechanism for\n // closing the blank tab.\n // For whatever reason, links with a target of \"_blank\" don't suffer\n // from this problem, and programmatically clicking a detached link\n // element with the same attributes also avoids the issue.\n const link = document.createElement('a');\n link.href = universalLink;\n link.target = '_self';\n link.rel = 'noreferrer noopener';\n link.click();\n }\n } catch (err) {\n console.log(`[PlatfformManager: openDeeplink()] can't open link`, err);\n }\n\n // console.log('Please setup the openDeeplink parameter');\n}\n","import { logger } from '../../utils/logger';\nimport { Ethereum } from '../Ethereum';\n\nexport function isMetaMaskInstalled() {\n const eth = Ethereum.getProvider() || window?.ethereum;\n logger(\n `[PlatfformManager: isMetaMaskInstalled()] isMetaMask=${\n eth?.isMetaMask\n } isConnected=${eth?.isConnected()}`,\n );\n\n return eth?.isMetaMask && eth?.isConnected();\n}\n","import { PlatformType } from '@metamask/sdk-communication-layer';\nimport { PlatformManager } from '../../Platform/PlatfformManager';\n\nexport function getPlatformType(instance: PlatformManager) {\n const { state } = instance;\n\n if (state.platformType) {\n return state.platformType;\n }\n\n if (instance.isReactNative()) {\n return PlatformType.ReactNative;\n }\n\n if (instance.isNotBrowser()) {\n return PlatformType.NonBrowser;\n }\n\n if (instance.isMetaMaskMobileWebView()) {\n return PlatformType.MetaMaskMobileWebview;\n }\n\n if (instance.isMobile()) {\n return PlatformType.MobileWeb;\n }\n\n return PlatformType.DesktopWeb;\n}\n","import { logger } from '../../../utils/logger';\nimport { MetaMaskSDK } from '../../../sdk';\n\nexport interface RPC_URLS_MAP {\n [chainId: `0x${string}`]: string;\n}\n\nexport const setupReadOnlyRPCProviders = async (instance: MetaMaskSDK) => {\n const { options } = instance;\n const { readonlyRPCMap } = options;\n\n if (!readonlyRPCMap) {\n return;\n }\n\n try {\n logger(\n `[MetaMaskSDK: setupReadOnlyRPCProviders()] Setting up Readonly RPC Providers`,\n readonlyRPCMap,\n );\n\n instance.setReadOnlyRPCCalls(true);\n } catch (err) {\n throw new Error(`Invalid Infura Settings`);\n }\n};\n","import Bowser from 'bowser';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n\r\nfunction __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nfunction __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\n\nvar ONBOARDING_STATE = {\r\n INSTALLED: 'INSTALLED',\r\n NOT_INSTALLED: 'NOT_INSTALLED',\r\n REGISTERED: 'REGISTERED',\r\n REGISTERING: 'REGISTERING',\r\n RELOADING: 'RELOADING',\r\n};\r\nvar EXTENSION_DOWNLOAD_URL = {\r\n CHROME: 'https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn',\r\n FIREFOX: 'https://addons.mozilla.org/firefox/addon/ether-metamask/',\r\n DEFAULT: 'https://metamask.io',\r\n};\r\n// sessionStorage key\r\nvar REGISTRATION_IN_PROGRESS = 'REGISTRATION_IN_PROGRESS';\r\n// forwarder iframe id\r\nvar FORWARDER_ID = 'FORWARDER_ID';\r\nvar Onboarding = /** @class */ (function () {\r\n function Onboarding(_a) {\r\n var _b = _a === void 0 ? {} : _a, _c = _b.forwarderOrigin, forwarderOrigin = _c === void 0 ? 'https://fwd.metamask.io' : _c, _d = _b.forwarderMode, forwarderMode = _d === void 0 ? Onboarding.FORWARDER_MODE.INJECT : _d;\r\n this.forwarderOrigin = forwarderOrigin;\r\n this.forwarderMode = forwarderMode;\r\n this.state = Onboarding.isMetaMaskInstalled()\r\n ? ONBOARDING_STATE.INSTALLED\r\n : ONBOARDING_STATE.NOT_INSTALLED;\r\n var browser = Onboarding._detectBrowser();\r\n if (browser) {\r\n this.downloadUrl = EXTENSION_DOWNLOAD_URL[browser];\r\n }\r\n else {\r\n this.downloadUrl = EXTENSION_DOWNLOAD_URL.DEFAULT;\r\n }\r\n this._onMessage = this._onMessage.bind(this);\r\n this._onMessageFromForwarder = this._onMessageFromForwarder.bind(this);\r\n this._openForwarder = this._openForwarder.bind(this);\r\n this._openDownloadPage = this._openDownloadPage.bind(this);\r\n this.startOnboarding = this.startOnboarding.bind(this);\r\n this.stopOnboarding = this.stopOnboarding.bind(this);\r\n window.addEventListener('message', this._onMessage);\r\n if (forwarderMode === Onboarding.FORWARDER_MODE.INJECT &&\r\n sessionStorage.getItem(REGISTRATION_IN_PROGRESS) === 'true') {\r\n Onboarding._injectForwarder(this.forwarderOrigin);\r\n }\r\n }\r\n Onboarding.prototype._onMessage = function (event) {\r\n if (event.origin !== this.forwarderOrigin) {\r\n // Ignoring non-forwarder message\r\n return undefined;\r\n }\r\n if (event.data.type === 'metamask:reload') {\r\n return this._onMessageFromForwarder(event);\r\n }\r\n console.debug(\"Unknown message from '\" + event.origin + \"' with data \" + JSON.stringify(event.data));\r\n return undefined;\r\n };\r\n Onboarding.prototype._onMessageUnknownStateError = function (state) {\r\n throw new Error(\"Unknown state: '\" + state + \"'\");\r\n };\r\n Onboarding.prototype._onMessageFromForwarder = function (event) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var _a;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n _a = this.state;\r\n switch (_a) {\r\n case ONBOARDING_STATE.RELOADING: return [3 /*break*/, 1];\r\n case ONBOARDING_STATE.NOT_INSTALLED: return [3 /*break*/, 2];\r\n case ONBOARDING_STATE.INSTALLED: return [3 /*break*/, 3];\r\n case ONBOARDING_STATE.REGISTERING: return [3 /*break*/, 5];\r\n case ONBOARDING_STATE.REGISTERED: return [3 /*break*/, 6];\r\n }\r\n return [3 /*break*/, 7];\r\n case 1:\r\n console.debug('Ignoring message while reloading');\r\n return [3 /*break*/, 8];\r\n case 2:\r\n console.debug('Reloading now to register with MetaMask');\r\n this.state = ONBOARDING_STATE.RELOADING;\r\n location.reload();\r\n return [3 /*break*/, 8];\r\n case 3:\r\n console.debug('Registering with MetaMask');\r\n this.state = ONBOARDING_STATE.REGISTERING;\r\n return [4 /*yield*/, Onboarding._register()];\r\n case 4:\r\n _b.sent();\r\n this.state = ONBOARDING_STATE.REGISTERED;\r\n event.source.postMessage({ type: 'metamask:registrationCompleted' }, event.origin);\r\n this.stopOnboarding();\r\n return [3 /*break*/, 8];\r\n case 5:\r\n console.debug('Already registering - ignoring reload message');\r\n return [3 /*break*/, 8];\r\n case 6:\r\n console.debug('Already registered - ignoring reload message');\r\n return [3 /*break*/, 8];\r\n case 7:\r\n this._onMessageUnknownStateError(this.state);\r\n _b.label = 8;\r\n case 8: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Starts onboarding by opening the MetaMask download page and the Onboarding forwarder\r\n */\r\n Onboarding.prototype.startOnboarding = function () {\r\n sessionStorage.setItem(REGISTRATION_IN_PROGRESS, 'true');\r\n this._openDownloadPage();\r\n this._openForwarder();\r\n };\r\n /**\r\n * Stops onboarding registration, including removing the injected forwarder (if any)\r\n *\r\n * Typically this function is not necessary, but it can be useful for cases where\r\n * onboarding completes before the forwarder has registered.\r\n */\r\n Onboarding.prototype.stopOnboarding = function () {\r\n if (sessionStorage.getItem(REGISTRATION_IN_PROGRESS) === 'true') {\r\n if (this.forwarderMode === Onboarding.FORWARDER_MODE.INJECT) {\r\n console.debug('Removing forwarder');\r\n Onboarding._removeForwarder();\r\n }\r\n sessionStorage.setItem(REGISTRATION_IN_PROGRESS, 'false');\r\n }\r\n };\r\n Onboarding.prototype._openForwarder = function () {\r\n if (this.forwarderMode === Onboarding.FORWARDER_MODE.OPEN_TAB) {\r\n window.open(this.forwarderOrigin, '_blank');\r\n }\r\n else {\r\n Onboarding._injectForwarder(this.forwarderOrigin);\r\n }\r\n };\r\n Onboarding.prototype._openDownloadPage = function () {\r\n window.open(this.downloadUrl, '_blank');\r\n };\r\n /**\r\n * Checks whether the MetaMask extension is installed\r\n */\r\n Onboarding.isMetaMaskInstalled = function () {\r\n return Boolean(window.ethereum && window.ethereum.isMetaMask);\r\n };\r\n Onboarding._register = function () {\r\n return window.ethereum.request({\r\n method: 'wallet_registerOnboarding',\r\n });\r\n };\r\n Onboarding._injectForwarder = function (forwarderOrigin) {\r\n var container = document.body;\r\n var iframe = document.createElement('iframe');\r\n iframe.setAttribute('height', '0');\r\n iframe.setAttribute('width', '0');\r\n iframe.setAttribute('style', 'display: none;');\r\n iframe.setAttribute('src', forwarderOrigin);\r\n iframe.setAttribute('id', FORWARDER_ID);\r\n container.insertBefore(iframe, container.children[0]);\r\n };\r\n Onboarding._removeForwarder = function () {\r\n var _a;\r\n (_a = document.getElementById(FORWARDER_ID)) === null || _a === void 0 ? void 0 : _a.remove();\r\n };\r\n Onboarding._detectBrowser = function () {\r\n var browserInfo = Bowser.parse(window.navigator.userAgent);\r\n if (browserInfo.browser.name === 'Firefox') {\r\n return 'FIREFOX';\r\n }\r\n else if (['Chrome', 'Chromium'].includes(browserInfo.browser.name || '')) {\r\n return 'CHROME';\r\n }\r\n return null;\r\n };\r\n Onboarding.FORWARDER_MODE = {\r\n INJECT: 'INJECT',\r\n OPEN_TAB: 'OPEN_TAB',\r\n };\r\n return Onboarding;\r\n}());\n\nexport default Onboarding;\n","import { logger } from '../../utils/logger';\nimport { MetaMaskInstaller } from '../../Platform/MetaMaskInstaller';\nimport { wait as waitPromise } from '../../utils/wait';\n\n/**\n * Initiates the MetaMask installation process, optionally waiting for providers to establish a connection.\n *\n * The function first logs debug information if debugging is enabled. If the `wait` option is set to true,\n * it waits for a specified time (1 second by default) to allow providers to establish a connection.\n * After waiting or immediately (if `wait` is false), it proceeds to check for MetaMask installation.\n *\n * @param instance The MetaMaskInstaller instance responsible for checking MetaMask installation.\n * @param options An object containing a boolean `wait` property to indicate whether to wait for providers to establish a connection.\n * @returns Promise Returns a promise that resolves to the result of `checkInstallation`, indicating whether MetaMask is installed.\n */\nexport async function startInstaller(\n instance: MetaMaskInstaller,\n { wait = false }: { wait: boolean },\n) {\n logger(`[MetamaskInstaller: startInstaller()] wait=${wait}`);\n\n // Give enough time for providers to make connection\n if (wait) {\n await waitPromise(1000);\n }\n\n return await instance.checkInstallation();\n}\n","import { checkInstallation } from '../services/MetaMaskInstaller/checkInstallation';\nimport { redirectToProperInstall } from '../services/MetaMaskInstaller/redirectToProperInstall';\nimport { startDesktopOnboarding } from '../services/MetaMaskInstaller/startDesktopOnboarding';\nimport { startInstaller } from '../services/MetaMaskInstaller/startInstaller';\nimport { RemoteConnection } from '../services/RemoteConnection';\nimport { logger } from '../utils/logger';\nimport { PlatformManager } from './PlatfformManager';\n\n// ethereum.on('connect', handler: (connectInfo: ConnectInfo) => void);\n// ethereum.on('disconnect', handler: (error: ProviderRpcError) => void);\n\ninterface InstallerProps {\n preferDesktop: boolean;\n remote: RemoteConnection;\n platformManager: PlatformManager;\n debug?: boolean;\n}\n\nexport interface RPCCall {\n method: string;\n params: unknown;\n id: string;\n}\n\ninterface MetaMaskInstallerState {\n isInstalling: boolean;\n hasInstalled: boolean;\n resendRequest: any;\n preferDesktop: boolean;\n platformManager: PlatformManager | null;\n connectWith?: RPCCall;\n remote: RemoteConnection | null;\n debug: boolean;\n}\n\n/**\n * Singleton class instance\n */\nexport class MetaMaskInstaller {\n private static instance: MetaMaskInstaller;\n\n public state: MetaMaskInstallerState = {\n isInstalling: false,\n hasInstalled: false,\n resendRequest: null,\n preferDesktop: false,\n platformManager: null,\n remote: null,\n debug: false,\n connectWith: undefined,\n };\n\n public constructor({\n remote,\n preferDesktop,\n platformManager,\n debug = false,\n }: InstallerProps) {\n this.state.remote = remote;\n this.state.preferDesktop = preferDesktop;\n this.state.platformManager = platformManager;\n this.state.debug = debug;\n }\n\n startDesktopOnboarding() {\n return startDesktopOnboarding();\n }\n\n async redirectToProperInstall() {\n return redirectToProperInstall(this);\n }\n\n async checkInstallation() {\n return checkInstallation(this);\n }\n\n async start({\n wait = false,\n connectWith,\n }: {\n wait: boolean;\n connectWith?: RPCCall;\n }) {\n this.state.connectWith = connectWith;\n logger(`[MetaMaskInstaller: start()] wait=${wait}`, connectWith);\n await startInstaller(this, { wait });\n }\n}\n","import MetaMaskOnboarding from '@metamask/onboarding';\nimport { logger } from '../../utils/logger';\nimport { Ethereum } from '../Ethereum';\n\n/**\n * Initiates the MetaMask desktop onboarding process.\n *\n * This function destroys the existing Ethereum object and removes it from the window context,\n * effectively clearing any prior Ethereum-related state. It then instantiates a new MetaMaskOnboarding object\n * and starts the onboarding process for MetaMask on desktop platforms.\n *\n * @param instance The MetaMaskInstaller instance used for debugging purposes.\n * @returns Promise This function returns a promise that resolves to void.\n */\nexport async function startDesktopOnboarding() {\n logger(\n `[MetamaskInstaller: startDesktopOnboarding() starting desktop onboarding`,\n );\n\n Ethereum.destroy();\n if (window.ethereum) {\n window.ethereum = undefined;\n }\n const onboardingExtension = new MetaMaskOnboarding();\n onboardingExtension.startOnboarding();\n}\n","import { PlatformType } from '@metamask/sdk-communication-layer';\nimport { logger } from '../../utils/logger';\nimport { MetaMaskInstaller } from '../../Platform/MetaMaskInstaller';\n\n/**\n * Redirects the user to the appropriate MetaMask installation method based on the platform type.\n *\n * The function determines the platform type using the platformManager of the provided MetaMaskInstaller state.\n * If the platform is a MetaMask Mobile Webview, the function returns false, as no installation is needed.\n * For desktop web platforms, the function initiates the desktop onboarding process if `preferDesktop` is true.\n * If none of these conditions are met, it initiates a remote connection for MetaMask installation.\n *\n * @param instance The MetaMaskInstaller instance used to determine platform type and initiate appropriate installation methods.\n * @returns Promise Returns a promise that resolves to true if installation or remote connection is successful, and false otherwise.\n * @throws Throws an error if the remote startConnection fails.\n */\nexport async function redirectToProperInstall(instance: MetaMaskInstaller) {\n const { state } = instance;\n\n const platformType = state.platformManager?.getPlatformType();\n\n logger(\n `[MetamaskInstaller: redirectToProperInstall()] platform=${platformType}`,\n );\n\n // If it's running on our mobile in-app browser but communication is still not working\n if (platformType === PlatformType.MetaMaskMobileWebview) {\n return false;\n }\n\n // If is not installed, start remote connection\n state.isInstalling = true;\n try {\n await state.remote?.startConnection({ connectWith: state.connectWith });\n\n state.isInstalling = false;\n state.hasInstalled = true;\n } catch (err) {\n state.isInstalling = false;\n throw err;\n }\n\n return true;\n}\n","import { logger } from '../../utils/logger';\nimport { MetaMaskInstaller } from '../../Platform/MetaMaskInstaller';\n\n/**\n * Checks for the installation of the MetaMask extension and redirects to the installation page if not installed.\n *\n * The function first verifies if MetaMask is already installed using the platformManager of the given MetaMaskInstaller state.\n * If MetaMask is installed, the function returns true. If not, it triggers a redirection to the appropriate installation page.\n *\n * @param instance The MetaMaskInstaller instance used to check installation and perform redirection.\n * @returns Promise Returns a promise that resolves to true if MetaMask is installed, otherwise redirects to the installation page.\n */\nexport async function checkInstallation(instance: MetaMaskInstaller) {\n const { state } = instance;\n\n const isInstalled = state.platformManager?.isMetaMaskInstalled();\n\n logger(`[MetamaskInstaller: checkInstallation()] isInstalled=${isInstalled}`);\n\n // No need to do anything\n if (isInstalled) {\n return true;\n }\n\n return await instance.redirectToProperInstall();\n}\n","import type { Components } from '@metamask/sdk-install-modal-web';\n\nexport interface InstallWidgetProps extends Components.MmInstallModal {\n parentElement: Element;\n onClose: () => void;\n metaMaskInstaller: {\n startDesktopOnboarding: () => void;\n };\n}\n\nexport interface PendingWidgetProps extends Components.MmPendingModal {\n parentElement: Element;\n onClose: () => void;\n onDisconnect?: () => void;\n updateOTPValue: (otpValue: string) => void;\n}\n\nexport interface SelectWidgetProps extends Components.MmSelectModal {\n parentElement: Element;\n onClose: (shouldTerminate?: boolean) => void;\n connectWithExtension: () => void;\n}\n\nexport default class ModalLoader {\n private containers: Record = {\n install: undefined,\n pending: undefined,\n select: undefined,\n };\n\n private defined: Record = {\n install: false,\n pending: false,\n select: false,\n };\n\n private debug: boolean;\n\n private sdkVersion?: string;\n\n constructor({ debug, sdkVersion }: { debug?: boolean; sdkVersion?: string }) {\n this.debug = debug ?? false;\n this.sdkVersion = sdkVersion;\n }\n\n private async loadComponent(type: 'install' | 'pending' | 'select') {\n if (this.defined[type]) {\n return;\n }\n\n this.defined[type] = true;\n try {\n const loader = await import(\n /* webpackChunkName: \"sdk-install-modal\" */\n '@metamask/sdk-install-modal-web/dist/loader'\n );\n console.log('loader', loader);\n loader.defineCustomElements();\n } catch (error) {\n console.error(`Failed to load ${type} modal:`, error);\n }\n }\n\n async renderInstallModal(props: InstallWidgetProps) {\n if (this.debug) {\n console.debug('ModalLoader: renderInstallModal', props);\n }\n\n this.containers.install = props.parentElement;\n await this.loadComponent('install');\n\n const modal = document.createElement(\n 'mm-install-modal',\n ) as HTMLMmInstallModalElement;\n modal.link = props.link;\n modal.preferDesktop = props.preferDesktop;\n modal.sdkVersion = props.sdkVersion ?? this.sdkVersion;\n modal.addEventListener('close', props.onClose);\n modal.addEventListener(\n 'startDesktopOnboarding',\n props.metaMaskInstaller.startDesktopOnboarding,\n );\n props.parentElement.appendChild(modal);\n }\n\n async renderSelectModal(props: SelectWidgetProps) {\n this.containers.select = props.parentElement;\n await this.loadComponent('select');\n\n const modal = document.createElement(\n 'mm-select-modal',\n ) as HTMLMmSelectModalElement;\n modal.link = props.link;\n modal.sdkVersion = props.sdkVersion ?? this.sdkVersion;\n modal.preferDesktop = props.preferDesktop;\n modal.addEventListener('close', ({ detail: { shouldTerminate } }) =>\n props.onClose(shouldTerminate),\n );\n modal.addEventListener('connectWithExtension', props.connectWithExtension);\n props.parentElement.appendChild(modal);\n\n setTimeout(() => this.updateQRCode(props.link), 100);\n }\n\n async renderPendingModal(props: PendingWidgetProps) {\n this.containers.pending = props.parentElement;\n await this.loadComponent('pending');\n\n const modal = document.createElement(\n 'mm-pending-modal',\n ) as HTMLMmPendingModalElement;\n modal.sdkVersion = props.sdkVersion ?? this.sdkVersion;\n modal.displayOTP = props.displayOTP;\n modal.addEventListener('close', props.onClose);\n modal.addEventListener('updateOTPValue', ({ detail: { otpValue } }) =>\n props.updateOTPValue(otpValue),\n );\n\n if (props.onDisconnect) {\n modal.addEventListener('disconnect', props.onDisconnect);\n }\n\n props.parentElement.appendChild(modal);\n }\n\n updateOTPValue(otpValue: string) {\n const tryUpdate = () => {\n const modal = this.containers.pending?.querySelector(\n 'mm-pending-modal',\n ) as HTMLMmPendingModalElement | null;\n if (modal) {\n modal.otpCode = otpValue;\n return true;\n }\n return false;\n };\n\n setTimeout(() => {\n tryUpdate();\n }, 800);\n }\n\n updateQRCode(link: string) {\n const installModal = this.containers.install?.querySelector(\n 'mm-install-modal',\n ) as HTMLMmInstallModalElement | null;\n if (installModal) {\n installModal.link = link;\n } else {\n const selectModal = this.containers.select?.querySelector(\n 'mm-select-modal',\n ) as HTMLMmSelectModalElement | null;\n if (selectModal) {\n selectModal.link = link;\n }\n }\n }\n\n unmount() {\n Object.entries(this.containers).forEach(([key, container]) => {\n container?.parentNode?.removeChild(container);\n this.containers[key as keyof typeof this.containers] = undefined;\n });\n }\n}\n","import packageJson from '../../../package.json';\nimport { MetaMaskInstaller } from '../../Platform/MetaMaskInstaller';\nimport { logger } from '../../utils/logger';\nimport ModalLoader from './Modal-web';\n\nconst sdkWebInstallModal = ({\n link,\n debug,\n installer,\n terminate,\n connectWithExtension,\n preferDesktop,\n}: {\n link: string;\n debug?: boolean;\n preferDesktop?: boolean;\n installer: MetaMaskInstaller;\n terminate?: () => void;\n connectWithExtension?: () => void;\n}) => {\n let modalLoader: ModalLoader | null = null;\n let div: HTMLDivElement | null = null;\n\n logger(\n `[UI: InstallModal-web: sdkWebInstallModal()] ################## Installing Modal #################`,\n );\n logger(`[UI: InstallModal-web: sdkWebInstallModal()] link=${link}`);\n logger(\n `[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open \"${link}\" --ios`,\n );\n\n logger(\n `[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open \"${link}\" --android`,\n );\n\n logger(\n `[UI: InstallModal-web: sdkWebInstallModal()] adb shell am start -a android.intent.action.VIEW -d \"${link}\"`,\n );\n\n const unmount = (shouldTerminate?: boolean) => {\n logger(\n `[UI: InstallModal-web: sdkWebInstallModal()] installModal-web unmounting install modal -- shouldTerminate:`,\n shouldTerminate,\n div,\n );\n\n // Remove the node from the DOM\n if (div?.parentNode) {\n div.parentNode?.removeChild(div);\n }\n div = null;\n modalLoader = null;\n if (shouldTerminate === true) {\n terminate?.();\n }\n };\n\n const mount = (qrcodeLink: string) => {\n logger(\n '[UI: InstallModal-web: sdkWebInstallModal()] installModal-web mounting install modal',\n div,\n );\n\n if (div) {\n div.style.display = 'block';\n modalLoader?.updateQRCode(qrcodeLink);\n return;\n }\n\n modalLoader = new ModalLoader({ debug, sdkVersion: packageJson.version });\n div = document.createElement('div');\n document.body.appendChild(div);\n if (window.extension) {\n // When extension is available, we allow switching between extension and mobile\n modalLoader\n .renderSelectModal({\n parentElement: div,\n connectWithExtension: () => {\n unmount();\n connectWithExtension?.();\n },\n onClose: unmount,\n link,\n preferDesktop: preferDesktop ?? false,\n })\n .catch((err) => {\n console.error(err);\n });\n } else {\n modalLoader\n .renderInstallModal({\n parentElement: div,\n preferDesktop: preferDesktop ?? false,\n link,\n metaMaskInstaller: installer,\n onClose: unmount,\n })\n .catch((err) => {\n console.error(`[UI: InstallModal-web: sdkWebInstallModal()]`, err);\n });\n }\n };\n\n return { mount, unmount };\n};\n\nexport default sdkWebInstallModal;\n","import packageJson from '../../../package.json';\nimport { logger } from '../../utils/logger';\nimport ModalLoader from './Modal-web';\n\nconst sdkWebPendingModal = ({\n onDisconnect,\n debug,\n}: {\n onDisconnect?: () => void;\n debug?: boolean;\n}) => {\n let div: HTMLDivElement | null = null;\n let modalLoader: ModalLoader | null = null;\n\n const unmount = () => {\n logger(\n `[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web unmount`,\n div,\n );\n\n // Remove the node from the DOM\n if (div?.parentNode) {\n div.parentNode.removeChild(div);\n }\n\n div = null;\n modalLoader = null;\n };\n\n const updateOTPValue = (otpValue: string) => {\n logger(\n `[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web updateOTPValue`,\n otpValue,\n );\n\n if (modalLoader) {\n modalLoader.updateOTPValue(otpValue);\n }\n };\n\n const mount = (\n {\n displayOTP,\n }: {\n displayOTP: boolean;\n } = {\n displayOTP: true,\n },\n ) => {\n logger(\n `[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web mount`,\n div,\n );\n\n if (div) {\n div.style.display = 'block';\n return;\n }\n\n modalLoader = new ModalLoader({ debug, sdkVersion: packageJson.version });\n div = document.createElement('div');\n document.body.appendChild(div);\n\n modalLoader\n .renderPendingModal({\n parentElement: div,\n onClose: unmount,\n onDisconnect,\n updateOTPValue,\n displayOTP,\n })\n .catch((err) => {\n console.error(`[UI: pendingModal-web: sdkWebPendingModal()]`, err);\n });\n };\n\n // Auto mount on initialization\n mount();\n\n return { mount, unmount, updateOTPValue };\n};\n\nexport default sdkWebPendingModal;\n","import { RemoteCommunication } from '@metamask/sdk-communication-layer';\nimport { logger } from '../../../utils/logger';\nimport packageJson from '../../../../package.json';\nimport {\n RemoteConnectionProps,\n RemoteConnectionState,\n} from '../RemoteConnection';\n\n/**\n * Initializes the connector for MetaMask remote communication based on provided options.\n *\n * @param state Current state of the RemoteConnection class instance.\n * @param options Configuration options for the remote connection.\n * @returns void\n */\nexport function initializeConnector(\n state: RemoteConnectionState,\n options: RemoteConnectionProps,\n) {\n if (state.connector) {\n return;\n }\n\n logger(`[RemoteConnection: initializeConnector()] initialize connector`);\n\n // Check if existing channel config to re-use previous ecies key if not directly provided\n state.connector = new RemoteCommunication({\n platformType: options.platformManager.getPlatformType(),\n communicationLayerPreference: options.communicationLayerPreference,\n transports: options.transports,\n dappMetadata: { ...options.dappMetadata, source: options._source },\n analytics: options.enableAnalytics,\n communicationServerUrl: options.communicationServerUrl,\n sdkVersion: packageJson.version,\n context: 'dapp',\n ecies: options.ecies,\n storage: options.storage,\n logging: options.logging,\n });\n\n if (options.timer) {\n logger(\n `[RemoteConnection: initializeConnector()] reset background timer`,\n options.timer,\n );\n\n options.timer?.stopBackgroundTimer?.();\n options.timer?.runBackgroundTimer?.(() => {\n // Used to maintain the connection when the app is backgrounded.\n // console.debug(`Running background timer`);\n return false;\n }, 10000);\n }\n}\n","import { RemoteConnectionState } from '../RemoteConnection';\n\nexport function cleanupListeners(state: RemoteConnectionState): void {\n state.listeners.forEach(({ event, handler }) => {\n state.connector?.off(event, handler);\n });\n state.listeners = [];\n}\n","import { EventType } from '@metamask/sdk-communication-layer';\nimport { logger } from '../../../utils/logger';\nimport { PROVIDER_UPDATE_TYPE } from '../../../types/ProviderUpdateType';\nimport { showInstallModal } from '../ModalManager/showInstallModal';\nimport {\n RemoteConnectionProps,\n RemoteConnectionState,\n} from '../RemoteConnection';\nimport {\n METAMASK_CONNECT_BASE_URL,\n METAMASK_DEEPLINK_BASE,\n} from '../../../constants';\n\n/**\n * Handles the disconnection process for a MetaMask connection based on the current state and provided options.\n *\n * @param state Current state of the RemoteConnection class instance.\n * @param options Configuration options for the disconnection.\n * @returns Promise\n */\nexport async function connectWithModalInstaller(\n state: RemoteConnectionState,\n options: RemoteConnectionProps,\n linkParams: string,\n) {\n return new Promise((resolve, reject) => {\n if (!state.connector) {\n reject(new Error('No connector available'));\n return;\n }\n\n logger(`[RemoteConnection: connectWithModalInstaller()]`, {\n state,\n options,\n linkParams,\n });\n\n const installLink = `${\n state.useDeeplink ? METAMASK_DEEPLINK_BASE : METAMASK_CONNECT_BASE_URL\n }?${linkParams}`;\n showInstallModal(state, options, installLink);\n\n // Event means browser extension is selected, interrupt gracefully.\n options.sdk.once(\n EventType.PROVIDER_UPDATE,\n async (type: PROVIDER_UPDATE_TYPE) => {\n // handle the provider change in initializeProvider\n logger(\n `[RemoteConnection: connectWithModalInstaller()] once provider_update -- resolving startConnection promise`,\n );\n\n if (type === PROVIDER_UPDATE_TYPE.TERMINATE) {\n const rejected = {\n code: 4001,\n message: 'User rejected the request.',\n };\n reject(rejected);\n return;\n }\n reject(type);\n },\n );\n\n state.connector.once(EventType.AUTHORIZED, () => {\n resolve();\n });\n\n state.connector.once(EventType.REJECTED, () => {\n reject(EventType.REJECTED);\n });\n\n state.connector.once(EventType.CLIENTS_READY, async () => {\n logger(\n `[RemoteConnection: connectWithModalInstaller()] once clients_ready -- resolving startConnection promise`,\n );\n\n // Allow initializeProvider to complete and send the eth_requestAccounts\n resolve();\n });\n });\n}\n","import { logger } from '../../../utils/logger';\nimport {\n RemoteConnectionProps,\n RemoteConnectionState,\n} from '../RemoteConnection';\n\n/**\n * Display the installation modal\n *\n * @param param.link link of the qrcode\n * @returns\n */\nexport function showInstallModal(\n state: RemoteConnectionState,\n options: RemoteConnectionProps,\n link: string,\n): void {\n state.installModal = options.modals.install?.({\n link,\n preferDesktop: state.preferDesktop,\n installer: options.getMetaMaskInstaller(),\n terminate: () => {\n logger(\n `[RemoteConnection: showInstallModal() => terminate()] terminate connection`,\n );\n\n // Terminate with specific error code\n options.sdk.terminate().catch((err) => {\n console.warn(`[MMSDK] failed to terminate connection`, err);\n });\n },\n debug: state.developerMode,\n connectWithExtension: () => {\n options.connectWithExtensionProvider?.();\n return false;\n },\n });\n state.installModal?.mount?.(link);\n}\n","import { RequestArguments } from '@metamask/providers';\nimport { EventType } from '@metamask/sdk-communication-layer';\nimport { logger } from '../../../utils/logger';\nimport { Ethereum } from '../../Ethereum';\nimport { RemoteConnection, RemoteConnectionState } from '../RemoteConnection';\nimport { cleanupListeners } from './cleanupListeners';\n\n// Define specific types for each event handler\ntype SDKRPCCallHandler = (requestParams: RequestArguments) => Promise;\ntype WalletInitHandler = (data: {\n accounts: string[];\n chainId: string;\n}) => Promise;\ntype AuthorizedHandler = () => Promise;\ntype ClientsDisconnectedHandler = () => void;\ntype TerminateHandler = () => void;\n\n// Union type for all possible handlers\nexport type EventHandler =\n | SDKRPCCallHandler\n | WalletInitHandler\n | AuthorizedHandler\n | ClientsDisconnectedHandler\n | TerminateHandler;\n\n/**\n * Sets up event listeners for MetaMask remote communication and handles responses accordingly.\n *\n * @param state Current state of the RemoteConnection class instance.\n * @param options Configuration options for the events.\n * @returns void\n */\nexport function setupListeners(\n state: RemoteConnectionState,\n _options: RemoteConnection['options'],\n): void {\n if (!state.connector) {\n return;\n }\n\n // Clear existing listeners if any\n cleanupListeners(state);\n\n function addListener(event: EventType, handler: EventHandler) {\n state.connector?.on(event, handler);\n state.listeners.push({ event, handler });\n }\n\n addListener(EventType.WALLET_INIT, (async ({ accounts, chainId }) => {\n logger(\n `[RemoteConnection: setupListeners() => EventType.WALLET_INIT] 'wallet_init' accounts=${accounts} chainId=${chainId}`,\n );\n\n const provider = Ethereum.getProvider();\n provider._setConnected();\n\n const initialState = {\n accounts,\n chainId,\n isUnlocked: false,\n };\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n provider._initializeState(initialState);\n provider.emit('chainChanged', chainId);\n provider.emit('accountsChanged', accounts);\n }) as WalletInitHandler);\n\n addListener(EventType.AUTHORIZED, (async () => {\n try {\n logger(\n `[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' closing modals`,\n state.pendingModal,\n state.installModal,\n );\n\n // Force connected state on provider\n // This prevents some rpc method being received in Ethereum before connected state is.\n const provider = Ethereum.getProvider();\n provider._setConnected();\n\n // close modals\n state.pendingModal?.unmount?.();\n state.installModal?.unmount?.(false);\n state.otpAnswer = undefined;\n state.authorized = true;\n\n logger(\n `[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' provider.state`,\n provider.getState(),\n );\n\n await provider.forceInitializeState();\n } catch (err) {\n // Ignore error if already initialized.\n // console.debug(`IGNORE ERROR`, err);\n }\n }) as AuthorizedHandler);\n\n // Should not be needed anymore but keeping for reference if needed for backward compatibility with older SDK (pre async communication)\n // addListener(EventType.CLIENTS_DISCONNECTED, (() => {\n // logger(\n // `[RemoteConnection: setupListeners() => EventType.CLIENTS_DISCONNECTED] received '${EventType.CLIENTS_DISCONNECTED}'`,\n // );\n\n // if (!state.platformManager?.isSecure()) {\n // const provider = Ethereum.getProvider();\n // provider.handleDisconnect({ terminate: false });\n // state.pendingModal?.updateOTPValue?.('');\n // }\n // }) as ClientsDisconnectedHandler);\n\n addListener(EventType.TERMINATE, (() => {\n state.pendingModal?.unmount?.();\n state.installModal?.unmount?.(true);\n state.pendingModal = undefined;\n state.installModal = undefined;\n state.otpAnswer = undefined;\n state.connector?.disconnect({ terminate: true });\n state.authorized = false;\n\n const provider = Ethereum.getProvider();\n provider.handleDisconnect({ terminate: true });\n\n // Clean up all listeners\n cleanupListeners(state);\n\n logger(`[RemoteConnection: setupListeners()] All listeners cleaned up`);\n }) as TerminateHandler);\n}\n","import {\n DEFAULT_SESSION_TIMEOUT_MS,\n EventType,\n OriginatorInfo,\n} from '@metamask/sdk-communication-layer';\nimport packageJson from '../../../../package.json';\nimport {\n METAMASK_CONNECT_BASE_URL,\n METAMASK_DEEPLINK_BASE,\n} from '../../../constants';\nimport { RPCCall } from '../../../Platform/MetaMaskInstaller';\nimport { base64Encode } from '../../../utils/base64';\nimport { logger } from '../../../utils/logger';\nimport { Ethereum } from '../../Ethereum';\nimport { initializeConnector } from '../ConnectionInitializer';\nimport { setupListeners } from '../EventListeners';\nimport {\n RemoteConnectionProps,\n RemoteConnectionState,\n} from '../RemoteConnection';\nimport { connectWithDeeplink } from './connectWithDeeplink';\nimport { connectWithModalInstaller } from './connectWithModalInstaller';\n\nexport interface StartConnectionExtras {\n initialCheck?: boolean;\n connectWith?: RPCCall;\n}\n\n/**\n * Initiates the connection process to MetaMask, choosing the appropriate connection method based on state and options.\n *\n * @param state Current state of the RemoteConnection class instance.\n * @param options Configuration options for the connection.\n * @returns Promise\n */\nexport async function startConnection(\n state: RemoteConnectionState,\n options: RemoteConnectionProps,\n { initialCheck, connectWith }: StartConnectionExtras = {},\n): Promise {\n try {\n // Initialize the connector - will skip if already initialized\n initializeConnector(state, options);\n\n if (!state.connector) {\n throw new Error('no connector defined');\n }\n\n // Ensure listeners are set up\n setupListeners(state, options);\n\n const provider = Ethereum.getProvider();\n\n // reset authorization state\n state.authorized = false;\n\n // Establish socket connection\n provider.emit('connecting');\n\n const channelConfig = await state.connector?.originatorSessionConnect();\n logger(\n `[RemoteConnection: startConnection()] after originatorSessionConnect initialCheck=${initialCheck}`,\n channelConfig,\n );\n\n let channelId = channelConfig?.channelId ?? '';\n let pubKey = state.connector.getKeyInfo()?.ecies.public ?? '';\n let privKey = state.connector.getKeyInfo()?.ecies.private ?? '';\n\n if (initialCheck && !channelConfig) {\n return Promise.resolve();\n }\n\n if (!channelConfig && !initialCheck) {\n const newChannel = await state.connector.generateChannelIdConnect();\n channelId = newChannel.channelId ?? '';\n pubKey = newChannel.pubKey ?? '';\n privKey = newChannel.privKey ?? '';\n\n const now = Date.now();\n // Save channelId to storage for re-use until it expires or is terminated\n state.connector.state.storageManager?.persistChannelConfig({\n channelId,\n localKey: privKey,\n lastActive: now,\n validUntil: now + DEFAULT_SESSION_TIMEOUT_MS,\n });\n }\n\n if (initialCheck && channelConfig?.channelId) {\n if (!state.connector?.isConnected()) {\n logger(\n `[RemoteConnection: startConnection()] reconnecting to channel initialCheck=${initialCheck}`,\n channelConfig,\n );\n\n await state.connector?.connectToChannel({\n channelId,\n });\n }\n // Add condition to handle full relay persistence\n return Promise.resolve();\n }\n\n if (channelConfig && !state.connector?.isConnected()) {\n logger(\n `[RemoteConnection: startConnection()] reconnecting to channel`,\n channelConfig,\n );\n\n await state.connector?.connectToChannel({\n channelId,\n });\n }\n\n const qrCodeOrigin = state.platformManager?.isSecure() ? '' : '&t=q';\n const sdkVersion = packageJson.version;\n const { iconUrl, name, url, scheme } = options.dappMetadata || {};\n const platformType = state.platformManager?.getPlatformType();\n\n let dappId = 'N/A';\n\n if (\n typeof window !== 'undefined' &&\n window.location &&\n window.location.hostname\n ) {\n dappId = window.location.hostname;\n } else if (typeof name !== 'undefined') {\n dappId = name as string;\n } else if (typeof url !== 'undefined') {\n dappId = url as string;\n }\n\n const originatorInfo: OriginatorInfo = {\n url: url ?? '',\n title: name ?? '',\n icon: iconUrl,\n scheme: scheme ?? '',\n apiVersion: sdkVersion,\n dappId: dappId || url || 'N/A',\n platform: platformType ?? '',\n source: options._source ?? '',\n };\n const base64OriginatorInfo = base64Encode(JSON.stringify(originatorInfo));\n\n let linkParams = `channelId=${channelId}&v=2&comm=${\n state.communicationLayerPreference ?? ''\n }&pubkey=${pubKey}${qrCodeOrigin}&originatorInfo=${base64OriginatorInfo}`;\n\n if (connectWith) {\n const base64Rpc = base64Encode(JSON.stringify(connectWith));\n linkParams += `&rpc=${base64Rpc}`;\n\n const tracker = state.connector.getRPCMethodTracker();\n // Add rpcMethod to tracker\n if (tracker) {\n tracker[`${connectWith.id}`] = {\n ...connectWith,\n id: `${connectWith.id}`,\n timestamp: Date.now(),\n };\n }\n }\n const encodedLinkParams = encodeURI(linkParams);\n const qrcodeLink = `${\n state.useDeeplink ? METAMASK_DEEPLINK_BASE : METAMASK_CONNECT_BASE_URL\n }?${linkParams}`;\n state.qrcodeLink = qrcodeLink;\n\n if (state.developerMode) {\n logger(\n `[RemoteConnection: startConnection()] qrcodeLink=${encodedLinkParams}`,\n );\n }\n\n // emit qrcode url link\n provider.emit('display_uri', qrcodeLink);\n\n // first handle secure connection\n if (state.platformManager?.isSecure()) {\n await connectWithDeeplink(state, encodedLinkParams);\n // wait for authorized event\n return new Promise((resolve, reject) => {\n if (state.connector?.isAuthorized()) {\n resolve();\n return;\n }\n\n state.connector?.once(EventType.AUTHORIZED, () => {\n resolve();\n });\n\n state.connector?.once(EventType.REJECTED, () => {\n reject(EventType.REJECTED);\n });\n });\n }\n\n return connectWithModalInstaller(state, options, encodedLinkParams);\n } catch (error) {\n console.error(`[startConnection] error`, error);\n throw error;\n }\n}\n","import {\n METAMASK_DEEPLINK_BASE,\n METAMASK_CONNECT_BASE_URL,\n} from '../../../constants';\nimport { RemoteConnectionState } from '../RemoteConnection';\n\n/**\n * Generates and opens a universal link or deeplink for MetaMask connection based on given parameters.\n *\n * @param state Current state of the RemoteConnection class instance.\n * @param linkParams A string representing the parameters used to form the universal and deep links.\n * @returns Promise\n */\nexport async function connectWithDeeplink(\n state: RemoteConnectionState,\n linkParams: string,\n): Promise {\n const universalLink = `${METAMASK_CONNECT_BASE_URL}?${linkParams}`;\n const deeplink = `${METAMASK_DEEPLINK_BASE}?${linkParams}`;\n\n // console.log('OPEN LINK', universalLink);\n state.platformManager?.openDeeplink?.(universalLink, deeplink, '_self');\n}\n","import {\n ChannelConfig,\n CommunicationLayerPreference,\n DappMetadata,\n DisconnectOptions,\n ECIESProps,\n EventType,\n KeyInfo,\n RemoteCommunication,\n StorageManagerProps,\n} from '@metamask/sdk-communication-layer';\nimport { MetaMaskInstaller } from '../../Platform/MetaMaskInstaller';\nimport { PlatformManager } from '../../Platform/PlatfformManager';\nimport { MetaMaskSDK } from '../../sdk';\nimport { SDKLoggingOptions } from '../../types/SDKLoggingOptions';\nimport InstallModal from '../../ui/InstallModal/installModal';\nimport PendingModal from '../../ui/InstallModal/pendingModal';\nimport { logger } from '../../utils/logger';\nimport { Analytics } from '../Analytics';\nimport { Ethereum } from '../Ethereum';\nimport { initializeConnector } from './ConnectionInitializer';\nimport { cleanupConnector } from './ConnectionInitializer/cleanupConnector';\nimport { startConnection, StartConnectionExtras } from './ConnectionManager';\nimport { EventHandler, setupListeners } from './EventListeners';\nimport { showActiveModal } from './ModalManager';\n\nexport interface RemoteConnectionProps {\n timer?: {\n runBackgroundTimer?: (cb: () => void, ms: number) => number;\n stopBackgroundTimer?: () => void;\n };\n communicationLayerPreference: CommunicationLayerPreference;\n dappMetadata?: DappMetadata;\n _source?: string;\n enableAnalytics?: boolean;\n analytics: Analytics;\n sdk: MetaMaskSDK;\n transports?: string[];\n platformManager: PlatformManager;\n communicationServerUrl?: string;\n ecies?: ECIESProps;\n storage?: StorageManagerProps;\n logging?: SDKLoggingOptions;\n preferDesktop?: boolean;\n // Prevent circular dependencies\n getMetaMaskInstaller: () => MetaMaskInstaller;\n connectWithExtensionProvider?: () => void;\n /**\n * @deprecated Use the 'display_uri' event on the provider instead.\n * Listen to this event to get the QR code URL and customize your UI.\n * Example:\n * sdk.getProvider().on('display_uri', (uri: string) => {\n * // Use the uri to display a QR code or customize your UI\n * });\n */\n modals: {\n onPendingModalDisconnect?: () => void;\n install?: (params: {\n link: string;\n debug?: boolean;\n preferDesktop?: boolean;\n installer: MetaMaskInstaller;\n terminate?: () => void;\n connectWithExtension?: () => void;\n }) => {\n unmount?: (shouldTerminate?: boolean) => void;\n mount?: (link: string) => void;\n };\n otp?: ({\n debug,\n onDisconnect,\n }: {\n debug?: boolean;\n onDisconnect?: () => void;\n }) => {\n mount?: () => void;\n updateOTPValue?: (otpValue: string) => void;\n unmount?: () => void;\n };\n };\n}\n\nexport interface RemoteConnectionState {\n connector?: RemoteCommunication;\n qrcodeLink?: string;\n useDeeplink?: boolean;\n developerMode: boolean;\n analytics?: Analytics;\n authorized: boolean;\n reconnection: boolean;\n deeplinkProtocol: boolean;\n preferDesktop?: boolean;\n listeners: { event: EventType; handler: EventHandler }[];\n communicationLayerPreference?: CommunicationLayerPreference;\n platformManager?: PlatformManager;\n pendingModal?: {\n mount?: (props?: { displayOTP?: boolean }) => void;\n updateOTPValue?: (otpValue: string) => void;\n unmount?: () => void;\n };\n\n installModal?: {\n unmount?: (shouldTerminate: boolean) => void;\n mount?: (link: string) => void;\n };\n /**\n * Wait for value from metamask mobile\n */\n otpAnswer?: string;\n}\n\nexport class RemoteConnection {\n private options: RemoteConnectionProps;\n\n public state: RemoteConnectionState = {\n connector: undefined,\n qrcodeLink: undefined,\n analytics: undefined,\n developerMode: false,\n authorized: false,\n reconnection: false,\n preferDesktop: false,\n deeplinkProtocol: false,\n listeners: [],\n communicationLayerPreference: undefined,\n platformManager: undefined,\n pendingModal: undefined,\n installModal: undefined,\n otpAnswer: undefined,\n };\n\n constructor(options: RemoteConnectionProps) {\n this.options = options;\n const developerMode =\n options.logging?.developerMode === true || options.logging?.sdk === true;\n this.state.developerMode = developerMode;\n this.state.analytics = options.analytics;\n this.state.preferDesktop = options.preferDesktop ?? false;\n this.state.useDeeplink = options.sdk.options.useDeeplink;\n this.state.communicationLayerPreference =\n options.communicationLayerPreference;\n this.state.platformManager = options.platformManager;\n\n // Set default modals implementation\n // @ts-error backward compatibility\n if (!options.modals.install) {\n // @ts-error backward compatibility\n options.modals.install = InstallModal;\n }\n\n if (!options.modals.otp) {\n options.modals.otp = PendingModal;\n }\n }\n\n /**\n * This will start the installer or pending modal and resolve once it is displayed.\n * It doesn't wait for the actual connection to be authorized.\n */\n async startConnection(extras?: StartConnectionExtras): Promise {\n return startConnection(this.state, this.options, extras);\n }\n\n async initRemoteCommunication({\n sdkInstance,\n }: {\n sdkInstance: MetaMaskSDK;\n }): Promise {\n // get channel config\n const channelConfig =\n await sdkInstance.options.storage?.storageManager?.getPersistedChannelConfig();\n\n if (!this.options.ecies) {\n const eciesProps: ECIESProps = {\n privateKey: channelConfig?.localKey,\n };\n this.options.ecies = eciesProps;\n }\n initializeConnector(this.state, this.options);\n await this.getConnector()?.initFromDappStorage();\n\n setupListeners(this.state, this.options);\n }\n\n showActiveModal() {\n return showActiveModal(this.state);\n }\n\n closeModal() {\n this.state.pendingModal?.unmount?.();\n this.state.installModal?.unmount?.(false);\n }\n\n getUniversalLink() {\n if (!this.state.qrcodeLink) {\n throw new Error('connection not started. run startConnection() first.');\n }\n return this.state.qrcodeLink;\n }\n\n getChannelConfig(): ChannelConfig | undefined {\n return this.state.connector?.getChannelConfig();\n }\n\n getKeyInfo(): KeyInfo | undefined {\n return this.state.connector?.getKeyInfo();\n }\n\n getConnector() {\n if (!this.state.connector) {\n throw new Error(`invalid remote connector`);\n }\n return this.state.connector;\n }\n\n getPlatformManager(): PlatformManager {\n if (!this.state.platformManager) {\n throw new Error('PlatformManager not available');\n }\n\n return this.state.platformManager;\n }\n\n isConnected() {\n return this.state.connector?.isReady() || false;\n }\n\n isAuthorized() {\n return this.state.connector?.isAuthorized() || false;\n }\n\n isPaused() {\n return this.state.connector?.isPaused();\n }\n\n disconnect(options?: DisconnectOptions): void {\n logger(`[RemoteConnection: disconnect()]`, options);\n\n if (options?.terminate) {\n Ethereum.getProvider().handleDisconnect({\n terminate: true,\n });\n this.state.pendingModal?.unmount?.();\n this.state.otpAnswer = undefined;\n }\n this.state.connector?.disconnect(options);\n cleanupConnector(this.state);\n }\n}\n","import { logger } from '../../../utils/logger';\nimport { RemoteConnectionState } from '../RemoteConnection';\n\n/**\n * Displays the relevant active modal based on the current connection state.\n *\n * @param state Current state of the RemoteConnection class instance.\n * @returns void\n */\nexport function showActiveModal(state: RemoteConnectionState): void {\n if (state.authorized) {\n logger(`[RemoteConnection: showActiveModal()] already authorized`);\n return;\n }\n\n if (state.pendingModal) {\n // only display the modal if the connection is not authorized\n state.pendingModal.mount?.();\n } else if (state.installModal) {\n state.installModal.mount?.(state.qrcodeLink || '');\n }\n}\n","import { logger } from '../../../utils/logger';\nimport { cleanupListeners } from '../EventListeners/cleanupListeners';\nimport { RemoteConnectionState } from '../RemoteConnection';\n\nexport function cleanupConnector(state: RemoteConnectionState) {\n logger(`[RemoteConnection: cleanupConnector()] cleaning up connector`);\n\n if (state.connector) {\n cleanupListeners(state);\n state.connector.disconnect({ terminate: true }).catch((error) => {\n logger(\n `[RemoteConnection: cleanupConnector()] error disconnecting connector`,\n error,\n );\n });\n }\n}\n","import { CommunicationLayerPreference } from '@metamask/sdk-communication-layer';\nimport debug from 'debug';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { MetaMaskSDKEvent } from '../../../types/MetaMaskSDKEvents';\nimport { PROVIDER_UPDATE_TYPE } from '../../../types/ProviderUpdateType';\nimport { logger } from '../../../utils/logger';\nimport { handleAutoAndExtensionConnections } from './handleAutoAndExtensionConnections';\nimport { initializeProviderAndEventListeners } from './initializeProviderAndEventListeners';\nimport { setupAnalytics } from './setupAnalytics';\nimport { setupDappMetadata } from './setupDappMetadata';\nimport { setupExtensionPreferences } from './setupExtensionPreferences';\nimport { setupInfuraProvider } from './setupInfuraProvider';\nimport { setupPlatformManager } from './setupPlatformManager';\nimport { setupReadOnlyRPCProviders } from './setupReadOnlyRPCProviders';\nimport { setupRemoteConnectionAndInstaller } from './setupRemoteConnectionAndInstaller';\nimport { setupStorageManager } from './setupStorage';\n\n/**\n * Performs the complete initialization of the MetaMask SDK instance.\n *\n * This function sets up the SDK with a series of asynchronous tasks, including:\n * - Setting up default options and logging preferences.\n * - Configuring the platform manager.\n * - Initializing analytics.\n * - Setting up storage manager.\n * - Configuring Dapp metadata.\n * - Setting up Infura provider.\n * - Setting up read-only RPC providers.\n * - Handling extension preferences.\n * - Setting up remote connections and installer.\n * - Initializing the provider and event listeners.\n * - Handling automatic and extension-based connections.\n *\n * @param instance The MetaMaskSDK instance to be fully initialized.\n * @returns void\n * @async\n */\nexport async function performSDKInitialization(instance: MetaMaskSDK) {\n const { options } = instance;\n\n // Set default options if not provided\n options.logging = options.logging ?? {};\n options.communicationLayerPreference =\n options.communicationLayerPreference ?? CommunicationLayerPreference.SOCKET;\n\n // TODO: it need to be removed and it was added for backward compatibility\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n if (options.enableDebug !== undefined) {\n debug.enable('MM_SDK');\n console.warn('enableDebug is removed. Please use enableAnalytics instead.');\n }\n\n options.enableAnalytics = options.enableAnalytics ?? true;\n options.injectProvider = options.injectProvider ?? true;\n options.shouldShimWeb3 = options.shouldShimWeb3 ?? true;\n options.extensionOnly = options.extensionOnly ?? true;\n options.useDeeplink = options.useDeeplink ?? true;\n options.storage = options.storage ?? {\n enabled: true,\n };\n\n if (options.headless) {\n debug('[MetaMaskSDK: performSDKInitialization()] headless mode enabled');\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n const noop = () => {};\n const _modals = {\n install: () => {\n return {\n mount: noop,\n unmount: noop,\n };\n },\n };\n const _ui = {\n installer: noop,\n };\n options.modals = _modals;\n options.ui = _ui;\n }\n\n const developerMode = options.logging?.developerMode === true;\n instance.debug = options.logging?.sdk || developerMode;\n\n logger('[MetaMaskSDK: performSDKInitialization()] options', instance.options);\n\n // Make sure to enable all logs if developer mode is on\n const runtimeLogging = { ...options.logging };\n\n if (developerMode) {\n runtimeLogging.sdk = true;\n runtimeLogging.eciesLayer = true;\n runtimeLogging.keyExchangeLayer = true;\n runtimeLogging.remoteLayer = true;\n runtimeLogging.serviceLayer = true;\n runtimeLogging.plaintext = true;\n }\n\n await setupPlatformManager(instance);\n\n await setupAnalytics(instance);\n\n await setupStorageManager(instance);\n\n await setupDappMetadata(instance);\n\n await setupInfuraProvider(instance);\n\n await setupReadOnlyRPCProviders(instance);\n\n const { metamaskBrowserExtension, preferExtension, shouldReturn } =\n await setupExtensionPreferences(instance);\n\n if (shouldReturn) {\n logger(\n '[MetaMaskSDK: performSDKInitialization()] shouldReturn=true --- prevent sdk initialization',\n );\n return;\n }\n\n await setupRemoteConnectionAndInstaller(instance, metamaskBrowserExtension);\n\n // initialize mobile provider and event listeners\n await initializeProviderAndEventListeners(instance);\n await handleAutoAndExtensionConnections(instance, preferExtension);\n\n try {\n await instance.remoteConnection?.startConnection({ initialCheck: true });\n } catch (err) {\n console.error(\n `[MetaMaskSDK: setupRemoteConnectionAndInstaller()] Error while checking installation`,\n err,\n );\n }\n\n instance.emit(\n MetaMaskSDKEvent.ProviderUpdate,\n PROVIDER_UPDATE_TYPE.INITIALIZED,\n );\n}\n","import { PlatformManager } from '../../../Platform/PlatfformManager';\nimport { MetaMaskSDK } from '../../../sdk';\n\n/**\n * Initializes and sets up the PlatformManager for the MetaMaskSDK instance.\n *\n * This function constructs a new PlatformManager with various settings, such as\n * deep linking preferences, wake lock status, and debug mode, based on the provided\n * options within the MetaMaskSDK instance. The initialized PlatformManager is then\n * stored back into the MetaMaskSDK instance for further use.\n *\n * @param instance The current instance of the MetaMaskSDK, which contains user-defined or default options.\n * @returns {Promise} A Promise that resolves when the PlatformManager has been successfully set up.\n */\nexport async function setupPlatformManager(instance: MetaMaskSDK) {\n const { options } = instance;\n\n instance.platformManager = new PlatformManager({\n useDeepLink: options.useDeeplink ?? false,\n preferredOpenLink: options.openDeeplink,\n debug: instance.debug,\n });\n}\n","import { DEFAULT_SERVER_URL } from '@metamask/sdk-communication-layer';\nimport { Analytics } from '../../Analytics';\nimport { MetaMaskSDK } from '../../../sdk';\n\n/**\n * Sets up the analytics instance for the MetaMask SDK.\n *\n * This function initializes an Analytics object and attaches it to the MetaMask SDK instance.\n * The analytics object is configured based on various options like the server URL, debug settings, and Dapp metadata.\n *\n * @param instance The MetaMaskSDK instance for which analytics will be set up.\n * @returns void\n * @async\n */\nexport async function setupAnalytics(instance: MetaMaskSDK) {\n const { options } = instance;\n\n const platformType = instance.platformManager?.getPlatformType();\n\n instance.analytics = new Analytics({\n serverUrl: options.communicationServerUrl ?? DEFAULT_SERVER_URL,\n enabled: options.enableAnalytics,\n originatorInfo: {\n url: options.dappMetadata.url ?? '',\n title: options.dappMetadata.name ?? '',\n dappId:\n typeof window === 'undefined' || typeof window.location === 'undefined'\n ? options.dappMetadata?.name ?? options.dappMetadata?.url ?? 'N/A'\n : window.location.hostname,\n platform: platformType ?? '',\n source: options._source ?? '',\n },\n });\n}\n","import { MetaMaskSDK } from '../../../sdk';\nimport { getStorageManager } from '../../../storage-manager/getStorageManager';\n\n/**\n * Initializes and sets up the storage manager for the MetaMaskSDK instance.\n *\n * This function checks if the storage option is enabled in the SDK instance. If enabled, it uses the `getStorageManager`\n * function to obtain an instance of the storage manager configured with the options provided within the MetaMaskSDK instance.\n * This storage manager is then stored back into the options for later use.\n *\n * @param instance The current instance of the MetaMaskSDK, which contains user-defined or default options.\n * @returns {Promise} A Promise that resolves when the storage manager has been successfully set up.\n */\nexport async function setupStorageManager(instance: MetaMaskSDK) {\n const { options } = instance;\n\n if (options.storage?.enabled === true && !options.storage.storageManager) {\n options.storage.storageManager = getStorageManager(\n // instance.platformManager,\n options.storage,\n );\n }\n}\n","import { TrackingEvents } from '@metamask/sdk-communication-layer';\nimport { logger } from '../../../utils/logger';\nimport { SDKProvider } from '../../../provider/SDKProvider';\nimport { EXTENSION_EVENTS, STORAGE_PROVIDER_TYPE } from '../../../config';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { getBrowserExtension } from '../../../utils/get-browser-extension';\nimport { Ethereum } from '../../Ethereum';\nimport { wrapExtensionProvider } from '../../../provider/wrapExtensionProvider';\n\n/**\n * Sets up the extension preferences for the MetaMask SDK instance.\n *\n * This function tries to identify if the MetaMask extension is installed and active in the browser.\n * If the extension is found, the relevant MetaMask SDK instance properties are updated accordingly.\n * The function also checks if the SDK is running in MetaMask's in-app browser on mobile devices.\n * Based on these checks, the function returns an object containing information about whether the\n * extension is preferred, whether the initialization process should return early, and the detected\n * MetaMask browser extension.\n *\n * @param {MetaMaskSDK} instance - The MetaMaskSDK instance for which extension preferences will be set up.\n * @returns {Object} An object containing the following properties:\n * - preferExtension: Boolean indicating if the extension is preferred.\n * - shouldReturn: Boolean indicating if the initialization process should return early.\n * - metamaskBrowserExtension: The detected MetaMask browser extension, if any.\n * @async\n */\nexport async function setupExtensionPreferences(instance: MetaMaskSDK) {\n const { options } = instance;\n\n let metamaskBrowserExtension;\n let preferExtension = false;\n let shouldReturn = false;\n\n if (\n typeof window !== 'undefined' &&\n window.ethereum &&\n !instance.platformManager?.isMetaMaskMobileWebView()\n ) {\n preferExtension =\n localStorage.getItem(STORAGE_PROVIDER_TYPE) === 'extension';\n\n try {\n metamaskBrowserExtension = await getBrowserExtension({\n mustBeMetaMask: true,\n sdkInstance: instance,\n });\n\n window.extension = metamaskBrowserExtension;\n\n // Propagate browser extension events onto the main provider since some clients only subscribe to the main mobile provider.\n metamaskBrowserExtension.on(EXTENSION_EVENTS.CHAIN_CHANGED, (chainId) => {\n logger(\n `[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE chainChanged chainId=${chainId}`,\n );\n\n const hasMobileProvider = Boolean(instance.sdkProvider);\n\n if (hasMobileProvider) {\n instance\n .getMobileProvider()\n .emit(EXTENSION_EVENTS.CHAIN_CHANGED, chainId);\n }\n });\n\n metamaskBrowserExtension.on(\n EXTENSION_EVENTS.ACCOUNTS_CHANGED,\n (accounts) => {\n logger(\n `[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE accountsChanged accounts=${accounts}`,\n );\n\n const hasMobileProvider = Boolean(instance.sdkProvider);\n\n const isExtensionActive = Boolean(instance.extensionActive);\n\n if (hasMobileProvider) {\n instance\n .getMobileProvider()\n .emit(EXTENSION_EVENTS.ACCOUNTS_CHANGED, accounts);\n }\n\n if (isExtensionActive && (accounts as string[])?.length === 0) {\n logger(\n `[MetaMaskSDK: setupExtensionPreferences()] permissions were revoked on extension or extension was locked`,\n );\n }\n },\n );\n\n metamaskBrowserExtension.on(EXTENSION_EVENTS.DISCONNECT, (error) => {\n logger(\n `[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE disconnect error=${error}`,\n );\n\n const hasMobileProvider = Boolean(instance.sdkProvider);\n\n if (hasMobileProvider) {\n instance.getMobileProvider().emit(EXTENSION_EVENTS.DISCONNECT, error);\n }\n });\n\n metamaskBrowserExtension.on(EXTENSION_EVENTS.CONNECT, (args) => {\n logger(\n `[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connect args=${args}`,\n );\n\n const hasMobileProvider = Boolean(instance.sdkProvider);\n\n if (hasMobileProvider) {\n instance.getMobileProvider().emit(EXTENSION_EVENTS.CONNECT, args);\n }\n });\n\n metamaskBrowserExtension.on(EXTENSION_EVENTS.CONNECTED, (args) => {\n logger(\n '[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connected',\n args,\n );\n\n const hasMobileProvider = Boolean(instance.sdkProvider);\n\n if (hasMobileProvider) {\n instance.getMobileProvider().emit(EXTENSION_EVENTS.CONNECTED, args);\n }\n });\n } catch (err) {\n // Ignore error if metamask extension not found\n window.extension = undefined;\n }\n Ethereum.destroy();\n } else if (instance.platformManager?.isMetaMaskMobileWebView()) {\n instance.analytics?.send({ event: TrackingEvents.SDK_USE_INAPP_BROWSER });\n // TODO: Remove Force wrapping inpage provider until it implements latest provider interface\n instance.activeProvider = wrapExtensionProvider({\n provider: window.ethereum as any,\n sdkInstance: instance,\n }) as SDKProvider;\n instance._initialized = true;\n\n shouldReturn = true;\n }\n\n if (metamaskBrowserExtension && options.extensionOnly) {\n logger(\n `[MetaMaskSDK: setupExtensionPreferences()] EXTENSION ONLY --- prevent sdk initialization`,\n );\n\n instance.analytics?.send({ event: TrackingEvents.SDK_USE_EXTENSION });\n instance.activeProvider = metamaskBrowserExtension as SDKProvider; // TODO should be MetaMaskInPageProvider\n instance.extensionActive = true;\n instance.extension = metamaskBrowserExtension;\n instance._initialized = true;\n\n shouldReturn = true;\n }\n\n return {\n preferExtension,\n shouldReturn,\n metamaskBrowserExtension,\n };\n}\n","import { CommunicationLayerPreference } from '@metamask/sdk-communication-layer';\nimport { MetaMaskInstaller } from '../../../Platform/MetaMaskInstaller';\nimport { PlatformManager } from '../../../Platform/PlatfformManager';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { Analytics } from '../../Analytics';\nimport { RemoteConnection } from '../../RemoteConnection';\nimport { connectWithExtensionProvider } from '../ProviderManager';\n\n/**\n * Initializes and sets up both the RemoteConnection and MetaMaskInstaller for the MetaMaskSDK instance.\n *\n * This function constructs a new RemoteConnection with various settings, such as communication layer preference,\n * analytics, and metadata based on the provided options within the MetaMaskSDK instance. It also sets up\n * MetaMaskInstaller which is responsible for handling MetaMask installations. The initialized RemoteConnection\n * and MetaMaskInstaller are stored back into the MetaMaskSDK instance for further use.\n *\n * @param instance The current instance of the MetaMaskSDK, which contains user-defined or default options.\n * @param metamaskBrowserExtension An optional parameter representing the MetaMask browser extension instance, if available.\n * @returns {Promise} A Promise that resolves when both the RemoteConnection and MetaMaskInstaller have been successfully set up.\n */\nexport async function setupRemoteConnectionAndInstaller(\n instance: MetaMaskSDK,\n metamaskBrowserExtension: any,\n) {\n const { options } = instance;\n\n const runtimeLogging = { ...options.logging };\n\n instance.remoteConnection = new RemoteConnection({\n preferDesktop: options.preferDesktop ?? false,\n communicationLayerPreference:\n options.communicationLayerPreference ??\n CommunicationLayerPreference.SOCKET,\n analytics: instance.analytics as Analytics,\n dappMetadata: options.dappMetadata,\n _source: options._source,\n enableAnalytics: options.enableAnalytics ?? true,\n timer: options.timer,\n sdk: instance,\n platformManager: instance.platformManager as PlatformManager,\n transports: options.transports,\n communicationServerUrl: options.communicationServerUrl,\n storage: options.storage ?? {\n enabled: true,\n },\n getMetaMaskInstaller: () => {\n // used to prevent circular dependencies\n if (!instance.installer) {\n throw new Error(`Invalid SDK status -- installer not initialized`);\n }\n return instance.installer;\n },\n logging: runtimeLogging,\n connectWithExtensionProvider:\n metamaskBrowserExtension === undefined\n ? undefined\n : () => connectWithExtensionProvider(instance),\n modals: {\n ...options.modals,\n onPendingModalDisconnect: instance.terminate.bind(instance),\n },\n });\n\n await instance.remoteConnection.initRemoteCommunication({\n sdkInstance: instance,\n });\n\n instance.installer = new MetaMaskInstaller({\n remote: instance.remoteConnection,\n preferDesktop: options.preferDesktop ?? false,\n platformManager: instance.platformManager as PlatformManager,\n debug: instance.debug,\n });\n}\n","import { TrackingEvents } from '@metamask/sdk-communication-layer';\nimport { STORAGE_PROVIDER_TYPE } from '../../../config';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { logger } from '../../../utils/logger';\nimport { connectWithExtensionProvider } from '../ProviderManager';\n\n/**\n * Handles automatic and extension-based connections for MetaMask SDK.\n *\n * This function decides between connecting using MetaMask extension or automatically\n * connecting based on the passed parameters and platform conditions. If 'preferExtension' is true,\n * it attempts to connect with the MetaMask extension and falls back to cleaning the preference\n * if the connection fails. If 'checkInstallationImmediately' is set in options, it attempts to auto-connect,\n * but only if the platform is a desktop web environment.\n *\n * @param instance The MetaMaskSDK instance to handle the connection for.\n * @param preferExtension A boolean flag indicating whether to prefer connecting via MetaMask extension.\n * @returns void\n */\nexport async function handleAutoAndExtensionConnections(\n instance: MetaMaskSDK,\n preferExtension: boolean,\n) {\n const { options } = instance;\n\n if (preferExtension) {\n logger(\n `[MetaMaskSDK: handleAutoAndExtensionConnections()] preferExtension is detected -- connect with it.`,\n );\n\n instance.analytics?.send({\n event: TrackingEvents.SDK_EXTENSION_UTILIZED,\n });\n\n connectWithExtensionProvider(instance).catch((_err) => {\n console.warn(`Can't connect with MetaMask extension...`, _err);\n // Clean preferences\n localStorage.removeItem(STORAGE_PROVIDER_TYPE);\n });\n } else if (options.checkInstallationImmediately) {\n if (instance.platformManager?.isDesktopWeb()) {\n logger(\n `[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately`,\n );\n\n // Don't block /await initialization on autoconnect\n instance.connect().catch((_err) => {\n // ignore error on autoconnect\n logger(\n `[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- error on autoconnect _err=${_err}`,\n );\n });\n } else {\n console.warn(\n `[handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- only for web desktop`,\n );\n }\n }\n\n instance._initialized = true;\n}\n","import { MetaMaskInpageProvider } from '@metamask/providers';\nimport {\n CommunicationLayerPreference,\n DappMetadata,\n StorageManagerProps,\n} from '@metamask/sdk-communication-layer';\nimport debug from 'debug';\n\nimport EventEmitter2 from 'eventemitter2';\nimport packageJson from '../package.json';\nimport { MetaMaskInstaller } from './Platform/MetaMaskInstaller';\nimport { PlatformManager } from './Platform/PlatfformManager';\nimport { DEFAULT_SDK_SOURCE } from './constants';\nimport { SDKProvider } from './provider/SDKProvider';\nimport { Analytics } from './services/Analytics';\nimport {\n connect,\n resume,\n terminate,\n} from './services/MetaMaskSDK/ConnectionManager';\nimport { connectAndSign } from './services/MetaMaskSDK/ConnectionManager/connectAndSign';\nimport { connectWith } from './services/MetaMaskSDK/ConnectionManager/connectWith';\nimport { initializeMetaMaskSDK } from './services/MetaMaskSDK/InitializerManager';\nimport { RPC_URLS_MAP } from './services/MetaMaskSDK/InitializerManager/setupReadOnlyRPCProviders';\nimport {\n RemoteConnection,\n RemoteConnectionProps,\n} from './services/RemoteConnection';\nimport {\n MetaMaskSDKEventPayload,\n MetaMaskSDKEventType,\n} from './types/MetaMaskSDKEvents';\nimport { SDKLoggingOptions } from './types/SDKLoggingOptions';\nimport { SDKUIOptions } from './types/SDKUIOptions';\nimport { logger } from './utils/logger';\n\nexport interface MetaMaskSDKOptions {\n /**\n * The Infura API key to use for RPC requests.\n */\n infuraAPIKey?: string;\n\n /**\n * A map of RPC URLs to use for read-only requests.\n */\n readonlyRPCMap?: RPC_URLS_MAP;\n\n /**\n * If true, the SDK will inject the provider into the global `window` object.\n */\n injectProvider?: boolean;\n\n /**\n * If true, the SDK will force inject the provider into the global `window` object.\n */\n forceInjectProvider?: boolean;\n\n /**\n * If true, the SDK will force delete the provider from the global `window` object.\n */\n forceDeleteProvider?: boolean;\n\n /**\n * If true, the SDK will check if MetaMask is installed on the user's browser and send a connection request. If not it will prompt the user to install it. If false, the SDK will wait for the connect method to be called to check if MetaMask is installed.\n */\n checkInstallationImmediately?: boolean;\n\n /**\n * If true, the SDK will check if MetaMask is installed on the user's browser before each RPC call. If not it will prompt the user to install it.\n */\n checkInstallationOnAllCalls?: boolean;\n\n /**\n * If true, the SDK will prefer the desktop version of MetaMask over the mobile version.\n */\n preferDesktop?: boolean;\n\n /**\n * If true, the SDK will not display any modals or QR code UI.\n */\n headless?: boolean;\n\n /**\n * A function that will be called to open a deeplink to the MetaMask Mobile app.\n */\n openDeeplink?: (arg: string) => void;\n\n /**\n * If true, the SDK will use deeplinks to connect with MetaMask Mobile. If false, the SDK will use universal links to connect with MetaMask Mobile.\n */\n useDeeplink?: boolean;\n\n /**\n * If true, the SDK will shim the window.web3 object with the provider returned by the SDK (useful for compatibility with older browser).\n */\n shouldShimWeb3?: boolean;\n\n /**\n * The preferred communication layer to use for the SDK.\n */\n communicationLayerPreference?: CommunicationLayerPreference;\n\n /**\n * An array of transport protocols to use for communication with the MetaMask wallet.\n */\n transports?: string[];\n\n /**\n * Metadata about the dapp using the SDK.\n */\n dappMetadata: DappMetadata;\n\n /**\n * A timer object to use for scheduling tasks.\n */\n timer?: any;\n\n /**\n * Send anonymous analytics to MetaMask to help us improve the SDK.\n */\n enableAnalytics?: boolean;\n\n /**\n * If MetaMask browser extension is detected, directly use it.\n */\n extensionOnly?: boolean;\n\n /**\n * @deprecated Use the 'display_uri' event on the provider instead.\n * Listen to this event to get the QR code URL and customize your UI.\n * Example:\n * sdk.getProvider().on('display_uri', (uri: string) => {\n * // Use the uri to display a QR code or customize your UI\n * });\n */\n ui?: SDKUIOptions;\n\n /**\n * @deprecated Use the 'display_uri' event on the provider instead.\n * Listen to this event to get the QR code URL and customize your UI.\n * Example:\n * sdk.getProvider().on('display_uri', (uri: string) => {\n * // Use the uri to display a QR code or customize your UI\n * });\n */\n modals?: RemoteConnectionProps['modals'];\n\n /**\n * The URL of the communication server to use for the SDK.\n */\n communicationServerUrl?: string;\n\n /**\n * Options for customizing the storage manager used by the SDK.\n */\n storage?: StorageManagerProps;\n\n /**\n * Options for customizing the logging behavior of the SDK.\n */\n logging?: SDKLoggingOptions;\n\n /**\n * A string to track external integrations (e.g. wagmi).\n */\n _source?: string;\n\n /*\n * Options for enabling i18n multi-language support on the SDK.\n */\n i18nOptions?: {\n debug?: boolean;\n enabled?: boolean;\n };\n}\n\nexport class MetaMaskSDK extends EventEmitter2 {\n public options: MetaMaskSDKOptions;\n\n public activeProvider?: SDKProvider;\n\n public sdkProvider?: SDKProvider;\n\n public remoteConnection?: RemoteConnection;\n\n public installer?: MetaMaskInstaller;\n\n public platformManager?: PlatformManager;\n\n public dappMetadata?: DappMetadata;\n\n public extensionActive = false;\n\n public extension: MetaMaskInpageProvider | undefined;\n\n public _initialized = false;\n\n public sdkInitPromise?: Promise | undefined = undefined;\n\n public debug = false;\n\n public analytics?: Analytics;\n\n private readonlyRPCCalls = false;\n\n public availableLanguages: string[] = ['en'];\n\n constructor(\n options: MetaMaskSDKOptions = {\n storage: {\n enabled: true,\n },\n injectProvider: true,\n forceInjectProvider: false,\n enableAnalytics: true,\n shouldShimWeb3: true,\n useDeeplink: true,\n extensionOnly: true,\n headless: false,\n dappMetadata: {\n name: '',\n url: '',\n iconUrl: '',\n },\n _source: DEFAULT_SDK_SOURCE,\n i18nOptions: {\n enabled: false,\n },\n },\n ) {\n super();\n debug.disable(); // initially disabled\n\n const developerMode = options.logging?.developerMode === true;\n const debugEnabled = options.logging?.sdk || developerMode;\n\n if (debugEnabled) {\n debug.enable('MM_SDK');\n }\n logger(`[MetaMaskSDK: constructor()]: begin.`);\n this.setMaxListeners(50);\n\n if (!options.dappMetadata?.url) {\n // Automatically set dappMetadata on web env.\n if (typeof window !== 'undefined' && typeof document !== 'undefined') {\n options.dappMetadata = {\n ...options.dappMetadata,\n url: `${window.location.protocol}//${window.location.host}`,\n };\n } else {\n throw new Error(`You must provide dAppMetadata url`);\n }\n }\n\n this.options = options;\n if (!this.options._source) {\n options._source = DEFAULT_SDK_SOURCE;\n }\n\n // Automatically initialize the SDK to keep the same behavior as before\n this.init()\n .then(() => {\n logger(`[MetaMaskSDK: constructor()]: initialized successfully.`);\n if (typeof window !== 'undefined') {\n window.mmsdk = this;\n }\n })\n .catch((err) => {\n console.error(\n `[MetaMaskSDK: constructor()] error during initialization`,\n err,\n );\n });\n }\n\n /**\n * You can subscribe to the 'initialized' event to know when the SDK is ready or call connect() to start the connection process.\n * @returns {Promise} - A promise that resolves when the SDK is initialized.\n */\n public async init() {\n return initializeMetaMaskSDK(this);\n }\n\n /**\n * Check if the active connection is done via the MetaMask browser extension/\n * @returns {boolean} - True if the MetaMask browser extension is the active provider, false otherwise.\n */\n isExtensionActive() {\n return this.extensionActive;\n }\n\n /**\n * Check if the MetaMask extension is potentially available in the current browser environment.\n * This method is not the preferred way to detect MetaMask. Use EIP-6963 instead,\n * as many extensions can fake the isMetaMask property. EIP-6963 provides more accurate provider detection.\n * @returns {boolean} - True if MetaMask is potentially available, false otherwise.\n */\n checkExtensionAvailability(): boolean {\n if (typeof window === 'undefined') {\n return false;\n }\n return Boolean(window.ethereum?.isMetaMask);\n }\n\n /**\n * Connect to MetaMask.\n * @returns {Promise} - A promise that resolves to an array of account addresses.\n */\n async connect(): Promise {\n return connect(this);\n }\n\n // WARNING: This method only works for MetaMask Mobile v7.10+. It will throw an error otherwise.\n // msg can be a simple string or ABNF RFC 5234 compliant string.\n async connectAndSign({ msg }: { msg: string }) {\n return connectAndSign({ instance: this, msg });\n }\n\n async connectWith(rpc: { method: string; params: any[] }) {\n return connectWith({ instance: this, rpc });\n }\n\n resume() {\n return resume(this);\n }\n\n /**\n * DEPRECATED: use terminate() instead.\n */\n disconnect() {\n console.warn(`MetaMaskSDK.disconnect() is deprecated, use terminate()`);\n return this.terminate();\n }\n\n isAuthorized() {\n this.remoteConnection?.isAuthorized();\n }\n\n terminate() {\n return terminate(this);\n }\n\n isInitialized() {\n return this._initialized;\n }\n\n setReadOnlyRPCCalls(allowed: boolean) {\n this.readonlyRPCCalls = allowed;\n }\n\n hasReadOnlyRPCCalls() {\n return this.readonlyRPCCalls;\n }\n\n // Return the active ethereum provider object\n getProvider(): SDKProvider | undefined {\n if (!this.activeProvider) {\n console.warn(`MetaMaskSDK: No active provider found`);\n return undefined;\n }\n\n return this.activeProvider;\n }\n\n getMobileProvider(): SDKProvider {\n if (!this.sdkProvider) {\n throw new Error(`SDK state invalid -- undefined mobile provider`);\n }\n\n return this.sdkProvider;\n }\n\n /**\n * @deprecated use 'display_uri' event on from sdk instance instead.\n * @returns {string} - The QRCode Link.\n */\n getUniversalLink() {\n const universalLink = this.remoteConnection?.getUniversalLink();\n\n if (!universalLink) {\n throw new Error(\n 'No Universal Link available, please call eth_requestAccounts first.',\n );\n }\n\n return universalLink;\n }\n\n getChannelId() {\n return this.remoteConnection?.getChannelConfig()?.channelId;\n }\n\n getRPCHistory() {\n return this.remoteConnection?.getConnector()?.getRPCMethodTracker();\n }\n\n getVersion() {\n return packageJson.version;\n }\n\n getWalletStatus() {\n return this.remoteConnection?.getConnector()?.getConnectionStatus();\n }\n\n // TODO: remove once reaching sdk 1.0\n // Not exposed. Should only be used during dev.\n _getChannelConfig() {\n return this.remoteConnection?.getChannelConfig();\n }\n\n _ping() {\n this.remoteConnection?.getConnector()?.ping();\n }\n\n _keyCheck() {\n this.remoteConnection?.getConnector()?.keyCheck();\n }\n\n _getServiceStatus() {\n return this.remoteConnection?.getConnector()?.getServiceStatus();\n }\n\n _getRemoteConnection() {\n return this.remoteConnection;\n }\n\n _getDappMetadata(): DappMetadata | undefined {\n return this.dappMetadata;\n }\n\n _getKeyInfo() {\n return this.remoteConnection?.getKeyInfo();\n }\n\n _resetKeys() {\n this.remoteConnection?.getConnector()?.resetKeys();\n }\n\n _getConnection() {\n return this.remoteConnection;\n }\n\n public emit(\n event: K,\n payload: MetaMaskSDKEventPayload,\n ): boolean {\n return super.emit(event, payload);\n }\n\n public on(\n event: K,\n listener: (payload: MetaMaskSDKEventPayload) => void,\n ): this {\n return super.on(event, listener) as this;\n }\n}\n","import { logger } from '../../../utils/logger';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { performSDKInitialization } from './performSDKInitialization';\n\n/**\n * Initializes the MetaMask SDK instance.\n *\n * This function checks if the SDK instance is already initialized or in the process of initializing.\n * If not, it calls 'performSDKInitialization' to complete the initialization. The initialization promise\n * is stored in 'instance.sdkInitPromise' to prevent multiple simultaneous initializations.\n *\n * @param instance The MetaMaskSDK instance to be initialized.\n * @returns A Promise that resolves when the SDK has been successfully initialized.\n * @throws Error if the initialization process encounters an error.\n */\nexport async function initializeMetaMaskSDK(instance: MetaMaskSDK) {\n if (typeof window !== 'undefined' && window.mmsdk?.isInitialized()) {\n logger(`[MetaMaskSDK: initializeMetaMaskSDK()] already initialized`);\n\n return Promise.resolve(window.mmsdk);\n }\n\n if (instance._initialized) {\n logger(`[MetaMaskSDK: initializeMetaMaskSDK()] already initialized`);\n\n return instance.sdkInitPromise;\n } else if (instance.sdkInitPromise) {\n logger(`[MetaMaskSDK: initializeMetaMaskSDK()] already initializing`);\n\n return instance.sdkInitPromise;\n }\n\n // Prevent multiple instances of the SDK to be initialized at the same time\n try {\n instance.sdkInitPromise = performSDKInitialization(instance);\n await instance.sdkInitPromise;\n } catch (err) {\n console.error(err);\n throw err;\n }\n\n return instance.sdkInitPromise;\n}\n","import { logger } from '../../../utils/logger';\nimport { MetaMaskSDK } from '../../../sdk';\nimport { RPC_METHODS } from '../../../config';\n\n/**\n * Asynchronously connects to MetaMask and requests account access.\n *\n * This function first checks whether the MetaMaskSDK instance is initialized.\n * If not, it initializes the instance. It then makes a request to access accounts\n * using the active provider. Throws an error if the provider is undefined.\n *\n * @param instance The MetaMaskSDK instance to connect to.\n * @returns Promise resolving to the result of the 'eth_requestAccounts' request.\n * @throws Error if the activeProvider is undefined.\n */\nexport async function connect(instance: MetaMaskSDK): Promise {\n if (!instance._initialized) {\n logger(`[MetaMaskSDK: connect()] provider not ready -- wait for init()`);\n\n await instance.init();\n }\n\n logger(\n `[MetaMaskSDK: connect()] isExtensionActive=${instance.isExtensionActive()} activeProvider`,\n instance.activeProvider,\n );\n\n if (!instance.activeProvider) {\n throw new Error(`SDK state invalid -- undefined provider`);\n }\n\n const selectedAddress = instance.activeProvider.getSelectedAddress();\n if (selectedAddress) {\n return [selectedAddress];\n }\n\n // TODO: enable once MetaMask Mobile v7.21 is out in store.\n // It would still work on older wallet but the connection modal may be trigger twice.\n // return instance.activeProvider.request({\n // method: RPC_METHODS.WALLET_REQUESTPERMISSIONS,\n // params: [\n // {\n // eth_accounts: {},\n // },\n // ],\n // });\n return instance.activeProvider.request({\n method: RPC_METHODS.ETH_REQUESTACCOUNTS,\n params: [],\n }) as Promise;\n}\n","import { logger } from '../../../utils/logger';\nimport { RPC_METHODS } from '../../../config';\nimport { MetaMaskSDK } from '../../../sdk';\n\nexport async function connectWith({\n instance,\n rpc,\n}: {\n instance: MetaMaskSDK;\n rpc: { method: string; params: any[] };\n}) {\n if (!instance._initialized) {\n logger(\n `[MetaMaskSDK: connectWith()] provider not ready -- wait for init()`,\n );\n\n await instance.init();\n }\n\n logger(`[MetaMaskSDK: connectWith()] method: ${rpc.method} rpc=${rpc}`);\n\n if (!instance.activeProvider) {\n throw new Error(`SDK state invalid -- undefined provider`);\n }\n\n return instance.activeProvider.request({\n method: RPC_METHODS.METAMASK_CONNECTWITH,\n params: [rpc],\n });\n}\n","import { logger } from '../../../utils/logger';\nimport { MetaMaskSDK } from '../../../sdk';\n\n/**\n * Resumes the MetaMaskSDK's remote connection if it is not already ready.\n *\n * This function checks if the remote connection's connector is ready to transmit data. If not,\n * it initiates the connection. This is useful in scenarios where the SDK might have gone to a\n * 'sleep' state and needs to be 'awakened' to re-establish the connection.\n *\n * @param instance The current instance of the MetaMaskSDK, which contains user-defined or default options.\n * @returns {Promise} A Promise that resolves when the connection has been started or is already ready.\n */\nexport async function resume(instance: MetaMaskSDK) {\n if (!instance.remoteConnection?.getConnector()?.isReady()) {\n logger(\n `[MetaMaskSDK: resume()] channel is not ready -- starting connection`,\n );\n\n instance.remoteConnection?.startConnection();\n return;\n }\n\n logger(`[MetaMaskSDK: resume()] channel is ready`);\n}\n","const NAMESPACE = 'sdk-install-modal-web';\nconst BUILD = /* sdk-install-modal-web */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: false, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: true, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: true, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: false, hostListenerTarget: false, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: \"hydrated\", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: false, lifecycleDOMEvents: false, member: true, method: false, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: false, propString: true, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: false, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: false, vdomListener: true, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };\n\n/*\n Stencil Client Platform v4.22.2 | MIT Licensed | https://stenciljs.com\n */\nvar __defProp = Object.defineProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar hostRefs = /* @__PURE__ */ new WeakMap();\nvar getHostRef = (ref) => hostRefs.get(ref);\nvar registerInstance = (lazyInstance, hostRef) => hostRefs.set(hostRef.$lazyInstance$ = lazyInstance, hostRef);\nvar registerHost = (hostElement, cmpMeta) => {\n const hostRef = {\n $flags$: 0,\n $hostElement$: hostElement,\n $cmpMeta$: cmpMeta,\n $instanceValues$: /* @__PURE__ */ new Map()\n };\n {\n hostRef.$onReadyPromise$ = new Promise((r) => hostRef.$onReadyResolve$ = r);\n hostElement[\"s-p\"] = [];\n hostElement[\"s-rc\"] = [];\n }\n return hostRefs.set(hostElement, hostRef);\n};\nvar isMemberInElement = (elm, memberName) => memberName in elm;\nvar consoleError = (e, el) => (0, console.error)(e, el);\n\n// src/client/client-load-module.ts\nvar cmpModules = /* @__PURE__ */ new Map();\nvar loadModule = (cmpMeta, hostRef, hmrVersionId) => {\n const exportName = cmpMeta.$tagName$.replace(/-/g, \"_\");\n const bundleId = cmpMeta.$lazyBundleId$;\n if (!bundleId) {\n return void 0;\n }\n const module = cmpModules.get(bundleId) ;\n if (module) {\n return module[exportName];\n }\n \n if (!hmrVersionId || !BUILD.hotModuleReplacement) {\n const processMod = importedModule => {\n cmpModules.set(bundleId, importedModule);\n return importedModule[exportName];\n }\n switch(bundleId) {\n \n case 'mm-install-modal':\n return import(\n /* webpackMode: \"lazy\" */\n './mm-install-modal.entry.js').then(processMod, consoleError);\n case 'mm-pending-modal':\n return import(\n /* webpackMode: \"lazy\" */\n './mm-pending-modal.entry.js').then(processMod, consoleError);\n case 'mm-select-modal':\n return import(\n /* webpackMode: \"lazy\" */\n './mm-select-modal.entry.js').then(processMod, consoleError);\n }\n }\n return import(\n /* @vite-ignore */\n /* webpackInclude: /\\.entry\\.js$/ */\n /* webpackExclude: /\\.system\\.entry\\.js$/ */\n /* webpackMode: \"lazy\" */\n `./${bundleId}.entry.js${\"\"}`\n ).then((importedModule) => {\n {\n cmpModules.set(bundleId, importedModule);\n }\n return importedModule[exportName];\n }, consoleError);\n};\n\n// src/client/client-style.ts\nvar styles = /* @__PURE__ */ new Map();\nvar HYDRATED_CSS = \"{visibility:hidden}.hydrated{visibility:inherit}\";\nvar SLOT_FB_CSS = \"slot-fb{display:contents}slot-fb[hidden]{display:none}\";\nvar win = typeof window !== \"undefined\" ? window : {};\nvar doc = win.document || { head: {} };\nvar plt = {\n $flags$: 0,\n $resourcesUrl$: \"\",\n jmp: (h2) => h2(),\n raf: (h2) => requestAnimationFrame(h2),\n ael: (el, eventName, listener, opts) => el.addEventListener(eventName, listener, opts),\n rel: (el, eventName, listener, opts) => el.removeEventListener(eventName, listener, opts),\n ce: (eventName, opts) => new CustomEvent(eventName, opts)\n};\nvar promiseResolve = (v) => Promise.resolve(v);\nvar supportsConstructableStylesheets = /* @__PURE__ */ (() => {\n try {\n new CSSStyleSheet();\n return typeof new CSSStyleSheet().replaceSync === \"function\";\n } catch (e) {\n }\n return false;\n})() ;\nvar queuePending = false;\nvar queueDomReads = [];\nvar queueDomWrites = [];\nvar queueTask = (queue, write) => (cb) => {\n queue.push(cb);\n if (!queuePending) {\n queuePending = true;\n if (write && plt.$flags$ & 4 /* queueSync */) {\n nextTick(flush);\n } else {\n plt.raf(flush);\n }\n }\n};\nvar consume = (queue) => {\n for (let i2 = 0; i2 < queue.length; i2++) {\n try {\n queue[i2](performance.now());\n } catch (e) {\n consoleError(e);\n }\n }\n queue.length = 0;\n};\nvar flush = () => {\n consume(queueDomReads);\n {\n consume(queueDomWrites);\n if (queuePending = queueDomReads.length > 0) {\n plt.raf(flush);\n }\n }\n};\nvar nextTick = (cb) => promiseResolve().then(cb);\nvar writeTask = /* @__PURE__ */ queueTask(queueDomWrites, true);\n\n// src/utils/constants.ts\nvar EMPTY_OBJ = {};\nvar SVG_NS = \"http://www.w3.org/2000/svg\";\nvar HTML_NS = \"http://www.w3.org/1999/xhtml\";\n\n// src/utils/helpers.ts\nvar isDef = (v) => v != null;\nvar isComplexType = (o) => {\n o = typeof o;\n return o === \"object\" || o === \"function\";\n};\n\n// src/utils/query-nonce-meta-tag-content.ts\nfunction queryNonceMetaTagContent(doc2) {\n var _a, _b, _c;\n return (_c = (_b = (_a = doc2.head) == null ? void 0 : _a.querySelector('meta[name=\"csp-nonce\"]')) == null ? void 0 : _b.getAttribute(\"content\")) != null ? _c : void 0;\n}\n\n// src/utils/result.ts\nvar result_exports = {};\n__export(result_exports, {\n err: () => err,\n map: () => map,\n ok: () => ok,\n unwrap: () => unwrap,\n unwrapErr: () => unwrapErr\n});\nvar ok = (value) => ({\n isOk: true,\n isErr: false,\n value\n});\nvar err = (value) => ({\n isOk: false,\n isErr: true,\n value\n});\nfunction map(result, fn) {\n if (result.isOk) {\n const val = fn(result.value);\n if (val instanceof Promise) {\n return val.then((newVal) => ok(newVal));\n } else {\n return ok(val);\n }\n }\n if (result.isErr) {\n const value = result.value;\n return err(value);\n }\n throw \"should never get here\";\n}\nvar unwrap = (result) => {\n if (result.isOk) {\n return result.value;\n } else {\n throw result.value;\n }\n};\nvar unwrapErr = (result) => {\n if (result.isErr) {\n return result.value;\n } else {\n throw result.value;\n }\n};\nvar createTime = (fnName, tagName = \"\") => {\n {\n return () => {\n return;\n };\n }\n};\nvar uniqueTime = (key, measureText) => {\n {\n return () => {\n return;\n };\n }\n};\nvar h = (nodeName, vnodeData, ...children) => {\n let child = null;\n let simple = false;\n let lastSimple = false;\n const vNodeChildren = [];\n const walk = (c) => {\n for (let i2 = 0; i2 < c.length; i2++) {\n child = c[i2];\n if (Array.isArray(child)) {\n walk(child);\n } else if (child != null && typeof child !== \"boolean\") {\n if (simple = typeof nodeName !== \"function\" && !isComplexType(child)) {\n child = String(child);\n }\n if (simple && lastSimple) {\n vNodeChildren[vNodeChildren.length - 1].$text$ += child;\n } else {\n vNodeChildren.push(simple ? newVNode(null, child) : child);\n }\n lastSimple = simple;\n }\n }\n };\n walk(children);\n if (vnodeData) {\n {\n const classData = vnodeData.className || vnodeData.class;\n if (classData) {\n vnodeData.class = typeof classData !== \"object\" ? classData : Object.keys(classData).filter((k) => classData[k]).join(\" \");\n }\n }\n }\n if (typeof nodeName === \"function\") {\n return nodeName(\n vnodeData === null ? {} : vnodeData,\n vNodeChildren,\n vdomFnUtils\n );\n }\n const vnode = newVNode(nodeName, null);\n vnode.$attrs$ = vnodeData;\n if (vNodeChildren.length > 0) {\n vnode.$children$ = vNodeChildren;\n }\n return vnode;\n};\nvar newVNode = (tag, text) => {\n const vnode = {\n $flags$: 0,\n $tag$: tag,\n $text$: text,\n $elm$: null,\n $children$: null\n };\n {\n vnode.$attrs$ = null;\n }\n return vnode;\n};\nvar Host = {};\nvar isHost = (node) => node && node.$tag$ === Host;\nvar vdomFnUtils = {\n forEach: (children, cb) => children.map(convertToPublic).forEach(cb),\n map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate)\n};\nvar convertToPublic = (node) => ({\n vattrs: node.$attrs$,\n vchildren: node.$children$,\n vkey: node.$key$,\n vname: node.$name$,\n vtag: node.$tag$,\n vtext: node.$text$\n});\nvar convertToPrivate = (node) => {\n if (typeof node.vtag === \"function\") {\n const vnodeData = { ...node.vattrs };\n if (node.vkey) {\n vnodeData.key = node.vkey;\n }\n if (node.vname) {\n vnodeData.name = node.vname;\n }\n return h(node.vtag, vnodeData, ...node.vchildren || []);\n }\n const vnode = newVNode(node.vtag, node.vtext);\n vnode.$attrs$ = node.vattrs;\n vnode.$children$ = node.vchildren;\n vnode.$key$ = node.vkey;\n vnode.$name$ = node.vname;\n return vnode;\n};\nvar parsePropertyValue = (propValue, propType) => {\n if (propValue != null && !isComplexType(propValue)) {\n if (propType & 4 /* Boolean */) {\n return propValue === \"false\" ? false : propValue === \"\" || !!propValue;\n }\n if (propType & 1 /* String */) {\n return String(propValue);\n }\n return propValue;\n }\n return propValue;\n};\nvar getElement = (ref) => getHostRef(ref).$hostElement$ ;\n\n// src/runtime/event-emitter.ts\nvar createEvent = (ref, name, flags) => {\n const elm = getElement(ref);\n return {\n emit: (detail) => {\n return emitEvent(elm, name, {\n bubbles: !!(flags & 4 /* Bubbles */),\n composed: !!(flags & 2 /* Composed */),\n cancelable: !!(flags & 1 /* Cancellable */),\n detail\n });\n }\n };\n};\nvar emitEvent = (elm, name, opts) => {\n const ev = plt.ce(name, opts);\n elm.dispatchEvent(ev);\n return ev;\n};\nvar rootAppliedStyles = /* @__PURE__ */ new WeakMap();\nvar registerStyle = (scopeId2, cssText, allowCS) => {\n let style = styles.get(scopeId2);\n if (supportsConstructableStylesheets && allowCS) {\n style = style || new CSSStyleSheet();\n if (typeof style === \"string\") {\n style = cssText;\n } else {\n style.replaceSync(cssText);\n }\n } else {\n style = cssText;\n }\n styles.set(scopeId2, style);\n};\nvar addStyle = (styleContainerNode, cmpMeta, mode) => {\n var _a;\n const scopeId2 = getScopeId(cmpMeta);\n const style = styles.get(scopeId2);\n styleContainerNode = styleContainerNode.nodeType === 11 /* DocumentFragment */ ? styleContainerNode : doc;\n if (style) {\n if (typeof style === \"string\") {\n styleContainerNode = styleContainerNode.head || styleContainerNode;\n let appliedStyles = rootAppliedStyles.get(styleContainerNode);\n let styleElm;\n if (!appliedStyles) {\n rootAppliedStyles.set(styleContainerNode, appliedStyles = /* @__PURE__ */ new Set());\n }\n if (!appliedStyles.has(scopeId2)) {\n {\n styleElm = doc.createElement(\"style\");\n styleElm.innerHTML = style;\n const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);\n if (nonce != null) {\n styleElm.setAttribute(\"nonce\", nonce);\n }\n if (!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */)) {\n if (styleContainerNode.nodeName === \"HEAD\") {\n const preconnectLinks = styleContainerNode.querySelectorAll(\"link[rel=preconnect]\");\n const referenceNode2 = preconnectLinks.length > 0 ? preconnectLinks[preconnectLinks.length - 1].nextSibling : styleContainerNode.querySelector(\"style\");\n styleContainerNode.insertBefore(styleElm, referenceNode2);\n } else if (\"host\" in styleContainerNode) {\n if (supportsConstructableStylesheets) {\n const stylesheet = new CSSStyleSheet();\n stylesheet.replaceSync(style);\n styleContainerNode.adoptedStyleSheets = [stylesheet, ...styleContainerNode.adoptedStyleSheets];\n } else {\n const existingStyleContainer = styleContainerNode.querySelector(\"style\");\n if (existingStyleContainer) {\n existingStyleContainer.innerHTML = style + existingStyleContainer.innerHTML;\n } else {\n styleContainerNode.prepend(styleElm);\n }\n }\n } else {\n styleContainerNode.append(styleElm);\n }\n }\n if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */ && styleContainerNode.nodeName !== \"HEAD\") {\n styleContainerNode.insertBefore(styleElm, null);\n }\n }\n if (cmpMeta.$flags$ & 4 /* hasSlotRelocation */) {\n styleElm.innerHTML += SLOT_FB_CSS;\n }\n if (appliedStyles) {\n appliedStyles.add(scopeId2);\n }\n }\n } else if (!styleContainerNode.adoptedStyleSheets.includes(style)) {\n styleContainerNode.adoptedStyleSheets = [...styleContainerNode.adoptedStyleSheets, style];\n }\n }\n return scopeId2;\n};\nvar attachStyles = (hostRef) => {\n const cmpMeta = hostRef.$cmpMeta$;\n const elm = hostRef.$hostElement$;\n const flags = cmpMeta.$flags$;\n const endAttachStyles = createTime(\"attachStyles\", cmpMeta.$tagName$);\n const scopeId2 = addStyle(\n elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(),\n cmpMeta);\n if (flags & 10 /* needsScopedEncapsulation */ && flags & 2 /* scopedCssEncapsulation */) {\n elm[\"s-sc\"] = scopeId2;\n elm.classList.add(scopeId2 + \"-h\");\n }\n endAttachStyles();\n};\nvar getScopeId = (cmp, mode) => \"sc-\" + (cmp.$tagName$);\nvar setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags) => {\n if (oldValue !== newValue) {\n let isProp = isMemberInElement(elm, memberName);\n let ln = memberName.toLowerCase();\n if (memberName === \"class\") {\n const classList = elm.classList;\n const oldClasses = parseClassList(oldValue);\n const newClasses = parseClassList(newValue);\n classList.remove(...oldClasses.filter((c) => c && !newClasses.includes(c)));\n classList.add(...newClasses.filter((c) => c && !oldClasses.includes(c)));\n } else if (memberName === \"style\") {\n {\n for (const prop in oldValue) {\n if (!newValue || newValue[prop] == null) {\n if (prop.includes(\"-\")) {\n elm.style.removeProperty(prop);\n } else {\n elm.style[prop] = \"\";\n }\n }\n }\n }\n for (const prop in newValue) {\n if (!oldValue || newValue[prop] !== oldValue[prop]) {\n if (prop.includes(\"-\")) {\n elm.style.setProperty(prop, newValue[prop]);\n } else {\n elm.style[prop] = newValue[prop];\n }\n }\n }\n } else if ((!isProp ) && memberName[0] === \"o\" && memberName[1] === \"n\") {\n if (memberName[2] === \"-\") {\n memberName = memberName.slice(3);\n } else if (isMemberInElement(win, ln)) {\n memberName = ln.slice(2);\n } else {\n memberName = ln[2] + memberName.slice(3);\n }\n if (oldValue || newValue) {\n const capture = memberName.endsWith(CAPTURE_EVENT_SUFFIX);\n memberName = memberName.replace(CAPTURE_EVENT_REGEX, \"\");\n if (oldValue) {\n plt.rel(elm, memberName, oldValue, capture);\n }\n if (newValue) {\n plt.ael(elm, memberName, newValue, capture);\n }\n }\n } else {\n const isComplex = isComplexType(newValue);\n if ((isProp || isComplex && newValue !== null) && !isSvg) {\n try {\n if (!elm.tagName.includes(\"-\")) {\n const n = newValue == null ? \"\" : newValue;\n if (memberName === \"list\") {\n isProp = false;\n } else if (oldValue == null || elm[memberName] != n) {\n if (typeof elm.__lookupSetter__(memberName) === \"function\") {\n elm[memberName] = n;\n } else {\n elm.setAttribute(memberName, n);\n }\n }\n } else {\n elm[memberName] = newValue;\n }\n } catch (e) {\n }\n }\n if (newValue == null || newValue === false) {\n if (newValue !== false || elm.getAttribute(memberName) === \"\") {\n {\n elm.removeAttribute(memberName);\n }\n }\n } else if ((!isProp || flags & 4 /* isHost */ || isSvg) && !isComplex) {\n newValue = newValue === true ? \"\" : newValue;\n {\n elm.setAttribute(memberName, newValue);\n }\n }\n }\n }\n};\nvar parseClassListRegex = /\\s/;\nvar parseClassList = (value) => !value ? [] : value.split(parseClassListRegex);\nvar CAPTURE_EVENT_SUFFIX = \"Capture\";\nvar CAPTURE_EVENT_REGEX = new RegExp(CAPTURE_EVENT_SUFFIX + \"$\");\n\n// src/runtime/vdom/update-element.ts\nvar updateElement = (oldVnode, newVnode, isSvgMode2) => {\n const elm = newVnode.$elm$.nodeType === 11 /* DocumentFragment */ && newVnode.$elm$.host ? newVnode.$elm$.host : newVnode.$elm$;\n const oldVnodeAttrs = oldVnode && oldVnode.$attrs$ || EMPTY_OBJ;\n const newVnodeAttrs = newVnode.$attrs$ || EMPTY_OBJ;\n {\n for (const memberName of sortedAttrNames(Object.keys(oldVnodeAttrs))) {\n if (!(memberName in newVnodeAttrs)) {\n setAccessor(elm, memberName, oldVnodeAttrs[memberName], void 0, isSvgMode2, newVnode.$flags$);\n }\n }\n }\n for (const memberName of sortedAttrNames(Object.keys(newVnodeAttrs))) {\n setAccessor(elm, memberName, oldVnodeAttrs[memberName], newVnodeAttrs[memberName], isSvgMode2, newVnode.$flags$);\n }\n};\nfunction sortedAttrNames(attrNames) {\n return attrNames.includes(\"ref\") ? (\n // we need to sort these to ensure that `'ref'` is the last attr\n [...attrNames.filter((attr) => attr !== \"ref\"), \"ref\"]\n ) : (\n // no need to sort, return the original array\n attrNames\n );\n}\n\n// src/runtime/vdom/vdom-render.ts\nvar scopeId;\nvar hostTagName;\nvar useNativeShadowDom = false;\nvar isSvgMode = false;\nvar createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {\n const newVNode2 = newParentVNode.$children$[childIndex];\n let i2 = 0;\n let elm;\n let childNode;\n if (newVNode2.$text$ !== null) {\n elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);\n } else {\n if (!isSvgMode) {\n isSvgMode = newVNode2.$tag$ === \"svg\";\n }\n elm = newVNode2.$elm$ = doc.createElementNS(\n isSvgMode ? SVG_NS : HTML_NS,\n !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? \"slot-fb\" : newVNode2.$tag$\n ) ;\n if (isSvgMode && newVNode2.$tag$ === \"foreignObject\") {\n isSvgMode = false;\n }\n {\n updateElement(null, newVNode2, isSvgMode);\n }\n const rootNode = elm.getRootNode();\n const isElementWithinShadowRoot = !rootNode.querySelector(\"body\");\n if (!isElementWithinShadowRoot && BUILD.scoped && isDef(scopeId) && elm[\"s-si\"] !== scopeId) {\n elm.classList.add(elm[\"s-si\"] = scopeId);\n }\n if (newVNode2.$children$) {\n for (i2 = 0; i2 < newVNode2.$children$.length; ++i2) {\n childNode = createElm(oldParentVNode, newVNode2, i2);\n if (childNode) {\n elm.appendChild(childNode);\n }\n }\n }\n {\n if (newVNode2.$tag$ === \"svg\") {\n isSvgMode = false;\n } else if (elm.tagName === \"foreignObject\") {\n isSvgMode = true;\n }\n }\n }\n elm[\"s-hn\"] = hostTagName;\n return elm;\n};\nvar addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {\n let containerElm = parentElm;\n let childNode;\n if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {\n containerElm = containerElm.shadowRoot;\n }\n for (; startIdx <= endIdx; ++startIdx) {\n if (vnodes[startIdx]) {\n childNode = createElm(null, parentVNode, startIdx);\n if (childNode) {\n vnodes[startIdx].$elm$ = childNode;\n insertBefore(containerElm, childNode, before);\n }\n }\n }\n};\nvar removeVnodes = (vnodes, startIdx, endIdx) => {\n for (let index = startIdx; index <= endIdx; ++index) {\n const vnode = vnodes[index];\n if (vnode) {\n const elm = vnode.$elm$;\n if (elm) {\n elm.remove();\n }\n }\n }\n};\nvar updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = false) => {\n let oldStartIdx = 0;\n let newStartIdx = 0;\n let oldEndIdx = oldCh.length - 1;\n let oldStartVnode = oldCh[0];\n let oldEndVnode = oldCh[oldEndIdx];\n let newEndIdx = newCh.length - 1;\n let newStartVnode = newCh[0];\n let newEndVnode = newCh[newEndIdx];\n let node;\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (oldStartVnode == null) {\n oldStartVnode = oldCh[++oldStartIdx];\n } else if (oldEndVnode == null) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (newStartVnode == null) {\n newStartVnode = newCh[++newStartIdx];\n } else if (newEndVnode == null) {\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldStartVnode, newStartVnode, isInitialRender)) {\n patch(oldStartVnode, newStartVnode, isInitialRender);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (isSameVnode(oldEndVnode, newEndVnode, isInitialRender)) {\n patch(oldEndVnode, newEndVnode, isInitialRender);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {\n patch(oldStartVnode, newEndVnode, isInitialRender);\n insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {\n patch(oldEndVnode, newStartVnode, isInitialRender);\n insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n {\n node = createElm(oldCh && oldCh[newStartIdx], newVNode2, newStartIdx);\n newStartVnode = newCh[++newStartIdx];\n }\n if (node) {\n {\n insertBefore(oldStartVnode.$elm$.parentNode, node, oldStartVnode.$elm$);\n }\n }\n }\n }\n if (oldStartIdx > oldEndIdx) {\n addVnodes(\n parentElm,\n newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].$elm$,\n newVNode2,\n newCh,\n newStartIdx,\n newEndIdx\n );\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n};\nvar isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {\n if (leftVNode.$tag$ === rightVNode.$tag$) {\n return true;\n }\n return false;\n};\nvar patch = (oldVNode, newVNode2, isInitialRender = false) => {\n const elm = newVNode2.$elm$ = oldVNode.$elm$;\n const oldChildren = oldVNode.$children$;\n const newChildren = newVNode2.$children$;\n const tag = newVNode2.$tag$;\n const text = newVNode2.$text$;\n if (text === null) {\n {\n isSvgMode = tag === \"svg\" ? true : tag === \"foreignObject\" ? false : isSvgMode;\n }\n {\n {\n updateElement(oldVNode, newVNode2, isSvgMode);\n }\n }\n if (oldChildren !== null && newChildren !== null) {\n updateChildren(elm, oldChildren, newVNode2, newChildren, isInitialRender);\n } else if (newChildren !== null) {\n if (oldVNode.$text$ !== null) {\n elm.textContent = \"\";\n }\n addVnodes(elm, null, newVNode2, newChildren, 0, newChildren.length - 1);\n } else if (\n // don't do this on initial render as it can cause non-hydrated content to be removed\n !isInitialRender && BUILD.updatable && oldChildren !== null\n ) {\n removeVnodes(oldChildren, 0, oldChildren.length - 1);\n }\n if (isSvgMode && tag === \"svg\") {\n isSvgMode = false;\n }\n } else if (oldVNode.$text$ !== text) {\n elm.data = text;\n }\n};\nvar insertBefore = (parent, newNode, reference) => {\n const inserted = parent == null ? void 0 : parent.insertBefore(newNode, reference);\n return inserted;\n};\nvar renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {\n const hostElm = hostRef.$hostElement$;\n const cmpMeta = hostRef.$cmpMeta$;\n const oldVNode = hostRef.$vnode$ || newVNode(null, null);\n const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);\n hostTagName = hostElm.tagName;\n if (isInitialLoad && rootVnode.$attrs$) {\n for (const key of Object.keys(rootVnode.$attrs$)) {\n if (hostElm.hasAttribute(key) && ![\"key\", \"ref\", \"style\", \"class\"].includes(key)) {\n rootVnode.$attrs$[key] = hostElm[key];\n }\n }\n }\n rootVnode.$tag$ = null;\n rootVnode.$flags$ |= 4 /* isHost */;\n hostRef.$vnode$ = rootVnode;\n rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;\n {\n scopeId = hostElm[\"s-sc\"];\n }\n useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;\n patch(oldVNode, rootVnode, isInitialLoad);\n};\n\n// src/runtime/update-component.ts\nvar attachToAncestor = (hostRef, ancestorComponent) => {\n if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent[\"s-p\"]) {\n ancestorComponent[\"s-p\"].push(new Promise((r) => hostRef.$onRenderResolve$ = r));\n }\n};\nvar scheduleUpdate = (hostRef, isInitialLoad) => {\n {\n hostRef.$flags$ |= 16 /* isQueuedForUpdate */;\n }\n if (hostRef.$flags$ & 4 /* isWaitingForChildren */) {\n hostRef.$flags$ |= 512 /* needsRerender */;\n return;\n }\n attachToAncestor(hostRef, hostRef.$ancestorComponent$);\n const dispatch = () => dispatchHooks(hostRef, isInitialLoad);\n return writeTask(dispatch) ;\n};\nvar dispatchHooks = (hostRef, isInitialLoad) => {\n const elm = hostRef.$hostElement$;\n const endSchedule = createTime(\"scheduleUpdate\", hostRef.$cmpMeta$.$tagName$);\n const instance = hostRef.$lazyInstance$ ;\n if (!instance) {\n throw new Error(\n `Can't render component <${elm.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \\`externalRuntime: true\\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`\n );\n }\n let maybePromise;\n endSchedule();\n return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));\n};\nvar enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then(fn).catch((err2) => {\n console.error(err2);\n fn();\n}) : fn();\nvar isPromisey = (maybePromise) => maybePromise instanceof Promise || maybePromise && maybePromise.then && typeof maybePromise.then === \"function\";\nvar updateComponent = async (hostRef, instance, isInitialLoad) => {\n var _a;\n const elm = hostRef.$hostElement$;\n const endUpdate = createTime(\"update\", hostRef.$cmpMeta$.$tagName$);\n const rc = elm[\"s-rc\"];\n if (isInitialLoad) {\n attachStyles(hostRef);\n }\n const endRender = createTime(\"render\", hostRef.$cmpMeta$.$tagName$);\n {\n callRender(hostRef, instance, elm, isInitialLoad);\n }\n if (rc) {\n rc.map((cb) => cb());\n elm[\"s-rc\"] = void 0;\n }\n endRender();\n endUpdate();\n {\n const childrenPromises = (_a = elm[\"s-p\"]) != null ? _a : [];\n const postUpdate = () => postUpdateComponent(hostRef);\n if (childrenPromises.length === 0) {\n postUpdate();\n } else {\n Promise.all(childrenPromises).then(postUpdate);\n hostRef.$flags$ |= 4 /* isWaitingForChildren */;\n childrenPromises.length = 0;\n }\n }\n};\nvar callRender = (hostRef, instance, elm, isInitialLoad) => {\n try {\n instance = instance.render() ;\n {\n hostRef.$flags$ &= ~16 /* isQueuedForUpdate */;\n }\n {\n hostRef.$flags$ |= 2 /* hasRendered */;\n }\n {\n {\n {\n renderVdom(hostRef, instance, isInitialLoad);\n }\n }\n }\n } catch (e) {\n consoleError(e, hostRef.$hostElement$);\n }\n return null;\n};\nvar postUpdateComponent = (hostRef) => {\n const tagName = hostRef.$cmpMeta$.$tagName$;\n const elm = hostRef.$hostElement$;\n const endPostUpdate = createTime(\"postUpdate\", tagName);\n const ancestorComponent = hostRef.$ancestorComponent$;\n if (!(hostRef.$flags$ & 64 /* hasLoadedComponent */)) {\n hostRef.$flags$ |= 64 /* hasLoadedComponent */;\n {\n addHydratedFlag(elm);\n }\n endPostUpdate();\n {\n hostRef.$onReadyResolve$(elm);\n if (!ancestorComponent) {\n appDidLoad();\n }\n }\n } else {\n endPostUpdate();\n }\n {\n if (hostRef.$onRenderResolve$) {\n hostRef.$onRenderResolve$();\n hostRef.$onRenderResolve$ = void 0;\n }\n if (hostRef.$flags$ & 512 /* needsRerender */) {\n nextTick(() => scheduleUpdate(hostRef, false));\n }\n hostRef.$flags$ &= ~(4 /* isWaitingForChildren */ | 512 /* needsRerender */);\n }\n};\nvar appDidLoad = (who) => {\n {\n addHydratedFlag(doc.documentElement);\n }\n nextTick(() => emitEvent(win, \"appload\", { detail: { namespace: NAMESPACE } }));\n};\nvar safeCall = (instance, method, arg) => {\n if (instance && instance[method]) {\n try {\n return instance[method](arg);\n } catch (e) {\n consoleError(e);\n }\n }\n return void 0;\n};\nvar addHydratedFlag = (elm) => {\n var _a;\n return elm.classList.add((_a = BUILD.hydratedSelectorName) != null ? _a : \"hydrated\") ;\n};\n\n// src/runtime/set-value.ts\nvar getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);\nvar setValue = (ref, propName, newVal, cmpMeta) => {\n const hostRef = getHostRef(ref);\n if (!hostRef) {\n throw new Error(\n `Couldn't find host element for \"${cmpMeta.$tagName$}\" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`\n );\n }\n const elm = hostRef.$hostElement$ ;\n const oldVal = hostRef.$instanceValues$.get(propName);\n const flags = hostRef.$flags$;\n const instance = hostRef.$lazyInstance$ ;\n newVal = parsePropertyValue(newVal, cmpMeta.$members$[propName][0]);\n const areBothNaN = Number.isNaN(oldVal) && Number.isNaN(newVal);\n const didValueChange = newVal !== oldVal && !areBothNaN;\n if ((!(flags & 8 /* isConstructingInstance */) || oldVal === void 0) && didValueChange) {\n hostRef.$instanceValues$.set(propName, newVal);\n if (instance) {\n if (cmpMeta.$watchers$ && flags & 128 /* isWatchReady */) {\n const watchMethods = cmpMeta.$watchers$[propName];\n if (watchMethods) {\n watchMethods.map((watchMethodName) => {\n try {\n instance[watchMethodName](newVal, oldVal, propName);\n } catch (e) {\n consoleError(e, elm);\n }\n });\n }\n }\n if ((flags & (2 /* hasRendered */ | 16 /* isQueuedForUpdate */)) === 2 /* hasRendered */) {\n scheduleUpdate(hostRef, false);\n }\n }\n }\n};\n\n// src/runtime/proxy-component.ts\nvar proxyComponent = (Cstr, cmpMeta, flags) => {\n var _a, _b;\n const prototype = Cstr.prototype;\n if (cmpMeta.$members$ || (cmpMeta.$watchers$ || Cstr.watchers)) {\n if (Cstr.watchers && !cmpMeta.$watchers$) {\n cmpMeta.$watchers$ = Cstr.watchers;\n }\n const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});\n members.map(([memberName, [memberFlags]]) => {\n if ((memberFlags & 31 /* Prop */ || (flags & 2 /* proxyState */) && memberFlags & 32 /* State */)) {\n Object.defineProperty(prototype, memberName, {\n get() {\n return getValue(this, memberName);\n },\n set(newValue) {\n setValue(this, memberName, newValue, cmpMeta);\n },\n configurable: true,\n enumerable: true\n });\n }\n });\n if ((flags & 1 /* isElementConstructor */)) {\n const attrNameToPropName = /* @__PURE__ */ new Map();\n prototype.attributeChangedCallback = function(attrName, oldValue, newValue) {\n plt.jmp(() => {\n var _a2;\n const propName = attrNameToPropName.get(attrName);\n if (this.hasOwnProperty(propName)) {\n newValue = this[propName];\n delete this[propName];\n } else if (prototype.hasOwnProperty(propName) && typeof this[propName] === \"number\" && // cast type to number to avoid TS compiler issues\n this[propName] == newValue) {\n return;\n } else if (propName == null) {\n const hostRef = getHostRef(this);\n const flags2 = hostRef == null ? void 0 : hostRef.$flags$;\n if (flags2 && !(flags2 & 8 /* isConstructingInstance */) && flags2 & 128 /* isWatchReady */ && newValue !== oldValue) {\n const instance = hostRef.$lazyInstance$ ;\n const entry = (_a2 = cmpMeta.$watchers$) == null ? void 0 : _a2[attrName];\n entry == null ? void 0 : entry.forEach((callbackName) => {\n if (instance[callbackName] != null) {\n instance[callbackName].call(instance, newValue, oldValue, attrName);\n }\n });\n }\n return;\n }\n this[propName] = newValue === null && typeof this[propName] === \"boolean\" ? false : newValue;\n });\n };\n Cstr.observedAttributes = Array.from(\n /* @__PURE__ */ new Set([\n ...Object.keys((_b = cmpMeta.$watchers$) != null ? _b : {}),\n ...members.filter(([_, m]) => m[0] & 15 /* HasAttribute */).map(([propName, m]) => {\n const attrName = m[1] || propName;\n attrNameToPropName.set(attrName, propName);\n return attrName;\n })\n ])\n );\n }\n }\n return Cstr;\n};\n\n// src/runtime/initialize-component.ts\nvar initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId) => {\n let Cstr;\n if ((hostRef.$flags$ & 32 /* hasInitializedComponent */) === 0) {\n hostRef.$flags$ |= 32 /* hasInitializedComponent */;\n const bundleId = cmpMeta.$lazyBundleId$;\n if (bundleId) {\n const CstrImport = loadModule(cmpMeta);\n if (CstrImport && \"then\" in CstrImport) {\n const endLoad = uniqueTime();\n Cstr = await CstrImport;\n endLoad();\n } else {\n Cstr = CstrImport;\n }\n if (!Cstr) {\n throw new Error(`Constructor for \"${cmpMeta.$tagName$}#${hostRef.$modeName$}\" was not found`);\n }\n if (!Cstr.isProxied) {\n {\n cmpMeta.$watchers$ = Cstr.watchers;\n }\n proxyComponent(Cstr, cmpMeta, 2 /* proxyState */);\n Cstr.isProxied = true;\n }\n const endNewInstance = createTime(\"createInstance\", cmpMeta.$tagName$);\n {\n hostRef.$flags$ |= 8 /* isConstructingInstance */;\n }\n try {\n new Cstr(hostRef);\n } catch (e) {\n consoleError(e);\n }\n {\n hostRef.$flags$ &= ~8 /* isConstructingInstance */;\n }\n {\n hostRef.$flags$ |= 128 /* isWatchReady */;\n }\n endNewInstance();\n fireConnectedCallback(hostRef.$lazyInstance$);\n } else {\n Cstr = elm.constructor;\n const cmpTag = elm.localName;\n customElements.whenDefined(cmpTag).then(() => hostRef.$flags$ |= 128 /* isWatchReady */);\n }\n if (Cstr && Cstr.style) {\n let style;\n if (typeof Cstr.style === \"string\") {\n style = Cstr.style;\n }\n const scopeId2 = getScopeId(cmpMeta);\n if (!styles.has(scopeId2)) {\n const endRegisterStyles = createTime(\"registerStyles\", cmpMeta.$tagName$);\n registerStyle(scopeId2, style, !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */));\n endRegisterStyles();\n }\n }\n }\n const ancestorComponent = hostRef.$ancestorComponent$;\n const schedule = () => scheduleUpdate(hostRef, true);\n if (ancestorComponent && ancestorComponent[\"s-rc\"]) {\n ancestorComponent[\"s-rc\"].push(schedule);\n } else {\n schedule();\n }\n};\nvar fireConnectedCallback = (instance) => {\n {\n safeCall(instance, \"connectedCallback\");\n }\n};\n\n// src/runtime/connected-callback.ts\nvar connectedCallback = (elm) => {\n if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {\n const hostRef = getHostRef(elm);\n const cmpMeta = hostRef.$cmpMeta$;\n const endConnected = createTime(\"connectedCallback\", cmpMeta.$tagName$);\n if (!(hostRef.$flags$ & 1 /* hasConnected */)) {\n hostRef.$flags$ |= 1 /* hasConnected */;\n {\n let ancestorComponent = elm;\n while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {\n if (ancestorComponent[\"s-p\"]) {\n attachToAncestor(hostRef, hostRef.$ancestorComponent$ = ancestorComponent);\n break;\n }\n }\n }\n if (cmpMeta.$members$) {\n Object.entries(cmpMeta.$members$).map(([memberName, [memberFlags]]) => {\n if (memberFlags & 31 /* Prop */ && elm.hasOwnProperty(memberName)) {\n const value = elm[memberName];\n delete elm[memberName];\n elm[memberName] = value;\n }\n });\n }\n {\n initializeComponent(elm, hostRef, cmpMeta);\n }\n } else {\n if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {\n fireConnectedCallback(hostRef.$lazyInstance$);\n } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {\n hostRef.$onReadyPromise$.then(() => fireConnectedCallback(hostRef.$lazyInstance$));\n }\n }\n endConnected();\n }\n};\nvar disconnectInstance = (instance) => {\n {\n safeCall(instance, \"disconnectedCallback\");\n }\n};\nvar disconnectedCallback = async (elm) => {\n if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {\n const hostRef = getHostRef(elm);\n if (hostRef == null ? void 0 : hostRef.$lazyInstance$) {\n disconnectInstance(hostRef.$lazyInstance$);\n } else if (hostRef == null ? void 0 : hostRef.$onReadyPromise$) {\n hostRef.$onReadyPromise$.then(() => disconnectInstance(hostRef.$lazyInstance$));\n }\n }\n};\n\n// src/runtime/bootstrap-lazy.ts\nvar bootstrapLazy = (lazyBundles, options = {}) => {\n var _a;\n const endBootstrap = createTime();\n const cmpTags = [];\n const exclude = options.exclude || [];\n const customElements2 = win.customElements;\n const head = doc.head;\n const metaCharset = /* @__PURE__ */ head.querySelector(\"meta[charset]\");\n const dataStyles = /* @__PURE__ */ doc.createElement(\"style\");\n const deferredConnectedCallbacks = [];\n let appLoadFallback;\n let isBootstrapping = true;\n Object.assign(plt, options);\n plt.$resourcesUrl$ = new URL(options.resourcesUrl || \"./\", doc.baseURI).href;\n let hasSlotRelocation = false;\n lazyBundles.map((lazyBundle) => {\n lazyBundle[1].map((compactMeta) => {\n var _a2;\n const cmpMeta = {\n $flags$: compactMeta[0],\n $tagName$: compactMeta[1],\n $members$: compactMeta[2],\n $listeners$: compactMeta[3]\n };\n if (cmpMeta.$flags$ & 4 /* hasSlotRelocation */) {\n hasSlotRelocation = true;\n }\n {\n cmpMeta.$members$ = compactMeta[2];\n }\n {\n cmpMeta.$watchers$ = (_a2 = compactMeta[4]) != null ? _a2 : {};\n }\n const tagName = cmpMeta.$tagName$;\n const HostElement = class extends HTMLElement {\n // StencilLazyHost\n constructor(self) {\n super(self);\n this.hasRegisteredEventListeners = false;\n self = this;\n registerHost(self, cmpMeta);\n if (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) {\n {\n if (!self.shadowRoot) {\n {\n self.attachShadow({ mode: \"open\" });\n }\n } else {\n if (self.shadowRoot.mode !== \"open\") {\n throw new Error(\n `Unable to re-use existing shadow root for ${cmpMeta.$tagName$}! Mode is set to ${self.shadowRoot.mode} but Stencil only supports open shadow roots.`\n );\n }\n }\n }\n }\n }\n connectedCallback() {\n getHostRef(this);\n if (!this.hasRegisteredEventListeners) {\n this.hasRegisteredEventListeners = true;\n }\n if (appLoadFallback) {\n clearTimeout(appLoadFallback);\n appLoadFallback = null;\n }\n if (isBootstrapping) {\n deferredConnectedCallbacks.push(this);\n } else {\n plt.jmp(() => connectedCallback(this));\n }\n }\n disconnectedCallback() {\n plt.jmp(() => disconnectedCallback(this));\n }\n componentOnReady() {\n return getHostRef(this).$onReadyPromise$;\n }\n };\n cmpMeta.$lazyBundleId$ = lazyBundle[0];\n if (!exclude.includes(tagName) && !customElements2.get(tagName)) {\n cmpTags.push(tagName);\n customElements2.define(\n tagName,\n proxyComponent(HostElement, cmpMeta, 1 /* isElementConstructor */)\n );\n }\n });\n });\n if (cmpTags.length > 0) {\n if (hasSlotRelocation) {\n dataStyles.textContent += SLOT_FB_CSS;\n }\n {\n dataStyles.textContent += cmpTags.sort() + HYDRATED_CSS;\n }\n if (dataStyles.innerHTML.length) {\n dataStyles.setAttribute(\"data-styles\", \"\");\n const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(doc);\n if (nonce != null) {\n dataStyles.setAttribute(\"nonce\", nonce);\n }\n head.insertBefore(dataStyles, metaCharset ? metaCharset.nextSibling : head.firstChild);\n }\n }\n isBootstrapping = false;\n if (deferredConnectedCallbacks.length) {\n deferredConnectedCallbacks.map((host) => host.connectedCallback());\n } else {\n {\n plt.jmp(() => appLoadFallback = setTimeout(appDidLoad, 30));\n }\n }\n endBootstrap();\n};\n\n// src/runtime/nonce.ts\nvar setNonce = (nonce) => plt.$nonce$ = nonce;\n\nexport { bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };\n\n//# sourceMappingURL=index-a83c417f.js.map","(function(){if(\"undefined\"!==typeof window&&void 0!==window.Reflect&&void 0!==window.customElements){var a=HTMLElement;window.HTMLElement=function(){return Reflect.construct(a,[],this.constructor)};HTMLElement.prototype=a.prototype;HTMLElement.prototype.constructor=HTMLElement;Object.setPrototypeOf(HTMLElement,a)}})();\nexport * from '../esm/loader.js';","import { b as bootstrapLazy } from './index-a83c417f.js';\nexport { s as setNonce } from './index-a83c417f.js';\nimport { g as globalScripts } from './app-globals-0f993ce5.js';\n\nconst defineCustomElements = async (win, options) => {\n if (typeof window === 'undefined') return undefined;\n await globalScripts();\n return bootstrapLazy([[\"mm-install-modal\",[[1,\"mm-install-modal\",{\"link\":[1],\"sdkVersion\":[1,\"sdk-version\"],\"preferDesktop\":[4,\"prefer-desktop\"],\"tab\":[32],\"isDefaultTab\":[32],\"translationsLoaded\":[32]},null,{\"preferDesktop\":[\"updatePreferDesktop\"]}]]],[\"mm-pending-modal\",[[1,\"mm-pending-modal\",{\"displayOTP\":[4,\"display-o-t-p\"],\"sdkVersion\":[1,\"sdk-version\"],\"otpCode\":[1,\"otp-code\"],\"translationsLoaded\":[32]}]]],[\"mm-select-modal\",[[1,\"mm-select-modal\",{\"link\":[1],\"sdkVersion\":[1,\"sdk-version\"],\"preferDesktop\":[4,\"prefer-desktop\"],\"tab\":[32],\"isDefaultTab\":[32],\"translationsLoaded\":[32]},null,{\"preferDesktop\":[\"updatePreferDesktop\"]}]]]], options);\n};\n\nexport { defineCustomElements };\n\n//# sourceMappingURL=loader.js.map","import { h } from './index-a83c417f.js';\n\nconst widgetWrapperStyle = {\n fontFamily: 'Roboto, sans-serif',\n};\nconst WidgetWrapper = ({ className, }, children) => {\n return (h(\"div\", { style: widgetWrapperStyle, class: className }, children));\n};\n\nfunction SDKVersion({ version }) {\n return (h(\"div\", { style: { textAlign: 'center', color: '#BBC0C5', fontSize: '12' } },\n \"SDK Version \",\n version ? `v${version}` : `unknown`));\n}\n\nconst CloseButton = () => (h(\"svg\", { width: \"14\", height: \"14\", viewBox: \"0 0 16 16\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"rect\", { width: \"16\", height: \"16\", fill: \"white\" }),\n h(\"path\", { \"fill-rule\": \"evenodd\", \"clip-rule\": \"evenodd\", d: \"M2.40554 2.40554C2.94627 1.86482 3.82296 1.86482 4.36369 2.40554L8 6.04186L11.6363 2.40554C12.177 1.86482 13.0537 1.86482 13.5945 2.40554C14.1352 2.94627 14.1352 3.82296 13.5945 4.36369L9.95814 8L13.5945 11.6363C14.1352 12.177 14.1352 13.0537 13.5945 13.5945C13.0537 14.1352 12.177 14.1352 11.6363 13.5945L8 9.95814L4.36369 13.5945C3.82296 14.1352 2.94627 14.1352 2.40554 13.5945C1.86482 13.0537 1.86482 12.177 2.40554 11.6363L6.04186 8L2.40554 4.36369C1.86482 3.82296 1.86482 2.94627 2.40554 2.40554Z\", fill: \"#BBC0C5\" })));\n\nconst Logo = () => (h(\"svg\", { width: \"273\", height: \"51\", viewBox: \"0 0 273 51\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M240.882 25.9263C239.472 24.997 237.916 24.3361 236.443 23.5101C235.489 22.9731 234.473 22.4982 233.643 21.8167C232.233 20.6602 232.524 18.3885 233.996 17.3973C236.112 15.993 239.617 16.7777 239.99 19.6483C239.99 19.7102 240.052 19.7515 240.114 19.7515H243.308C243.391 19.7515 243.454 19.6896 243.433 19.607C243.267 17.6244 242.5 15.9723 241.089 14.9191C239.741 13.9072 238.206 13.3702 236.568 13.3702C228.127 13.3702 227.359 22.271 231.901 25.0796C232.42 25.41 236.879 27.6404 238.455 28.611C240.032 29.5816 240.529 31.3576 239.845 32.7619C239.223 34.0423 237.605 34.9303 235.987 34.8271C234.224 34.7238 232.855 33.7738 232.378 32.2869C232.295 32.0185 232.254 31.5022 232.254 31.275C232.254 31.2131 232.192 31.1511 232.129 31.1511H228.666C228.604 31.1511 228.541 31.2131 228.541 31.275C228.541 33.7738 229.164 35.1575 230.864 36.4172C232.461 37.615 234.203 38.1106 236.008 38.1106C240.737 38.1106 243.184 35.4466 243.682 32.6793C244.117 29.974 243.308 27.5371 240.882 25.9263Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M90.4943 13.8246H88.9595H87.2795C87.2173 13.8246 87.1758 13.8659 87.1551 13.9072L84.3137 23.2416C84.2722 23.3655 84.1063 23.3655 84.0648 23.2416L81.2234 13.9072C81.2026 13.8452 81.1612 13.8246 81.0989 13.8246H79.419H77.8842H75.8102C75.748 13.8246 75.6857 13.8865 75.6857 13.9485V37.7802C75.6857 37.8422 75.748 37.9041 75.8102 37.9041H79.2738C79.336 37.9041 79.3982 37.8422 79.3982 37.7802V19.6689C79.3982 19.5244 79.6056 19.5037 79.6471 19.6276L82.5093 29.024L82.7167 29.6849C82.7374 29.7468 82.7789 29.7675 82.8411 29.7675H85.4959C85.5581 29.7675 85.5996 29.7262 85.6203 29.6849L85.8277 29.024L88.6899 19.6276C88.7313 19.4831 88.9387 19.5244 88.9387 19.6689V37.7802C88.9387 37.8422 89.001 37.9041 89.0632 37.9041H92.5268C92.589 37.9041 92.6513 37.8422 92.6513 37.7802V13.9485C92.6513 13.8865 92.589 13.8246 92.5268 13.8246H90.4943Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M187.849 13.8246C187.787 13.8246 187.745 13.8659 187.725 13.9072L184.883 23.2416C184.842 23.3655 184.676 23.3655 184.634 23.2416L181.793 13.9072C181.772 13.8452 181.731 13.8246 181.668 13.8246H176.4C176.338 13.8246 176.276 13.8865 176.276 13.9485V37.7802C176.276 37.8422 176.338 37.9041 176.4 37.9041H179.864C179.926 37.9041 179.988 37.8422 179.988 37.7802V19.6689C179.988 19.5244 180.196 19.5037 180.237 19.6276L183.099 29.024L183.307 29.6849C183.328 29.7468 183.369 29.7675 183.431 29.7675H186.086C186.148 29.7675 186.19 29.7262 186.211 29.6849L186.418 29.024L189.28 19.6276C189.322 19.4831 189.529 19.5244 189.529 19.6689V37.7802C189.529 37.8422 189.591 37.9041 189.653 37.9041H193.117C193.179 37.9041 193.241 37.8422 193.241 37.7802V13.9485C193.241 13.8865 193.179 13.8246 193.117 13.8246H187.849Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M143.174 13.8246H136.724H133.261H126.81C126.748 13.8246 126.686 13.8865 126.686 13.9485V16.9223C126.686 16.9843 126.748 17.0462 126.81 17.0462H133.136V37.7802C133.136 37.8422 133.198 37.9041 133.261 37.9041H136.724C136.786 37.9041 136.849 37.8422 136.849 37.7802V17.0462H143.174C143.237 17.0462 143.299 16.9843 143.299 16.9223V13.9485C143.299 13.8865 143.257 13.8246 143.174 13.8246Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M163.604 37.9041H166.756C166.839 37.9041 166.901 37.8215 166.881 37.7389L160.368 13.8245C160.347 13.7626 160.306 13.7419 160.244 13.7419H159.041H156.925H155.722C155.66 13.7419 155.619 13.7832 155.598 13.8245L149.085 37.7389C149.065 37.8215 149.127 37.9041 149.21 37.9041H152.362C152.425 37.9041 152.466 37.8628 152.487 37.8215L154.374 30.862C154.395 30.8 154.436 30.7794 154.499 30.7794H161.467C161.53 30.7794 161.571 30.8207 161.592 30.862L163.479 37.8215C163.5 37.8628 163.562 37.9041 163.604 37.9041ZM155.328 27.3719L157.859 18.0581C157.9 17.9342 158.066 17.9342 158.107 18.0581L160.638 27.3719C160.659 27.4545 160.596 27.5371 160.513 27.5371H155.453C155.37 27.5371 155.308 27.4545 155.328 27.3719Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M217.362 37.9041H220.515C220.598 37.9041 220.66 37.8215 220.639 37.7389L214.127 13.8245C214.106 13.7626 214.065 13.7419 214.002 13.7419H212.8H210.684H209.481C209.419 13.7419 209.377 13.7832 209.357 13.8245L202.844 37.7389C202.823 37.8215 202.886 37.9041 202.969 37.9041H206.121C206.183 37.9041 206.225 37.8628 206.246 37.8215L208.133 30.862C208.154 30.8 208.195 30.7794 208.257 30.7794H215.226C215.288 30.7794 215.33 30.8207 215.351 30.862L217.238 37.8215C217.259 37.8628 217.3 37.9041 217.362 37.9041ZM209.087 27.3719L211.617 18.0581C211.659 17.9342 211.825 17.9342 211.866 18.0581L214.397 27.3719C214.417 27.4545 214.355 27.5371 214.272 27.5371H209.211C209.129 27.5371 209.066 27.4545 209.087 27.3719Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M106.713 34.3727V26.9795C106.713 26.9176 106.775 26.8556 106.837 26.8556H116.067C116.129 26.8556 116.191 26.7936 116.191 26.7317V23.7579C116.191 23.6959 116.129 23.634 116.067 23.634H106.837C106.775 23.634 106.713 23.572 106.713 23.5101V17.1907C106.713 17.1288 106.775 17.0668 106.837 17.0668H117.332C117.394 17.0668 117.457 17.0049 117.457 16.9429V13.9691C117.457 13.9072 117.394 13.8452 117.332 13.8452H106.713H103.125C103.063 13.8452 103.001 13.9072 103.001 13.9691V17.0668V23.6546V26.8763V34.5173V37.7802C103.001 37.8422 103.063 37.9041 103.125 37.9041H106.713H117.768C117.83 37.9041 117.892 37.8422 117.892 37.7802V34.6412C117.892 34.5792 117.83 34.5173 117.768 34.5173H106.817C106.755 34.4966 106.713 34.4553 106.713 34.3727Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M272.532 37.6976L260.544 25.3687C260.502 25.3274 260.502 25.2448 260.544 25.2035L271.329 14.0517C271.412 13.9691 271.349 13.8452 271.246 13.8452H266.828C266.787 13.8452 266.766 13.8659 266.745 13.8865L257.599 23.3449C257.516 23.4275 257.391 23.3655 257.391 23.2623V13.9691C257.391 13.9072 257.329 13.8452 257.267 13.8452H253.803C253.741 13.8452 253.679 13.9072 253.679 13.9691V37.8009C253.679 37.8628 253.741 37.9248 253.803 37.9248H257.267C257.329 37.9248 257.391 37.8628 257.391 37.8009V27.3099C257.391 27.2067 257.536 27.1447 257.599 27.2273L267.969 37.8835C267.989 37.9041 268.031 37.9248 268.052 37.9248H272.469C272.552 37.9041 272.615 37.7596 272.532 37.6976Z\", fill: \"#24292E\" }),\n h(\"path\", { d: \"M52.021 1L31.0526 16.4886L34.9517 7.36063L52.021 1Z\", fill: \"#E17726\", stroke: \"#E17726\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M3.65491 1L24.4366 16.6331L20.7241 7.36063L3.65491 1Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M44.4716 36.9127L38.8925 45.4211L50.8389 48.7047L54.261 37.0986L44.4716 36.9127Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M1.43555 37.0986L4.83695 48.7047L16.7626 45.4211L11.2042 36.9127L1.43555 37.0986Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M16.1197 22.5395L12.8013 27.5371L24.6232 28.074L24.2292 15.3734L16.1197 22.5395Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M39.5561 22.5394L31.3222 15.2288L31.0526 28.0739L42.8746 27.537L39.5561 22.5394Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M16.7626 45.4212L23.918 41.9724L17.7582 37.1813L16.7626 45.4212Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M31.7578 41.9724L38.8925 45.4212L37.9177 37.1813L31.7578 41.9724Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M38.8923 45.4212L31.7577 41.9724L32.3384 46.5983L32.2762 48.5602L38.8923 45.4212Z\", fill: \"#D5BFB2\", stroke: \"#D5BFB2\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M16.7625 45.4212L23.3994 48.5602L23.3579 46.5983L23.9179 41.9724L16.7625 45.4212Z\", fill: \"#D5BFB2\", stroke: \"#D5BFB2\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M23.5239 34.1249L17.5922 32.3902L21.7818 30.4696L23.5239 34.1249Z\", fill: \"#233447\", stroke: \"#233447\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M32.1517 34.1249L33.8939 30.4696L38.1042 32.3902L32.1517 34.1249Z\", fill: \"#233447\", stroke: \"#233447\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M16.7626 45.4212L17.7996 36.9128L11.2042 37.0987L16.7626 45.4212Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M37.8761 36.9128L38.8924 45.4212L44.4715 37.0987L37.8761 36.9128Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M42.8745 27.5371L31.0526 28.074L32.1518 34.1249L33.894 30.4696L38.1042 32.3902L42.8745 27.5371Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M17.5922 32.3902L21.7817 30.4696L23.5239 34.1249L24.6232 28.074L12.8012 27.5371L17.5922 32.3902Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M12.8013 27.5371L17.7582 37.1813L17.5923 32.3902L12.8013 27.5371Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M38.1044 32.3902L37.9177 37.1813L42.8746 27.5371L38.1044 32.3902Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M24.6232 28.0741L23.524 34.125L24.9136 41.2703L25.2247 31.8533L24.6232 28.0741Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M31.0526 28.0741L30.4719 31.8327L30.7623 41.2703L32.1519 34.125L31.0526 28.0741Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M32.1519 34.1249L30.7623 41.2702L31.7578 41.9724L37.9177 37.1813L38.1043 32.3901L32.1519 34.1249Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M17.5922 32.3901L17.7581 37.1813L23.918 41.9724L24.9135 41.2702L23.5239 34.1249L17.5922 32.3901Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M32.2763 48.5602L32.3385 46.5983L31.7993 46.1439H23.8765L23.358 46.5983L23.3995 48.5602L16.7626 45.4211L19.0855 47.3211L23.7935 50.5633H31.8615L36.5903 47.3211L38.8924 45.4211L32.2763 48.5602Z\", fill: \"#C0AC9D\", stroke: \"#C0AC9D\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M31.7578 41.9724L30.7622 41.2703H24.9135L23.918 41.9724L23.358 46.5983L23.8765 46.144H31.7993L32.3385 46.5983L31.7578 41.9724Z\", fill: \"#24292E\", stroke: \"#24292E\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M52.9128 17.5005L54.6757 8.95079L52.021 1L31.7578 15.9723L39.5561 22.5394L50.5692 25.7404L52.9958 22.9111L51.938 22.147L53.618 20.6188L52.3321 19.6276L54.0121 18.3472L52.9128 17.5005Z\", fill: \"#763E1A\", stroke: \"#763E1A\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M1 8.95079L2.78366 17.5005L1.64295 18.3472L3.34365 19.6276L2.05775 20.6188L3.73771 22.147L2.67996 22.9111L5.10657 25.7404L16.1196 22.5394L23.918 15.9723L3.65475 1L1 8.95079Z\", fill: \"#763E1A\", stroke: \"#763E1A\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M50.5692 25.7404L39.5561 22.5394L42.8746 27.5371L37.9177 37.1813L44.4716 37.0987H54.261L50.5692 25.7404Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M16.1196 22.5394L5.10651 25.7404L1.43549 37.0987H11.2041L17.7581 37.1813L12.8011 27.5371L16.1196 22.5394Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M31.0526 28.0741L31.7578 15.9724L34.9518 7.36072H20.7239L23.9179 15.9724L24.6231 28.0741L24.8927 31.8739L24.9135 41.2703H30.7622L30.783 31.8739L31.0526 28.0741Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" })));\n\nconst defaultTranslations = {\n \"DESKTOP\": \"Desktop\",\n \"MOBILE\": \"Mobile\",\n \"META_MASK_MOBILE_APP\": \"MetaMask mobile app\",\n \"SCAN_TO_CONNECT\": \"Scan to connect and sign with\",\n \"CONNECT_WITH_EXTENSION\": \"Connect With MetaMask Extension\",\n \"INSTALL_MODAL\": {\n \"TRUSTED_BY_USERS\": \"Trusted by over 30 million users to buy, store, send and swap crypto securely\",\n \"LEADING_CRYPTO_WALLET\": \"The leading crypto wallet & gateway to blockchain apps built on Ethereum Mainnet, Polygon, Optimism, and many other networks\",\n \"CONTROL_DIGITAL_INTERACTIONS\": \"Puts you in control of your digital interactions by making power of cryptography more accessible\",\n \"INSTALL_META_MASK_EXTENSION\": \"Install MetaMask Extension\"\n },\n \"PENDING_MODAL\": {\n \"OPEN_META_MASK_SELECT_CODE\": \"Please open the MetaMask wallet app and select the code on the screen OR disconnect\",\n \"OPEN_META_MASK_CONTINUE\": \"Open the MetaMask app to continue with your session.\",\n \"NUMBER_AFTER_OPEN_NOTICE\": \"If a number doesn't appear after opening MetaMask, please click disconnect and re-scan the QRCode.\",\n \"DISCONNECT\": \"Disconnect\"\n },\n \"SELECT_MODAL\": {\n \"CRYPTO_TAKE_CONTROL_TEXT\": \"Take control of your crypto and explore the blockchain with the wallet trusted by over 30 million people worldwide\"\n },\n \"META_MASK_MODAL\": {\n \"ADDRESS_COPIED\": \"Address copied to clipboard!\",\n \"DISCONNECT\": \"Disconnect\",\n \"ACTIVE_NETWORK\": \"Active Network\"\n }\n};\nclass SimpleI18n {\n constructor(config) {\n var _a;\n this.translations = defaultTranslations;\n this.supportedLocales = ['es', 'fr', 'he', 'it', 'pt', 'tr'];\n this.baseUrl = (_a = config === null || config === void 0 ? void 0 : config.baseUrl) !== null && _a !== void 0 ? _a : 'https://raw.githubusercontent.com/MetaMask/metamask-sdk/refs/heads/gh-pages/locales';\n }\n getBrowserLanguage() {\n // Get all browser languages in order of preference\n const browserLanguages = navigator.languages || [navigator.language];\n // Check if English is one of the preferred languages\n const hasEnglish = browserLanguages.some(lang => lang.toLowerCase().startsWith('en'));\n // If user understands English, use it\n if (hasEnglish) {\n return 'en';\n }\n // Otherwise, check for other supported languages\n const primaryLang = navigator.language;\n const shortLang = primaryLang.toLowerCase().split('-')[0];\n if (this.supportedLocales.includes(shortLang)) {\n return shortLang;\n }\n return 'en';\n }\n async init(config) {\n const browserLang = this.getBrowserLanguage();\n const locale = browserLang || config.fallbackLng;\n await this.loadTranslations(locale);\n }\n async loadTranslations(locale) {\n const shortLocale = locale.split('-')[0];\n if (shortLocale === 'en' || !this.supportedLocales.includes(shortLocale)) {\n this.translations = defaultTranslations;\n return;\n }\n try {\n const url = `${this.baseUrl}/${shortLocale}.json`;\n const response = await fetch(url);\n if (!response.ok)\n throw new Error(`HTTP error! status: ${response.status}`);\n this.translations = await response.json();\n }\n catch (error) {\n console.warn(`❌ Failed to load ${shortLocale} translations, falling back to English:`, error);\n this.translations = defaultTranslations;\n }\n }\n t(key) {\n return this.getNestedTranslation(key, this.translations) || key;\n }\n getNestedTranslation(key, dict) {\n const parts = key.split('.');\n let current = dict;\n for (const part of parts) {\n if (typeof current !== 'object')\n return '';\n current = current[part];\n }\n return typeof current === 'string' ? current : '';\n }\n}\n\nexport { CloseButton as C, Logo as L, SimpleI18n as S, WidgetWrapper as W, SDKVersion as a };\n\n//# sourceMappingURL=simple-i18n-50218fcb.js.map","/*!\nCopyright (c) 2023 Paul Miller (paulmillr.com)\nThe library @paulmillr/qr is dual-licensed under the Apache 2.0 OR MIT license.\nYou can select a license of your choice.\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\nfunction assertNumber(n) {\n if (!Number.isSafeInteger(n))\n throw new Error(`Wrong integer: ${n}`);\n}\nfunction validateVersion(ver) {\n if (!Number.isSafeInteger(ver) || ver < 1 || ver > 40)\n throw new Error(`Invalid version=${ver}. Expected number [1..40]`);\n}\nfunction bin(dec, pad) {\n return dec.toString(2).padStart(pad, '0');\n}\nfunction mod(a, b) {\n const result = a % b;\n return result >= 0 ? result : b + result;\n}\nfunction fillArr(length, val) {\n return new Array(length).fill(val);\n}\n/**\n * Interleaves byte blocks.\n * @param blocks [[1, 2, 3], [4, 5, 6]]\n * @returns [1, 4, 2, 5, 3, 6]\n */\nfunction interleaveBytes(...blocks) {\n let len = 0;\n for (const b of blocks)\n len = Math.max(len, b.length);\n const res = [];\n for (let i = 0; i < len; i++) {\n for (const b of blocks) {\n if (i >= b.length)\n continue; // outside of block, skip\n res.push(b[i]);\n }\n }\n return new Uint8Array(res);\n}\nfunction includesAt(lst, pattern, index) {\n if (index < 0 || index + pattern.length > lst.length)\n return false;\n for (let i = 0; i < pattern.length; i++)\n if (pattern[i] !== lst[index + i])\n return false;\n return true;\n}\n// Optimize for minimal score/penalty\nfunction best() {\n let best;\n let bestScore = Infinity;\n return {\n add(score, value) {\n if (score >= bestScore)\n return;\n best = value;\n bestScore = score;\n },\n get: () => best,\n score: () => bestScore,\n };\n}\n// Based on https://github.com/paulmillr/scure-base/blob/main/index.ts\nfunction alphabet(alphabet) {\n return {\n has: (char) => alphabet.includes(char),\n decode: (input) => {\n if (!Array.isArray(input) || (input.length && typeof input[0] !== 'string'))\n throw new Error('alphabet.decode input should be array of strings');\n return input.map((letter) => {\n if (typeof letter !== 'string')\n throw new Error(`alphabet.decode: not string element=${letter}`);\n const index = alphabet.indexOf(letter);\n if (index === -1)\n throw new Error(`Unknown letter: \"${letter}\". Allowed: ${alphabet}`);\n return index;\n });\n },\n encode: (digits) => {\n if (!Array.isArray(digits) || (digits.length && typeof digits[0] !== 'number'))\n throw new Error('alphabet.encode input should be an array of numbers');\n return digits.map((i) => {\n assertNumber(i);\n if (i < 0 || i >= alphabet.length)\n throw new Error(`Digit index outside alphabet: ${i} (alphabet: ${alphabet.length})`);\n return alphabet[i];\n });\n },\n };\n}\nclass Bitmap {\n static size(size, limit) {\n if (typeof size === 'number')\n size = { height: size, width: size };\n if (!Number.isSafeInteger(size.height) && size.height !== Infinity)\n throw new Error(`Bitmap: wrong height=${size.height} (${typeof size.height})`);\n if (!Number.isSafeInteger(size.width) && size.width !== Infinity)\n throw new Error(`Bitmap: wrong width=${size.width} (${typeof size.width})`);\n if (limit !== undefined) {\n // Clamp length, so it won't overflow, also allows to use Infinity, so we draw until end\n size = {\n width: Math.min(size.width, limit.width),\n height: Math.min(size.height, limit.height),\n };\n }\n return size;\n }\n static fromString(s) {\n // Remove linebreaks on start and end, so we draw in `` section\n s = s.replace(/^\\n+/g, '').replace(/\\n+$/g, '');\n const lines = s.split('\\n');\n const height = lines.length;\n const data = new Array(height);\n let width;\n for (const line of lines) {\n const row = line.split('').map((i) => {\n if (i === 'X')\n return true;\n if (i === ' ')\n return false;\n if (i === '?')\n return undefined;\n throw new Error(`Bitmap.fromString: unknown symbol=${i}`);\n });\n if (width && row.length !== width)\n throw new Error(`Bitmap.fromString different row sizes: width=${width} cur=${row.length}`);\n width = row.length;\n data.push(row);\n }\n if (!width)\n width = 0;\n return new Bitmap({ height, width }, data);\n }\n constructor(size, data) {\n const { height, width } = Bitmap.size(size);\n this.data = data || Array.from({ length: height }, () => fillArr(width, undefined));\n this.height = height;\n this.width = width;\n }\n point(p) {\n return this.data[p.y][p.x];\n }\n isInside(p) {\n return 0 <= p.x && p.x < this.width && 0 <= p.y && p.y < this.height;\n }\n size(offset) {\n if (!offset)\n return { height: this.height, width: this.width };\n const { x, y } = this.xy(offset);\n return { height: this.height - y, width: this.width - x };\n }\n xy(c) {\n if (typeof c === 'number')\n c = { x: c, y: c };\n if (!Number.isSafeInteger(c.x))\n throw new Error(`Bitmap: wrong x=${c.x}`);\n if (!Number.isSafeInteger(c.y))\n throw new Error(`Bitmap: wrong y=${c.y}`);\n // Do modulo, so we can use negative positions\n c.x = mod(c.x, this.width);\n c.y = mod(c.y, this.height);\n return c;\n }\n // Basically every operation can be represented as rect\n rect(c, size, value) {\n const { x, y } = this.xy(c);\n const { height, width } = Bitmap.size(size, this.size({ x, y }));\n for (let yPos = 0; yPos < height; yPos++) {\n for (let xPos = 0; xPos < width; xPos++) {\n // NOTE: we use give function relative coordinates inside box\n this.data[y + yPos][x + xPos] =\n typeof value === 'function'\n ? value({ x: xPos, y: yPos }, this.data[y + yPos][x + xPos])\n : value;\n }\n }\n return this;\n }\n // returns rectangular part of bitmap\n rectRead(c, size, fn) {\n return this.rect(c, size, (c, cur) => {\n fn(c, cur);\n return cur;\n });\n }\n // Horizontal & vertical lines\n hLine(c, len, value) {\n return this.rect(c, { width: len, height: 1 }, value);\n }\n vLine(c, len, value) {\n return this.rect(c, { width: 1, height: len }, value);\n }\n // add border\n border(border = 2, value) {\n const height = this.height + 2 * border;\n const width = this.width + 2 * border;\n const v = fillArr(border, value);\n const h = Array.from({ length: border }, () => fillArr(width, value));\n return new Bitmap({ height, width }, [...h, ...this.data.map((i) => [...v, ...i, ...v]), ...h]);\n }\n // Embed another bitmap on coordinates\n embed(c, bm) {\n return this.rect(c, bm.size(), ({ x, y }) => bm.data[y][x]);\n }\n // returns rectangular part of bitmap\n rectSlice(c, size = this.size()) {\n const rect = new Bitmap(Bitmap.size(size, this.size(this.xy(c))));\n this.rect(c, size, ({ x, y }, cur) => (rect.data[y][x] = cur));\n return rect;\n }\n // Change shape, replace rows with columns (data[y][x] -> data[x][y])\n inverse() {\n const { height, width } = this;\n const res = new Bitmap({ height: width, width: height });\n return res.rect({ x: 0, y: 0 }, Infinity, ({ x, y }) => this.data[x][y]);\n }\n // Each pixel size is multiplied by factor\n scale(factor) {\n if (!Number.isSafeInteger(factor) || factor > 1024)\n throw new Error(`Wrong scale factor: ${factor}`);\n const { height, width } = this;\n const res = new Bitmap({ height: factor * height, width: factor * width });\n return res.rect({ x: 0, y: 0 }, Infinity, ({ x, y }) => this.data[Math.floor(y / factor)][Math.floor(x / factor)]);\n }\n clone() {\n const res = new Bitmap(this.size());\n return res.rect({ x: 0, y: 0 }, this.size(), ({ x, y }) => this.data[y][x]);\n }\n // Ensure that there is no undefined values left\n assertDrawn() {\n this.rectRead(0, Infinity, (_, cur) => {\n if (typeof cur !== 'boolean')\n throw new Error(`Invalid color type=${typeof cur}`);\n });\n }\n // Simple string representation for debugging\n toString() {\n return this.data\n .map((i) => i.map((j) => (j === undefined ? '?' : j ? 'X' : ' ')).join(''))\n .join('\\n');\n }\n toASCII() {\n const { height, width, data } = this;\n let out = '';\n // Terminal character height is x2 of character width, so we process two rows of bitmap\n // to produce one row of ASCII\n for (let y = 0; y < height; y += 2) {\n for (let x = 0; x < width; x++) {\n const first = data[y][x];\n const second = y + 1 >= height ? true : data[y + 1][x]; // if last row outside bitmap, make it black\n if (!first && !second)\n out += '█'; // both rows white (empty)\n else if (!first && second)\n out += '▀'; // top row white\n else if (first && !second)\n out += '▄'; // down row white\n else if (first && second)\n out += ' '; // both rows black\n }\n out += '\\n';\n }\n return out;\n }\n toTerm() {\n const reset = '\\x1b[0m';\n const whiteBG = `\\x1b[1;47m ${reset}`;\n const darkBG = `\\x1b[40m ${reset}`;\n return this.data.map((i) => i.map((j) => (j ? darkBG : whiteBG)).join('')).join('\\n');\n }\n toSVG() {\n let out = ``;\n this.rectRead(0, Infinity, ({ x, y }, val) => {\n if (val)\n out += ``;\n });\n out += '';\n return out;\n }\n toGIF() {\n // NOTE: Small, but inefficient implementation.\n // Uses 1 byte per pixel, but still less bloated than SVG.\n const u16le = (i) => [i & 0xff, (i >>> 8) & 0xff];\n const dims = [...u16le(this.width), ...u16le(this.height)];\n const data = [];\n this.rectRead(0, Infinity, (_, cur) => data.push(+(cur === true)));\n const N = 126; // Block size\n // prettier-ignore\n const bytes = [\n 0x47, 0x49, 0x46, 0x38, 0x37, 0x61, ...dims, 0xf6, 0x00, 0x00, 0xff, 0xff, 0xff,\n ...fillArr(3 * 127, 0x00), 0x2c, 0x00, 0x00, 0x00, 0x00, ...dims, 0x00, 0x07\n ];\n const fullChunks = Math.floor(data.length / N);\n // Full blocks\n for (let i = 0; i < fullChunks; i++)\n bytes.push(N + 1, 0x80, ...data.slice(N * i, N * (i + 1)).map((i) => +i));\n // Remaining bytes\n bytes.push((data.length % N) + 1, 0x80, ...data.slice(fullChunks * N).map((i) => +i));\n bytes.push(0x01, 0x81, 0x00, 0x3b);\n return new Uint8Array(bytes);\n }\n toImage(isRGB = false) {\n const { height, width } = this.size();\n const data = new Uint8Array(height * width * (isRGB ? 3 : 4));\n let i = 0;\n for (let y = 0; y < height; y++) {\n for (let x = 0; x < width; x++) {\n const value = !!this.data[y][x] ? 0 : 255;\n data[i++] = value;\n data[i++] = value;\n data[i++] = value;\n if (!isRGB)\n data[i++] = 255; // alpha channel\n }\n }\n return { height, width, data };\n }\n}\n// End of utils\n// Runtime type-checking\n// Low: 7%, medium: 15%, quartile: 25%, high: 30%\nconst ECMode = ['low', 'medium', 'quartile', 'high'];\nconst Encoding = ['numeric', 'alphanumeric', 'byte', 'kanji', 'eci'];\n// Various constants & tables\n// prettier-ignore\nconst BYTES = [\n // 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,\n 26, 44, 70, 100, 134, 172, 196, 242, 292, 346, 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085,\n // 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40\n 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185, 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706,\n];\n// prettier-ignore\nconst WORDS_PER_BLOCK = {\n // Version 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40\n low: [7, 10, 15, 20, 26, 18, 20, 24, 30, 18, 20, 24, 26, 30, 22, 24, 28, 30, 28, 28, 28, 28, 30, 30, 26, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n medium: [10, 16, 26, 18, 24, 16, 18, 22, 22, 26, 30, 22, 22, 24, 24, 28, 28, 26, 26, 26, 26, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28],\n quartile: [13, 22, 18, 26, 18, 24, 18, 22, 20, 24, 28, 26, 24, 20, 30, 24, 28, 28, 26, 30, 28, 30, 30, 30, 30, 28, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n high: [17, 28, 22, 16, 22, 28, 26, 26, 24, 28, 24, 28, 22, 24, 24, 30, 28, 28, 26, 28, 30, 24, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30],\n};\n// prettier-ignore\nconst ECC_BLOCKS = {\n // Version 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40\n low: [1, 1, 1, 1, 1, 2, 2, 2, 2, 4, 4, 4, 4, 4, 6, 6, 6, 6, 7, 8, 8, 9, 9, 10, 12, 12, 12, 13, 14, 15, 16, 17, 18, 19, 19, 20, 21, 22, 24, 25],\n medium: [1, 1, 1, 2, 2, 4, 4, 4, 5, 5, 5, 8, 9, 9, 10, 10, 11, 13, 14, 16, 17, 17, 18, 20, 21, 23, 25, 26, 28, 29, 31, 33, 35, 37, 38, 40, 43, 45, 47, 49],\n quartile: [1, 1, 2, 2, 4, 4, 6, 6, 8, 8, 8, 10, 12, 16, 12, 17, 16, 18, 21, 20, 23, 23, 25, 27, 29, 34, 34, 35, 38, 40, 43, 45, 48, 51, 53, 56, 59, 62, 65, 68],\n high: [1, 1, 2, 4, 4, 4, 5, 6, 8, 8, 11, 11, 16, 16, 18, 16, 19, 21, 25, 25, 25, 34, 30, 32, 35, 37, 40, 42, 45, 48, 51, 54, 57, 60, 63, 66, 70, 74, 77, 81],\n};\nconst info = {\n size: {\n encode: (ver) => 21 + 4 * (ver - 1), // ver1 = 21, ver40=177 blocks\n decode: (size) => (size - 17) / 4,\n },\n sizeType: (ver) => Math.floor((ver + 7) / 17),\n // Based on https://codereview.stackexchange.com/questions/74925/algorithm-to-generate-this-alignment-pattern-locations-table-for-qr-codes\n alignmentPatterns(ver) {\n if (ver === 1)\n return [];\n const first = 6;\n const last = info.size.encode(ver) - first - 1;\n const distance = last - first;\n const count = Math.ceil(distance / 28);\n let interval = Math.floor(distance / count);\n if (interval % 2)\n interval += 1;\n else if ((distance % count) * 2 >= count)\n interval += 2;\n const res = [first];\n for (let m = 1; m < count; m++)\n res.push(last - (count - m) * interval);\n res.push(last);\n return res;\n },\n ECCode: {\n low: 0b01,\n medium: 0b00,\n quartile: 0b11,\n high: 0b10,\n },\n formatMask: 0b101010000010010,\n formatBits(ecc, maskIdx) {\n const data = (info.ECCode[ecc] << 3) | maskIdx;\n let d = data;\n for (let i = 0; i < 10; i++)\n d = (d << 1) ^ ((d >> 9) * 0b10100110111);\n return ((data << 10) | d) ^ info.formatMask;\n },\n versionBits(ver) {\n let d = ver;\n for (let i = 0; i < 12; i++)\n d = (d << 1) ^ ((d >> 11) * 0b1111100100101);\n return (ver << 12) | d;\n },\n alphabet: {\n numeric: alphabet('0123456789'),\n alphanumerc: alphabet('0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:'),\n }, // as Record>,\n lengthBits(ver, type) {\n const table = {\n numeric: [10, 12, 14],\n alphanumeric: [9, 11, 13],\n byte: [8, 16, 16],\n kanji: [8, 10, 12],\n eci: [0, 0, 0],\n };\n return table[type][info.sizeType(ver)];\n },\n modeBits: {\n numeric: '0001',\n alphanumeric: '0010',\n byte: '0100',\n kanji: '1000',\n eci: '0111',\n },\n capacity(ver, ecc) {\n const bytes = BYTES[ver - 1];\n const words = WORDS_PER_BLOCK[ecc][ver - 1];\n const numBlocks = ECC_BLOCKS[ecc][ver - 1];\n const blockLen = Math.floor(bytes / numBlocks) - words;\n const shortBlocks = numBlocks - (bytes % numBlocks);\n return {\n words,\n numBlocks,\n shortBlocks,\n blockLen,\n capacity: (bytes - words * numBlocks) * 8,\n total: (words + blockLen) * numBlocks + numBlocks - shortBlocks,\n };\n },\n};\nconst PATTERNS = [\n (x, y) => (x + y) % 2 == 0,\n (_x, y) => y % 2 == 0,\n (x, _y) => x % 3 == 0,\n (x, y) => (x + y) % 3 == 0,\n (x, y) => (Math.floor(y / 2) + Math.floor(x / 3)) % 2 == 0,\n (x, y) => ((x * y) % 2) + ((x * y) % 3) == 0,\n (x, y) => (((x * y) % 2) + ((x * y) % 3)) % 2 == 0,\n (x, y) => (((x + y) % 2) + ((x * y) % 3)) % 2 == 0,\n];\n// Galois field && reed-solomon encoding\nconst GF = {\n tables: ((p_poly) => {\n const exp = fillArr(256, 0);\n const log = fillArr(256, 0);\n for (let i = 0, x = 1; i < 256; i++) {\n exp[i] = x;\n log[x] = i;\n x <<= 1;\n if (x & 0x100)\n x ^= p_poly;\n }\n return { exp, log };\n })(0x11d),\n exp: (x) => GF.tables.exp[x],\n log(x) {\n if (x === 0)\n throw new Error(`GF.log: wrong arg=${x}`);\n return GF.tables.log[x] % 255;\n },\n mul(x, y) {\n if (x === 0 || y === 0)\n return 0;\n return GF.tables.exp[(GF.tables.log[x] + GF.tables.log[y]) % 255];\n },\n add: (x, y) => x ^ y,\n pow: (x, e) => GF.tables.exp[(GF.tables.log[x] * e) % 255],\n inv(x) {\n if (x === 0)\n throw new Error(`GF.inverse: wrong arg=${x}`);\n return GF.tables.exp[255 - GF.tables.log[x]];\n },\n polynomial(poly) {\n if (poly.length == 0)\n throw new Error('GF.polymomial: wrong length');\n if (poly[0] !== 0)\n return poly;\n // Strip leading zeros\n let i = 0;\n for (; i < poly.length - 1 && poly[i] == 0; i++)\n ;\n return poly.slice(i);\n },\n monomial(degree, coefficient) {\n if (degree < 0)\n throw new Error(`GF.monomial: wrong degree=${degree}`);\n if (coefficient == 0)\n return [0];\n let coefficients = fillArr(degree + 1, 0);\n coefficients[0] = coefficient;\n return GF.polynomial(coefficients);\n },\n degree: (a) => a.length - 1,\n coefficient: (a, degree) => a[GF.degree(a) - degree],\n mulPoly(a, b) {\n if (a[0] === 0 || b[0] === 0)\n return [0];\n const res = fillArr(a.length + b.length - 1, 0);\n for (let i = 0; i < a.length; i++) {\n for (let j = 0; j < b.length; j++) {\n res[i + j] = GF.add(res[i + j], GF.mul(a[i], b[j]));\n }\n }\n return GF.polynomial(res);\n },\n mulPolyScalar(a, scalar) {\n if (scalar == 0)\n return [0];\n if (scalar == 1)\n return a;\n const res = fillArr(a.length, 0);\n for (let i = 0; i < a.length; i++)\n res[i] = GF.mul(a[i], scalar);\n return GF.polynomial(res);\n },\n mulPolyMonomial(a, degree, coefficient) {\n if (degree < 0)\n throw new Error('GF.mulPolyMonomial: wrong degree');\n if (coefficient == 0)\n return [0];\n const res = fillArr(a.length + degree, 0);\n for (let i = 0; i < a.length; i++)\n res[i] = GF.mul(a[i], coefficient);\n return GF.polynomial(res);\n },\n addPoly(a, b) {\n if (a[0] === 0)\n return b;\n if (b[0] === 0)\n return a;\n let smaller = a;\n let larger = b;\n if (smaller.length > larger.length)\n [smaller, larger] = [larger, smaller];\n let sumDiff = fillArr(larger.length, 0);\n let lengthDiff = larger.length - smaller.length;\n let s = larger.slice(0, lengthDiff);\n for (let i = 0; i < s.length; i++)\n sumDiff[i] = s[i];\n for (let i = lengthDiff; i < larger.length; i++)\n sumDiff[i] = GF.add(smaller[i - lengthDiff], larger[i]);\n return GF.polynomial(sumDiff);\n },\n remainderPoly(data, divisor) {\n const out = Array.from(data);\n for (let i = 0; i < data.length - divisor.length + 1; i++) {\n const elm = out[i];\n if (elm === 0)\n continue;\n for (let j = 1; j < divisor.length; j++) {\n if (divisor[j] !== 0)\n out[i + j] = GF.add(out[i + j], GF.mul(divisor[j], elm));\n }\n }\n return out.slice(data.length - divisor.length + 1, out.length);\n },\n divisorPoly(degree) {\n let g = [1];\n for (let i = 0; i < degree; i++)\n g = GF.mulPoly(g, [1, GF.pow(2, i)]);\n return g;\n },\n evalPoly(poly, a) {\n if (a == 0)\n return GF.coefficient(poly, 0); // Just return the x^0 coefficient\n let res = poly[0];\n for (let i = 1; i < poly.length; i++)\n res = GF.add(GF.mul(a, res), poly[i]);\n return res;\n },\n // TODO: cleanup\n euclidian(a, b, R) {\n // Force degree(a) >= degree(b)\n if (GF.degree(a) < GF.degree(b))\n [a, b] = [b, a];\n let rLast = a;\n let r = b;\n let tLast = [0];\n let t = [1];\n // while degree of Ri ≥ t/2\n while (2 * GF.degree(r) >= R) {\n let rLastLast = rLast;\n let tLastLast = tLast;\n rLast = r;\n tLast = t;\n if (rLast[0] === 0)\n throw new Error('rLast[0] === 0');\n r = rLastLast;\n let q = [0];\n const dltInverse = GF.inv(rLast[0]);\n while (GF.degree(r) >= GF.degree(rLast) && r[0] !== 0) {\n const degreeDiff = GF.degree(r) - GF.degree(rLast);\n const scale = GF.mul(r[0], dltInverse);\n q = GF.addPoly(q, GF.monomial(degreeDiff, scale));\n r = GF.addPoly(r, GF.mulPolyMonomial(rLast, degreeDiff, scale));\n }\n q = GF.mulPoly(q, tLast);\n t = GF.addPoly(q, tLastLast);\n if (GF.degree(r) >= GF.degree(rLast))\n throw new Error(`Division failed r: ${r}, rLast: ${rLast}`);\n }\n const sigmaTildeAtZero = GF.coefficient(t, 0);\n if (sigmaTildeAtZero == 0)\n throw new Error('sigmaTilde(0) was zero');\n const inverse = GF.inv(sigmaTildeAtZero);\n return [GF.mulPolyScalar(t, inverse), GF.mulPolyScalar(r, inverse)];\n },\n};\nfunction RS(eccWords) {\n return {\n encode(from) {\n const d = GF.divisorPoly(eccWords);\n const pol = Array.from(from);\n pol.push(...d.slice(0, -1).fill(0));\n return Uint8Array.from(GF.remainderPoly(pol, d));\n },\n decode(to) {\n const res = to.slice();\n const poly = GF.polynomial(Array.from(to));\n // Find errors\n let syndrome = fillArr(eccWords, 0);\n let hasError = false;\n for (let i = 0; i < eccWords; i++) {\n const evl = GF.evalPoly(poly, GF.exp(i));\n syndrome[syndrome.length - 1 - i] = evl;\n if (evl !== 0)\n hasError = true;\n }\n if (!hasError)\n return res;\n syndrome = GF.polynomial(syndrome);\n const monomial = GF.monomial(eccWords, 1);\n const [errorLocator, errorEvaluator] = GF.euclidian(monomial, syndrome, eccWords);\n // Error locations\n const locations = fillArr(GF.degree(errorLocator), 0);\n let e = 0;\n for (let i = 1; i < 256 && e < locations.length; i++) {\n if (GF.evalPoly(errorLocator, i) === 0)\n locations[e++] = GF.inv(i);\n }\n if (e !== locations.length)\n throw new Error('RS.decode: wrong errors number');\n for (let i = 0; i < locations.length; i++) {\n const pos = res.length - 1 - GF.log(locations[i]);\n if (pos < 0)\n throw new Error('RS.decode: wrong error location');\n const xiInverse = GF.inv(locations[i]);\n let denominator = 1;\n for (let j = 0; j < locations.length; j++) {\n if (i === j)\n continue;\n denominator = GF.mul(denominator, GF.add(1, GF.mul(locations[j], xiInverse)));\n }\n res[pos] = GF.add(res[pos], GF.mul(GF.evalPoly(errorEvaluator, xiInverse), GF.inv(denominator)));\n }\n return res;\n },\n };\n}\n// Interleaves blocks\nfunction interleave(ver, ecc) {\n const { words, shortBlocks, numBlocks, blockLen, total } = info.capacity(ver, ecc);\n const rs = RS(words);\n return {\n encode(bytes) {\n // Add error correction to bytes\n const blocks = [];\n const eccBlocks = [];\n for (let i = 0; i < numBlocks; i++) {\n const isShort = i < shortBlocks;\n const len = blockLen + (isShort ? 0 : 1);\n blocks.push(bytes.subarray(0, len));\n eccBlocks.push(rs.encode(bytes.subarray(0, len)));\n bytes = bytes.subarray(len);\n }\n const resBlocks = interleaveBytes(...blocks);\n const resECC = interleaveBytes(...eccBlocks);\n const res = new Uint8Array(resBlocks.length + resECC.length);\n res.set(resBlocks);\n res.set(resECC, resBlocks.length);\n return res;\n },\n decode(data) {\n if (data.length !== total)\n throw new Error(`interleave.decode: len(data)=${data.length}, total=${total}`);\n const blocks = [];\n for (let i = 0; i < numBlocks; i++) {\n const isShort = i < shortBlocks;\n blocks.push(new Uint8Array(words + blockLen + (isShort ? 0 : 1)));\n }\n // Short blocks\n let pos = 0;\n for (let i = 0; i < blockLen; i++) {\n for (let j = 0; j < numBlocks; j++)\n blocks[j][i] = data[pos++];\n }\n // Long blocks\n for (let j = shortBlocks; j < numBlocks; j++)\n blocks[j][blockLen] = data[pos++];\n // ECC\n for (let i = blockLen; i < blockLen + words; i++) {\n for (let j = 0; j < numBlocks; j++) {\n const isShort = j < shortBlocks;\n blocks[j][i + (isShort ? 0 : 1)] = data[pos++];\n }\n }\n // Decode\n // Error-correct and copy data blocks together into a stream of bytes\n const res = [];\n for (const block of blocks)\n res.push(...Array.from(rs.decode(block)).slice(0, -words));\n return Uint8Array.from(res);\n },\n };\n}\n// Draw\n// Generic template per version+ecc+mask. Can be cached, to speedup calculations.\nfunction drawTemplate(ver, ecc, maskIdx, test = false) {\n const size = info.size.encode(ver);\n let b = new Bitmap(size + 2);\n // Finder patterns\n // We draw full pattern and later slice, since before addition of borders finder is truncated by one pixel on sides\n const finder = new Bitmap(3).rect(0, 3, true).border(1, false).border(1, true).border(1, false);\n b = b\n .embed(0, finder) // top left\n .embed({ x: -finder.width, y: 0 }, finder) // top right\n .embed({ x: 0, y: -finder.height }, finder); // bottom left\n b = b.rectSlice(1, size);\n // Alignment patterns\n const align = new Bitmap(1).rect(0, 1, true).border(1, false).border(1, true);\n const alignPos = info.alignmentPatterns(ver);\n for (const y of alignPos) {\n for (const x of alignPos) {\n if (b.data[y][x] !== undefined)\n continue;\n b.embed({ x: x - 2, y: y - 2 }, align); // center of pattern should be at position\n }\n }\n // Timing patterns\n b = b\n .hLine({ x: 0, y: 6 }, Infinity, ({ x }, cur) => (cur === undefined ? x % 2 == 0 : cur))\n .vLine({ x: 6, y: 0 }, Infinity, ({ y }, cur) => (cur === undefined ? y % 2 == 0 : cur));\n // Format information\n {\n const bits = info.formatBits(ecc, maskIdx);\n const getBit = (i) => !test && ((bits >> i) & 1) == 1;\n // vertical\n for (let i = 0; i < 6; i++)\n b.data[i][8] = getBit(i); // right of top-left finder\n // TODO: re-write as lines, like:\n // b.vLine({ x: 8, y: 0 }, 6, ({ x, y }) => getBit(y));\n for (let i = 6; i < 8; i++)\n b.data[i + 1][8] = getBit(i); // after timing pattern\n for (let i = 8; i < 15; i++)\n b.data[size - 15 + i][8] = getBit(i); // right of bottom-left finder\n // horizontal\n for (let i = 0; i < 8; i++)\n b.data[8][size - i - 1] = getBit(i); // under top-right finder\n for (let i = 8; i < 9; i++)\n b.data[8][15 - i - 1 + 1] = getBit(i); // VVV, after timing\n for (let i = 9; i < 15; i++)\n b.data[8][15 - i - 1] = getBit(i); // under top-left finder\n b.data[size - 8][8] = !test; // bottom-left finder, right\n }\n // Version information\n if (ver >= 7) {\n const bits = info.versionBits(ver);\n for (let i = 0; i < 18; i += 1) {\n const bit = !test && ((bits >> i) & 1) == 1;\n const x = Math.floor(i / 3);\n const y = (i % 3) + size - 8 - 3;\n // two copies\n b.data[x][y] = bit;\n b.data[y][x] = bit;\n }\n }\n return b;\n}\n// zigzag: bottom->top && top->bottom\nfunction zigzag(tpl, maskIdx, fn) {\n const size = tpl.height;\n const pattern = PATTERNS[maskIdx];\n // zig-zag pattern\n let dir = -1;\n let y = size - 1;\n // two columns at time\n for (let xOffset = size - 1; xOffset > 0; xOffset -= 2) {\n if (xOffset == 6)\n xOffset = 5; // skip vertical timing pattern\n for (;; y += dir) {\n for (let j = 0; j < 2; j += 1) {\n const x = xOffset - j;\n if (tpl.data[y][x] !== undefined)\n continue; // skip already written elements\n fn(x, y, pattern(x, y));\n }\n if (y + dir < 0 || y + dir >= size)\n break;\n }\n dir = -dir; // change direction\n }\n}\n// NOTE: byte encoding is just representation, QR works with strings only. Most decoders will fail on raw byte array,\n// since they expect unicode or other text encoding inside bytes\nfunction detectType(str) {\n let type = 'numeric';\n for (let x of str) {\n if (info.alphabet.numeric.has(x))\n continue;\n type = 'alphanumeric';\n if (!info.alphabet.alphanumerc.has(x))\n return 'byte';\n }\n return type;\n}\n/**\n * @example utf8ToBytes('abc') // new Uint8Array([97, 98, 99])\n */\nfunction utf8ToBytes(str) {\n if (typeof str !== 'string')\n throw new Error(`utf8ToBytes expected string, got ${typeof str}`);\n return new Uint8Array(new TextEncoder().encode(str)); // https://bugzil.la/1681809\n}\nfunction encode(ver, ecc, data, type) {\n let encoded = '';\n let dataLen = data.length;\n if (type === 'numeric') {\n const t = info.alphabet.numeric.decode(data.split(''));\n const n = t.length;\n for (let i = 0; i < n - 2; i += 3)\n encoded += bin(t[i] * 100 + t[i + 1] * 10 + t[i + 2], 10);\n if (n % 3 === 1) {\n encoded += bin(t[n - 1], 4);\n }\n else if (n % 3 === 2) {\n encoded += bin(t[n - 2] * 10 + t[n - 1], 7);\n }\n }\n else if (type === 'alphanumeric') {\n const t = info.alphabet.alphanumerc.decode(data.split(''));\n const n = t.length;\n for (let i = 0; i < n - 1; i += 2)\n encoded += bin(t[i] * 45 + t[i + 1], 11);\n if (n % 2 == 1)\n encoded += bin(t[n - 1], 6); // pad if odd number of chars\n }\n else if (type === 'byte') {\n const utf8 = utf8ToBytes(data);\n dataLen = utf8.length;\n encoded = Array.from(utf8)\n .map((i) => bin(i, 8))\n .join('');\n }\n else {\n throw new Error('encode: unsupported type');\n }\n const { capacity } = info.capacity(ver, ecc);\n const len = bin(dataLen, info.lengthBits(ver, type));\n let bits = info.modeBits[type] + len + encoded;\n if (bits.length > capacity)\n throw new Error('Capacity overflow');\n // Terminator\n bits += '0'.repeat(Math.min(4, Math.max(0, capacity - bits.length)));\n // Pad bits string untill full byte\n if (bits.length % 8)\n bits += '0'.repeat(8 - (bits.length % 8));\n // Add padding until capacity is full\n const padding = '1110110000010001';\n for (let idx = 0; bits.length !== capacity; idx++)\n bits += padding[idx % padding.length];\n // Convert a bitstring to array of bytes\n const bytes = Uint8Array.from(bits.match(/(.{8})/g).map((i) => Number(`0b${i}`)));\n return interleave(ver, ecc).encode(bytes);\n}\n// DRAW\nfunction drawQR(ver, ecc, data, maskIdx, test = false) {\n const b = drawTemplate(ver, ecc, maskIdx, test);\n let i = 0;\n const need = 8 * data.length;\n zigzag(b, maskIdx, (x, y, mask) => {\n let value = false;\n if (i < need) {\n value = ((data[i >>> 3] >> ((7 - i) & 7)) & 1) !== 0;\n i++;\n }\n b.data[y][x] = value !== mask; // !== as xor\n });\n if (i !== need)\n throw new Error('QR: bytes left after draw');\n return b;\n}\nfunction penalty(bm) {\n const inverse = bm.inverse();\n // Adjacent modules in row/column in same | No. of modules = (5 + i) color\n const sameColor = (row) => {\n let res = 0;\n for (let i = 0, same = 1, last = undefined; i < row.length; i++) {\n if (last === row[i]) {\n same++;\n if (i !== row.length - 1)\n continue; // handle last element\n }\n if (same >= 5)\n res += 3 + (same - 5);\n last = row[i];\n same = 1;\n }\n return res;\n };\n let adjacent = 0;\n bm.data.forEach((row) => (adjacent += sameColor(row)));\n inverse.data.forEach((column) => (adjacent += sameColor(column)));\n // Block of modules in same color (Block size = 2x2)\n let box = 0;\n let b = bm.data;\n const lastW = bm.width - 1;\n const lastH = bm.height - 1;\n for (let x = 0; x < lastW; x++) {\n for (let y = 0; y < lastH; y++) {\n const x1 = x + 1;\n const y1 = y + 1;\n if (b[x][y] === b[x1][y] && b[x1][y] === b[x][y1] && b[x1][y] === b[x1][y1]) {\n box += 3;\n }\n }\n }\n // 1:1:3:1:1 ratio (dark:light:dark:light:dark) pattern in row/column, preceded or followed by light area 4 modules wide\n const finderPattern = (row) => {\n const finderPattern = [true, false, true, true, true, false, true]; // dark:light:dark:light:dark\n const lightPattern = [false, false, false, false]; // light area 4 modules wide\n const p1 = [...finderPattern, ...lightPattern];\n const p2 = [...lightPattern, ...finderPattern];\n let res = 0;\n for (let i = 0; i < row.length; i++) {\n if (includesAt(row, p1, i))\n res += 40;\n if (includesAt(row, p2, i))\n res += 40;\n }\n return res;\n };\n let finder = 0;\n for (const row of bm.data)\n finder += finderPattern(row);\n for (const column of inverse.data)\n finder += finderPattern(column);\n // Proportion of dark modules in entire symbol\n // Add 10 points to a deviation of 5% increment or decrement in the proportion\n // ratio of dark module from the referential 50%\n let darkPixels = 0;\n bm.rectRead(0, Infinity, (_c, val) => (darkPixels += val ? 1 : 0));\n const darkPercent = (darkPixels / (bm.height * bm.width)) * 100;\n const dark = 10 * Math.floor(Math.abs(darkPercent - 50) / 5);\n return adjacent + box + finder + dark;\n}\n// Selects best mask according to penalty, if no mask is provided\nfunction drawQRBest(ver, ecc, data, maskIdx) {\n if (maskIdx === undefined) {\n const bestMask = best();\n for (let mask = 0; mask < PATTERNS.length; mask++)\n bestMask.add(penalty(drawQR(ver, ecc, data, mask, true)), mask);\n maskIdx = bestMask.get();\n }\n if (maskIdx === undefined)\n throw new Error('Cannot find mask'); // Should never happen\n return drawQR(ver, ecc, data, maskIdx);\n}\nfunction validateECC(ec) {\n if (!ECMode.includes(ec))\n throw new Error(`Invalid error correction mode=${ec}. Expected: ${ECMode}`);\n}\nfunction validateEncoding(enc) {\n if (!Encoding.includes(enc))\n throw new Error(`Encoding: invalid mode=${enc}. Expected: ${Encoding}`);\n if (enc === 'kanji' || enc === 'eci')\n throw new Error(`Encoding: ${enc} is not supported (yet?).`);\n}\nfunction validateMask(mask) {\n if (![0, 1, 2, 3, 4, 5, 6, 7].includes(mask) || !PATTERNS[mask])\n throw new Error(`Invalid mask=${mask}. Expected number [0..7]`);\n}\nfunction encodeQR(text, output = 'raw', opts = {}) {\n const ecc = opts.ecc !== undefined ? opts.ecc : 'medium';\n validateECC(ecc);\n const encoding = opts.encoding !== undefined ? opts.encoding : detectType(text);\n validateEncoding(encoding);\n if (opts.mask !== undefined)\n validateMask(opts.mask);\n let ver = opts.version;\n let data, err = new Error('Unknown error');\n if (ver !== undefined) {\n validateVersion(ver);\n data = encode(ver, ecc, text, encoding);\n }\n else {\n // If no version is provided, try to find smallest one which fits\n // Currently just scans all version, can be significantly speedup if needed\n for (let i = 1; i <= 40; i++) {\n try {\n data = encode(i, ecc, text, encoding);\n ver = i;\n break;\n }\n catch (e) {\n err = e;\n }\n }\n }\n if (!ver || !data)\n throw err;\n let res = drawQRBest(ver, ecc, data, opts.mask);\n res.assertDrawn();\n const border = opts.border === undefined ? 2 : opts.border;\n if (!Number.isSafeInteger(border))\n throw new Error(`Wrong border type=${typeof border}`);\n res = res.border(border, false); // Add border\n if (opts.scale !== undefined)\n res = res.scale(opts.scale); // Scale image\n if (output === 'raw')\n return res.data;\n else if (output === 'ascii')\n return res.toASCII();\n else if (output === 'svg')\n return res.toSVG();\n else if (output === 'gif')\n return res.toGIF();\n else if (output === 'term')\n return res.toTerm();\n else\n throw new Error(`Unknown output: ${output}`);\n}\n// Type tests\n// const o1 = qr('test', 'ascii');\n// const o2 = qr('test', 'raw');\n// const o3 = qr('test', 'gif');\n// const o4 = qr('test', 'svg');\n// const o5 = qr('test', 'term');\n\nexport { encodeQR as e };\n\n//# sourceMappingURL=index-f0bfb0c3.js.map","import { h, r as registerInstance, c as createEvent, g as getElement } from './index-a83c417f.js';\nimport { S as SimpleI18n, C as CloseButton, L as Logo, a as SDKVersion, W as WidgetWrapper } from './simple-i18n-50218fcb.js';\nimport { e as encodeQR } from './index-f0bfb0c3.js';\n\nconst AdvantagesListItem = ({ Icon, text }) => (h(\"div\", { class: 'flexContainer', style: { padding: '6', flexDirection: 'row' } },\n h(\"div\", { class: 'flexItem1' },\n h(Icon, null)),\n h(\"div\", { class: 'flexItem11' },\n h(\"span\", { style: { lineHeight: '2', color: 'black' } }, text))));\n\nconst LockIcon = () => (h(\"svg\", { width: \"20\", height: \"18\", viewBox: \"0 0 20 18\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M20.0002 7.9702V10.0302C20.0002 10.5802 19.5602 11.0302 19.0002 11.0502H17.0402C15.9602 11.0502 14.9702 10.2602 14.8802 9.1802C14.8202 8.5502 15.0602 7.9602 15.4802 7.5502C15.8502 7.1702 16.3602 6.9502 16.9202 6.9502H19.0002C19.5602 6.9702 20.0002 7.4202 20.0002 7.9702Z\", fill: \"#037DD6\" }),\n h(\"path\", { d: \"M18.47 12.55H17.04C15.14 12.55 13.54 11.12 13.38 9.3C13.29 8.26 13.67 7.22 14.43 6.48C15.07 5.82 15.96 5.45 16.92 5.45H18.47C18.76 5.45 19 5.21 18.97 4.92C18.75 2.49 17.14 0.83 14.75 0.55C14.51 0.51 14.26 0.5 14 0.5H5C4.72 0.5 4.45 0.52 4.19 0.56C1.64 0.88 0 2.78 0 5.5V12.5C0 15.26 2.24 17.5 5 17.5H14C16.8 17.5 18.73 15.75 18.97 13.08C19 12.79 18.76 12.55 18.47 12.55ZM11 6.75H5C4.59 6.75 4.25 6.41 4.25 6C4.25 5.59 4.59 5.25 5 5.25H11C11.41 5.25 11.75 5.59 11.75 6C11.75 6.41 11.41 6.75 11 6.75Z\", fill: \"#037DD6\" })));\n\nconst HeartIcon = () => (h(\"svg\", { width: \"20\", height: \"18\", viewBox: \"0 0 20 18\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M14.44 0.0999756C12.63 0.0999756 11.01 0.979976 10 2.32998C8.99 0.979976 7.37 0.0999756 5.56 0.0999756C2.49 0.0999756 0 2.59998 0 5.68998C0 6.87998 0.19 7.97998 0.52 8.99998C2.1 14 6.97 16.99 9.38 17.81C9.72 17.93 10.28 17.93 10.62 17.81C13.03 16.99 17.9 14 19.48 8.99998C19.81 7.97998 20 6.87998 20 5.68998C20 2.59998 17.51 0.0999756 14.44 0.0999756Z\", fill: \"#037DD6\" })));\n\nconst WalletIcon = () => (h(\"svg\", { width: \"20\", height: \"20\", viewBox: \"0 0 20 20\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M16.28 7.53V6.28C16.28 3.58 15.63 0 10 0C4.37 0 3.72 3.58 3.72 6.28V7.53C0.92 7.88 0 9.3 0 12.79V14.65C0 18.75 1.25 20 5.35 20H14.65C18.75 20 20 18.75 20 14.65V12.79C20 9.3 19.08 7.88 16.28 7.53ZM10 16.74C8.33 16.74 6.98 15.38 6.98 13.72C6.98 12.05 8.34 10.7 10 10.7C11.66 10.7 13.02 12.06 13.02 13.72C13.02 15.39 11.67 16.74 10 16.74ZM5.35 7.44C5.27 7.44 5.2 7.44 5.12 7.44V6.28C5.12 3.35 5.95 1.4 10 1.4C14.05 1.4 14.88 3.35 14.88 6.28V7.45C14.8 7.45 14.73 7.45 14.65 7.45H5.35V7.44Z\", fill: \"#037DD6\" })));\n\nconst InstallIcon = () => (h(\"svg\", { width: \"20\", height: \"20\", viewBox: \"0 0 24 24\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M16.4405 8.8999C20.0405 9.2099 21.5105 11.0599 21.5105 15.1099V15.2399C21.5105 19.7099 19.7205 21.4999 15.2505 21.4999H8.74047C4.27047 21.4999 2.48047 19.7099 2.48047 15.2399V15.1099C2.48047 11.0899 3.93047 9.2399 7.47047 8.9099\", stroke: \"white\", \"stroke-width\": \"1.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M12 2V14.88\", stroke: \"white\", \"stroke-width\": \"1.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M15.3504 12.6499L12.0004 15.9999L8.65039 12.6499\", stroke: \"white\", \"stroke-width\": \"1.5\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" })));\n\nconst styleCss = \".flexContainer {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n flex-direction: row;\\n}\\n\\n.flexItem {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem11 {\\n flex: 11;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem1 {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.tab {\\n padding: 8px;\\n cursor: pointer;\\n background-color: #F2F4F6;\\n font-size: 12px;\\n text-align: center;\\n color: #24292E;\\n}\\n\\n.tabcontainer {\\n padding: 4px;\\n background-color: #F2F4F6;\\n border-radius: 8px;\\n margin-bottom: 30px;\\n margin-top: 30px;\\n}\\n\\n.tabactive {\\n background-color: white;\\n -webkit-transition: background-color 300ms linear;\\n -ms-transition: background-color 300ms linear;\\n transition: background-color 300ms linear;\\n border-radius: 8px;\\n}\\n\\n.item {\\n font-size: 12px;\\n margin-bottom: 16px;\\n border-radius: 8px;\\n padding: 10px;\\n border: 2px #F2F4F6 solid;\\n color: #24292E;\\n}\\n\\n.extensionLabel {\\n font-style: normal;\\n font-weight: bold;\\n font-size: 14px;\\n text-align: cetner;\\n color: #24272A;\\n}\\n\\n.notice {\\n font-size: 12px;\\n margin-left: 10px;\\n margin-right: 10px;\\n color: grey;\\n}\\n\\n.button {\\n margin-top: 41.5px;\\n margin-bottom: 20px;\\n width: 100%;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n padding: 12px 20px;\\n background: #037DD6;\\n border-radius: 32px;\\n color: white;\\n border: 0;\\n font-size: 14px;\\n cursor: pointer;\\n}\\n\\n.backdrop {\\n visibility: visible;\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100%;\\n z-index: 99998;\\n background: rgba(0, 0, 0, 0.87);\\n opacity: 0.3;\\n}\\n\\n.modal {\\n visibility: visible;\\n position: fixed;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 99999;\\n background: white;\\n padding: 20px;\\n border-radius: 8px;\\n top: 50%;\\n max-width: 100%;\\n width: 460px;\\n min-width: 300px;\\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n color: #BBC0C5;\\n cursor: pointer;\\n}\\n\\n.logoContainer {\\n margin-left: 24px;\\n margin-right: 24px;\\n margin-top: 24px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.connectMobileText {\\n font-size: 14px;\\n color: black;\\n margin-top: 28px;\\n margin-bottom: 28px;\\n line-height: 2;\\n}\\n\\n.blue {\\n color: #037DD6;\\n font-weight: 700;\\n}\\n\\n.installExtensionText {\\n margin-left: 10px;\\n}\\n\\n.center {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.right {\\n display: flex;\\n align-items: center;\\n justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n svg {\\n width: 50%;\\n }\\n}\";\nconst MmInstallModalStyle0 = styleCss;\n\nconst InstallModal = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.close = createEvent(this, \"close\", 7);\n this.startDesktopOnboarding = createEvent(this, \"startDesktopOnboarding\", 7);\n this.link = undefined;\n this.sdkVersion = undefined;\n this.preferDesktop = undefined;\n this.tab = 1;\n this.isDefaultTab = true;\n this.translationsLoaded = false;\n this.onClose = this.onClose.bind(this);\n this.onStartDesktopOnboardingHandler = this.onStartDesktopOnboardingHandler.bind(this);\n this.setTab = this.setTab.bind(this);\n this.render = this.render.bind(this);\n this.setTab(this.preferDesktop ? 1 : 2);\n this.i18nInstance = new SimpleI18n();\n }\n async connectedCallback() {\n await this.i18nInstance.init({\n fallbackLng: 'en'\n });\n this.translationsLoaded = true;\n }\n updatePreferDesktop(newValue) {\n if (newValue) {\n this.setTab(1);\n }\n else {\n this.setTab(2);\n }\n }\n onClose() {\n this.close.emit();\n }\n onStartDesktopOnboardingHandler() {\n this.startDesktopOnboarding.emit();\n }\n setTab(newTab) {\n this.tab = newTab;\n this.isDefaultTab = false;\n }\n render() {\n if (!this.translationsLoaded) {\n return null; // or a loading state\n }\n const t = (key) => this.i18nInstance.t(key);\n const currentTab = this.isDefaultTab ? this.preferDesktop ? 1 : 2 : this.tab;\n const svgElement = encodeQR(this.link, \"svg\", {\n ecc: \"medium\",\n scale: 2\n });\n console.log(`Showing modal with link ${this.link} and SVG QRCode ${svgElement}`);\n return (h(WidgetWrapper, { className: \"install-model\" }, h(\"div\", { class: 'backdrop', onClick: this.onClose }), h(\"div\", { class: 'modal' }, h(\"div\", { class: 'closeButtonContainer' }, h(\"div\", { class: 'right' }, h(\"span\", { class: 'closeButton', onClick: this.onClose }, h(CloseButton, null)))), h(\"div\", { class: 'logoContainer' }, h(Logo, null)), h(\"div\", null, h(\"div\", { class: 'tabcontainer' }, h(\"div\", { class: 'flexContainer' }, h(\"div\", { onClick: () => this.setTab(1), class: `tab flexItem ${currentTab === 1 ? 'tabactive' : ''}` }, t('DESKTOP')), h(\"div\", { onClick: () => this.setTab(2), class: `tab flexItem ${currentTab === 2 ? 'tabactive' : ''}` }, t('MOBILE')))), h(\"div\", { style: { display: currentTab === 1 ? 'none' : 'block' } }, h(\"div\", { class: 'flexContainer' }, h(\"div\", { class: 'flexItem', style: {\n textAlign: 'center',\n marginTop: '4',\n } }, svgElement && (h(\"div\", { id: \"sdk-mm-qrcode\", class: 'center', innerHTML: svgElement })), h(\"div\", { class: 'connectMobileText' }, t('SCAN_TO_CONNECT'), \" \", h(\"br\", null), h(\"span\", { class: 'blue' }, h(\"b\", null, t('META_MASK_MOBILE_APP'))))))), h(\"div\", { style: { display: currentTab === 2 ? 'none' : 'block' } }, h(\"div\", { class: 'item' }, h(AdvantagesListItem, { Icon: HeartIcon, text: t('INSTALL_MODAL.TRUSTED_BY_USERS') })), h(\"div\", { class: 'item' }, h(AdvantagesListItem, { Icon: LockIcon, text: t('INSTALL_MODAL.LEADING_CRYPTO_WALLET') })), h(\"div\", { class: 'item' }, h(AdvantagesListItem, { Icon: WalletIcon, text: t('INSTALL_MODAL.CONTROL_DIGITAL_INTERACTIONS') })), h(\"button\", { class: 'button', onClick: this.onStartDesktopOnboardingHandler }, h(InstallIcon, null), h(\"span\", { class: 'installExtensionText' }, t('INSTALL_MODAL.INSTALL_META_MASK_EXTENSION'))))), h(SDKVersion, { version: this.sdkVersion }))));\n }\n get el() { return getElement(this); }\n static get watchers() { return {\n \"preferDesktop\": [\"updatePreferDesktop\"]\n }; }\n};\nInstallModal.style = MmInstallModalStyle0;\n\nexport { InstallModal as mm_install_modal };\n\n//# sourceMappingURL=mm-install-modal.entry.js.map","import { r as registerInstance, c as createEvent, h, g as getElement } from './index-a83c417f.js';\nimport { S as SimpleI18n, C as CloseButton, L as Logo, a as SDKVersion, W as WidgetWrapper } from './simple-i18n-50218fcb.js';\n\nconst styleCss = \".flexContainer {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n flex-direction: row;\\n}\\n\\n.flexItem {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem11 {\\n flex: 11;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem1 {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.tab {\\n padding: 8px;\\n cursor: pointer;\\n background-color: #F2F4F6;\\n font-size: 12px;\\n text-align: center;\\n color: #24292E;\\n}\\n\\n.tabcontainer {\\n padding: 4px;\\n background-color: #F2F4F6;\\n border-radius: 8px;\\n margin-bottom: 30px;\\n margin-top: 30px;\\n}\\n\\n.tabactive {\\n background-color: white;\\n -webkit-transition: background-color 300ms linear;\\n -ms-transition: background-color 300ms linear;\\n transition: background-color 300ms linear;\\n border-radius: 8px;\\n}\\n\\n.item {\\n font-size: 12px;\\n margin-bottom: 16px;\\n border-radius: 8px;\\n padding: 10px;\\n border: 2px #F2F4F6 solid;\\n color: #24292E;\\n}\\n\\n.extensionLabel {\\n font-style: normal;\\n font-weight: bold;\\n font-size: 14px;\\n text-align: cetner;\\n color: #24272A;\\n}\\n\\n.notice {\\n font-size: 12px;\\n margin-left: 10px;\\n margin-right: 10px;\\n color: grey;\\n}\\n\\n.button {\\n margin-top: 41.5px;\\n margin-bottom: 20px;\\n width: 100%;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n padding: 12px 20px;\\n background: #037DD6;\\n border-radius: 32px;\\n color: white;\\n border: 0;\\n font-size: 14px;\\n cursor: pointer;\\n}\\n\\n.backdrop {\\n visibility: visible;\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100%;\\n z-index: 99998;\\n background: rgba(0, 0, 0, 0.87);\\n opacity: 0.3;\\n}\\n\\n.modal {\\n visibility: visible;\\n position: fixed;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 99999;\\n background: white;\\n padding: 20px;\\n border-radius: 8px;\\n top: 50%;\\n max-width: 100%;\\n width: 460px;\\n min-width: 300px;\\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n color: #BBC0C5;\\n cursor: pointer;\\n}\\n\\n.logoContainer {\\n margin-left: 24px;\\n margin-right: 24px;\\n margin-top: 24px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.connectMobileText {\\n font-size: 14px;\\n color: black;\\n margin-top: 28px;\\n margin-bottom: 28px;\\n line-height: 2;\\n}\\n\\n.blue {\\n color: #037DD6;\\n font-weight: 700;\\n}\\n\\n.installExtensionText {\\n margin-left: 10px;\\n}\\n\\n.center {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.right {\\n display: flex;\\n align-items: center;\\n justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n svg {\\n width: 50%;\\n }\\n}\";\nconst MmPendingModalStyle0 = styleCss;\n\nconst PendingModal = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.close = createEvent(this, \"close\", 7);\n this.disconnect = createEvent(this, \"disconnect\", 7);\n this.updateOTPValue = createEvent(this, \"updateOTPValue\", 7);\n this.displayOTP = undefined;\n this.sdkVersion = undefined;\n this.otpCode = undefined;\n this.translationsLoaded = false;\n this.i18nInstance = new SimpleI18n();\n }\n async connectedCallback() {\n await this.i18nInstance.init({\n fallbackLng: 'en'\n });\n this.translationsLoaded = true;\n }\n onClose() {\n this.close.emit();\n }\n onDisconnect() {\n this.disconnect.emit();\n }\n onUpdateOTPValueHandler(otpValue) {\n this.updateOTPValue.emit({\n otpValue,\n });\n }\n disconnectedCallback() {\n this.onClose();\n }\n render() {\n var _a;\n if (!this.translationsLoaded) {\n return null;\n }\n const displayOTP = (_a = this.displayOTP) !== null && _a !== void 0 ? _a : true;\n const sdkVersion = this.sdkVersion;\n const t = (key) => this.i18nInstance.t(key);\n return (h(WidgetWrapper, { className: \"pending-modal\" }, h(\"div\", { class: 'backdrop', onClick: () => this.onClose() }), h(\"div\", { class: 'modal' }, h(\"div\", { class: 'closeButtonContainer' }, h(\"div\", { class: 'right' }, h(\"span\", { class: 'closeButton', onClick: () => this.onClose() }, h(CloseButton, null)))), h(\"div\", { class: 'logoContainer' }, h(Logo, null)), h(\"div\", null, h(\"div\", { class: 'flexContainer', style: {\n flexDirection: 'column',\n color: 'black',\n } }, h(\"div\", { class: 'flexItem', style: {\n textAlign: 'center',\n marginTop: '30px',\n marginBottom: '30px',\n fontSize: '16px',\n } }, displayOTP\n ? t('PENDING_MODAL.OPEN_META_MASK_SELECT_CODE')\n : t('PENDING_MODAL.OPEN_META_MASK_CONTINUE')), h(\"div\", { id: \"sdk-mm-otp-value\", style: { padding: '10px', fontSize: '32px', display: this.otpCode ? 'block' : 'none' } }, this.otpCode), displayOTP && (h(\"div\", { class: 'notice' }, \"* \", t('PENDING_MODAL.NUMBER_AFTER_OPEN_NOTICE')))), h(\"div\", { style: { marginTop: '20px' } }, h(\"button\", { class: 'button blue', style: {\n marginTop: '5px',\n color: '#0376C9',\n borderColor: '#0376C9',\n borderWidth: '1px',\n borderStyle: 'solid',\n backgroundColor: 'white',\n }, onClick: () => this.onDisconnect() }, t('PENDING_MODAL.DISCONNECT')))), h(SDKVersion, { version: sdkVersion }))));\n }\n get el() { return getElement(this); }\n};\nPendingModal.style = MmPendingModalStyle0;\n\nexport { PendingModal as mm_pending_modal };\n\n//# sourceMappingURL=mm-pending-modal.entry.js.map","import { h, r as registerInstance, c as createEvent, g as getElement } from './index-a83c417f.js';\nimport { S as SimpleI18n, C as CloseButton, L as Logo, a as SDKVersion, W as WidgetWrapper } from './simple-i18n-50218fcb.js';\nimport { e as encodeQR } from './index-f0bfb0c3.js';\n\nconst ConnectIcon = () => (h(\"svg\", { width: \"21\", height: \"15\", viewBox: \"0 0 21 15\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M14.1364 14.9851C13.5909 14.9851 13.2273 14.5851 13.2273 13.9851C13.2273 13.3851 13.5909 12.9851 14.1364 12.9851C16.6818 12.9851 18.6818 10.7851 18.6818 7.98508C18.6818 5.18508 16.6818 2.98508 14.1364 2.98508C11.5909 2.98508 9.59091 5.18508 9.59091 7.98508C9.59091 8.58508 9.22727 8.98508 8.68182 8.98508C8.13636 8.98508 7.77273 8.58508 7.77273 7.98508C7.77273 4.08508 10.5909 0.985077 14.1364 0.985077C17.6818 0.985077 20.5 4.08508 20.5 7.98508C20.5 11.8851 17.6818 14.9851 14.1364 14.9851ZM6.68182 14.7851C3.22727 14.7851 0.5 11.6851 0.5 7.98508C0.5 4.28508 3.22727 1.18508 6.68182 1.18508C7.22727 1.18508 7.59091 1.58508 7.59091 2.18508C7.59091 2.78508 7.22727 3.18508 6.68182 3.18508C4.22727 3.18508 2.31818 5.38508 2.31818 7.98508C2.31818 10.5851 4.22727 12.7851 6.68182 12.7851C9.13636 12.7851 11.0455 10.6851 11.0455 7.98508C11.0455 7.38508 11.4091 6.98508 11.9545 6.98508C12.5 6.98508 12.8636 7.38508 12.8636 7.98508C12.7727 11.6851 10.0455 14.7851 6.68182 14.7851Z\", fill: \"white\" })));\n\nconst MetamaskExtensionImage = () => (h(\"svg\", { width: \"400\", height: \"300\", viewBox: \"0 0 467 300\", fill: \"none\", xmlns: \"http://www.w3.org/2000/svg\" },\n h(\"path\", { d: \"M312.387 280.629C312.549 280.583 312.247 280.735 312.387 280.629L339.678 260.425C340.088 260.118 340.132 259.156 340.07 258.647C340.008 258.138 339.573 258.257 339.106 258.084L311.712 247.455C311.292 247.301 311.308 247.402 310.939 247.673C310.569 247.944 310.356 248.21 310.356 248.672L310.459 279.504C310.461 280.025 311.163 280.619 311.614 280.847C311.913 280.996 312.072 280.718 312.387 280.629ZM336.204 259.736L312.979 276.292L313.439 251.139L336.204 259.736Z\", fill: \"url(#paint0_linear_1356_14057)\" }),\n h(\"path\", { d: \"M324.639 260.342C324.358 259.547 323.485 258.91 322.707 259.215C319.6 260.432 318.17 262.313 317.287 264.066C316.482 265.665 316.197 267.482 314.188 268.269C312.178 269.055 310.763 268.663 309.162 268.007C307.406 267.287 305.504 266.182 302.397 267.399C299.289 268.616 297.859 270.497 296.976 272.25C296.171 273.849 295.697 274.886 293.685 275.673C291.675 276.459 290.261 276.067 288.659 275.411C286.903 274.691 284.999 273.587 281.894 274.803C278.789 276.019 277.549 278.681 276.666 280.434C275.861 282.034 275.386 283.07 273.374 283.857C272.596 284.161 271.931 285.055 272.211 285.849C272.492 286.644 273.365 287.281 274.143 286.977C277.25 285.76 278.68 283.879 279.563 282.125C280.368 280.526 280.65 278.71 282.662 277.923C284.672 277.136 286.087 277.528 287.688 278.184C289.444 278.904 291.348 280.009 294.453 278.793C297.561 277.576 298.991 275.695 299.874 273.941C300.679 272.342 301.153 271.306 303.165 270.519C305.175 269.732 306.589 270.124 308.191 270.78C309.947 271.5 311.849 272.605 314.956 271.388C318.063 270.172 319.301 267.511 320.184 265.757C320.989 264.158 321.466 263.121 323.476 262.335C324.254 262.032 324.919 261.137 324.639 260.342Z\", fill: \"url(#paint1_linear_1356_14057)\" }),\n h(\"path\", { d: \"M389.034 111.124C388.968 112.406 387.342 113.113 386.324 113.549C384.297 114.419 382.089 114.493 379.942 114.5C376.607 114.509 373.215 114.163 369.89 113.976C366.712 113.798 363.156 113.311 360.03 114.232C357.705 114.919 355.667 116.762 353.452 117.739C351.129 118.765 348.957 119.198 346.489 119.687C335.569 121.85 323.587 120.825 312.656 119.977C311.92 119.92 312.539 118.997 313.237 118.981C313.207 118.815 313.001 118.394 313.045 118.201C313.086 118.029 312.781 117.586 312.853 117.421C312.67 117.198 313.316 117.427 313.626 117.204C315.912 115.557 318.721 114.79 321.363 115.041C324.677 115.355 327.293 116.04 330.641 115.781C334.392 115.491 338.125 114.787 341.857 114.312C345.142 113.892 349.09 113.941 352.106 112.28C352.916 111.834 353.137 111.262 353.269 110.287C353.331 109.828 353.672 108.969 353.658 108.511C353.629 107.529 354.191 107.886 355.013 107.298C356.857 105.981 358.274 105.516 360.428 105.784C362.841 106.083 365.264 107.273 367.578 107.953C370.761 108.888 374.328 108.646 377.631 108.477C380.517 108.329 383.141 107.901 385.944 108.653C387.013 108.941 389.104 109.745 389.034 111.124Z\", fill: \"url(#paint2_linear_1356_14057)\" }),\n h(\"path\", { d: \"M278.118 85.4414C280.313 83.8186 283.302 83.9 285.853 83.2728C290.501 82.127 295.644 78.4476 300.549 79.1524C301.299 79.2595 300.904 81.0355 300.159 80.9295C300.131 80.9256 300.187 80.9333 300.159 80.9295C300.089 81.0185 299.516 81.1051 299.385 81.1463C294.999 82.515 292.895 87.5083 289.126 89.8598C287.799 90.688 286.771 90.8351 285.258 90.9441C283.515 91.0691 280.964 90.5775 279.269 90.1219C277.15 89.5532 275.965 87.034 278.118 85.4414Z\", fill: \"url(#paint3_linear_1356_14057)\" }),\n h(\"path\", { d: \"M122.567 166.093C113.597 172.832 104.535 179.836 99.517 190.092C98.5342 192.099 97.519 195.019 97.9533 197.204C98.9699 202.316 105.76 203.049 110.691 201.96C113.468 201.347 116.325 199.231 115.921 196.319C115.576 193.81 113.158 192.986 112.072 190.73C110.779 188.04 112.35 184.97 114.218 182.62C128.134 165.099 150.074 157.394 171.093 151.607C175.385 150.425 180.897 147.69 180.581 143.099C180.372 140.072 177.118 137.683 174.221 137.383C171.324 137.082 168.481 138.773 165.715 139.776C158.416 142.419 151.17 143.799 143.489 143.526C136.865 143.29 130.976 143.316 129.562 150.781C128.138 158.276 129.53 160.863 122.567 166.093Z\", fill: \"url(#paint4_linear_1356_14057)\" }),\n h(\"path\", { d: \"M79.1056 153.531C60.3932 164.378 43.7478 178.354 32.8214 197.415C30.3313 201.76 27.9216 206.554 27.1821 211.512C26.4448 216.47 27.7591 222.525 30.8133 226.337C34.908 231.446 41.6938 232.915 48.1811 233.125C50.7248 233.208 53.0035 233.066 55.3316 231.947C57.6602 230.83 59.7548 228.359 59.5978 225.742C59.3303 221.315 54.5491 219.665 50.9271 217.34C42.6566 212.037 40.4958 199.493 44.2381 190.032C47.9803 180.57 55.8228 173.173 63.2316 166.338C67.229 162.651 71.5194 158.372 76.777 157.522C79.9167 157.015 83.4706 157.589 86.6295 157.252C93.9004 156.479 99.64 151.404 105.588 146.912C115.048 139.765 126.045 134.283 137.501 132.093C141.913 131.248 146.293 130.493 149.682 127.831C151.37 126.507 150.803 123.567 148.726 123.93C138.542 125.713 128.652 131.135 119.142 134.758C105.627 139.914 91.7133 146.223 79.1056 153.531Z\", fill: \"url(#paint5_linear_1356_14057)\" }),\n h(\"path\", { d: \"M96.3677 117.321C96.0315 116.64 95.2914 116.612 94.6293 116.975C91.9858 118.417 91.5452 120.509 90.9466 122.178C90.4004 123.702 89.3647 124.67 87.6542 125.604C85.9437 126.538 85.0983 126.316 83.5956 125.91C81.9481 125.465 79.8603 125.424 77.2168 126.866C74.5734 128.309 74.1348 130.401 73.5341 132.07C72.9879 133.593 71.9522 134.562 70.2417 135.496C68.5313 136.43 67.6859 136.208 66.1832 135.801C64.5357 135.357 62.2569 134.538 59.6128 135.978C56.9694 137.42 56.5308 139.512 55.9301 141.181C55.3839 142.705 54.5398 144.454 52.8293 145.388C52.1667 145.748 52.1006 146.485 52.439 147.165C52.7752 147.845 53.5153 147.874 54.1773 147.511C56.8208 146.069 57.2594 143.977 57.86 142.307C58.4062 140.784 59.4419 139.815 61.1524 138.881C62.8629 137.948 63.7083 138.17 65.211 138.576C66.8585 139.021 68.9458 139.059 71.5898 137.619C74.2333 136.177 74.6718 134.085 75.2725 132.416C75.8187 130.892 76.8544 129.924 78.5649 128.99C80.2754 128.056 81.1207 128.278 82.6235 128.684C84.2709 129.129 86.5503 129.95 89.1938 128.507C91.8373 127.065 92.2779 124.973 92.8765 123.304C93.4227 121.78 94.2663 120.03 95.9773 119.098C96.6378 118.738 96.7039 118.001 96.3677 117.321Z\", fill: \"#FBC49D\" }),\n h(\"path\", { d: \"M391.827 164.699C392.04 164.639 392.39 164.573 392.6 164.481C393.87 163.921 395.363 162.429 395.893 161.051C396.421 159.673 396.237 158.321 395.712 156.931C394.629 154.061 391.777 152.62 389.155 153.775C386.531 154.931 384.962 158.455 386.042 161.325C387.038 163.963 389.369 165.392 391.827 164.699ZM394.166 157.367C394.529 158.332 394.52 159.751 394.156 160.706C393.792 161.662 393.1 162.534 392.218 162.921C390.398 163.723 388.338 162.878 387.589 160.889C387.226 159.925 387.234 158.506 387.599 157.55C387.963 156.594 388.654 155.723 389.536 155.336C391.356 154.534 393.416 155.376 394.166 157.367Z\", fill: \"#86E29B\" }),\n h(\"path\", { d: \"M62.7198 108.691C64.4912 108.191 66.6152 106.609 67.5596 104.824C68.4273 103.187 68.465 101.455 67.9609 99.7066C67.4547 97.9586 66.0792 96.5141 64.4963 95.6786C62.9135 94.843 61.2077 94.8578 59.4756 95.4255C57.7435 95.9933 56.2768 97.4364 55.409 99.074C53.6185 102.456 55.2032 106.494 58.4723 108.22C60.0142 109.035 61.1315 109.138 62.7198 108.691ZM60.6304 96.7682C61.819 96.4332 63.0232 96.8871 64.1048 97.4571C65.2463 98.0603 66.0495 98.8796 66.4145 100.142C66.7791 101.403 66.4488 103.299 65.8224 104.48C64.5299 106.919 61.2212 107.686 58.8638 106.441C56.5063 105.197 55.8538 101.858 57.1462 99.4185C57.7726 98.2375 58.6059 97.3957 59.8573 96.9862C59.9214 96.9635 60.5631 96.7872 60.6304 96.7682Z\", fill: \"#FFB0EB\" }),\n h(\"path\", { d: \"M77.0217 242.979C75.9542 243.28 75.1664 242.151 74.9029 241.074C74.6394 239.996 75 239.378 76.0676 239.077C77.1351 238.776 78.5053 238.907 78.7688 239.984C79.0323 241.061 78.0893 242.678 77.0217 242.979Z\", fill: \"url(#paint6_linear_1356_14057)\" }),\n h(\"path\", { d: \"M380.506 184.577C379.439 184.878 378.651 183.749 378.387 182.672C378.124 181.594 378.484 180.976 379.552 180.675C380.619 180.374 381.99 180.505 382.253 181.582C382.517 182.659 381.574 184.276 380.506 184.577Z\", fill: \"url(#paint7_linear_1356_14057)\" }),\n h(\"path\", { d: \"M348.82 246.969C347.752 247.27 346.382 247.14 346.119 246.063C345.855 244.985 346.798 243.369 347.866 243.068C348.933 242.767 349.721 243.896 349.985 244.973C350.248 246.05 349.888 246.669 348.82 246.969Z\", fill: \"url(#paint8_linear_1356_14057)\" }),\n h(\"path\", { d: \"M140.419 282.412C139.351 282.713 138.754 282.365 138.491 281.288C138.227 280.21 138.397 278.812 139.464 278.511C140.532 278.21 142.093 279.121 142.357 280.198C142.62 281.275 141.486 282.111 140.419 282.412Z\", fill: \"url(#paint9_linear_1356_14057)\" }),\n h(\"path\", { d: \"M121.462 101.679C120.395 101.979 119.798 101.631 119.534 100.554C119.271 99.4764 119.44 98.0779 120.508 97.777C121.575 97.4761 123.136 98.3868 123.4 99.4642C123.663 100.542 122.53 101.378 121.462 101.679Z\", fill: \"url(#paint10_linear_1356_14057)\" }),\n h(\"path\", { d: \"M370.749 159.005C369.682 159.306 368.311 159.175 368.048 158.098C367.784 157.021 368.727 155.404 369.795 155.103C370.863 154.802 371.65 155.931 371.914 157.008C372.177 158.086 371.817 158.704 370.749 159.005Z\", fill: \"url(#paint11_linear_1356_14057)\" }),\n h(\"path\", { d: \"M384.211 245.345C383.143 245.646 381.773 245.515 381.51 244.438C381.246 243.361 382.189 241.744 383.257 241.443C384.324 241.142 385.112 242.271 385.376 243.348C385.639 244.426 385.278 245.044 384.211 245.345Z\", fill: \"url(#paint12_linear_1356_14057)\" }),\n h(\"path\", { d: \"M364.771 41.3873C363.063 41.8687 361.337 40.8616 360.915 39.1378C360.493 37.414 361.536 35.6263 363.244 35.1449C364.953 34.6634 366.679 35.6706 367.101 37.3944C367.522 39.1182 366.479 40.9059 364.771 41.3873Z\", fill: \"url(#paint13_linear_1356_14057)\" }),\n h(\"path\", { d: \"M404.311 77.905C404.602 77.8231 404.875 77.9236 405.084 77.6871C405.437 77.2908 404.814 76.6385 404.703 76.1265L401.277 58.7418C401.149 58.163 400.687 57.5371 400.123 57.3991C399.558 57.2611 398.969 57.3812 398.576 57.835L385.784 73.1179C385.395 73.564 385.199 74.3453 385.393 74.8964C385.585 75.4481 385.978 76.1646 386.548 76.2391L403.538 78.123C403.744 78.1479 404.114 77.9607 404.311 77.905ZM398.948 62.7348L401.811 74.4394L389.841 72.8085L398.948 62.7348Z\", fill: \"#FFB0EB\" }),\n h(\"path\", { d: \"M97.5393 295.311C97.7108 295.263 97.4284 295.461 97.5393 295.311L108.785 280.464C108.975 280.211 108.718 279.972 108.594 279.684C108.47 279.396 108.124 279.917 107.821 279.902L88.5106 278.672C88.2101 278.659 87.895 278.62 87.7374 278.89C87.5798 279.159 87.7755 279.402 87.9283 279.67L96.5753 294.749C96.7102 294.99 97.2696 295.297 97.5393 295.311C97.6283 295.319 97.4556 295.335 97.5393 295.311ZM106.465 281.118L96.9667 292.97L90.6295 280.577L106.465 281.118Z\", fill: \"#86E29B\" }),\n h(\"path\", { d: \"M393.699 108.848C389.518 104.446 414.629 114.366 413.945 120.659C413.259 126.952 401.355 129.102 403.894 123.491C406.042 118.747 400.376 115.876 393.699 108.848Z\", fill: \"#FBC49D\" }),\n h(\"path\", { d: \"M139.414 115.959C139.434 115.953 139.392 115.965 139.414 115.959C141.963 115.2 143.436 111.976 142.717 109.189C142.37 107.839 141.526 107.199 140.408 106.504C139.289 105.808 138.171 105.449 136.933 105.815C135.698 106.182 134.85 107.033 134.222 108.247C133.595 109.461 133.282 111.234 133.63 112.585C133.978 113.935 134.821 114.574 135.94 115.27C137.04 115.952 138.199 116.301 139.414 115.959ZM137.315 107.375C138.222 107.12 139.005 106.994 139.825 107.502C140.661 108.02 140.912 108.618 141.171 109.625C141.708 111.704 140.935 113.834 139.032 114.398C138.11 114.675 137.356 114.791 136.522 114.272C135.686 113.753 135.436 113.155 135.176 112.149C134.917 111.142 134.718 109.714 135.186 108.81C135.654 107.905 136.394 107.649 137.315 107.375C137.329 107.371 137.299 107.38 137.315 107.375Z\", fill: \"#75C4FD\" }),\n h(\"path\", { d: \"M308.981 78.7519C310.052 78.4043 311.158 78.7096 312.265 78.6613C313.655 78.6006 314.936 78.517 316.323 78.3531C319.497 77.9795 322.798 77.4906 325.984 77.3012C329.309 77.1025 332.514 76.8551 335.836 77.0295C338.809 77.1842 342.163 77.3405 345.105 77.7558C352.129 78.7468 359.331 79.0578 366.347 80.1158C372.252 81.008 377.93 82.1319 383.722 83.5644C385.925 84.0054 388.267 85.0754 389.126 85.3792C389.421 85.4833 389.37 85.8347 389.317 86.1595C389.306 86.2271 389.353 86.1146 389.317 86.1595C388.269 87.414 386.564 86.8124 385.259 86.4677C384.406 86.241 381.488 85.9494 381.011 85.9957C380.14 86.0815 379.277 86.014 379.656 87.2114C380.122 88.6824 382.391 89.7375 383.704 90.2419C385.883 91.0803 388.771 91.2561 390.845 92.4015C392.968 92.821 395.425 93.5002 397.022 93.9986C402.83 95.8103 407.806 98.8678 413.033 102.002C415.503 103.482 417.829 104.764 419.973 106.72C421.647 108.248 423.771 109.882 424.595 112.091C425.113 113.482 424.451 115.471 422.848 115.085C420.353 114.488 419.638 111.665 418.227 109.714C415.003 105.251 410.067 102.067 405.118 100.06C402.64 99.0556 399.803 98.729 397.204 98.1176C394.411 97.4613 391.597 97.0442 388.707 97.1736C385.646 97.3097 382.846 97.5534 379.819 98.0078C377.027 98.4264 374.252 98.4441 371.514 97.8441C368.766 97.2421 366.276 96.7553 363.6 95.9021C361.662 95.2848 359.013 94.5583 357.232 93.5247C355.699 92.6339 355.631 91.2381 357.241 90.186C359.87 88.4656 362.778 89.8021 365.546 90.3497C365.561 90.3527 365.532 90.3468 365.546 90.3497C367.858 90.804 369.649 90.098 371.923 89.3884C372.489 89.2128 373.255 89.0482 373.47 88.953C374.383 88.5432 375.895 87.8227 375.407 86.7394C374.868 85.5457 372.659 84.8846 371.55 84.4891C369.74 83.8428 368.053 82.9215 366.147 82.6743C365.654 82.6095 365.109 83.1606 364.6 83.1097C363.36 83.1121 361.769 83.348 360.543 83.418C357.43 83.5916 354.583 83.6228 351.464 83.4719C348.714 83.3377 346.432 82.8542 343.741 82.3102C340.773 81.7101 337.52 81.5879 334.471 81.5839C331.393 81.5811 328.6 81.7214 325.583 82.4181C322.758 83.0702 319.757 83.6198 316.887 84.0326C314.698 84.3481 312.467 84.6054 310.319 84.2137C309.079 83.9871 306.994 83.3394 306.461 81.9635C305.846 80.3659 307.736 79.1556 308.981 78.7519Z\", fill: \"url(#paint14_linear_1356_14057)\" }),\n h(\"path\", { d: \"M242.269 242.95C242.295 242.947 242.244 242.955 242.269 242.95C244.934 242.606 247.53 241.858 250.2 241.574C253.133 241.264 256.006 240.56 258.906 239.982C263.26 239.117 268.026 238.52 272.254 237.097C274.429 236.365 276.067 235.298 278.251 234.592C280.361 233.909 283.058 233.12 285.216 232.652C289.317 231.764 293.049 231.66 297.016 230.198C301.109 228.69 305.088 226.673 308.819 224.409C312.645 222.086 316.282 219.769 320.622 218.62C322.381 218.154 323.919 218.219 325.65 218.886C327.016 219.413 327.739 220.337 327.196 221.79C326.557 223.504 324.659 224.7 323.131 225.423C320.854 226.5 319.53 227.184 317.134 227.927C314.619 228.707 311.888 229.24 309.395 230.083C308.226 230.947 307.17 232.522 306.105 233.501C303.996 235.441 301.666 237.03 298.945 237.996C292.934 240.129 286.354 238.602 280.183 239.056C279.661 239.095 279.162 239.442 278.635 239.487C275.592 240.135 272.2 240.63 269.156 241.294C264.546 242.299 260.456 243.409 255.808 244.179C251.971 244.814 243.815 245.854 243.815 245.854L242.074 245.505C240.575 245.281 240.751 243.152 242.269 242.95Z\", fill: \"url(#paint15_linear_1356_14057)\" }),\n h(\"path\", { d: \"M432.985 171.626C438.212 165.465 445.109 153.64 442.906 144.649C442.162 137.999 433.671 132.912 424.963 135.518C420.16 136.957 416.435 142.146 419.724 144.498C420.656 145.164 422.187 145.591 423.391 145.969C434.204 149.375 434.925 162.538 425.069 169.683C421.087 172.569 416.347 174.292 411.914 176.719C400.151 183.162 399.887 196.847 387.7 202.712C382.326 205.298 375.761 206.838 370.297 209.275C359.98 213.88 352.555 221.733 342.241 226.341C337.225 228.584 330.266 231.632 323.483 234.12C321.475 234.855 321.999 237.058 324.056 236.46C324.098 236.449 324.017 236.474 324.056 236.46C329.079 234.971 334.437 233.161 339.331 231.33C352.278 226.48 365.28 220.971 377.43 214.775C401.78 202.367 416.881 190.609 432.985 171.626Z\", fill: \"url(#paint16_linear_1356_14057)\" }),\n h(\"path\", { d: \"M343.644 241.104C348.002 234.144 357.126 232.455 364.343 231.134C368.176 230.431 372.406 229.878 376.137 228.662C380.691 227.175 384.558 224.095 388.327 221.077C389.452 220.177 391.204 218.466 392.393 217.436C393.185 216.748 393.644 216.026 394.33 215.225C396 213.275 399.599 209.812 401.687 208.16C403.263 206.914 407.779 204.758 408.259 207.986C408.611 210.359 406.379 213.087 404.961 214.747C402.224 217.953 398.998 221.079 395.475 223.243C391.749 225.531 387.701 227.439 383.674 229.051C381.672 229.853 379.519 230.073 377.486 230.785C376.001 231.307 374.486 232.236 373.037 232.866C371.034 233.738 368.99 234.28 367.041 235.38C364.436 236.849 361.782 238.783 359.108 240.105C356.331 241.477 353.823 242.691 350.791 243.27C348.6 243.687 345.501 243.641 343.836 241.884C343.526 241.554 343.389 241.51 343.644 241.104Z\", fill: \"url(#paint17_linear_1356_14057)\" }),\n h(\"path\", { d: \"M190.163 273.219C222.905 268.849 232.64 262.943 213.962 259.057C195.285 255.172 187.5 262.08 188.434 266.2C189.366 270.32 180.381 271.326 169.286 272.39C158.193 273.454 157.141 276.354 190.163 273.219Z\", fill: \"url(#paint18_linear_1356_14057)\" }),\n h(\"path\", { d: \"M295.952 95.4242L241.395 135.226L251.54 111.77L295.952 95.4242Z\", fill: \"#E17726\", stroke: \"#E17726\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M170.111 95.4242L224.181 135.598L214.522 111.77L170.111 95.4242Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M276.309 187.712L261.793 209.576L292.876 218.014L301.78 188.189L276.309 187.712Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M164.336 188.189L173.186 218.014L204.215 209.576L189.753 187.712L164.336 188.189Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M202.542 150.776L193.908 163.618L224.667 164.998L223.642 132.36L202.542 150.776Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M263.52 150.775L242.097 131.989L241.395 164.998L272.154 163.618L263.52 150.775Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M204.215 209.576L222.832 200.714L206.805 188.402L204.215 209.576Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M243.23 200.714L261.793 209.576L259.257 188.402L243.23 200.714Z\", fill: \"#E27625\", stroke: \"#E27625\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M261.793 209.576L243.23 200.714L244.741 212.601L244.579 217.643L261.793 209.576Z\", fill: \"#D5BFB2\", stroke: \"#D5BFB2\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M204.215 209.576L221.483 217.643L221.375 212.601L222.832 200.714L204.215 209.576Z\", fill: \"#D5BFB2\", stroke: \"#D5BFB2\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M221.807 180.547L206.373 176.09L217.274 171.154L221.807 180.547Z\", fill: \"#233447\", stroke: \"#233447\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M244.255 180.547L248.788 171.154L259.742 176.09L244.255 180.547Z\", fill: \"#233447\", stroke: \"#233447\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M204.215 209.576L206.913 187.712L189.753 188.189L204.215 209.576Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M259.149 187.712L261.793 209.576L276.309 188.189L259.149 187.712Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M272.154 163.618L241.395 164.998L244.255 180.547L248.788 171.154L259.742 176.09L272.154 163.618Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M206.373 176.09L217.274 171.154L221.807 180.547L224.667 164.998L193.908 163.618L206.373 176.09Z\", fill: \"#CC6228\", stroke: \"#CC6228\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M193.908 163.618L206.805 188.402L206.373 176.09L193.908 163.618Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M259.743 176.09L259.257 188.402L272.154 163.618L259.743 176.09Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M224.667 164.998L221.807 180.548L225.422 198.909L226.232 174.71L224.667 164.998Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M241.395 164.998L239.884 174.657L240.64 198.909L244.255 180.548L241.395 164.998Z\", fill: \"#E27525\", stroke: \"#E27525\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M244.255 180.547L240.64 198.909L243.23 200.714L259.257 188.402L259.743 176.09L244.255 180.547Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M206.373 176.09L206.805 188.402L222.832 200.714L225.422 198.909L221.807 180.547L206.373 176.09Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M244.579 217.643L244.741 212.601L243.338 211.434H222.724L221.375 212.601L221.483 217.643L204.215 209.576L210.259 214.459L222.508 222.791H243.5L255.803 214.459L261.793 209.576L244.579 217.643Z\", fill: \"#C0AC9D\", stroke: \"#C0AC9D\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M243.23 200.714L240.64 198.909H225.422L222.832 200.714L221.375 212.601L222.724 211.434H243.338L244.741 212.601L243.23 200.714Z\", fill: \"#161616\", stroke: \"#161616\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M298.272 137.827L302.859 115.856L295.952 95.4242L243.23 133.899L263.52 150.775L292.174 159.001L298.488 151.731L295.736 149.767L300.107 145.84L296.761 143.293L301.132 140.002L298.272 137.827Z\", fill: \"#763E1A\", stroke: \"#763E1A\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M163.203 115.856L167.844 137.827L164.876 140.002L169.301 143.293L165.955 145.84L170.326 149.767L167.574 151.731L173.888 159.001L202.542 150.775L222.832 133.899L170.11 95.4242L163.203 115.856Z\", fill: \"#763E1A\", stroke: \"#763E1A\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M292.175 159.001L263.52 150.775L272.154 163.618L259.257 188.402L276.309 188.189H301.78L292.175 159.001Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M202.542 150.775L173.888 159.001L164.336 188.189H189.753L206.805 188.402L193.908 163.618L202.542 150.775Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"path\", { d: \"M241.395 164.998L243.23 133.9L251.54 111.77H214.522L222.832 133.9L224.667 164.998L225.368 174.763L225.422 198.909H240.64L240.694 174.763L241.395 164.998Z\", fill: \"#F5841F\", stroke: \"#F5841F\", \"stroke-width\": \"0.94513\", \"stroke-linecap\": \"round\", \"stroke-linejoin\": \"round\" }),\n h(\"defs\", null,\n h(\"linearGradient\", { id: \"paint0_linear_1356_14057\", x1: \"335.991\", y1: \"250.487\", x2: \"303.873\", y2: \"266.801\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })),\n h(\"linearGradient\", { id: \"paint1_linear_1356_14057\", x1: \"276.993\", y1: \"303.722\", x2: \"205.254\", y2: \"401.574\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"0.0929\", \"stop-color\": \"#81C2F6\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#F0B8BD\" })),\n h(\"linearGradient\", { id: \"paint2_linear_1356_14057\", x1: \"271.074\", y1: \"119.924\", x2: \"553.077\", y2: \"104.53\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })),\n h(\"linearGradient\", { id: \"paint3_linear_1356_14057\", x1: \"264.209\", y1: \"91.0943\", x2: \"357.834\", y2: \"72.8792\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })),\n h(\"linearGradient\", { id: \"paint4_linear_1356_14057\", x1: \"212.46\", y1: \"121.997\", x2: \"92.6119\", y2: \"183.406\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })),\n h(\"linearGradient\", { id: \"paint5_linear_1356_14057\", x1: \"23.0498\", y1: \"204.411\", x2: \"161.86\", y2: \"163.003\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"0.0929\", \"stop-color\": \"#81C2F6\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#F0B8BD\" })),\n h(\"linearGradient\", { id: \"paint6_linear_1356_14057\", x1: \"78.8647\", y1: \"240.375\", x2: \"74.9655\", y2: \"241.328\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint7_linear_1356_14057\", x1: \"382.349\", y1: \"181.971\", x2: \"378.45\", y2: \"182.925\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint8_linear_1356_14057\", x1: \"349.889\", y1: \"244.583\", x2: \"345.99\", y2: \"245.537\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint9_linear_1356_14057\", x1: \"142.262\", y1: \"279.808\", x2: \"138.362\", y2: \"280.762\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint10_linear_1356_14057\", x1: \"123.305\", y1: \"99.0746\", x2: \"119.406\", y2: \"100.028\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint11_linear_1356_14057\", x1: \"371.818\", y1: \"156.617\", x2: \"367.919\", y2: \"157.571\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint12_linear_1356_14057\", x1: \"385.281\", y1: \"242.958\", x2: \"381.382\", y2: \"243.911\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint13_linear_1356_14057\", x1: \"367.125\", y1: \"37.5052\", x2: \"360.843\", y2: \"38.8076\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#75C3FC\" })),\n h(\"linearGradient\", { id: \"paint14_linear_1356_14057\", x1: \"300.182\", y1: \"91.321\", x2: \"479.464\", y2: \"104.041\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })),\n h(\"linearGradient\", { id: \"paint15_linear_1356_14057\", x1: \"363.434\", y1: \"201.232\", x2: \"102.977\", y2: \"302.269\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })),\n h(\"linearGradient\", { id: \"paint16_linear_1356_14057\", x1: \"447.962\", y1: \"165.159\", x2: \"313.049\", y2: \"197.95\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"0.0929\", \"stop-color\": \"#81C2F6\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#F0B8BD\" })),\n h(\"linearGradient\", { id: \"paint17_linear_1356_14057\", x1: \"410.211\", y1: \"215.859\", x2: \"341.378\", y2: \"232.788\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#75C3FC\" }),\n h(\"stop\", { offset: \"0.0929\", \"stop-color\": \"#81C2F6\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#F0B8BD\" })),\n h(\"linearGradient\", { id: \"paint18_linear_1356_14057\", x1: \"222.282\", y1: \"258.986\", x2: \"162.257\", y2: \"273.774\", gradientUnits: \"userSpaceOnUse\" },\n h(\"stop\", { \"stop-color\": \"#FFE466\" }),\n h(\"stop\", { offset: \"1\", \"stop-color\": \"#FFAFEA\" })))));\n\nconst styleCss = \".flexContainer {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n flex-direction: row;\\n}\\n\\n.flexItem {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem11 {\\n flex: 11;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.flexItem1 {\\n flex: 1;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.tab {\\n padding: 8px;\\n cursor: pointer;\\n background-color: #F2F4F6;\\n font-size: 12px;\\n text-align: center;\\n color: #24292E;\\n}\\n\\n.tabcontainer {\\n padding: 4px;\\n background-color: #F2F4F6;\\n border-radius: 8px;\\n margin-bottom: 30px;\\n margin-top: 30px;\\n}\\n\\n.tabactive {\\n background-color: white;\\n -webkit-transition: background-color 300ms linear;\\n -ms-transition: background-color 300ms linear;\\n transition: background-color 300ms linear;\\n border-radius: 8px;\\n}\\n\\n.item {\\n font-size: 12px;\\n margin-bottom: 16px;\\n border-radius: 8px;\\n padding: 10px;\\n border: 2px #F2F4F6 solid;\\n color: #24292E;\\n}\\n\\n.extensionLabel {\\n font-style: normal;\\n font-weight: bold;\\n font-size: 14px;\\n text-align: cetner;\\n color: #24272A;\\n}\\n\\n.notice {\\n font-size: 12px;\\n margin-left: 10px;\\n margin-right: 10px;\\n color: grey;\\n}\\n\\n.button {\\n margin-top: 41.5px;\\n margin-bottom: 20px;\\n width: 100%;\\n display: flex;\\n flex-direction: row;\\n justify-content: center;\\n align-items: center;\\n padding: 12px 20px;\\n background: #037DD6;\\n border-radius: 32px;\\n color: white;\\n border: 0;\\n font-size: 14px;\\n cursor: pointer;\\n}\\n\\n.backdrop {\\n visibility: visible;\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n width: 100%;\\n z-index: 99998;\\n background: rgba(0, 0, 0, 0.87);\\n opacity: 0.3;\\n}\\n\\n.modal {\\n visibility: visible;\\n position: fixed;\\n left: 50%;\\n transform: translate(-50%, -50%);\\n z-index: 99999;\\n background: white;\\n padding: 20px;\\n border-radius: 8px;\\n top: 50%;\\n max-width: 100%;\\n width: 460px;\\n min-width: 300px;\\n box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px;\\n -webkit-font-smoothing: antialiased;\\n}\\n\\n.closeButton {\\n color: #BBC0C5;\\n cursor: pointer;\\n}\\n\\n.logoContainer {\\n margin-left: 24px;\\n margin-right: 24px;\\n margin-top: 24px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n\\n.connectMobileText {\\n font-size: 14px;\\n color: black;\\n margin-top: 28px;\\n margin-bottom: 28px;\\n line-height: 2;\\n}\\n\\n.blue {\\n color: #037DD6;\\n font-weight: 700;\\n}\\n\\n.installExtensionText {\\n margin-left: 10px;\\n}\\n\\n.center {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n}\\n\\n.right {\\n display: flex;\\n align-items: center;\\n justify-content: right;\\n}\\n\\n#sdk-mm-qrcode {\\n svg {\\n width: 50%;\\n }\\n}\";\nconst MmSelectModalStyle0 = styleCss;\n\nconst SelectModal = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\n this.close = createEvent(this, \"close\", 7);\n this.connectWithExtension = createEvent(this, \"connectWithExtension\", 7);\n this.link = undefined;\n this.sdkVersion = undefined;\n this.preferDesktop = undefined;\n this.tab = 1;\n this.isDefaultTab = true;\n this.translationsLoaded = false;\n this.i18nInstance = new SimpleI18n();\n this.setTab(this.preferDesktop ? 1 : 2);\n }\n async connectedCallback() {\n await this.i18nInstance.init({\n fallbackLng: 'en'\n });\n this.translationsLoaded = true;\n }\n onClose(shouldTerminate = false) {\n this.close.emit({ shouldTerminate });\n }\n connectWithExtensionHandler() {\n this.connectWithExtension.emit();\n }\n setTab(tab) {\n this.tab = tab;\n this.isDefaultTab = false;\n }\n disconnectedCallback() {\n this.onClose();\n }\n updatePreferDesktop(newValue) {\n if (newValue) {\n this.setTab(1);\n }\n else {\n this.setTab(2);\n }\n }\n render() {\n if (!this.translationsLoaded) {\n return null;\n }\n const t = (key) => this.i18nInstance.t(key);\n const sdkVersion = this.sdkVersion;\n const currentTab = this.isDefaultTab ? this.preferDesktop ? 1 : 2 : this.tab;\n const svgElement = encodeQR(this.link, \"svg\", {\n ecc: \"medium\",\n scale: 2\n });\n return (h(WidgetWrapper, { className: \"select-modal\" }, h(\"div\", { class: 'backdrop', onClick: () => this.onClose(true) }), h(\"div\", { class: 'modal' }, h(\"div\", { class: 'closeButtonContainer' }, h(\"div\", { class: 'right' }, h(\"span\", { class: 'closeButton', onClick: () => this.onClose(true) }, h(CloseButton, null)))), h(\"div\", { class: 'logoContainer' }, h(Logo, null)), h(\"div\", null, h(\"div\", { class: 'tabcontainer' }, h(\"div\", { class: 'flexContainer' }, h(\"div\", { onClick: () => this.setTab(1), class: `tab flexItem ${currentTab === 1 ? 'tabactive' : ''}` }, t('DESKTOP')), h(\"div\", { onClick: () => this.setTab(2), class: `tab flexItem ${currentTab === 2 ? 'tabactive' : ''}` }, t('MOBILE')))), h(\"div\", { style: { display: currentTab === 1 ? 'none' : 'block' } }, h(\"div\", { class: 'flexContainer' }, h(\"div\", { class: 'flexItem', style: {\n textAlign: 'center',\n marginTop: '4',\n } }, h(\"div\", { class: 'center', id: \"sdk-mm-qrcode\", innerHTML: svgElement }), h(\"div\", { class: 'connectMobileText' }, t('SCAN_TO_CONNECT'), h(\"br\", null), h(\"span\", { class: 'blue' }, h(\"b\", null, t('META_MASK_MOBILE_APP'))))))), h(\"div\", { style: { display: currentTab === 2 ? 'none' : 'block' } }, h(\"div\", { style: {\n display: 'flex',\n justifyContent: 'center',\n height: '300',\n marginTop: '-20',\n } }, h(MetamaskExtensionImage, null)), h(\"div\", { class: 'extensionLabel' }, t('SELECT_MODAL.CRYPTO_TAKE_CONTROL_TEXT')), h(\"button\", { class: 'button', onClick: this.connectWithExtensionHandler }, h(ConnectIcon, null), h(\"span\", { class: 'installExtensionText' }, t('CONNECT_WITH_EXTENSION'))))), h(SDKVersion, { version: sdkVersion }))));\n }\n get el() { return getElement(this); }\n static get watchers() { return {\n \"preferDesktop\": [\"updatePreferDesktop\"]\n }; }\n};\nSelectModal.style = MmSelectModalStyle0;\n\nexport { SelectModal as mm_select_modal };\n\n//# sourceMappingURL=mm-select-modal.entry.js.map","import { extend, isArray, isMap, isIntegerKey, hasOwn, isSymbol, isObject, hasChanged, makeMap, capitalize, toRawType, def, isFunction, NOOP } from '@vue/shared';\n\nfunction warn(msg, ...args) {\n console.warn(`[Vue warn] ${msg}`, ...args);\n}\n\nlet activeEffectScope;\nclass EffectScope {\n constructor(detached = false) {\n this.detached = detached;\n /**\n * @internal\n */\n this._active = true;\n /**\n * @internal\n */\n this.effects = [];\n /**\n * @internal\n */\n this.cleanups = [];\n this.parent = activeEffectScope;\n if (!detached && activeEffectScope) {\n this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(\n this\n ) - 1;\n }\n }\n get active() {\n return this._active;\n }\n run(fn) {\n if (this._active) {\n const currentEffectScope = activeEffectScope;\n try {\n activeEffectScope = this;\n return fn();\n } finally {\n activeEffectScope = currentEffectScope;\n }\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`cannot run an inactive effect scope.`);\n }\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n on() {\n activeEffectScope = this;\n }\n /**\n * This should only be called on non-detached scopes\n * @internal\n */\n off() {\n activeEffectScope = this.parent;\n }\n stop(fromParent) {\n if (this._active) {\n let i, l;\n for (i = 0, l = this.effects.length; i < l; i++) {\n this.effects[i].stop();\n }\n for (i = 0, l = this.cleanups.length; i < l; i++) {\n this.cleanups[i]();\n }\n if (this.scopes) {\n for (i = 0, l = this.scopes.length; i < l; i++) {\n this.scopes[i].stop(true);\n }\n }\n if (!this.detached && this.parent && !fromParent) {\n const last = this.parent.scopes.pop();\n if (last && last !== this) {\n this.parent.scopes[this.index] = last;\n last.index = this.index;\n }\n }\n this.parent = void 0;\n this._active = false;\n }\n }\n}\nfunction effectScope(detached) {\n return new EffectScope(detached);\n}\nfunction recordEffectScope(effect, scope = activeEffectScope) {\n if (scope && scope.active) {\n scope.effects.push(effect);\n }\n}\nfunction getCurrentScope() {\n return activeEffectScope;\n}\nfunction onScopeDispose(fn) {\n if (activeEffectScope) {\n activeEffectScope.cleanups.push(fn);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `onScopeDispose() is called when there is no active effect scope to be associated with.`\n );\n }\n}\n\nconst createDep = (effects) => {\n const dep = new Set(effects);\n dep.w = 0;\n dep.n = 0;\n return dep;\n};\nconst wasTracked = (dep) => (dep.w & trackOpBit) > 0;\nconst newTracked = (dep) => (dep.n & trackOpBit) > 0;\nconst initDepMarkers = ({ deps }) => {\n if (deps.length) {\n for (let i = 0; i < deps.length; i++) {\n deps[i].w |= trackOpBit;\n }\n }\n};\nconst finalizeDepMarkers = (effect) => {\n const { deps } = effect;\n if (deps.length) {\n let ptr = 0;\n for (let i = 0; i < deps.length; i++) {\n const dep = deps[i];\n if (wasTracked(dep) && !newTracked(dep)) {\n dep.delete(effect);\n } else {\n deps[ptr++] = dep;\n }\n dep.w &= ~trackOpBit;\n dep.n &= ~trackOpBit;\n }\n deps.length = ptr;\n }\n};\n\nconst targetMap = /* @__PURE__ */ new WeakMap();\nlet effectTrackDepth = 0;\nlet trackOpBit = 1;\nconst maxMarkerBits = 30;\nlet activeEffect;\nconst ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"iterate\" : \"\");\nconst MAP_KEY_ITERATE_KEY = Symbol(!!(process.env.NODE_ENV !== \"production\") ? \"Map key iterate\" : \"\");\nclass ReactiveEffect {\n constructor(fn, scheduler = null, scope) {\n this.fn = fn;\n this.scheduler = scheduler;\n this.active = true;\n this.deps = [];\n this.parent = void 0;\n recordEffectScope(this, scope);\n }\n run() {\n if (!this.active) {\n return this.fn();\n }\n let parent = activeEffect;\n let lastShouldTrack = shouldTrack;\n while (parent) {\n if (parent === this) {\n return;\n }\n parent = parent.parent;\n }\n try {\n this.parent = activeEffect;\n activeEffect = this;\n shouldTrack = true;\n trackOpBit = 1 << ++effectTrackDepth;\n if (effectTrackDepth <= maxMarkerBits) {\n initDepMarkers(this);\n } else {\n cleanupEffect(this);\n }\n return this.fn();\n } finally {\n if (effectTrackDepth <= maxMarkerBits) {\n finalizeDepMarkers(this);\n }\n trackOpBit = 1 << --effectTrackDepth;\n activeEffect = this.parent;\n shouldTrack = lastShouldTrack;\n this.parent = void 0;\n if (this.deferStop) {\n this.stop();\n }\n }\n }\n stop() {\n if (activeEffect === this) {\n this.deferStop = true;\n } else if (this.active) {\n cleanupEffect(this);\n if (this.onStop) {\n this.onStop();\n }\n this.active = false;\n }\n }\n}\nfunction cleanupEffect(effect2) {\n const { deps } = effect2;\n if (deps.length) {\n for (let i = 0; i < deps.length; i++) {\n deps[i].delete(effect2);\n }\n deps.length = 0;\n }\n}\nfunction effect(fn, options) {\n if (fn.effect) {\n fn = fn.effect.fn;\n }\n const _effect = new ReactiveEffect(fn);\n if (options) {\n extend(_effect, options);\n if (options.scope)\n recordEffectScope(_effect, options.scope);\n }\n if (!options || !options.lazy) {\n _effect.run();\n }\n const runner = _effect.run.bind(_effect);\n runner.effect = _effect;\n return runner;\n}\nfunction stop(runner) {\n runner.effect.stop();\n}\nlet shouldTrack = true;\nconst trackStack = [];\nfunction pauseTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = false;\n}\nfunction enableTracking() {\n trackStack.push(shouldTrack);\n shouldTrack = true;\n}\nfunction resetTracking() {\n const last = trackStack.pop();\n shouldTrack = last === void 0 ? true : last;\n}\nfunction track(target, type, key) {\n if (shouldTrack && activeEffect) {\n let depsMap = targetMap.get(target);\n if (!depsMap) {\n targetMap.set(target, depsMap = /* @__PURE__ */ new Map());\n }\n let dep = depsMap.get(key);\n if (!dep) {\n depsMap.set(key, dep = createDep());\n }\n const eventInfo = !!(process.env.NODE_ENV !== \"production\") ? { effect: activeEffect, target, type, key } : void 0;\n trackEffects(dep, eventInfo);\n }\n}\nfunction trackEffects(dep, debuggerEventExtraInfo) {\n let shouldTrack2 = false;\n if (effectTrackDepth <= maxMarkerBits) {\n if (!newTracked(dep)) {\n dep.n |= trackOpBit;\n shouldTrack2 = !wasTracked(dep);\n }\n } else {\n shouldTrack2 = !dep.has(activeEffect);\n }\n if (shouldTrack2) {\n dep.add(activeEffect);\n activeEffect.deps.push(dep);\n if (!!(process.env.NODE_ENV !== \"production\") && activeEffect.onTrack) {\n activeEffect.onTrack(\n extend(\n {\n effect: activeEffect\n },\n debuggerEventExtraInfo\n )\n );\n }\n }\n}\nfunction trigger(target, type, key, newValue, oldValue, oldTarget) {\n const depsMap = targetMap.get(target);\n if (!depsMap) {\n return;\n }\n let deps = [];\n if (type === \"clear\") {\n deps = [...depsMap.values()];\n } else if (key === \"length\" && isArray(target)) {\n const newLength = Number(newValue);\n depsMap.forEach((dep, key2) => {\n if (key2 === \"length\" || key2 >= newLength) {\n deps.push(dep);\n }\n });\n } else {\n if (key !== void 0) {\n deps.push(depsMap.get(key));\n }\n switch (type) {\n case \"add\":\n if (!isArray(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n } else if (isIntegerKey(key)) {\n deps.push(depsMap.get(\"length\"));\n }\n break;\n case \"delete\":\n if (!isArray(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n if (isMap(target)) {\n deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));\n }\n }\n break;\n case \"set\":\n if (isMap(target)) {\n deps.push(depsMap.get(ITERATE_KEY));\n }\n break;\n }\n }\n const eventInfo = !!(process.env.NODE_ENV !== \"production\") ? { target, type, key, newValue, oldValue, oldTarget } : void 0;\n if (deps.length === 1) {\n if (deps[0]) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n triggerEffects(deps[0], eventInfo);\n } else {\n triggerEffects(deps[0]);\n }\n }\n } else {\n const effects = [];\n for (const dep of deps) {\n if (dep) {\n effects.push(...dep);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n triggerEffects(createDep(effects), eventInfo);\n } else {\n triggerEffects(createDep(effects));\n }\n }\n}\nfunction triggerEffects(dep, debuggerEventExtraInfo) {\n const effects = isArray(dep) ? dep : [...dep];\n for (const effect2 of effects) {\n if (effect2.computed) {\n triggerEffect(effect2, debuggerEventExtraInfo);\n }\n }\n for (const effect2 of effects) {\n if (!effect2.computed) {\n triggerEffect(effect2, debuggerEventExtraInfo);\n }\n }\n}\nfunction triggerEffect(effect2, debuggerEventExtraInfo) {\n if (effect2 !== activeEffect || effect2.allowRecurse) {\n if (!!(process.env.NODE_ENV !== \"production\") && effect2.onTrigger) {\n effect2.onTrigger(extend({ effect: effect2 }, debuggerEventExtraInfo));\n }\n if (effect2.scheduler) {\n effect2.scheduler();\n } else {\n effect2.run();\n }\n }\n}\nfunction getDepFromReactive(object, key) {\n var _a;\n return (_a = targetMap.get(object)) == null ? void 0 : _a.get(key);\n}\n\nconst isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);\nconst builtInSymbols = new Set(\n /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== \"arguments\" && key !== \"caller\").map((key) => Symbol[key]).filter(isSymbol)\n);\nconst get$1 = /* @__PURE__ */ createGetter();\nconst shallowGet = /* @__PURE__ */ createGetter(false, true);\nconst readonlyGet = /* @__PURE__ */ createGetter(true);\nconst shallowReadonlyGet = /* @__PURE__ */ createGetter(true, true);\nconst arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();\nfunction createArrayInstrumentations() {\n const instrumentations = {};\n [\"includes\", \"indexOf\", \"lastIndexOf\"].forEach((key) => {\n instrumentations[key] = function(...args) {\n const arr = toRaw(this);\n for (let i = 0, l = this.length; i < l; i++) {\n track(arr, \"get\", i + \"\");\n }\n const res = arr[key](...args);\n if (res === -1 || res === false) {\n return arr[key](...args.map(toRaw));\n } else {\n return res;\n }\n };\n });\n [\"push\", \"pop\", \"shift\", \"unshift\", \"splice\"].forEach((key) => {\n instrumentations[key] = function(...args) {\n pauseTracking();\n const res = toRaw(this)[key].apply(this, args);\n resetTracking();\n return res;\n };\n });\n return instrumentations;\n}\nfunction hasOwnProperty(key) {\n const obj = toRaw(this);\n track(obj, \"has\", key);\n return obj.hasOwnProperty(key);\n}\nfunction createGetter(isReadonly2 = false, shallow = false) {\n return function get2(target, key, receiver) {\n if (key === \"__v_isReactive\") {\n return !isReadonly2;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly2;\n } else if (key === \"__v_isShallow\") {\n return shallow;\n } else if (key === \"__v_raw\" && receiver === (isReadonly2 ? shallow ? shallowReadonlyMap : readonlyMap : shallow ? shallowReactiveMap : reactiveMap).get(target)) {\n return target;\n }\n const targetIsArray = isArray(target);\n if (!isReadonly2) {\n if (targetIsArray && hasOwn(arrayInstrumentations, key)) {\n return Reflect.get(arrayInstrumentations, key, receiver);\n }\n if (key === \"hasOwnProperty\") {\n return hasOwnProperty;\n }\n }\n const res = Reflect.get(target, key, receiver);\n if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {\n return res;\n }\n if (!isReadonly2) {\n track(target, \"get\", key);\n }\n if (shallow) {\n return res;\n }\n if (isRef(res)) {\n return targetIsArray && isIntegerKey(key) ? res : res.value;\n }\n if (isObject(res)) {\n return isReadonly2 ? readonly(res) : reactive(res);\n }\n return res;\n };\n}\nconst set$1 = /* @__PURE__ */ createSetter();\nconst shallowSet = /* @__PURE__ */ createSetter(true);\nfunction createSetter(shallow = false) {\n return function set2(target, key, value, receiver) {\n let oldValue = target[key];\n if (isReadonly(oldValue) && isRef(oldValue) && !isRef(value)) {\n return false;\n }\n if (!shallow) {\n if (!isShallow(value) && !isReadonly(value)) {\n oldValue = toRaw(oldValue);\n value = toRaw(value);\n }\n if (!isArray(target) && isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n }\n }\n const hadKey = isArray(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn(target, key);\n const result = Reflect.set(target, key, value, receiver);\n if (target === toRaw(receiver)) {\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n }\n return result;\n };\n}\nfunction deleteProperty(target, key) {\n const hadKey = hasOwn(target, key);\n const oldValue = target[key];\n const result = Reflect.deleteProperty(target, key);\n if (result && hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n}\nfunction has$1(target, key) {\n const result = Reflect.has(target, key);\n if (!isSymbol(key) || !builtInSymbols.has(key)) {\n track(target, \"has\", key);\n }\n return result;\n}\nfunction ownKeys(target) {\n track(target, \"iterate\", isArray(target) ? \"length\" : ITERATE_KEY);\n return Reflect.ownKeys(target);\n}\nconst mutableHandlers = {\n get: get$1,\n set: set$1,\n deleteProperty,\n has: has$1,\n ownKeys\n};\nconst readonlyHandlers = {\n get: readonlyGet,\n set(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Set operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n },\n deleteProperty(target, key) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `Delete operation on key \"${String(key)}\" failed: target is readonly.`,\n target\n );\n }\n return true;\n }\n};\nconst shallowReactiveHandlers = /* @__PURE__ */ extend(\n {},\n mutableHandlers,\n {\n get: shallowGet,\n set: shallowSet\n }\n);\nconst shallowReadonlyHandlers = /* @__PURE__ */ extend(\n {},\n readonlyHandlers,\n {\n get: shallowReadonlyGet\n }\n);\n\nconst toShallow = (value) => value;\nconst getProto = (v) => Reflect.getPrototypeOf(v);\nfunction get(target, key, isReadonly = false, isShallow = false) {\n target = target[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly) {\n if (key !== rawKey) {\n track(rawTarget, \"get\", key);\n }\n track(rawTarget, \"get\", rawKey);\n }\n const { has: has2 } = getProto(rawTarget);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n if (has2.call(rawTarget, key)) {\n return wrap(target.get(key));\n } else if (has2.call(rawTarget, rawKey)) {\n return wrap(target.get(rawKey));\n } else if (target !== rawTarget) {\n target.get(key);\n }\n}\nfunction has(key, isReadonly = false) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const rawKey = toRaw(key);\n if (!isReadonly) {\n if (key !== rawKey) {\n track(rawTarget, \"has\", key);\n }\n track(rawTarget, \"has\", rawKey);\n }\n return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);\n}\nfunction size(target, isReadonly = false) {\n target = target[\"__v_raw\"];\n !isReadonly && track(toRaw(target), \"iterate\", ITERATE_KEY);\n return Reflect.get(target, \"size\", target);\n}\nfunction add(value) {\n value = toRaw(value);\n const target = toRaw(this);\n const proto = getProto(target);\n const hadKey = proto.has.call(target, value);\n if (!hadKey) {\n target.add(value);\n trigger(target, \"add\", value, value);\n }\n return this;\n}\nfunction set(key, value) {\n value = toRaw(value);\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2.call(target, key);\n target.set(key, value);\n if (!hadKey) {\n trigger(target, \"add\", key, value);\n } else if (hasChanged(value, oldValue)) {\n trigger(target, \"set\", key, value, oldValue);\n }\n return this;\n}\nfunction deleteEntry(key) {\n const target = toRaw(this);\n const { has: has2, get: get2 } = getProto(target);\n let hadKey = has2.call(target, key);\n if (!hadKey) {\n key = toRaw(key);\n hadKey = has2.call(target, key);\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n checkIdentityKeys(target, has2, key);\n }\n const oldValue = get2 ? get2.call(target, key) : void 0;\n const result = target.delete(key);\n if (hadKey) {\n trigger(target, \"delete\", key, void 0, oldValue);\n }\n return result;\n}\nfunction clear() {\n const target = toRaw(this);\n const hadItems = target.size !== 0;\n const oldTarget = !!(process.env.NODE_ENV !== \"production\") ? isMap(target) ? new Map(target) : new Set(target) : void 0;\n const result = target.clear();\n if (hadItems) {\n trigger(target, \"clear\", void 0, void 0, oldTarget);\n }\n return result;\n}\nfunction createForEach(isReadonly, isShallow) {\n return function forEach(callback, thisArg) {\n const observed = this;\n const target = observed[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n !isReadonly && track(rawTarget, \"iterate\", ITERATE_KEY);\n return target.forEach((value, key) => {\n return callback.call(thisArg, wrap(value), wrap(key), observed);\n });\n };\n}\nfunction createIterableMethod(method, isReadonly, isShallow) {\n return function(...args) {\n const target = this[\"__v_raw\"];\n const rawTarget = toRaw(target);\n const targetIsMap = isMap(rawTarget);\n const isPair = method === \"entries\" || method === Symbol.iterator && targetIsMap;\n const isKeyOnly = method === \"keys\" && targetIsMap;\n const innerIterator = target[method](...args);\n const wrap = isShallow ? toShallow : isReadonly ? toReadonly : toReactive;\n !isReadonly && track(\n rawTarget,\n \"iterate\",\n isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY\n );\n return {\n // iterator protocol\n next() {\n const { value, done } = innerIterator.next();\n return done ? { value, done } : {\n value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),\n done\n };\n },\n // iterable protocol\n [Symbol.iterator]() {\n return this;\n }\n };\n };\n}\nfunction createReadonlyMethod(type) {\n return function(...args) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const key = args[0] ? `on key \"${args[0]}\" ` : ``;\n console.warn(\n `${capitalize(type)} operation ${key}failed: target is readonly.`,\n toRaw(this)\n );\n }\n return type === \"delete\" ? false : this;\n };\n}\nfunction createInstrumentations() {\n const mutableInstrumentations2 = {\n get(key) {\n return get(this, key);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, false)\n };\n const shallowInstrumentations2 = {\n get(key) {\n return get(this, key, false, true);\n },\n get size() {\n return size(this);\n },\n has,\n add,\n set,\n delete: deleteEntry,\n clear,\n forEach: createForEach(false, true)\n };\n const readonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, false)\n };\n const shallowReadonlyInstrumentations2 = {\n get(key) {\n return get(this, key, true, true);\n },\n get size() {\n return size(this, true);\n },\n has(key) {\n return has.call(this, key, true);\n },\n add: createReadonlyMethod(\"add\"),\n set: createReadonlyMethod(\"set\"),\n delete: createReadonlyMethod(\"delete\"),\n clear: createReadonlyMethod(\"clear\"),\n forEach: createForEach(true, true)\n };\n const iteratorMethods = [\"keys\", \"values\", \"entries\", Symbol.iterator];\n iteratorMethods.forEach((method) => {\n mutableInstrumentations2[method] = createIterableMethod(\n method,\n false,\n false\n );\n readonlyInstrumentations2[method] = createIterableMethod(\n method,\n true,\n false\n );\n shallowInstrumentations2[method] = createIterableMethod(\n method,\n false,\n true\n );\n shallowReadonlyInstrumentations2[method] = createIterableMethod(\n method,\n true,\n true\n );\n });\n return [\n mutableInstrumentations2,\n readonlyInstrumentations2,\n shallowInstrumentations2,\n shallowReadonlyInstrumentations2\n ];\n}\nconst [\n mutableInstrumentations,\n readonlyInstrumentations,\n shallowInstrumentations,\n shallowReadonlyInstrumentations\n] = /* @__PURE__ */ createInstrumentations();\nfunction createInstrumentationGetter(isReadonly, shallow) {\n const instrumentations = shallow ? isReadonly ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly ? readonlyInstrumentations : mutableInstrumentations;\n return (target, key, receiver) => {\n if (key === \"__v_isReactive\") {\n return !isReadonly;\n } else if (key === \"__v_isReadonly\") {\n return isReadonly;\n } else if (key === \"__v_raw\") {\n return target;\n }\n return Reflect.get(\n hasOwn(instrumentations, key) && key in target ? instrumentations : target,\n key,\n receiver\n );\n };\n}\nconst mutableCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, false)\n};\nconst shallowCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(false, true)\n};\nconst readonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, false)\n};\nconst shallowReadonlyCollectionHandlers = {\n get: /* @__PURE__ */ createInstrumentationGetter(true, true)\n};\nfunction checkIdentityKeys(target, has2, key) {\n const rawKey = toRaw(key);\n if (rawKey !== key && has2.call(target, rawKey)) {\n const type = toRawType(target);\n console.warn(\n `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`\n );\n }\n}\n\nconst reactiveMap = /* @__PURE__ */ new WeakMap();\nconst shallowReactiveMap = /* @__PURE__ */ new WeakMap();\nconst readonlyMap = /* @__PURE__ */ new WeakMap();\nconst shallowReadonlyMap = /* @__PURE__ */ new WeakMap();\nfunction targetTypeMap(rawType) {\n switch (rawType) {\n case \"Object\":\n case \"Array\":\n return 1 /* COMMON */;\n case \"Map\":\n case \"Set\":\n case \"WeakMap\":\n case \"WeakSet\":\n return 2 /* COLLECTION */;\n default:\n return 0 /* INVALID */;\n }\n}\nfunction getTargetType(value) {\n return value[\"__v_skip\"] || !Object.isExtensible(value) ? 0 /* INVALID */ : targetTypeMap(toRawType(value));\n}\nfunction reactive(target) {\n if (isReadonly(target)) {\n return target;\n }\n return createReactiveObject(\n target,\n false,\n mutableHandlers,\n mutableCollectionHandlers,\n reactiveMap\n );\n}\nfunction shallowReactive(target) {\n return createReactiveObject(\n target,\n false,\n shallowReactiveHandlers,\n shallowCollectionHandlers,\n shallowReactiveMap\n );\n}\nfunction readonly(target) {\n return createReactiveObject(\n target,\n true,\n readonlyHandlers,\n readonlyCollectionHandlers,\n readonlyMap\n );\n}\nfunction shallowReadonly(target) {\n return createReactiveObject(\n target,\n true,\n shallowReadonlyHandlers,\n shallowReadonlyCollectionHandlers,\n shallowReadonlyMap\n );\n}\nfunction createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {\n if (!isObject(target)) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n console.warn(`value cannot be made reactive: ${String(target)}`);\n }\n return target;\n }\n if (target[\"__v_raw\"] && !(isReadonly2 && target[\"__v_isReactive\"])) {\n return target;\n }\n const existingProxy = proxyMap.get(target);\n if (existingProxy) {\n return existingProxy;\n }\n const targetType = getTargetType(target);\n if (targetType === 0 /* INVALID */) {\n return target;\n }\n const proxy = new Proxy(\n target,\n targetType === 2 /* COLLECTION */ ? collectionHandlers : baseHandlers\n );\n proxyMap.set(target, proxy);\n return proxy;\n}\nfunction isReactive(value) {\n if (isReadonly(value)) {\n return isReactive(value[\"__v_raw\"]);\n }\n return !!(value && value[\"__v_isReactive\"]);\n}\nfunction isReadonly(value) {\n return !!(value && value[\"__v_isReadonly\"]);\n}\nfunction isShallow(value) {\n return !!(value && value[\"__v_isShallow\"]);\n}\nfunction isProxy(value) {\n return isReactive(value) || isReadonly(value);\n}\nfunction toRaw(observed) {\n const raw = observed && observed[\"__v_raw\"];\n return raw ? toRaw(raw) : observed;\n}\nfunction markRaw(value) {\n def(value, \"__v_skip\", true);\n return value;\n}\nconst toReactive = (value) => isObject(value) ? reactive(value) : value;\nconst toReadonly = (value) => isObject(value) ? readonly(value) : value;\n\nfunction trackRefValue(ref2) {\n if (shouldTrack && activeEffect) {\n ref2 = toRaw(ref2);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n trackEffects(ref2.dep || (ref2.dep = createDep()), {\n target: ref2,\n type: \"get\",\n key: \"value\"\n });\n } else {\n trackEffects(ref2.dep || (ref2.dep = createDep()));\n }\n }\n}\nfunction triggerRefValue(ref2, newVal) {\n ref2 = toRaw(ref2);\n const dep = ref2.dep;\n if (dep) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n triggerEffects(dep, {\n target: ref2,\n type: \"set\",\n key: \"value\",\n newValue: newVal\n });\n } else {\n triggerEffects(dep);\n }\n }\n}\nfunction isRef(r) {\n return !!(r && r.__v_isRef === true);\n}\nfunction ref(value) {\n return createRef(value, false);\n}\nfunction shallowRef(value) {\n return createRef(value, true);\n}\nfunction createRef(rawValue, shallow) {\n if (isRef(rawValue)) {\n return rawValue;\n }\n return new RefImpl(rawValue, shallow);\n}\nclass RefImpl {\n constructor(value, __v_isShallow) {\n this.__v_isShallow = __v_isShallow;\n this.dep = void 0;\n this.__v_isRef = true;\n this._rawValue = __v_isShallow ? value : toRaw(value);\n this._value = __v_isShallow ? value : toReactive(value);\n }\n get value() {\n trackRefValue(this);\n return this._value;\n }\n set value(newVal) {\n const useDirectValue = this.__v_isShallow || isShallow(newVal) || isReadonly(newVal);\n newVal = useDirectValue ? newVal : toRaw(newVal);\n if (hasChanged(newVal, this._rawValue)) {\n this._rawValue = newVal;\n this._value = useDirectValue ? newVal : toReactive(newVal);\n triggerRefValue(this, newVal);\n }\n }\n}\nfunction triggerRef(ref2) {\n triggerRefValue(ref2, !!(process.env.NODE_ENV !== \"production\") ? ref2.value : void 0);\n}\nfunction unref(ref2) {\n return isRef(ref2) ? ref2.value : ref2;\n}\nfunction toValue(source) {\n return isFunction(source) ? source() : unref(source);\n}\nconst shallowUnwrapHandlers = {\n get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),\n set: (target, key, value, receiver) => {\n const oldValue = target[key];\n if (isRef(oldValue) && !isRef(value)) {\n oldValue.value = value;\n return true;\n } else {\n return Reflect.set(target, key, value, receiver);\n }\n }\n};\nfunction proxyRefs(objectWithRefs) {\n return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);\n}\nclass CustomRefImpl {\n constructor(factory) {\n this.dep = void 0;\n this.__v_isRef = true;\n const { get, set } = factory(\n () => trackRefValue(this),\n () => triggerRefValue(this)\n );\n this._get = get;\n this._set = set;\n }\n get value() {\n return this._get();\n }\n set value(newVal) {\n this._set(newVal);\n }\n}\nfunction customRef(factory) {\n return new CustomRefImpl(factory);\n}\nfunction toRefs(object) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isProxy(object)) {\n console.warn(`toRefs() expects a reactive object but received a plain one.`);\n }\n const ret = isArray(object) ? new Array(object.length) : {};\n for (const key in object) {\n ret[key] = propertyToRef(object, key);\n }\n return ret;\n}\nclass ObjectRefImpl {\n constructor(_object, _key, _defaultValue) {\n this._object = _object;\n this._key = _key;\n this._defaultValue = _defaultValue;\n this.__v_isRef = true;\n }\n get value() {\n const val = this._object[this._key];\n return val === void 0 ? this._defaultValue : val;\n }\n set value(newVal) {\n this._object[this._key] = newVal;\n }\n get dep() {\n return getDepFromReactive(toRaw(this._object), this._key);\n }\n}\nclass GetterRefImpl {\n constructor(_getter) {\n this._getter = _getter;\n this.__v_isRef = true;\n this.__v_isReadonly = true;\n }\n get value() {\n return this._getter();\n }\n}\nfunction toRef(source, key, defaultValue) {\n if (isRef(source)) {\n return source;\n } else if (isFunction(source)) {\n return new GetterRefImpl(source);\n } else if (isObject(source) && arguments.length > 1) {\n return propertyToRef(source, key, defaultValue);\n } else {\n return ref(source);\n }\n}\nfunction propertyToRef(source, key, defaultValue) {\n const val = source[key];\n return isRef(val) ? val : new ObjectRefImpl(\n source,\n key,\n defaultValue\n );\n}\n\nclass ComputedRefImpl {\n constructor(getter, _setter, isReadonly, isSSR) {\n this._setter = _setter;\n this.dep = void 0;\n this.__v_isRef = true;\n this[\"__v_isReadonly\"] = false;\n this._dirty = true;\n this.effect = new ReactiveEffect(getter, () => {\n if (!this._dirty) {\n this._dirty = true;\n triggerRefValue(this);\n }\n });\n this.effect.computed = this;\n this.effect.active = this._cacheable = !isSSR;\n this[\"__v_isReadonly\"] = isReadonly;\n }\n get value() {\n const self = toRaw(this);\n trackRefValue(self);\n if (self._dirty || !self._cacheable) {\n self._dirty = false;\n self._value = self.effect.run();\n }\n return self._value;\n }\n set value(newValue) {\n this._setter(newValue);\n }\n}\nfunction computed(getterOrOptions, debugOptions, isSSR = false) {\n let getter;\n let setter;\n const onlyGetter = isFunction(getterOrOptions);\n if (onlyGetter) {\n getter = getterOrOptions;\n setter = !!(process.env.NODE_ENV !== \"production\") ? () => {\n console.warn(\"Write operation failed: computed value is readonly\");\n } : NOOP;\n } else {\n getter = getterOrOptions.get;\n setter = getterOrOptions.set;\n }\n const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR);\n if (!!(process.env.NODE_ENV !== \"production\") && debugOptions && !isSSR) {\n cRef.effect.onTrack = debugOptions.onTrack;\n cRef.effect.onTrigger = debugOptions.onTrigger;\n }\n return cRef;\n}\n\nconst tick = /* @__PURE__ */ Promise.resolve();\nconst queue = [];\nlet queued = false;\nconst scheduler = (fn) => {\n queue.push(fn);\n if (!queued) {\n queued = true;\n tick.then(flush);\n }\n};\nconst flush = () => {\n for (let i = 0; i < queue.length; i++) {\n queue[i]();\n }\n queue.length = 0;\n queued = false;\n};\nclass DeferredComputedRefImpl {\n constructor(getter) {\n this.dep = void 0;\n this._dirty = true;\n this.__v_isRef = true;\n this[\"__v_isReadonly\"] = true;\n let compareTarget;\n let hasCompareTarget = false;\n let scheduled = false;\n this.effect = new ReactiveEffect(getter, (computedTrigger) => {\n if (this.dep) {\n if (computedTrigger) {\n compareTarget = this._value;\n hasCompareTarget = true;\n } else if (!scheduled) {\n const valueToCompare = hasCompareTarget ? compareTarget : this._value;\n scheduled = true;\n hasCompareTarget = false;\n scheduler(() => {\n if (this.effect.active && this._get() !== valueToCompare) {\n triggerRefValue(this);\n }\n scheduled = false;\n });\n }\n for (const e of this.dep) {\n if (e.computed instanceof DeferredComputedRefImpl) {\n e.scheduler(\n true\n /* computedTrigger */\n );\n }\n }\n }\n this._dirty = true;\n });\n this.effect.computed = this;\n }\n _get() {\n if (this._dirty) {\n this._dirty = false;\n return this._value = this.effect.run();\n }\n return this._value;\n }\n get value() {\n trackRefValue(this);\n return toRaw(this)._get();\n }\n}\nfunction deferredComputed(getter) {\n return new DeferredComputedRefImpl(getter);\n}\n\nexport { EffectScope, ITERATE_KEY, ReactiveEffect, computed, customRef, deferredComputed, effect, effectScope, enableTracking, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, pauseTracking, proxyRefs, reactive, readonly, ref, resetTracking, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, track, trigger, triggerRef, unref };\n","import { pauseTracking, resetTracking, isRef, toRaw, getCurrentScope, isShallow as isShallow$1, isReactive, ReactiveEffect, ref, shallowReadonly, track, reactive, shallowReactive, trigger, isProxy, proxyRefs, markRaw, EffectScope, computed as computed$1, isReadonly } from '@vue/reactivity';\nexport { EffectScope, ReactiveEffect, customRef, effect, effectScope, getCurrentScope, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, triggerRef, unref } from '@vue/reactivity';\nimport { isString, isFunction, isPromise, isArray, NOOP, getGlobalThis, extend, EMPTY_OBJ, toHandlerKey, looseToNumber, hyphenate, camelize, isObject, isOn, hasOwn, isModelListener, toNumber, hasChanged, remove, isSet, isMap, isPlainObject, isBuiltInDirective, invokeArrayFns, isRegExp, capitalize, isGloballyWhitelisted, NO, def, isReservedProp, EMPTY_ARR, toRawType, makeMap, normalizeClass, normalizeStyle } from '@vue/shared';\nexport { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';\n\nconst stack = [];\nfunction pushWarningContext(vnode) {\n stack.push(vnode);\n}\nfunction popWarningContext() {\n stack.pop();\n}\nfunction warn(msg, ...args) {\n if (!!!(process.env.NODE_ENV !== \"production\"))\n return;\n pauseTracking();\n const instance = stack.length ? stack[stack.length - 1].component : null;\n const appWarnHandler = instance && instance.appContext.config.warnHandler;\n const trace = getComponentTrace();\n if (appWarnHandler) {\n callWithErrorHandling(\n appWarnHandler,\n instance,\n 11,\n [\n msg + args.join(\"\"),\n instance && instance.proxy,\n trace.map(\n ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`\n ).join(\"\\n\"),\n trace\n ]\n );\n } else {\n const warnArgs = [`[Vue warn]: ${msg}`, ...args];\n if (trace.length && // avoid spamming console during tests\n true) {\n warnArgs.push(`\n`, ...formatTrace(trace));\n }\n console.warn(...warnArgs);\n }\n resetTracking();\n}\nfunction getComponentTrace() {\n let currentVNode = stack[stack.length - 1];\n if (!currentVNode) {\n return [];\n }\n const normalizedStack = [];\n while (currentVNode) {\n const last = normalizedStack[0];\n if (last && last.vnode === currentVNode) {\n last.recurseCount++;\n } else {\n normalizedStack.push({\n vnode: currentVNode,\n recurseCount: 0\n });\n }\n const parentInstance = currentVNode.component && currentVNode.component.parent;\n currentVNode = parentInstance && parentInstance.vnode;\n }\n return normalizedStack;\n}\nfunction formatTrace(trace) {\n const logs = [];\n trace.forEach((entry, i) => {\n logs.push(...i === 0 ? [] : [`\n`], ...formatTraceEntry(entry));\n });\n return logs;\n}\nfunction formatTraceEntry({ vnode, recurseCount }) {\n const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;\n const isRoot = vnode.component ? vnode.component.parent == null : false;\n const open = ` at <${formatComponentName(\n vnode.component,\n vnode.type,\n isRoot\n )}`;\n const close = `>` + postfix;\n return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];\n}\nfunction formatProps(props) {\n const res = [];\n const keys = Object.keys(props);\n keys.slice(0, 3).forEach((key) => {\n res.push(...formatProp(key, props[key]));\n });\n if (keys.length > 3) {\n res.push(` ...`);\n }\n return res;\n}\nfunction formatProp(key, value, raw) {\n if (isString(value)) {\n value = JSON.stringify(value);\n return raw ? value : [`${key}=${value}`];\n } else if (typeof value === \"number\" || typeof value === \"boolean\" || value == null) {\n return raw ? value : [`${key}=${value}`];\n } else if (isRef(value)) {\n value = formatProp(key, toRaw(value.value), true);\n return raw ? value : [`${key}=Ref<`, value, `>`];\n } else if (isFunction(value)) {\n return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];\n } else {\n value = toRaw(value);\n return raw ? value : [`${key}=`, value];\n }\n}\nfunction assertNumber(val, type) {\n if (!!!(process.env.NODE_ENV !== \"production\"))\n return;\n if (val === void 0) {\n return;\n } else if (typeof val !== \"number\") {\n warn(`${type} is not a valid number - got ${JSON.stringify(val)}.`);\n } else if (isNaN(val)) {\n warn(`${type} is NaN - the duration expression might be incorrect.`);\n }\n}\n\nconst ErrorTypeStrings = {\n [\"sp\"]: \"serverPrefetch hook\",\n [\"bc\"]: \"beforeCreate hook\",\n [\"c\"]: \"created hook\",\n [\"bm\"]: \"beforeMount hook\",\n [\"m\"]: \"mounted hook\",\n [\"bu\"]: \"beforeUpdate hook\",\n [\"u\"]: \"updated\",\n [\"bum\"]: \"beforeUnmount hook\",\n [\"um\"]: \"unmounted hook\",\n [\"a\"]: \"activated hook\",\n [\"da\"]: \"deactivated hook\",\n [\"ec\"]: \"errorCaptured hook\",\n [\"rtc\"]: \"renderTracked hook\",\n [\"rtg\"]: \"renderTriggered hook\",\n [0]: \"setup function\",\n [1]: \"render function\",\n [2]: \"watcher getter\",\n [3]: \"watcher callback\",\n [4]: \"watcher cleanup function\",\n [5]: \"native event handler\",\n [6]: \"component event handler\",\n [7]: \"vnode hook\",\n [8]: \"directive hook\",\n [9]: \"transition hook\",\n [10]: \"app errorHandler\",\n [11]: \"app warnHandler\",\n [12]: \"ref function\",\n [13]: \"async component loader\",\n [14]: \"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://new-issue.vuejs.org/?repo=vuejs/core\"\n};\nfunction callWithErrorHandling(fn, instance, type, args) {\n let res;\n try {\n res = args ? fn(...args) : fn();\n } catch (err) {\n handleError(err, instance, type);\n }\n return res;\n}\nfunction callWithAsyncErrorHandling(fn, instance, type, args) {\n if (isFunction(fn)) {\n const res = callWithErrorHandling(fn, instance, type, args);\n if (res && isPromise(res)) {\n res.catch((err) => {\n handleError(err, instance, type);\n });\n }\n return res;\n }\n const values = [];\n for (let i = 0; i < fn.length; i++) {\n values.push(callWithAsyncErrorHandling(fn[i], instance, type, args));\n }\n return values;\n}\nfunction handleError(err, instance, type, throwInDev = true) {\n const contextVNode = instance ? instance.vnode : null;\n if (instance) {\n let cur = instance.parent;\n const exposedInstance = instance.proxy;\n const errorInfo = !!(process.env.NODE_ENV !== \"production\") ? ErrorTypeStrings[type] : type;\n while (cur) {\n const errorCapturedHooks = cur.ec;\n if (errorCapturedHooks) {\n for (let i = 0; i < errorCapturedHooks.length; i++) {\n if (errorCapturedHooks[i](err, exposedInstance, errorInfo) === false) {\n return;\n }\n }\n }\n cur = cur.parent;\n }\n const appErrorHandler = instance.appContext.config.errorHandler;\n if (appErrorHandler) {\n callWithErrorHandling(\n appErrorHandler,\n null,\n 10,\n [err, exposedInstance, errorInfo]\n );\n return;\n }\n }\n logError(err, type, contextVNode, throwInDev);\n}\nfunction logError(err, type, contextVNode, throwInDev = true) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const info = ErrorTypeStrings[type];\n if (contextVNode) {\n pushWarningContext(contextVNode);\n }\n warn(`Unhandled error${info ? ` during execution of ${info}` : ``}`);\n if (contextVNode) {\n popWarningContext();\n }\n if (throwInDev) {\n throw err;\n } else {\n console.error(err);\n }\n } else {\n console.error(err);\n }\n}\n\nlet isFlushing = false;\nlet isFlushPending = false;\nconst queue = [];\nlet flushIndex = 0;\nconst pendingPostFlushCbs = [];\nlet activePostFlushCbs = null;\nlet postFlushIndex = 0;\nconst resolvedPromise = /* @__PURE__ */ Promise.resolve();\nlet currentFlushPromise = null;\nconst RECURSION_LIMIT = 100;\nfunction nextTick(fn) {\n const p = currentFlushPromise || resolvedPromise;\n return fn ? p.then(this ? fn.bind(this) : fn) : p;\n}\nfunction findInsertionIndex(id) {\n let start = flushIndex + 1;\n let end = queue.length;\n while (start < end) {\n const middle = start + end >>> 1;\n const middleJobId = getId(queue[middle]);\n middleJobId < id ? start = middle + 1 : end = middle;\n }\n return start;\n}\nfunction queueJob(job) {\n if (!queue.length || !queue.includes(\n job,\n isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex\n )) {\n if (job.id == null) {\n queue.push(job);\n } else {\n queue.splice(findInsertionIndex(job.id), 0, job);\n }\n queueFlush();\n }\n}\nfunction queueFlush() {\n if (!isFlushing && !isFlushPending) {\n isFlushPending = true;\n currentFlushPromise = resolvedPromise.then(flushJobs);\n }\n}\nfunction invalidateJob(job) {\n const i = queue.indexOf(job);\n if (i > flushIndex) {\n queue.splice(i, 1);\n }\n}\nfunction queuePostFlushCb(cb) {\n if (!isArray(cb)) {\n if (!activePostFlushCbs || !activePostFlushCbs.includes(\n cb,\n cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex\n )) {\n pendingPostFlushCbs.push(cb);\n }\n } else {\n pendingPostFlushCbs.push(...cb);\n }\n queueFlush();\n}\nfunction flushPreFlushCbs(seen, i = isFlushing ? flushIndex + 1 : 0) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n for (; i < queue.length; i++) {\n const cb = queue[i];\n if (cb && cb.pre) {\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, cb)) {\n continue;\n }\n queue.splice(i, 1);\n i--;\n cb();\n }\n }\n}\nfunction flushPostFlushCbs(seen) {\n if (pendingPostFlushCbs.length) {\n const deduped = [...new Set(pendingPostFlushCbs)];\n pendingPostFlushCbs.length = 0;\n if (activePostFlushCbs) {\n activePostFlushCbs.push(...deduped);\n return;\n }\n activePostFlushCbs = deduped;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n activePostFlushCbs.sort((a, b) => getId(a) - getId(b));\n for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {\n if (!!(process.env.NODE_ENV !== \"production\") && checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {\n continue;\n }\n activePostFlushCbs[postFlushIndex]();\n }\n activePostFlushCbs = null;\n postFlushIndex = 0;\n }\n}\nconst getId = (job) => job.id == null ? Infinity : job.id;\nconst comparator = (a, b) => {\n const diff = getId(a) - getId(b);\n if (diff === 0) {\n if (a.pre && !b.pre)\n return -1;\n if (b.pre && !a.pre)\n return 1;\n }\n return diff;\n};\nfunction flushJobs(seen) {\n isFlushPending = false;\n isFlushing = true;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n seen = seen || /* @__PURE__ */ new Map();\n }\n queue.sort(comparator);\n const check = !!(process.env.NODE_ENV !== \"production\") ? (job) => checkRecursiveUpdates(seen, job) : NOOP;\n try {\n for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {\n const job = queue[flushIndex];\n if (job && job.active !== false) {\n if (!!(process.env.NODE_ENV !== \"production\") && check(job)) {\n continue;\n }\n callWithErrorHandling(job, null, 14);\n }\n }\n } finally {\n flushIndex = 0;\n queue.length = 0;\n flushPostFlushCbs(seen);\n isFlushing = false;\n currentFlushPromise = null;\n if (queue.length || pendingPostFlushCbs.length) {\n flushJobs(seen);\n }\n }\n}\nfunction checkRecursiveUpdates(seen, fn) {\n if (!seen.has(fn)) {\n seen.set(fn, 1);\n } else {\n const count = seen.get(fn);\n if (count > RECURSION_LIMIT) {\n const instance = fn.ownerInstance;\n const componentName = instance && getComponentName(instance.type);\n warn(\n `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`\n );\n return true;\n } else {\n seen.set(fn, count + 1);\n }\n }\n}\n\nlet isHmrUpdating = false;\nconst hmrDirtyComponents = /* @__PURE__ */ new Set();\nif (!!(process.env.NODE_ENV !== \"production\")) {\n getGlobalThis().__VUE_HMR_RUNTIME__ = {\n createRecord: tryWrap(createRecord),\n rerender: tryWrap(rerender),\n reload: tryWrap(reload)\n };\n}\nconst map = /* @__PURE__ */ new Map();\nfunction registerHMR(instance) {\n const id = instance.type.__hmrId;\n let record = map.get(id);\n if (!record) {\n createRecord(id, instance.type);\n record = map.get(id);\n }\n record.instances.add(instance);\n}\nfunction unregisterHMR(instance) {\n map.get(instance.type.__hmrId).instances.delete(instance);\n}\nfunction createRecord(id, initialDef) {\n if (map.has(id)) {\n return false;\n }\n map.set(id, {\n initialDef: normalizeClassComponent(initialDef),\n instances: /* @__PURE__ */ new Set()\n });\n return true;\n}\nfunction normalizeClassComponent(component) {\n return isClassComponent(component) ? component.__vccOpts : component;\n}\nfunction rerender(id, newRender) {\n const record = map.get(id);\n if (!record) {\n return;\n }\n record.initialDef.render = newRender;\n [...record.instances].forEach((instance) => {\n if (newRender) {\n instance.render = newRender;\n normalizeClassComponent(instance.type).render = newRender;\n }\n instance.renderCache = [];\n isHmrUpdating = true;\n instance.update();\n isHmrUpdating = false;\n });\n}\nfunction reload(id, newComp) {\n const record = map.get(id);\n if (!record)\n return;\n newComp = normalizeClassComponent(newComp);\n updateComponentDef(record.initialDef, newComp);\n const instances = [...record.instances];\n for (const instance of instances) {\n const oldComp = normalizeClassComponent(instance.type);\n if (!hmrDirtyComponents.has(oldComp)) {\n if (oldComp !== record.initialDef) {\n updateComponentDef(oldComp, newComp);\n }\n hmrDirtyComponents.add(oldComp);\n }\n instance.appContext.propsCache.delete(instance.type);\n instance.appContext.emitsCache.delete(instance.type);\n instance.appContext.optionsCache.delete(instance.type);\n if (instance.ceReload) {\n hmrDirtyComponents.add(oldComp);\n instance.ceReload(newComp.styles);\n hmrDirtyComponents.delete(oldComp);\n } else if (instance.parent) {\n queueJob(instance.parent.update);\n } else if (instance.appContext.reload) {\n instance.appContext.reload();\n } else if (typeof window !== \"undefined\") {\n window.location.reload();\n } else {\n console.warn(\n \"[HMR] Root or manually mounted instance modified. Full reload required.\"\n );\n }\n }\n queuePostFlushCb(() => {\n for (const instance of instances) {\n hmrDirtyComponents.delete(\n normalizeClassComponent(instance.type)\n );\n }\n });\n}\nfunction updateComponentDef(oldComp, newComp) {\n extend(oldComp, newComp);\n for (const key in oldComp) {\n if (key !== \"__file\" && !(key in newComp)) {\n delete oldComp[key];\n }\n }\n}\nfunction tryWrap(fn) {\n return (id, arg) => {\n try {\n return fn(id, arg);\n } catch (e) {\n console.error(e);\n console.warn(\n `[HMR] Something went wrong during Vue component hot-reload. Full reload required.`\n );\n }\n };\n}\n\nlet devtools;\nlet buffer = [];\nlet devtoolsNotInstalled = false;\nfunction emit$1(event, ...args) {\n if (devtools) {\n devtools.emit(event, ...args);\n } else if (!devtoolsNotInstalled) {\n buffer.push({ event, args });\n }\n}\nfunction setDevtoolsHook(hook, target) {\n var _a, _b;\n devtools = hook;\n if (devtools) {\n devtools.enabled = true;\n buffer.forEach(({ event, args }) => devtools.emit(event, ...args));\n buffer = [];\n } else if (\n // handle late devtools injection - only do this if we are in an actual\n // browser environment to avoid the timer handle stalling test runner exit\n // (#4815)\n typeof window !== \"undefined\" && // some envs mock window but not fully\n window.HTMLElement && // also exclude jsdom\n !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes(\"jsdom\"))\n ) {\n const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];\n replay.push((newHook) => {\n setDevtoolsHook(newHook, target);\n });\n setTimeout(() => {\n if (!devtools) {\n target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;\n devtoolsNotInstalled = true;\n buffer = [];\n }\n }, 3e3);\n } else {\n devtoolsNotInstalled = true;\n buffer = [];\n }\n}\nfunction devtoolsInitApp(app, version) {\n emit$1(\"app:init\" /* APP_INIT */, app, version, {\n Fragment,\n Text,\n Comment,\n Static\n });\n}\nfunction devtoolsUnmountApp(app) {\n emit$1(\"app:unmount\" /* APP_UNMOUNT */, app);\n}\nconst devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:added\" /* COMPONENT_ADDED */\n);\nconst devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(\"component:updated\" /* COMPONENT_UPDATED */);\nconst _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(\n \"component:removed\" /* COMPONENT_REMOVED */\n);\nconst devtoolsComponentRemoved = (component) => {\n if (devtools && typeof devtools.cleanupBuffer === \"function\" && // remove the component if it wasn't buffered\n !devtools.cleanupBuffer(component)) {\n _devtoolsComponentRemoved(component);\n }\n};\nfunction createDevtoolsComponentHook(hook) {\n return (component) => {\n emit$1(\n hook,\n component.appContext.app,\n component.uid,\n component.parent ? component.parent.uid : void 0,\n component\n );\n };\n}\nconst devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:start\" /* PERFORMANCE_START */\n);\nconst devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(\n \"perf:end\" /* PERFORMANCE_END */\n);\nfunction createDevtoolsPerformanceHook(hook) {\n return (component, type, time) => {\n emit$1(hook, component.appContext.app, component.uid, component, type, time);\n };\n}\nfunction devtoolsComponentEmit(component, event, params) {\n emit$1(\n \"component:emit\" /* COMPONENT_EMIT */,\n component.appContext.app,\n component,\n event,\n params\n );\n}\n\nfunction emit(instance, event, ...rawArgs) {\n if (instance.isUnmounted)\n return;\n const props = instance.vnode.props || EMPTY_OBJ;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const {\n emitsOptions,\n propsOptions: [propsOptions]\n } = instance;\n if (emitsOptions) {\n if (!(event in emitsOptions) && true) {\n if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {\n warn(\n `Component emitted event \"${event}\" but it is neither declared in the emits option nor as an \"${toHandlerKey(event)}\" prop.`\n );\n }\n } else {\n const validator = emitsOptions[event];\n if (isFunction(validator)) {\n const isValid = validator(...rawArgs);\n if (!isValid) {\n warn(\n `Invalid event arguments: event validation failed for event \"${event}\".`\n );\n }\n }\n }\n }\n }\n let args = rawArgs;\n const isModelListener = event.startsWith(\"update:\");\n const modelArg = isModelListener && event.slice(7);\n if (modelArg && modelArg in props) {\n const modifiersKey = `${modelArg === \"modelValue\" ? \"model\" : modelArg}Modifiers`;\n const { number, trim } = props[modifiersKey] || EMPTY_OBJ;\n if (trim) {\n args = rawArgs.map((a) => isString(a) ? a.trim() : a);\n }\n if (number) {\n args = rawArgs.map(looseToNumber);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentEmit(instance, event, args);\n }\n if (!!(process.env.NODE_ENV !== \"production\")) {\n const lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {\n warn(\n `Event \"${lowerCaseEvent}\" is emitted in component ${formatComponentName(\n instance,\n instance.type\n )} but the handler is registered for \"${event}\". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use \"${hyphenate(event)}\" instead of \"${event}\".`\n );\n }\n }\n let handlerName;\n let handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249)\n props[handlerName = toHandlerKey(camelize(event))];\n if (!handler && isModelListener) {\n handler = props[handlerName = toHandlerKey(hyphenate(event))];\n }\n if (handler) {\n callWithAsyncErrorHandling(\n handler,\n instance,\n 6,\n args\n );\n }\n const onceHandler = props[handlerName + `Once`];\n if (onceHandler) {\n if (!instance.emitted) {\n instance.emitted = {};\n } else if (instance.emitted[handlerName]) {\n return;\n }\n instance.emitted[handlerName] = true;\n callWithAsyncErrorHandling(\n onceHandler,\n instance,\n 6,\n args\n );\n }\n}\nfunction normalizeEmitsOptions(comp, appContext, asMixin = false) {\n const cache = appContext.emitsCache;\n const cached = cache.get(comp);\n if (cached !== void 0) {\n return cached;\n }\n const raw = comp.emits;\n let normalized = {};\n let hasExtends = false;\n if (__VUE_OPTIONS_API__ && !isFunction(comp)) {\n const extendEmits = (raw2) => {\n const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);\n if (normalizedFromExtend) {\n hasExtends = true;\n extend(normalized, normalizedFromExtend);\n }\n };\n if (!asMixin && appContext.mixins.length) {\n appContext.mixins.forEach(extendEmits);\n }\n if (comp.extends) {\n extendEmits(comp.extends);\n }\n if (comp.mixins) {\n comp.mixins.forEach(extendEmits);\n }\n }\n if (!raw && !hasExtends) {\n if (isObject(comp)) {\n cache.set(comp, null);\n }\n return null;\n }\n if (isArray(raw)) {\n raw.forEach((key) => normalized[key] = null);\n } else {\n extend(normalized, raw);\n }\n if (isObject(comp)) {\n cache.set(comp, normalized);\n }\n return normalized;\n}\nfunction isEmitListener(options, key) {\n if (!options || !isOn(key)) {\n return false;\n }\n key = key.slice(2).replace(/Once$/, \"\");\n return hasOwn(options, key[0].toLowerCase() + key.slice(1)) || hasOwn(options, hyphenate(key)) || hasOwn(options, key);\n}\n\nlet currentRenderingInstance = null;\nlet currentScopeId = null;\nfunction setCurrentRenderingInstance(instance) {\n const prev = currentRenderingInstance;\n currentRenderingInstance = instance;\n currentScopeId = instance && instance.type.__scopeId || null;\n return prev;\n}\nfunction pushScopeId(id) {\n currentScopeId = id;\n}\nfunction popScopeId() {\n currentScopeId = null;\n}\nconst withScopeId = (_id) => withCtx;\nfunction withCtx(fn, ctx = currentRenderingInstance, isNonScopedSlot) {\n if (!ctx)\n return fn;\n if (fn._n) {\n return fn;\n }\n const renderFnWithContext = (...args) => {\n if (renderFnWithContext._d) {\n setBlockTracking(-1);\n }\n const prevInstance = setCurrentRenderingInstance(ctx);\n let res;\n try {\n res = fn(...args);\n } finally {\n setCurrentRenderingInstance(prevInstance);\n if (renderFnWithContext._d) {\n setBlockTracking(1);\n }\n }\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentUpdated(ctx);\n }\n return res;\n };\n renderFnWithContext._n = true;\n renderFnWithContext._c = true;\n renderFnWithContext._d = true;\n return renderFnWithContext;\n}\n\nlet accessedAttrs = false;\nfunction markAttrsAccessed() {\n accessedAttrs = true;\n}\nfunction renderComponentRoot(instance) {\n const {\n type: Component,\n vnode,\n proxy,\n withProxy,\n props,\n propsOptions: [propsOptions],\n slots,\n attrs,\n emit,\n render,\n renderCache,\n data,\n setupState,\n ctx,\n inheritAttrs\n } = instance;\n let result;\n let fallthroughAttrs;\n const prev = setCurrentRenderingInstance(instance);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n accessedAttrs = false;\n }\n try {\n if (vnode.shapeFlag & 4) {\n const proxyToUse = withProxy || proxy;\n result = normalizeVNode(\n render.call(\n proxyToUse,\n proxyToUse,\n renderCache,\n props,\n setupState,\n data,\n ctx\n )\n );\n fallthroughAttrs = attrs;\n } else {\n const render2 = Component;\n if (!!(process.env.NODE_ENV !== \"production\") && attrs === props) {\n markAttrsAccessed();\n }\n result = normalizeVNode(\n render2.length > 1 ? render2(\n props,\n !!(process.env.NODE_ENV !== \"production\") ? {\n get attrs() {\n markAttrsAccessed();\n return attrs;\n },\n slots,\n emit\n } : { attrs, slots, emit }\n ) : render2(\n props,\n null\n /* we know it doesn't need it */\n )\n );\n fallthroughAttrs = Component.props ? attrs : getFunctionalFallthrough(attrs);\n }\n } catch (err) {\n blockStack.length = 0;\n handleError(err, instance, 1);\n result = createVNode(Comment);\n }\n let root = result;\n let setRoot = void 0;\n if (!!(process.env.NODE_ENV !== \"production\") && result.patchFlag > 0 && result.patchFlag & 2048) {\n [root, setRoot] = getChildRoot(result);\n }\n if (fallthroughAttrs && inheritAttrs !== false) {\n const keys = Object.keys(fallthroughAttrs);\n const { shapeFlag } = root;\n if (keys.length) {\n if (shapeFlag & (1 | 6)) {\n if (propsOptions && keys.some(isModelListener)) {\n fallthroughAttrs = filterModelListeners(\n fallthroughAttrs,\n propsOptions\n );\n }\n root = cloneVNode(root, fallthroughAttrs);\n } else if (!!(process.env.NODE_ENV !== \"production\") && !accessedAttrs && root.type !== Comment) {\n const allAttrs = Object.keys(attrs);\n const eventAttrs = [];\n const extraAttrs = [];\n for (let i = 0, l = allAttrs.length; i < l; i++) {\n const key = allAttrs[i];\n if (isOn(key)) {\n if (!isModelListener(key)) {\n eventAttrs.push(key[2].toLowerCase() + key.slice(3));\n }\n } else {\n extraAttrs.push(key);\n }\n }\n if (extraAttrs.length) {\n warn(\n `Extraneous non-props attributes (${extraAttrs.join(\", \")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes.`\n );\n }\n if (eventAttrs.length) {\n warn(\n `Extraneous non-emits event listeners (${eventAttrs.join(\", \")}) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the \"emits\" option.`\n );\n }\n }\n }\n }\n if (vnode.dirs) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isElementRoot(root)) {\n warn(\n `Runtime directive used on component with non-element root node. The directives will not function as intended.`\n );\n }\n root = cloneVNode(root);\n root.dirs = root.dirs ? root.dirs.concat(vnode.dirs) : vnode.dirs;\n }\n if (vnode.transition) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isElementRoot(root)) {\n warn(\n `Component inside renders non-element root node that cannot be animated.`\n );\n }\n root.transition = vnode.transition;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && setRoot) {\n setRoot(root);\n } else {\n result = root;\n }\n setCurrentRenderingInstance(prev);\n return result;\n}\nconst getChildRoot = (vnode) => {\n const rawChildren = vnode.children;\n const dynamicChildren = vnode.dynamicChildren;\n const childRoot = filterSingleRoot(rawChildren);\n if (!childRoot) {\n return [vnode, void 0];\n }\n const index = rawChildren.indexOf(childRoot);\n const dynamicIndex = dynamicChildren ? dynamicChildren.indexOf(childRoot) : -1;\n const setRoot = (updatedRoot) => {\n rawChildren[index] = updatedRoot;\n if (dynamicChildren) {\n if (dynamicIndex > -1) {\n dynamicChildren[dynamicIndex] = updatedRoot;\n } else if (updatedRoot.patchFlag > 0) {\n vnode.dynamicChildren = [...dynamicChildren, updatedRoot];\n }\n }\n };\n return [normalizeVNode(childRoot), setRoot];\n};\nfunction filterSingleRoot(children) {\n let singleRoot;\n for (let i = 0; i < children.length; i++) {\n const child = children[i];\n if (isVNode(child)) {\n if (child.type !== Comment || child.children === \"v-if\") {\n if (singleRoot) {\n return;\n } else {\n singleRoot = child;\n }\n }\n } else {\n return;\n }\n }\n return singleRoot;\n}\nconst getFunctionalFallthrough = (attrs) => {\n let res;\n for (const key in attrs) {\n if (key === \"class\" || key === \"style\" || isOn(key)) {\n (res || (res = {}))[key] = attrs[key];\n }\n }\n return res;\n};\nconst filterModelListeners = (attrs, props) => {\n const res = {};\n for (const key in attrs) {\n if (!isModelListener(key) || !(key.slice(9) in props)) {\n res[key] = attrs[key];\n }\n }\n return res;\n};\nconst isElementRoot = (vnode) => {\n return vnode.shapeFlag & (6 | 1) || vnode.type === Comment;\n};\nfunction shouldUpdateComponent(prevVNode, nextVNode, optimized) {\n const { props: prevProps, children: prevChildren, component } = prevVNode;\n const { props: nextProps, children: nextChildren, patchFlag } = nextVNode;\n const emits = component.emitsOptions;\n if (!!(process.env.NODE_ENV !== \"production\") && (prevChildren || nextChildren) && isHmrUpdating) {\n return true;\n }\n if (nextVNode.dirs || nextVNode.transition) {\n return true;\n }\n if (optimized && patchFlag >= 0) {\n if (patchFlag & 1024) {\n return true;\n }\n if (patchFlag & 16) {\n if (!prevProps) {\n return !!nextProps;\n }\n return hasPropsChanged(prevProps, nextProps, emits);\n } else if (patchFlag & 8) {\n const dynamicProps = nextVNode.dynamicProps;\n for (let i = 0; i < dynamicProps.length; i++) {\n const key = dynamicProps[i];\n if (nextProps[key] !== prevProps[key] && !isEmitListener(emits, key)) {\n return true;\n }\n }\n }\n } else {\n if (prevChildren || nextChildren) {\n if (!nextChildren || !nextChildren.$stable) {\n return true;\n }\n }\n if (prevProps === nextProps) {\n return false;\n }\n if (!prevProps) {\n return !!nextProps;\n }\n if (!nextProps) {\n return true;\n }\n return hasPropsChanged(prevProps, nextProps, emits);\n }\n return false;\n}\nfunction hasPropsChanged(prevProps, nextProps, emitsOptions) {\n const nextKeys = Object.keys(nextProps);\n if (nextKeys.length !== Object.keys(prevProps).length) {\n return true;\n }\n for (let i = 0; i < nextKeys.length; i++) {\n const key = nextKeys[i];\n if (nextProps[key] !== prevProps[key] && !isEmitListener(emitsOptions, key)) {\n return true;\n }\n }\n return false;\n}\nfunction updateHOCHostEl({ vnode, parent }, el) {\n while (parent && parent.subTree === vnode) {\n (vnode = parent.vnode).el = el;\n parent = parent.parent;\n }\n}\n\nconst isSuspense = (type) => type.__isSuspense;\nconst SuspenseImpl = {\n name: \"Suspense\",\n // In order to make Suspense tree-shakable, we need to avoid importing it\n // directly in the renderer. The renderer checks for the __isSuspense flag\n // on a vnode's type and calls the `process` method, passing in renderer\n // internals.\n __isSuspense: true,\n process(n1, n2, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) {\n if (n1 == null) {\n mountSuspense(\n n2,\n container,\n anchor,\n parentComponent,\n parentSuspense,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n } else {\n patchSuspense(\n n1,\n n2,\n container,\n anchor,\n parentComponent,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n }\n },\n hydrate: hydrateSuspense,\n create: createSuspenseBoundary,\n normalize: normalizeSuspenseChildren\n};\nconst Suspense = SuspenseImpl ;\nfunction triggerEvent(vnode, name) {\n const eventListener = vnode.props && vnode.props[name];\n if (isFunction(eventListener)) {\n eventListener();\n }\n}\nfunction mountSuspense(vnode, container, anchor, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals) {\n const {\n p: patch,\n o: { createElement }\n } = rendererInternals;\n const hiddenContainer = createElement(\"div\");\n const suspense = vnode.suspense = createSuspenseBoundary(\n vnode,\n parentSuspense,\n parentComponent,\n container,\n hiddenContainer,\n anchor,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals\n );\n patch(\n null,\n suspense.pendingBranch = vnode.ssContent,\n hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds\n );\n if (suspense.deps > 0) {\n triggerEvent(vnode, \"onPending\");\n triggerEvent(vnode, \"onFallback\");\n patch(\n null,\n vnode.ssFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n isSVG,\n slotScopeIds\n );\n setActiveBranch(suspense, vnode.ssFallback);\n } else {\n suspense.resolve(false, true);\n }\n}\nfunction patchSuspense(n1, n2, container, anchor, parentComponent, isSVG, slotScopeIds, optimized, { p: patch, um: unmount, o: { createElement } }) {\n const suspense = n2.suspense = n1.suspense;\n suspense.vnode = n2;\n n2.el = n1.el;\n const newBranch = n2.ssContent;\n const newFallback = n2.ssFallback;\n const { activeBranch, pendingBranch, isInFallback, isHydrating } = suspense;\n if (pendingBranch) {\n suspense.pendingBranch = newBranch;\n if (isSameVNodeType(newBranch, pendingBranch)) {\n patch(\n pendingBranch,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else if (isInFallback) {\n patch(\n activeBranch,\n newFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n isSVG,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newFallback);\n }\n } else {\n suspense.pendingId++;\n if (isHydrating) {\n suspense.isHydrating = false;\n suspense.activeBranch = pendingBranch;\n } else {\n unmount(pendingBranch, parentComponent, suspense);\n }\n suspense.deps = 0;\n suspense.effects.length = 0;\n suspense.hiddenContainer = createElement(\"div\");\n if (isInFallback) {\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else {\n patch(\n activeBranch,\n newFallback,\n container,\n anchor,\n parentComponent,\n null,\n // fallback tree will not have suspense context\n isSVG,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newFallback);\n }\n } else if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\n patch(\n activeBranch,\n newBranch,\n container,\n anchor,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n suspense.resolve(true);\n } else {\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n }\n }\n }\n } else {\n if (activeBranch && isSameVNodeType(newBranch, activeBranch)) {\n patch(\n activeBranch,\n newBranch,\n container,\n anchor,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, newBranch);\n } else {\n triggerEvent(n2, \"onPending\");\n suspense.pendingBranch = newBranch;\n suspense.pendingId++;\n patch(\n null,\n newBranch,\n suspense.hiddenContainer,\n null,\n parentComponent,\n suspense,\n isSVG,\n slotScopeIds,\n optimized\n );\n if (suspense.deps <= 0) {\n suspense.resolve();\n } else {\n const { timeout, pendingId } = suspense;\n if (timeout > 0) {\n setTimeout(() => {\n if (suspense.pendingId === pendingId) {\n suspense.fallback(newFallback);\n }\n }, timeout);\n } else if (timeout === 0) {\n suspense.fallback(newFallback);\n }\n }\n }\n }\n}\nlet hasWarned = false;\nfunction createSuspenseBoundary(vnode, parentSuspense, parentComponent, container, hiddenContainer, anchor, isSVG, slotScopeIds, optimized, rendererInternals, isHydrating = false) {\n if (!!(process.env.NODE_ENV !== \"production\") && true && !hasWarned) {\n hasWarned = true;\n console[console.info ? \"info\" : \"log\"](\n ` is an experimental feature and its API will likely change.`\n );\n }\n const {\n p: patch,\n m: move,\n um: unmount,\n n: next,\n o: { parentNode, remove }\n } = rendererInternals;\n let parentSuspenseId;\n const isSuspensible = isVNodeSuspensible(vnode);\n if (isSuspensible) {\n if (parentSuspense == null ? void 0 : parentSuspense.pendingBranch) {\n parentSuspenseId = parentSuspense.pendingId;\n parentSuspense.deps++;\n }\n }\n const timeout = vnode.props ? toNumber(vnode.props.timeout) : void 0;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n assertNumber(timeout, `Suspense timeout`);\n }\n const suspense = {\n vnode,\n parent: parentSuspense,\n parentComponent,\n isSVG,\n container,\n hiddenContainer,\n anchor,\n deps: 0,\n pendingId: 0,\n timeout: typeof timeout === \"number\" ? timeout : -1,\n activeBranch: null,\n pendingBranch: null,\n isInFallback: true,\n isHydrating,\n isUnmounted: false,\n effects: [],\n resolve(resume = false, sync = false) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n if (!resume && !suspense.pendingBranch) {\n throw new Error(\n `suspense.resolve() is called without a pending branch.`\n );\n }\n if (suspense.isUnmounted) {\n throw new Error(\n `suspense.resolve() is called on an already unmounted suspense boundary.`\n );\n }\n }\n const {\n vnode: vnode2,\n activeBranch,\n pendingBranch,\n pendingId,\n effects,\n parentComponent: parentComponent2,\n container: container2\n } = suspense;\n if (suspense.isHydrating) {\n suspense.isHydrating = false;\n } else if (!resume) {\n const delayEnter = activeBranch && pendingBranch.transition && pendingBranch.transition.mode === \"out-in\";\n if (delayEnter) {\n activeBranch.transition.afterLeave = () => {\n if (pendingId === suspense.pendingId) {\n move(pendingBranch, container2, anchor2, 0);\n }\n };\n }\n let { anchor: anchor2 } = suspense;\n if (activeBranch) {\n anchor2 = next(activeBranch);\n unmount(activeBranch, parentComponent2, suspense, true);\n }\n if (!delayEnter) {\n move(pendingBranch, container2, anchor2, 0);\n }\n }\n setActiveBranch(suspense, pendingBranch);\n suspense.pendingBranch = null;\n suspense.isInFallback = false;\n let parent = suspense.parent;\n let hasUnresolvedAncestor = false;\n while (parent) {\n if (parent.pendingBranch) {\n parent.effects.push(...effects);\n hasUnresolvedAncestor = true;\n break;\n }\n parent = parent.parent;\n }\n if (!hasUnresolvedAncestor) {\n queuePostFlushCb(effects);\n }\n suspense.effects = [];\n if (isSuspensible) {\n if (parentSuspense && parentSuspense.pendingBranch && parentSuspenseId === parentSuspense.pendingId) {\n parentSuspense.deps--;\n if (parentSuspense.deps === 0 && !sync) {\n parentSuspense.resolve();\n }\n }\n }\n triggerEvent(vnode2, \"onResolve\");\n },\n fallback(fallbackVNode) {\n if (!suspense.pendingBranch) {\n return;\n }\n const { vnode: vnode2, activeBranch, parentComponent: parentComponent2, container: container2, isSVG: isSVG2 } = suspense;\n triggerEvent(vnode2, \"onFallback\");\n const anchor2 = next(activeBranch);\n const mountFallback = () => {\n if (!suspense.isInFallback) {\n return;\n }\n patch(\n null,\n fallbackVNode,\n container2,\n anchor2,\n parentComponent2,\n null,\n // fallback tree will not have suspense context\n isSVG2,\n slotScopeIds,\n optimized\n );\n setActiveBranch(suspense, fallbackVNode);\n };\n const delayEnter = fallbackVNode.transition && fallbackVNode.transition.mode === \"out-in\";\n if (delayEnter) {\n activeBranch.transition.afterLeave = mountFallback;\n }\n suspense.isInFallback = true;\n unmount(\n activeBranch,\n parentComponent2,\n null,\n // no suspense so unmount hooks fire now\n true\n // shouldRemove\n );\n if (!delayEnter) {\n mountFallback();\n }\n },\n move(container2, anchor2, type) {\n suspense.activeBranch && move(suspense.activeBranch, container2, anchor2, type);\n suspense.container = container2;\n },\n next() {\n return suspense.activeBranch && next(suspense.activeBranch);\n },\n registerDep(instance, setupRenderEffect) {\n const isInPendingSuspense = !!suspense.pendingBranch;\n if (isInPendingSuspense) {\n suspense.deps++;\n }\n const hydratedEl = instance.vnode.el;\n instance.asyncDep.catch((err) => {\n handleError(err, instance, 0);\n }).then((asyncSetupResult) => {\n if (instance.isUnmounted || suspense.isUnmounted || suspense.pendingId !== instance.suspenseId) {\n return;\n }\n instance.asyncResolved = true;\n const { vnode: vnode2 } = instance;\n if (!!(process.env.NODE_ENV !== \"production\")) {\n pushWarningContext(vnode2);\n }\n handleSetupResult(instance, asyncSetupResult, false);\n if (hydratedEl) {\n vnode2.el = hydratedEl;\n }\n const placeholder = !hydratedEl && instance.subTree.el;\n setupRenderEffect(\n instance,\n vnode2,\n // component may have been moved before resolve.\n // if this is not a hydration, instance.subTree will be the comment\n // placeholder.\n parentNode(hydratedEl || instance.subTree.el),\n // anchor will not be used if this is hydration, so only need to\n // consider the comment placeholder case.\n hydratedEl ? null : next(instance.subTree),\n suspense,\n isSVG,\n optimized\n );\n if (placeholder) {\n remove(placeholder);\n }\n updateHOCHostEl(instance, vnode2.el);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n popWarningContext();\n }\n if (isInPendingSuspense && --suspense.deps === 0) {\n suspense.resolve();\n }\n });\n },\n unmount(parentSuspense2, doRemove) {\n suspense.isUnmounted = true;\n if (suspense.activeBranch) {\n unmount(\n suspense.activeBranch,\n parentComponent,\n parentSuspense2,\n doRemove\n );\n }\n if (suspense.pendingBranch) {\n unmount(\n suspense.pendingBranch,\n parentComponent,\n parentSuspense2,\n doRemove\n );\n }\n }\n };\n return suspense;\n}\nfunction hydrateSuspense(node, vnode, parentComponent, parentSuspense, isSVG, slotScopeIds, optimized, rendererInternals, hydrateNode) {\n const suspense = vnode.suspense = createSuspenseBoundary(\n vnode,\n parentSuspense,\n parentComponent,\n node.parentNode,\n document.createElement(\"div\"),\n null,\n isSVG,\n slotScopeIds,\n optimized,\n rendererInternals,\n true\n /* hydrating */\n );\n const result = hydrateNode(\n node,\n suspense.pendingBranch = vnode.ssContent,\n parentComponent,\n suspense,\n slotScopeIds,\n optimized\n );\n if (suspense.deps === 0) {\n suspense.resolve(false, true);\n }\n return result;\n}\nfunction normalizeSuspenseChildren(vnode) {\n const { shapeFlag, children } = vnode;\n const isSlotChildren = shapeFlag & 32;\n vnode.ssContent = normalizeSuspenseSlot(\n isSlotChildren ? children.default : children\n );\n vnode.ssFallback = isSlotChildren ? normalizeSuspenseSlot(children.fallback) : createVNode(Comment);\n}\nfunction normalizeSuspenseSlot(s) {\n let block;\n if (isFunction(s)) {\n const trackBlock = isBlockTreeEnabled && s._c;\n if (trackBlock) {\n s._d = false;\n openBlock();\n }\n s = s();\n if (trackBlock) {\n s._d = true;\n block = currentBlock;\n closeBlock();\n }\n }\n if (isArray(s)) {\n const singleChild = filterSingleRoot(s);\n if (!!(process.env.NODE_ENV !== \"production\") && !singleChild) {\n warn(` slots expect a single root node.`);\n }\n s = singleChild;\n }\n s = normalizeVNode(s);\n if (block && !s.dynamicChildren) {\n s.dynamicChildren = block.filter((c) => c !== s);\n }\n return s;\n}\nfunction queueEffectWithSuspense(fn, suspense) {\n if (suspense && suspense.pendingBranch) {\n if (isArray(fn)) {\n suspense.effects.push(...fn);\n } else {\n suspense.effects.push(fn);\n }\n } else {\n queuePostFlushCb(fn);\n }\n}\nfunction setActiveBranch(suspense, branch) {\n suspense.activeBranch = branch;\n const { vnode, parentComponent } = suspense;\n const el = vnode.el = branch.el;\n if (parentComponent && parentComponent.subTree === vnode) {\n parentComponent.vnode.el = el;\n updateHOCHostEl(parentComponent, el);\n }\n}\nfunction isVNodeSuspensible(vnode) {\n var _a;\n return ((_a = vnode.props) == null ? void 0 : _a.suspensible) != null && vnode.props.suspensible !== false;\n}\n\nfunction watchEffect(effect, options) {\n return doWatch(effect, null, options);\n}\nfunction watchPostEffect(effect, options) {\n return doWatch(\n effect,\n null,\n !!(process.env.NODE_ENV !== \"production\") ? extend({}, options, { flush: \"post\" }) : { flush: \"post\" }\n );\n}\nfunction watchSyncEffect(effect, options) {\n return doWatch(\n effect,\n null,\n !!(process.env.NODE_ENV !== \"production\") ? extend({}, options, { flush: \"sync\" }) : { flush: \"sync\" }\n );\n}\nconst INITIAL_WATCHER_VALUE = {};\nfunction watch(source, cb, options) {\n if (!!(process.env.NODE_ENV !== \"production\") && !isFunction(cb)) {\n warn(\n `\\`watch(fn, options?)\\` signature has been moved to a separate API. Use \\`watchEffect(fn, options?)\\` instead. \\`watch\\` now only supports \\`watch(source, cb, options?) signature.`\n );\n }\n return doWatch(source, cb, options);\n}\nfunction doWatch(source, cb, { immediate, deep, flush, onTrack, onTrigger } = EMPTY_OBJ) {\n var _a;\n if (!!(process.env.NODE_ENV !== \"production\") && !cb) {\n if (immediate !== void 0) {\n warn(\n `watch() \"immediate\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n if (deep !== void 0) {\n warn(\n `watch() \"deep\" option is only respected when using the watch(source, callback, options?) signature.`\n );\n }\n }\n const warnInvalidSource = (s) => {\n warn(\n `Invalid watch source: `,\n s,\n `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`\n );\n };\n const instance = getCurrentScope() === ((_a = currentInstance) == null ? void 0 : _a.scope) ? currentInstance : null;\n let getter;\n let forceTrigger = false;\n let isMultiSource = false;\n if (isRef(source)) {\n getter = () => source.value;\n forceTrigger = isShallow$1(source);\n } else if (isReactive(source)) {\n getter = () => source;\n deep = true;\n } else if (isArray(source)) {\n isMultiSource = true;\n forceTrigger = source.some((s) => isReactive(s) || isShallow$1(s));\n getter = () => source.map((s) => {\n if (isRef(s)) {\n return s.value;\n } else if (isReactive(s)) {\n return traverse(s);\n } else if (isFunction(s)) {\n return callWithErrorHandling(s, instance, 2);\n } else {\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(s);\n }\n });\n } else if (isFunction(source)) {\n if (cb) {\n getter = () => callWithErrorHandling(source, instance, 2);\n } else {\n getter = () => {\n if (instance && instance.isUnmounted) {\n return;\n }\n if (cleanup) {\n cleanup();\n }\n return callWithAsyncErrorHandling(\n source,\n instance,\n 3,\n [onCleanup]\n );\n };\n }\n } else {\n getter = NOOP;\n !!(process.env.NODE_ENV !== \"production\") && warnInvalidSource(source);\n }\n if (cb && deep) {\n const baseGetter = getter;\n getter = () => traverse(baseGetter());\n }\n let cleanup;\n let onCleanup = (fn) => {\n cleanup = effect.onStop = () => {\n callWithErrorHandling(fn, instance, 4);\n };\n };\n let ssrCleanup;\n if (isInSSRComponentSetup) {\n onCleanup = NOOP;\n if (!cb) {\n getter();\n } else if (immediate) {\n callWithAsyncErrorHandling(cb, instance, 3, [\n getter(),\n isMultiSource ? [] : void 0,\n onCleanup\n ]);\n }\n if (flush === \"sync\") {\n const ctx = useSSRContext();\n ssrCleanup = ctx.__watcherHandles || (ctx.__watcherHandles = []);\n } else {\n return NOOP;\n }\n }\n let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;\n const job = () => {\n if (!effect.active) {\n return;\n }\n if (cb) {\n const newValue = effect.run();\n if (deep || forceTrigger || (isMultiSource ? newValue.some(\n (v, i) => hasChanged(v, oldValue[i])\n ) : hasChanged(newValue, oldValue)) || false) {\n if (cleanup) {\n cleanup();\n }\n callWithAsyncErrorHandling(cb, instance, 3, [\n newValue,\n // pass undefined as the old value when it's changed for the first time\n oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,\n onCleanup\n ]);\n oldValue = newValue;\n }\n } else {\n effect.run();\n }\n };\n job.allowRecurse = !!cb;\n let scheduler;\n if (flush === \"sync\") {\n scheduler = job;\n } else if (flush === \"post\") {\n scheduler = () => queuePostRenderEffect(job, instance && instance.suspense);\n } else {\n job.pre = true;\n if (instance)\n job.id = instance.uid;\n scheduler = () => queueJob(job);\n }\n const effect = new ReactiveEffect(getter, scheduler);\n if (!!(process.env.NODE_ENV !== \"production\")) {\n effect.onTrack = onTrack;\n effect.onTrigger = onTrigger;\n }\n if (cb) {\n if (immediate) {\n job();\n } else {\n oldValue = effect.run();\n }\n } else if (flush === \"post\") {\n queuePostRenderEffect(\n effect.run.bind(effect),\n instance && instance.suspense\n );\n } else {\n effect.run();\n }\n const unwatch = () => {\n effect.stop();\n if (instance && instance.scope) {\n remove(instance.scope.effects, effect);\n }\n };\n if (ssrCleanup)\n ssrCleanup.push(unwatch);\n return unwatch;\n}\nfunction instanceWatch(source, value, options) {\n const publicThis = this.proxy;\n const getter = isString(source) ? source.includes(\".\") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);\n let cb;\n if (isFunction(value)) {\n cb = value;\n } else {\n cb = value.handler;\n options = value;\n }\n const cur = currentInstance;\n setCurrentInstance(this);\n const res = doWatch(getter, cb.bind(publicThis), options);\n if (cur) {\n setCurrentInstance(cur);\n } else {\n unsetCurrentInstance();\n }\n return res;\n}\nfunction createPathGetter(ctx, path) {\n const segments = path.split(\".\");\n return () => {\n let cur = ctx;\n for (let i = 0; i < segments.length && cur; i++) {\n cur = cur[segments[i]];\n }\n return cur;\n };\n}\nfunction traverse(value, seen) {\n if (!isObject(value) || value[\"__v_skip\"]) {\n return value;\n }\n seen = seen || /* @__PURE__ */ new Set();\n if (seen.has(value)) {\n return value;\n }\n seen.add(value);\n if (isRef(value)) {\n traverse(value.value, seen);\n } else if (isArray(value)) {\n for (let i = 0; i < value.length; i++) {\n traverse(value[i], seen);\n }\n } else if (isSet(value) || isMap(value)) {\n value.forEach((v) => {\n traverse(v, seen);\n });\n } else if (isPlainObject(value)) {\n for (const key in value) {\n traverse(value[key], seen);\n }\n }\n return value;\n}\n\nfunction validateDirectiveName(name) {\n if (isBuiltInDirective(name)) {\n warn(\"Do not use built-in directive ids as custom directive id: \" + name);\n }\n}\nfunction withDirectives(vnode, directives) {\n const internalInstance = currentRenderingInstance;\n if (internalInstance === null) {\n !!(process.env.NODE_ENV !== \"production\") && warn(`withDirectives can only be used inside render functions.`);\n return vnode;\n }\n const instance = getExposeProxy(internalInstance) || internalInstance.proxy;\n const bindings = vnode.dirs || (vnode.dirs = []);\n for (let i = 0; i < directives.length; i++) {\n let [dir, value, arg, modifiers = EMPTY_OBJ] = directives[i];\n if (dir) {\n if (isFunction(dir)) {\n dir = {\n mounted: dir,\n updated: dir\n };\n }\n if (dir.deep) {\n traverse(value);\n }\n bindings.push({\n dir,\n instance,\n value,\n oldValue: void 0,\n arg,\n modifiers\n });\n }\n }\n return vnode;\n}\nfunction invokeDirectiveHook(vnode, prevVNode, instance, name) {\n const bindings = vnode.dirs;\n const oldBindings = prevVNode && prevVNode.dirs;\n for (let i = 0; i < bindings.length; i++) {\n const binding = bindings[i];\n if (oldBindings) {\n binding.oldValue = oldBindings[i].value;\n }\n let hook = binding.dir[name];\n if (hook) {\n pauseTracking();\n callWithAsyncErrorHandling(hook, instance, 8, [\n vnode.el,\n binding,\n vnode,\n prevVNode\n ]);\n resetTracking();\n }\n }\n}\n\nfunction useTransitionState() {\n const state = {\n isMounted: false,\n isLeaving: false,\n isUnmounting: false,\n leavingVNodes: /* @__PURE__ */ new Map()\n };\n onMounted(() => {\n state.isMounted = true;\n });\n onBeforeUnmount(() => {\n state.isUnmounting = true;\n });\n return state;\n}\nconst TransitionHookValidator = [Function, Array];\nconst BaseTransitionPropsValidators = {\n mode: String,\n appear: Boolean,\n persisted: Boolean,\n // enter\n onBeforeEnter: TransitionHookValidator,\n onEnter: TransitionHookValidator,\n onAfterEnter: TransitionHookValidator,\n onEnterCancelled: TransitionHookValidator,\n // leave\n onBeforeLeave: TransitionHookValidator,\n onLeave: TransitionHookValidator,\n onAfterLeave: TransitionHookValidator,\n onLeaveCancelled: TransitionHookValidator,\n // appear\n onBeforeAppear: TransitionHookValidator,\n onAppear: TransitionHookValidator,\n onAfterAppear: TransitionHookValidator,\n onAppearCancelled: TransitionHookValidator\n};\nconst BaseTransitionImpl = {\n name: `BaseTransition`,\n props: BaseTransitionPropsValidators,\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const state = useTransitionState();\n let prevTransitionKey;\n return () => {\n const children = slots.default && getTransitionRawChildren(slots.default(), true);\n if (!children || !children.length) {\n return;\n }\n let child = children[0];\n if (children.length > 1) {\n let hasFound = false;\n for (const c of children) {\n if (c.type !== Comment) {\n if (!!(process.env.NODE_ENV !== \"production\") && hasFound) {\n warn(\n \" can only be used on a single element or component. Use for lists.\"\n );\n break;\n }\n child = c;\n hasFound = true;\n if (!!!(process.env.NODE_ENV !== \"production\"))\n break;\n }\n }\n }\n const rawProps = toRaw(props);\n const { mode } = rawProps;\n if (!!(process.env.NODE_ENV !== \"production\") && mode && mode !== \"in-out\" && mode !== \"out-in\" && mode !== \"default\") {\n warn(`invalid mode: ${mode}`);\n }\n if (state.isLeaving) {\n return emptyPlaceholder(child);\n }\n const innerChild = getKeepAliveChild(child);\n if (!innerChild) {\n return emptyPlaceholder(child);\n }\n const enterHooks = resolveTransitionHooks(\n innerChild,\n rawProps,\n state,\n instance\n );\n setTransitionHooks(innerChild, enterHooks);\n const oldChild = instance.subTree;\n const oldInnerChild = oldChild && getKeepAliveChild(oldChild);\n let transitionKeyChanged = false;\n const { getTransitionKey } = innerChild.type;\n if (getTransitionKey) {\n const key = getTransitionKey();\n if (prevTransitionKey === void 0) {\n prevTransitionKey = key;\n } else if (key !== prevTransitionKey) {\n prevTransitionKey = key;\n transitionKeyChanged = true;\n }\n }\n if (oldInnerChild && oldInnerChild.type !== Comment && (!isSameVNodeType(innerChild, oldInnerChild) || transitionKeyChanged)) {\n const leavingHooks = resolveTransitionHooks(\n oldInnerChild,\n rawProps,\n state,\n instance\n );\n setTransitionHooks(oldInnerChild, leavingHooks);\n if (mode === \"out-in\") {\n state.isLeaving = true;\n leavingHooks.afterLeave = () => {\n state.isLeaving = false;\n if (instance.update.active !== false) {\n instance.update();\n }\n };\n return emptyPlaceholder(child);\n } else if (mode === \"in-out\" && innerChild.type !== Comment) {\n leavingHooks.delayLeave = (el, earlyRemove, delayedLeave) => {\n const leavingVNodesCache = getLeavingNodesForType(\n state,\n oldInnerChild\n );\n leavingVNodesCache[String(oldInnerChild.key)] = oldInnerChild;\n el._leaveCb = () => {\n earlyRemove();\n el._leaveCb = void 0;\n delete enterHooks.delayedLeave;\n };\n enterHooks.delayedLeave = delayedLeave;\n };\n }\n }\n return child;\n };\n }\n};\nconst BaseTransition = BaseTransitionImpl;\nfunction getLeavingNodesForType(state, vnode) {\n const { leavingVNodes } = state;\n let leavingVNodesCache = leavingVNodes.get(vnode.type);\n if (!leavingVNodesCache) {\n leavingVNodesCache = /* @__PURE__ */ Object.create(null);\n leavingVNodes.set(vnode.type, leavingVNodesCache);\n }\n return leavingVNodesCache;\n}\nfunction resolveTransitionHooks(vnode, props, state, instance) {\n const {\n appear,\n mode,\n persisted = false,\n onBeforeEnter,\n onEnter,\n onAfterEnter,\n onEnterCancelled,\n onBeforeLeave,\n onLeave,\n onAfterLeave,\n onLeaveCancelled,\n onBeforeAppear,\n onAppear,\n onAfterAppear,\n onAppearCancelled\n } = props;\n const key = String(vnode.key);\n const leavingVNodesCache = getLeavingNodesForType(state, vnode);\n const callHook = (hook, args) => {\n hook && callWithAsyncErrorHandling(\n hook,\n instance,\n 9,\n args\n );\n };\n const callAsyncHook = (hook, args) => {\n const done = args[1];\n callHook(hook, args);\n if (isArray(hook)) {\n if (hook.every((hook2) => hook2.length <= 1))\n done();\n } else if (hook.length <= 1) {\n done();\n }\n };\n const hooks = {\n mode,\n persisted,\n beforeEnter(el) {\n let hook = onBeforeEnter;\n if (!state.isMounted) {\n if (appear) {\n hook = onBeforeAppear || onBeforeEnter;\n } else {\n return;\n }\n }\n if (el._leaveCb) {\n el._leaveCb(\n true\n /* cancelled */\n );\n }\n const leavingVNode = leavingVNodesCache[key];\n if (leavingVNode && isSameVNodeType(vnode, leavingVNode) && leavingVNode.el._leaveCb) {\n leavingVNode.el._leaveCb();\n }\n callHook(hook, [el]);\n },\n enter(el) {\n let hook = onEnter;\n let afterHook = onAfterEnter;\n let cancelHook = onEnterCancelled;\n if (!state.isMounted) {\n if (appear) {\n hook = onAppear || onEnter;\n afterHook = onAfterAppear || onAfterEnter;\n cancelHook = onAppearCancelled || onEnterCancelled;\n } else {\n return;\n }\n }\n let called = false;\n const done = el._enterCb = (cancelled) => {\n if (called)\n return;\n called = true;\n if (cancelled) {\n callHook(cancelHook, [el]);\n } else {\n callHook(afterHook, [el]);\n }\n if (hooks.delayedLeave) {\n hooks.delayedLeave();\n }\n el._enterCb = void 0;\n };\n if (hook) {\n callAsyncHook(hook, [el, done]);\n } else {\n done();\n }\n },\n leave(el, remove) {\n const key2 = String(vnode.key);\n if (el._enterCb) {\n el._enterCb(\n true\n /* cancelled */\n );\n }\n if (state.isUnmounting) {\n return remove();\n }\n callHook(onBeforeLeave, [el]);\n let called = false;\n const done = el._leaveCb = (cancelled) => {\n if (called)\n return;\n called = true;\n remove();\n if (cancelled) {\n callHook(onLeaveCancelled, [el]);\n } else {\n callHook(onAfterLeave, [el]);\n }\n el._leaveCb = void 0;\n if (leavingVNodesCache[key2] === vnode) {\n delete leavingVNodesCache[key2];\n }\n };\n leavingVNodesCache[key2] = vnode;\n if (onLeave) {\n callAsyncHook(onLeave, [el, done]);\n } else {\n done();\n }\n },\n clone(vnode2) {\n return resolveTransitionHooks(vnode2, props, state, instance);\n }\n };\n return hooks;\n}\nfunction emptyPlaceholder(vnode) {\n if (isKeepAlive(vnode)) {\n vnode = cloneVNode(vnode);\n vnode.children = null;\n return vnode;\n }\n}\nfunction getKeepAliveChild(vnode) {\n return isKeepAlive(vnode) ? vnode.children ? vnode.children[0] : void 0 : vnode;\n}\nfunction setTransitionHooks(vnode, hooks) {\n if (vnode.shapeFlag & 6 && vnode.component) {\n setTransitionHooks(vnode.component.subTree, hooks);\n } else if (vnode.shapeFlag & 128) {\n vnode.ssContent.transition = hooks.clone(vnode.ssContent);\n vnode.ssFallback.transition = hooks.clone(vnode.ssFallback);\n } else {\n vnode.transition = hooks;\n }\n}\nfunction getTransitionRawChildren(children, keepComment = false, parentKey) {\n let ret = [];\n let keyedFragmentCount = 0;\n for (let i = 0; i < children.length; i++) {\n let child = children[i];\n const key = parentKey == null ? child.key : String(parentKey) + String(child.key != null ? child.key : i);\n if (child.type === Fragment) {\n if (child.patchFlag & 128)\n keyedFragmentCount++;\n ret = ret.concat(\n getTransitionRawChildren(child.children, keepComment, key)\n );\n } else if (keepComment || child.type !== Comment) {\n ret.push(key != null ? cloneVNode(child, { key }) : child);\n }\n }\n if (keyedFragmentCount > 1) {\n for (let i = 0; i < ret.length; i++) {\n ret[i].patchFlag = -2;\n }\n }\n return ret;\n}\n\nfunction defineComponent(options, extraOptions) {\n return isFunction(options) ? (\n // #8326: extend call and options.name access are considered side-effects\n // by Rollup, so we have to wrap it in a pure-annotated IIFE.\n /* @__PURE__ */ (() => extend({ name: options.name }, extraOptions, { setup: options }))()\n ) : options;\n}\n\nconst isAsyncWrapper = (i) => !!i.type.__asyncLoader;\nfunction defineAsyncComponent(source) {\n if (isFunction(source)) {\n source = { loader: source };\n }\n const {\n loader,\n loadingComponent,\n errorComponent,\n delay = 200,\n timeout,\n // undefined = never times out\n suspensible = true,\n onError: userOnError\n } = source;\n let pendingRequest = null;\n let resolvedComp;\n let retries = 0;\n const retry = () => {\n retries++;\n pendingRequest = null;\n return load();\n };\n const load = () => {\n let thisRequest;\n return pendingRequest || (thisRequest = pendingRequest = loader().catch((err) => {\n err = err instanceof Error ? err : new Error(String(err));\n if (userOnError) {\n return new Promise((resolve, reject) => {\n const userRetry = () => resolve(retry());\n const userFail = () => reject(err);\n userOnError(err, userRetry, userFail, retries + 1);\n });\n } else {\n throw err;\n }\n }).then((comp) => {\n if (thisRequest !== pendingRequest && pendingRequest) {\n return pendingRequest;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && !comp) {\n warn(\n `Async component loader resolved to undefined. If you are using retry(), make sure to return its return value.`\n );\n }\n if (comp && (comp.__esModule || comp[Symbol.toStringTag] === \"Module\")) {\n comp = comp.default;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && comp && !isObject(comp) && !isFunction(comp)) {\n throw new Error(`Invalid async component load result: ${comp}`);\n }\n resolvedComp = comp;\n return comp;\n }));\n };\n return defineComponent({\n name: \"AsyncComponentWrapper\",\n __asyncLoader: load,\n get __asyncResolved() {\n return resolvedComp;\n },\n setup() {\n const instance = currentInstance;\n if (resolvedComp) {\n return () => createInnerComp(resolvedComp, instance);\n }\n const onError = (err) => {\n pendingRequest = null;\n handleError(\n err,\n instance,\n 13,\n !errorComponent\n /* do not throw in dev if user provided error component */\n );\n };\n if (suspensible && instance.suspense || isInSSRComponentSetup) {\n return load().then((comp) => {\n return () => createInnerComp(comp, instance);\n }).catch((err) => {\n onError(err);\n return () => errorComponent ? createVNode(errorComponent, {\n error: err\n }) : null;\n });\n }\n const loaded = ref(false);\n const error = ref();\n const delayed = ref(!!delay);\n if (delay) {\n setTimeout(() => {\n delayed.value = false;\n }, delay);\n }\n if (timeout != null) {\n setTimeout(() => {\n if (!loaded.value && !error.value) {\n const err = new Error(\n `Async component timed out after ${timeout}ms.`\n );\n onError(err);\n error.value = err;\n }\n }, timeout);\n }\n load().then(() => {\n loaded.value = true;\n if (instance.parent && isKeepAlive(instance.parent.vnode)) {\n queueJob(instance.parent.update);\n }\n }).catch((err) => {\n onError(err);\n error.value = err;\n });\n return () => {\n if (loaded.value && resolvedComp) {\n return createInnerComp(resolvedComp, instance);\n } else if (error.value && errorComponent) {\n return createVNode(errorComponent, {\n error: error.value\n });\n } else if (loadingComponent && !delayed.value) {\n return createVNode(loadingComponent);\n }\n };\n }\n });\n}\nfunction createInnerComp(comp, parent) {\n const { ref: ref2, props, children, ce } = parent.vnode;\n const vnode = createVNode(comp, props, children);\n vnode.ref = ref2;\n vnode.ce = ce;\n delete parent.vnode.ce;\n return vnode;\n}\n\nconst isKeepAlive = (vnode) => vnode.type.__isKeepAlive;\nconst KeepAliveImpl = {\n name: `KeepAlive`,\n // Marker for special handling inside the renderer. We are not using a ===\n // check directly on KeepAlive in the renderer, because importing it directly\n // would prevent it from being tree-shaken.\n __isKeepAlive: true,\n props: {\n include: [String, RegExp, Array],\n exclude: [String, RegExp, Array],\n max: [String, Number]\n },\n setup(props, { slots }) {\n const instance = getCurrentInstance();\n const sharedContext = instance.ctx;\n if (!sharedContext.renderer) {\n return () => {\n const children = slots.default && slots.default();\n return children && children.length === 1 ? children[0] : children;\n };\n }\n const cache = /* @__PURE__ */ new Map();\n const keys = /* @__PURE__ */ new Set();\n let current = null;\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n instance.__v_cache = cache;\n }\n const parentSuspense = instance.suspense;\n const {\n renderer: {\n p: patch,\n m: move,\n um: _unmount,\n o: { createElement }\n }\n } = sharedContext;\n const storageContainer = createElement(\"div\");\n sharedContext.activate = (vnode, container, anchor, isSVG, optimized) => {\n const instance2 = vnode.component;\n move(vnode, container, anchor, 0, parentSuspense);\n patch(\n instance2.vnode,\n vnode,\n container,\n anchor,\n instance2,\n parentSuspense,\n isSVG,\n vnode.slotScopeIds,\n optimized\n );\n queuePostRenderEffect(() => {\n instance2.isDeactivated = false;\n if (instance2.a) {\n invokeArrayFns(instance2.a);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeMounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n }, parentSuspense);\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentAdded(instance2);\n }\n };\n sharedContext.deactivate = (vnode) => {\n const instance2 = vnode.component;\n move(vnode, storageContainer, null, 1, parentSuspense);\n queuePostRenderEffect(() => {\n if (instance2.da) {\n invokeArrayFns(instance2.da);\n }\n const vnodeHook = vnode.props && vnode.props.onVnodeUnmounted;\n if (vnodeHook) {\n invokeVNodeHook(vnodeHook, instance2.parent, vnode);\n }\n instance2.isDeactivated = true;\n }, parentSuspense);\n if (!!(process.env.NODE_ENV !== \"production\") || __VUE_PROD_DEVTOOLS__) {\n devtoolsComponentAdded(instance2);\n }\n };\n function unmount(vnode) {\n resetShapeFlag(vnode);\n _unmount(vnode, instance, parentSuspense, true);\n }\n function pruneCache(filter) {\n cache.forEach((vnode, key) => {\n const name = getComponentName(vnode.type);\n if (name && (!filter || !filter(name))) {\n pruneCacheEntry(key);\n }\n });\n }\n function pruneCacheEntry(key) {\n const cached = cache.get(key);\n if (!current || !isSameVNodeType(cached, current)) {\n unmount(cached);\n } else if (current) {\n resetShapeFlag(current);\n }\n cache.delete(key);\n keys.delete(key);\n }\n watch(\n () => [props.include, props.exclude],\n ([include, exclude]) => {\n include && pruneCache((name) => matches(include, name));\n exclude && pruneCache((name) => !matches(exclude, name));\n },\n // prune post-render after `current` has been updated\n { flush: \"post\", deep: true }\n );\n let pendingCacheKey = null;\n const cacheSubtree = () => {\n if (pendingCacheKey != null) {\n cache.set(pendingCacheKey, getInnerChild(instance.subTree));\n }\n };\n onMounted(cacheSubtree);\n onUpdated(cacheSubtree);\n onBeforeUnmount(() => {\n cache.forEach((cached) => {\n const { subTree, suspense } = instance;\n const vnode = getInnerChild(subTree);\n if (cached.type === vnode.type && cached.key === vnode.key) {\n resetShapeFlag(vnode);\n const da = vnode.component.da;\n da && queuePostRenderEffect(da, suspense);\n return;\n }\n unmount(cached);\n });\n });\n return () => {\n pendingCacheKey = null;\n if (!slots.default) {\n return null;\n }\n const children = slots.default();\n const rawVNode = children[0];\n if (children.length > 1) {\n if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(`KeepAlive should contain exactly one component child.`);\n }\n current = null;\n return children;\n } else if (!isVNode(rawVNode) || !(rawVNode.shapeFlag & 4) && !(rawVNode.shapeFlag & 128)) {\n current = null;\n return rawVNode;\n }\n let vnode = getInnerChild(rawVNode);\n const comp = vnode.type;\n const name = getComponentName(\n isAsyncWrapper(vnode) ? vnode.type.__asyncResolved || {} : comp\n );\n const { include, exclude, max } = props;\n if (include && (!name || !matches(include, name)) || exclude && name && matches(exclude, name)) {\n current = vnode;\n return rawVNode;\n }\n const key = vnode.key == null ? comp : vnode.key;\n const cachedVNode = cache.get(key);\n if (vnode.el) {\n vnode = cloneVNode(vnode);\n if (rawVNode.shapeFlag & 128) {\n rawVNode.ssContent = vnode;\n }\n }\n pendingCacheKey = key;\n if (cachedVNode) {\n vnode.el = cachedVNode.el;\n vnode.component = cachedVNode.component;\n if (vnode.transition) {\n setTransitionHooks(vnode, vnode.transition);\n }\n vnode.shapeFlag |= 512;\n keys.delete(key);\n keys.add(key);\n } else {\n keys.add(key);\n if (max && keys.size > parseInt(max, 10)) {\n pruneCacheEntry(keys.values().next().value);\n }\n }\n vnode.shapeFlag |= 256;\n current = vnode;\n return isSuspense(rawVNode.type) ? rawVNode : vnode;\n };\n }\n};\nconst KeepAlive = KeepAliveImpl;\nfunction matches(pattern, name) {\n if (isArray(pattern)) {\n return pattern.some((p) => matches(p, name));\n } else if (isString(pattern)) {\n return pattern.split(\",\").includes(name);\n } else if (isRegExp(pattern)) {\n return pattern.test(name);\n }\n return false;\n}\nfunction onActivated(hook, target) {\n registerKeepAliveHook(hook, \"a\", target);\n}\nfunction onDeactivated(hook, target) {\n registerKeepAliveHook(hook, \"da\", target);\n}\nfunction registerKeepAliveHook(hook, type, target = currentInstance) {\n const wrappedHook = hook.__wdc || (hook.__wdc = () => {\n let current = target;\n while (current) {\n if (current.isDeactivated) {\n return;\n }\n current = current.parent;\n }\n return hook();\n });\n injectHook(type, wrappedHook, target);\n if (target) {\n let current = target.parent;\n while (current && current.parent) {\n if (isKeepAlive(current.parent.vnode)) {\n injectToKeepAliveRoot(wrappedHook, type, target, current);\n }\n current = current.parent;\n }\n }\n}\nfunction injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {\n const injected = injectHook(\n type,\n hook,\n keepAliveRoot,\n true\n /* prepend */\n );\n onUnmounted(() => {\n remove(keepAliveRoot[type], injected);\n }, target);\n}\nfunction resetShapeFlag(vnode) {\n vnode.shapeFlag &= ~256;\n vnode.shapeFlag &= ~512;\n}\nfunction getInnerChild(vnode) {\n return vnode.shapeFlag & 128 ? vnode.ssContent : vnode;\n}\n\nfunction injectHook(type, hook, target = currentInstance, prepend = false) {\n if (target) {\n const hooks = target[type] || (target[type] = []);\n const wrappedHook = hook.__weh || (hook.__weh = (...args) => {\n if (target.isUnmounted) {\n return;\n }\n pauseTracking();\n setCurrentInstance(target);\n const res = callWithAsyncErrorHandling(hook, target, type, args);\n unsetCurrentInstance();\n resetTracking();\n return res;\n });\n if (prepend) {\n hooks.unshift(wrappedHook);\n } else {\n hooks.push(wrappedHook);\n }\n return wrappedHook;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n const apiName = toHandlerKey(ErrorTypeStrings[type].replace(/ hook$/, \"\"));\n warn(\n `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().` + (` If you are using async setup(), make sure to register lifecycle hooks before the first await statement.` )\n );\n }\n}\nconst createHook = (lifecycle) => (hook, target = currentInstance) => (\n // post-create lifecycle registrations are noops during SSR (except for serverPrefetch)\n (!isInSSRComponentSetup || lifecycle === \"sp\") && injectHook(lifecycle, (...args) => hook(...args), target)\n);\nconst onBeforeMount = createHook(\"bm\");\nconst onMounted = createHook(\"m\");\nconst onBeforeUpdate = createHook(\"bu\");\nconst onUpdated = createHook(\"u\");\nconst onBeforeUnmount = createHook(\"bum\");\nconst onUnmounted = createHook(\"um\");\nconst onServerPrefetch = createHook(\"sp\");\nconst onRenderTriggered = createHook(\n \"rtg\"\n);\nconst onRenderTracked = createHook(\n \"rtc\"\n);\nfunction onErrorCaptured(hook, target = currentInstance) {\n injectHook(\"ec\", hook, target);\n}\n\nconst COMPONENTS = \"components\";\nconst DIRECTIVES = \"directives\";\nfunction resolveComponent(name, maybeSelfReference) {\n return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;\n}\nconst NULL_DYNAMIC_COMPONENT = Symbol.for(\"v-ndc\");\nfunction resolveDynamicComponent(component) {\n if (isString(component)) {\n return resolveAsset(COMPONENTS, component, false) || component;\n } else {\n return component || NULL_DYNAMIC_COMPONENT;\n }\n}\nfunction resolveDirective(name) {\n return resolveAsset(DIRECTIVES, name);\n}\nfunction resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {\n const instance = currentRenderingInstance || currentInstance;\n if (instance) {\n const Component = instance.type;\n if (type === COMPONENTS) {\n const selfName = getComponentName(\n Component,\n false\n /* do not include inferred name to avoid breaking existing code */\n );\n if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {\n return Component;\n }\n }\n const res = (\n // local registration\n // check instance[type] first which is resolved for options API\n resolve(instance[type] || Component[type], name) || // global registration\n resolve(instance.appContext[type], name)\n );\n if (!res && maybeSelfReference) {\n return Component;\n }\n if (!!(process.env.NODE_ENV !== \"production\") && warnMissing && !res) {\n const extra = type === COMPONENTS ? `\nIf this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.` : ``;\n warn(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);\n }\n return res;\n } else if (!!(process.env.NODE_ENV !== \"production\")) {\n warn(\n `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`\n );\n }\n}\nfunction resolve(registry, name) {\n return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);\n}\n\nfunction renderList(source, renderItem, cache, index) {\n let ret;\n const cached = cache && cache[index];\n if (isArray(source) || isString(source)) {\n ret = new Array(source.length);\n for (let i = 0, l = source.length; i < l; i++) {\n ret[i] = renderItem(source[i], i, void 0, cached && cached[i]);\n }\n } else if (typeof source === \"number\") {\n if (!!(process.env.NODE_ENV !== \"production\") && !Number.isInteger(source)) {\n warn(`The v-for range expect an integer value but got ${source}.`);\n }\n ret = new Array(source);\n for (let i = 0; i < source; i++) {\n ret[i] = renderItem(i + 1, i, void 0, cached && cached[i]);\n }\n } else if (isObject(source)) {\n if (source[Symbol.iterator]) {\n ret = Array.from(\n source,\n (item, i) => renderItem(item, i, void 0, cached && cached[i])\n );\n } else {\n const keys = Object.keys(source);\n ret = new Array(keys.length);\n for (let i = 0, l = keys.length; i < l; i++) {\n const key = keys[i];\n ret[i] = renderItem(source[key], key, i, cached && cached[i]);\n }\n }\n } else {\n ret = [];\n }\n if (cache) {\n cache[index] = ret;\n }\n return ret;\n}\n\nfunction createSlots(slots, dynamicSlots) {\n for (let i = 0; i < dynamicSlots.length; i++) {\n const slot = dynamicSlots[i];\n if (isArray(slot)) {\n for (let j = 0; j < slot.length; j++) {\n slots[slot[j].name] = slot[j].fn;\n }\n } else if (slot) {\n slots[slot.name] = slot.key ? (...args) => {\n const res = slot.fn(...args);\n if (res)\n res.key = slot.key;\n return res;\n } : slot.fn;\n }\n }\n return slots;\n}\n\nfunction renderSlot(slots, name, props = {}, fallback, noSlotted) {\n if (currentRenderingInstance.isCE || currentRenderingInstance.parent && isAsyncWrapper(currentRenderingInstance.parent) && currentRenderingInstance.parent.isCE) {\n if (name !== \"default\")\n props.name = name;\n return createVNode(\"slot\", props, fallback && fallback());\n }\n let slot = slots[name];\n if (!!(process.env.NODE_ENV !== \"production\") && slot && slot.length > 1) {\n warn(\n `SSR-optimized slot function detected in a non-SSR-optimized render function. You need to mark this component with $dynamic-slots in the parent template.`\n );\n slot = () => [];\n }\n if (slot && slot._c) {\n slot._d = false;\n }\n openBlock();\n const validSlotContent = slot && ensureValidVNode(slot(props));\n const rendered = createBlock(\n Fragment,\n {\n key: props.key || // slot content array of a dynamic conditional slot may have a branch\n // key attached in the `createSlots` helper, respect that\n validSlotContent && validSlotContent.key || `_${name}`\n },\n validSlotContent || (fallback ? fallback() : []),\n validSlotContent && slots._ === 1 ? 64 : -2\n );\n if (!noSlotted && rendered.scopeId) {\n rendered.slotScopeIds = [rendered.scopeId + \"-s\"];\n }\n if (slot && slot._c) {\n slot._d = true;\n }\n return rendered;\n}\nfunction ensureValidVNode(vnodes) {\n return vnodes.some((child) => {\n if (!isVNode(child))\n return true;\n if (child.type === Comment)\n return false;\n if (child.type === Fragment && !ensureValidVNode(child.children))\n return false;\n return true;\n }) ? vnodes : null;\n}\n\nfunction toHandlers(obj, preserveCaseIfNecessary) {\n const ret = {};\n if (!!(process.env.NODE_ENV !== \"production\") && !isObject(obj)) {\n warn(`v-on with no argument expects an object value.`);\n return ret;\n }\n for (const key in obj) {\n ret[preserveCaseIfNecessary && /[A-Z]/.test(key) ? `on:${key}` : toHandlerKey(key)] = obj[key];\n }\n return ret;\n}\n\nconst getPublicInstance = (i) => {\n if (!i)\n return null;\n if (isStatefulComponent(i))\n return getExposeProxy(i) || i.proxy;\n return getPublicInstance(i.parent);\n};\nconst publicPropertiesMap = (\n // Move PURE marker to new line to workaround compiler discarding it\n // due to type annotation\n /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {\n $: (i) => i,\n $el: (i) => i.vnode.el,\n $data: (i) => i.data,\n $props: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.props) : i.props,\n $attrs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.attrs) : i.attrs,\n $slots: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.slots) : i.slots,\n $refs: (i) => !!(process.env.NODE_ENV !== \"production\") ? shallowReadonly(i.refs) : i.refs,\n $parent: (i) => getPublicInstance(i.parent),\n $root: (i) => getPublicInstance(i.root),\n $emit: (i) => i.emit,\n $options: (i) => __VUE_OPTIONS_API__ ? resolveMergedOptions(i) : i.type,\n $forceUpdate: (i) => i.f || (i.f = () => queueJob(i.update)),\n $nextTick: (i) => i.n || (i.n = nextTick.bind(i.proxy)),\n $watch: (i) => __VUE_OPTIONS_API__ ? instanceWatch.bind(i) : NOOP\n })\n);\nconst isReservedPrefix = (key) => key === \"_\" || key === \"$\";\nconst hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn(state, key);\nconst PublicInstanceProxyHandlers = {\n get({ _: instance }, key) {\n const { ctx, setupState, data, props, accessCache, type, appContext } = instance;\n if (!!(process.env.NODE_ENV !== \"production\") && key === \"__isVue\") {\n return true;\n }\n let normalizedProps;\n if (key[0] !== \"$\") {\n const n = accessCache[key];\n if (n !== void 0) {\n switch (n) {\n case 1 /* SETUP */:\n return setupState[key];\n case 2 /* DATA */:\n return data[key];\n case 4 /* CONTEXT */:\n return ctx[key];\n case 3 /* PROPS */:\n return props[key];\n }\n } else if (hasSetupBinding(setupState, key)) {\n accessCache[key] = 1 /* SETUP */;\n return setupState[key];\n } else if (data !== EMPTY_OBJ && hasOwn(data, key)) {\n accessCache[key] = 2 /* DATA */;\n return data[key];\n } else if (\n // only cache other properties when instance has declared (thus stable)\n // props\n (normalizedProps = instance.propsOptions[0]) && hasOwn(normalizedProps, key)\n ) {\n accessCache[key] = 3 /* PROPS */;\n return props[key];\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (!__VUE_OPTIONS_API__ || shouldCacheAccess) {\n accessCache[key] = 0 /* OTHER */;\n }\n }\n const publicGetter = publicPropertiesMap[key];\n let cssModule, globalProperties;\n if (publicGetter) {\n if (key === \"$attrs\") {\n track(instance, \"get\", key);\n !!(process.env.NODE_ENV !== \"production\") && markAttrsAccessed();\n } else if (!!(process.env.NODE_ENV !== \"production\") && key === \"$slots\") {\n track(instance, \"get\", key);\n }\n return publicGetter(instance);\n } else if (\n // css module (injected by vue-loader)\n (cssModule = type.__cssModules) && (cssModule = cssModule[key])\n ) {\n return cssModule;\n } else if (ctx !== EMPTY_OBJ && hasOwn(ctx, key)) {\n accessCache[key] = 4 /* CONTEXT */;\n return ctx[key];\n } else if (\n // global properties\n globalProperties = appContext.config.globalProperties, hasOwn(globalProperties, key)\n ) {\n {\n return globalProperties[key];\n }\n } else if (!!(process.env.NODE_ENV !== \"production\") && currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading\n // to infinite warning loop\n key.indexOf(\"__v\") !== 0)) {\n if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn(data, key)) {\n warn(\n `Property ${JSON.stringify(\n key\n )} must be accessed via $data because it starts with a reserved character (\"$\" or \"_\") and is not proxied on the render context.`\n );\n } else if (instance === currentRenderingInstance) {\n warn(\n `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`\n );\n }\n }\n },\n set({ _: instance }, key, value) {\n const { data, setupState, ctx } = instance;\n if (hasSetupBinding(setupState, key)) {\n setupState[key] = value;\n return true;\n } else if (!!(process.env.NODE_ENV !== \"production\") && setupState.__isScriptSetup && hasOwn(setupState, key)) {\n warn(`Cannot mutate + diff --git a/main/packages/examples/with-web3onboard/build/assets/Index-64ac63ff-5fb65f27.js b/main/packages/examples/with-web3onboard/build/assets/Index-64ac63ff-5fb65f27.js new file mode 100644 index 000000000..4be0a7a26 --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/Index-64ac63ff-5fb65f27.js @@ -0,0 +1,73 @@ +import{ag as R,ah as M,ai as N,aj as O,aF as me,an as _,aq as w,ar as $,as as T,at as A,au as C,av as Z,aw as _e,ax as we,ay as F,ak as h,am as m,aT as Ce,aA as H,al as L,bp as B,aB as D,ao as g,ap as S,aR as be,by as ze,bz as Te,bA as je,aW as Le,bb as xe,aZ as Pe,bd as Se,aC as G,b5 as Y,b8 as Ee,bB as Ie,bC as ye,bc as Re,aS as Me,bD as J,bE as W,aP as V,a_ as he,aG as Ne,aH as ge,bF as Oe,az as ke,bG as U,bH as Q,aE as I,bI as X,aN as E,aV as K,bJ as ee,b as Fe,bK as te,bL as x,aM as He,be as q,bM as De}from"./index-c9f1dfa0.js";function Ge(i,{from:e,to:t},n={}){const o=getComputedStyle(i),a=o.transform==="none"?"":o.transform,[f,l]=o.transformOrigin.split(" ").map(parseFloat),s=e.left+e.width*f/t.width-(t.left+f),r=e.top+e.height*l/t.height-(t.top+l),{delay:c=0,duration:d=u=>Math.sqrt(u)*120,easing:v=ye}=n;return{delay:c,duration:Me(d)?d(Math.sqrt(s*s+r*r)):d,easing:v,css:(u,y)=>{const p=y*s,b=y*r,z=u+y*e.width/t.width,j=u+y*e.height/t.height;return`transform: ${a} translate(${p}px, ${b}px) scale(${z}, ${j});`}}}function $e(i){O(i,"svelte-13cuwwo","div.svelte-13cuwwo{box-sizing:content-box}.border.svelte-13cuwwo{border:2px solid;border-radius:120px;overflow:hidden}")}function Ae(i){let e,t;return{c(){e=h("div"),m(e,"class","border svelte-13cuwwo"),m(e,"style",t=` + width: ${i[2]-i[3]*2}px; + height: ${i[2]-i[3]*2}px; + border-color: var(${i[1]}); + padding: ${i[3]}px; + background-color: ${i[4]}; + border-radius: 50%; + display: flex; + justify-content: center; + `)},m(n,o){_(n,e,o),e.innerHTML=i[0]},p(n,[o]){o&1&&(e.innerHTML=n[0]),o&30&&t!==(t=` + width: ${n[2]-n[3]*2}px; + height: ${n[2]-n[3]*2}px; + border-color: var(${n[1]}); + padding: ${n[3]}px; + background-color: ${n[4]}; + border-radius: 50%; + display: flex; + justify-content: center; + `)&&m(e,"style",t)},i:I,o:I,d(n){n&&C(e)}}}function Ve(i,e,t){let{icon:n}=e,{borderColorVar:o}=e,{size:a}=e,{padding:f=0}=e,{background:l="transparent"}=e;return i.$$set=s=>{"icon"in s&&t(0,n=s.icon),"borderColorVar"in s&&t(1,o=s.borderColorVar),"size"in s&&t(2,a=s.size),"padding"in s&&t(3,f=s.padding),"background"in s&&t(4,l=s.background)},[n,o,a,f,l]}class Be extends R{constructor(e){super(),M(this,e,Ve,Ae,N,{icon:0,borderColorVar:1,size:2,padding:3,background:4},$e)}}function We(i){O(i,"svelte-jvic9v","div.notification-icons-wrapper.svelte-jvic9v{height:32px;width:32px}.border.svelte-jvic9v{border-radius:8px}div.notification-icon.svelte-jvic9v{padding:6px}div.pending-icon.svelte-jvic9v{animation:svelte-jvic9v-blink 2s ease-in infinite;height:100%;width:100%;padding:7px}@keyframes svelte-jvic9v-blink{from,to{opacity:1}50%{opacity:0.2}}div.border-action.svelte-jvic9v{height:32px;min-width:32px;border-radius:8px;overflow:hidden;will-change:transform}div.border-action.svelte-jvic9v:before{content:'';background-image:conic-gradient(#b1b7f2 20deg, #6370e5 120deg);height:140%;width:140%;position:absolute;left:-25%;top:-25%;animation:svelte-jvic9v-rotate 2s infinite linear}div.chain-icon-container.svelte-jvic9v{left:18px;top:18px}@keyframes svelte-jvic9v-rotate{100%{transform:rotate(-360deg)}}")}function ne(i){let e,t,n,o,a=x[i[1].type].eventIcon+"",f,l,s,r=!i[1].id.includes("customNotification")&&!i[1].id.includes("preflight"),c,d=i[1].type==="pending"&&ie(),v=r&&oe(i);return{c(){e=h("div"),d&&d.c(),t=L(),n=h("div"),o=h("div"),s=L(),v&&v.c(),m(o,"class",f=B(`notification-icon flex items-center justify-center ${i[1].type==="pending"?"pending-icon":""}`)+" svelte-jvic9v"),m(n,"class","flex items-center justify-center border relative notification-icons-wrapper svelte-jvic9v"),m(n,"style",l=`background:${x[i[1].type].backgroundColor}; color: ${x[i[1].type].iconColor||""}; ${i[1].type==="pending"?"height: 28px; width: 28px; margin: 2px;":`border: 2px solid ${x[i[1].type].borderColor}`}; `),m(e,"class","relative")},m(u,y){_(u,e,y),d&&d.m(e,null),g(e,t),g(e,n),g(n,o),o.innerHTML=a,g(e,s),v&&v.m(e,null),c=!0},p(u,y){u[1].type==="pending"?d||(d=ie(),d.c(),d.m(e,t)):d&&(d.d(1),d=null),(!c||y&2)&&a!==(a=x[u[1].type].eventIcon+"")&&(o.innerHTML=a),(!c||y&2&&f!==(f=B(`notification-icon flex items-center justify-center ${u[1].type==="pending"?"pending-icon":""}`)+" svelte-jvic9v"))&&m(o,"class",f),(!c||y&2&&l!==(l=`background:${x[u[1].type].backgroundColor}; color: ${x[u[1].type].iconColor||""}; ${u[1].type==="pending"?"height: 28px; width: 28px; margin: 2px;":`border: 2px solid ${x[u[1].type].borderColor}`}; `))&&m(n,"style",l),y&2&&(r=!u[1].id.includes("customNotification")&&!u[1].id.includes("preflight")),r?v?(v.p(u,y),y&2&&w(v,1)):(v=oe(u),v.c(),w(v,1),v.m(e,null)):v&&($(),T(v,1,1,()=>{v=null}),A())},i(u){c||(w(v),c=!0)},o(u){T(v),c=!1},d(u){u&&C(e),d&&d.d(),v&&v.d()}}}function ie(i){let e;return{c(){e=h("div"),m(e,"class","border-action absolute svelte-jvic9v")},m(t,n){_(t,e,n)},d(t){t&&C(e)}}}function oe(i){let e,t,n;return t=new Be({props:{icon:i[0].icon,size:16,background:i[0].color,borderColorVar:"--notify-onboard-background, var(--onboard-gray-600, var(--gray-600))",padding:3}}),{c(){e=h("div"),H(t.$$.fragment),m(e,"class","absolute chain-icon-container svelte-jvic9v")},m(o,a){_(o,e,a),D(t,e,null),n=!0},p(o,a){const f={};a&1&&(f.icon=o[0].icon),a&1&&(f.background=o[0].color),t.$set(f)},i(o){n||(w(t.$$.fragment,o),n=!0)},o(o){T(t.$$.fragment,o),n=!1},d(o){o&&C(e),G(t)}}}function qe(i){let e,t,n=i[1].type&&ne(i);return{c(){n&&n.c(),e=me()},m(o,a){n&&n.m(o,a),_(o,e,a),t=!0},p(o,[a]){o[1].type?n?(n.p(o,a),a&2&&w(n,1)):(n=ne(o),n.c(),w(n,1),n.m(e.parentNode,e)):n&&($(),T(n,1,1,()=>{n=null}),A())},i(o){t||(w(n),t=!0)},o(o){T(n),t=!1},d(o){n&&n.d(o),o&&C(e)}}}function Ke(i,e,t){let{chainStyles:n=He}=e,{notification:o}=e;return i.$$set=a=>{"chainStyles"in a&&t(0,n=a.chainStyles),"notification"in a&&t(1,o=a.notification)},[n,o]}class Ze extends R{constructor(e){super(),M(this,e,Ke,qe,N,{chainStyles:0,notification:1},We)}}function Ye(i){O(i,"svelte-pm7idu",`div.svelte-pm7idu{display:flex;justify-content:center;font-size:inherit;font-family:inherit;margin:0 1.5rem 0 0.75rem}span.svelte-pm7idu{font-family:inherit;display:flex;align-items:center;margin:0 2px}.time.svelte-pm7idu{color:var( + --notify-onboard-timer-color, + var(--onboard-gray-300, var(--gray-300)) + );margin-left:4px}`)}function ae(i){let e,t,n=i[2](i[1]-i[0])+"",o,a;return{c(){e=E(`- + `),t=h("span"),o=E(n),a=E(` + ago`),m(t,"class","svelte-pm7idu")},m(f,l){_(f,e,l),_(f,t,l),g(t,o),_(f,a,l)},p(f,l){l&3&&n!==(n=f[2](f[1]-f[0])+"")&&K(o,n)},d(f){f&&C(e),f&&C(t),f&&C(a)}}}function Je(i){let e,t=i[0]&&ae(i);return{c(){e=h("div"),t&&t.c(),m(e,"class","time svelte-pm7idu")},m(n,o){_(n,e,o),t&&t.m(e,null)},p(n,[o]){n[0]?t?t.p(n,o):(t=ae(n),t.c(),t.m(e,null)):t&&(t.d(1),t=null)},i:I,o:I,d(n){n&&C(e),t&&t.d()}}}function Ue(i,e,t){let n,o;F(i,ge,r=>t(3,n=r)),F(i,De,r=>t(4,o=r));let{startTime:a}=e;function f(r){const c=Math.floor(r/1e3),d=c<0?0:c;return d>=60?`${Math.floor(d/60).toLocaleString(o)} ${n("notify.time.minutes")}`:`${d.toLocaleString(o)} ${n("notify.time.seconds")}`}let l=Date.now();const s=setInterval(()=>{t(1,l=Date.now())},1e3);return ke(()=>{clearInterval(s)}),i.$$set=r=>{"startTime"in r&&t(0,a=r.startTime)},[a,l,f]}class Qe extends R{constructor(e){super(),M(this,e,Ue,Je,N,{startTime:0},Ye)}}function Xe(i){O(i,"svelte-1otz6tt",`div.notify-transaction-data.svelte-1otz6tt{font-size:var( + --notify-onboard-transaction-font-size, + var(--onboard-font-size-6, var(--font-size-6)) + );font-family:inherit;margin:0px 20px 0px 8px;justify-content:center}.hash-time.svelte-1otz6tt{display:inline-flex;margin-top:4px;font-size:var( + --notify-onboard-hash-time-font-size, + var(--onboard-font-size-7, var(--font-size-7)) + );line-height:var( + --notify-onboard-hash-time-font-line-height, + var(--onboard-font-line-height-4, var(--font-line-height-4)) + )}.address-hash.svelte-1otz6tt{color:var( + --notify-onboard-address-hash-color, + var(--onboard-primary-200, var(--primary-200)) + )}a.address-hash.svelte-1otz6tt{color:var( + --notify-onboard-anchor-color, + var(--onboard-primary-400, var(--primary-400)) + )}a.svelte-1otz6tt{display:flex;text-decoration:none;color:inherit}.transaction-status.svelte-1otz6tt{color:var(--notify-onboard-transaction-status, inherit);line-height:var( + --notify-onboard-font-size-5, + var(--onboard-font-size-5, var(--font-size-5)) + );font-weight:400;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}`)}function re(i){let e,t,n,o;function a(s,r){return s[0].link?tt:et}let f=a(i),l=f(i);return n=new Qe({props:{startTime:i[0].startTime}}),{c(){e=h("span"),l.c(),t=L(),H(n.$$.fragment),m(e,"class","hash-time svelte-1otz6tt")},m(s,r){_(s,e,r),l.m(e,null),g(e,t),D(n,e,null),o=!0},p(s,r){f===(f=a(s))&&l?l.p(s,r):(l.d(1),l=f(s),l&&(l.c(),l.m(e,t)));const c={};r&1&&(c.startTime=s[0].startTime),n.$set(c)},i(s){o||(w(n.$$.fragment,s),o=!0)},o(s){T(n.$$.fragment,s),o=!1},d(s){s&&C(e),l.d(),G(n)}}}function et(i){let e,t=q(i[0].id)+"",n;return{c(){e=h("div"),n=E(t),m(e,"class","address-hash svelte-1otz6tt")},m(o,a){_(o,e,a),g(e,n)},p(o,a){a&1&&t!==(t=q(o[0].id)+"")&&K(n,t)},d(o){o&&C(e)}}}function tt(i){let e,t=q(i[0].id)+"",n,o;return{c(){e=h("a"),n=E(t),m(e,"class","address-hash svelte-1otz6tt"),m(e,"href",o=i[0].link),m(e,"target","_blank"),m(e,"rel","noreferrer noopener")},m(a,f){_(a,e,f),g(e,n)},p(a,f){f&1&&t!==(t=q(a[0].id)+"")&&K(n,t),f&1&&o!==(o=a[0].link)&&m(e,"href",o)},d(a){a&&C(e)}}}function nt(i){let e,t,n=i[0].message+"",o,a,f=i[0].id&&!i[0].id.includes("customNotification")&&!i[0].id.includes("preflight"),l,s=f&&re(i);return{c(){e=h("div"),t=h("span"),o=E(n),a=L(),s&&s.c(),m(t,"class","transaction-status svelte-1otz6tt"),m(e,"class","flex flex-column notify-transaction-data svelte-1otz6tt")},m(r,c){_(r,e,c),g(e,t),g(t,o),g(e,a),s&&s.m(e,null),l=!0},p(r,[c]){(!l||c&1)&&n!==(n=r[0].message+"")&&K(o,n),c&1&&(f=r[0].id&&!r[0].id.includes("customNotification")&&!r[0].id.includes("preflight")),f?s?(s.p(r,c),c&1&&w(s,1)):(s=re(r),s.c(),w(s,1),s.m(e,null)):s&&($(),T(s,1,1,()=>{s=null}),A())},i(r){l||(w(s),l=!0)},o(r){T(s),l=!1},d(r){r&&C(e),s&&s.d()}}}function it(i,e,t){let{notification:n}=e;return i.$$set=o=>{"notification"in o&&t(0,n=o.notification)},[n]}class ot extends R{constructor(e){super(),M(this,e,it,nt,N,{notification:0},Xe)}}var at=` + + + +`;const rt=["txPool"],lt=["main","matic-main"],st=["Ledger","Trezor","Keystone","KeepKey","D'CENT"],le=i=>rt.includes(i),se=i=>lt.includes(i),ce=i=>i&&st.includes(i.label);async function fe({type:i,wallet:e,transaction:t}){const{from:n,input:o,value:a,to:f,nonce:l,gas:s,network:r}=t,c=W[r],{gasPriceProbability:d}=Z.get().notify.replacement,{gas:v}=Y;if(!v)return;const[u]=await v.get({chains:[W[r]],endpoint:"blockPrices"}),{maxFeePerGas:y,maxPriorityFeePerGas:p}=u.blockPrices[0].estimatedPrices.find(({confidence:k})=>k===(i==="speedup"?d==null?void 0:d.speedup:d==null?void 0:d.cancel))||{};if(!y||!p)return;const b=ee(y),z=ee(p),j=o==="0x"?{}:{data:o};return e.provider.request({method:"eth_sendTransaction",params:[Object.assign({type:"0x2",from:n,to:i==="cancel"?n:f,chainId:parseInt(c),value:Fe(BigInt(a)),nonce:te(l),gasLimit:te(s),maxFeePerGas:b,maxPriorityFeePerGas:z},j)]})}function ct(i){O(i,"svelte-ftkynd",`.bn-notify-notification.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{--backround-color:var(--notify-onboard-background, var(--w3o-backround-color, var(--gray-700)));--foreground-color:var(--w3o-foreground-color, var(--gray-600));--text-color:var(--w3o-text-color, #FFF);--border-color:var(--w3o-border-color);font-family:inherit;transition:background 300ms ease-in-out, color 300ms ease-in-out;pointer-events:all;backdrop-filter:blur(5px);width:100%;min-height:56px;display:flex;flex-direction:column;position:relative;overflow:hidden;border:1px solid transparent;border-radius:var( + --notify-onboard-border-radius, + var(--onboard-border-radius-4, var(--border-radius-4)) + );background:var(--foreground-color);color:var(--text-color)}.bn-notify-notification-inner.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{padding:0.75rem}.bn-notify-notification.svelte-ftkynd:hover>div.bn-notify-notification-inner.svelte-ftkynd>div.notify-close-btn-desktop.svelte-ftkynd{visibility:visible;opacity:1}div.notify-close-btn.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{margin-left:auto;margin-bottom:auto;height:24px;width:24px;position:absolute;top:8px;right:8px;justify-content:center;align-items:center}div.notify-close-btn-desktop.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{visibility:hidden;transition:visibility 0.15s linear, opacity 0.15s linear;opacity:0}.notify-close-btn.svelte-ftkynd .close-icon.svelte-ftkynd.svelte-ftkynd{width:20px;margin:auto;color:var(--text-color)}.notify-close-btn.svelte-ftkynd>.close-icon.svelte-ftkynd.svelte-ftkynd{color:var(--notify-onboard-close-icon-color)}.notify-close-btn.svelte-ftkynd:hover>.close-icon.svelte-ftkynd.svelte-ftkynd{color:var(--notify-onboard-close-icon-hover)}.transaction-status.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{color:var( + --notify-onboard-transaction-status-color, + var(--onboard-primary-100, var(--primary-100)) + );line-height:14px}.dropdown.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{height:0px;overflow:hidden;transition:height 150ms ease-in-out}.dropdown-visible.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{height:48px}.dropdown-buttons.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{background-color:var( + --notify-onboard-dropdown-background, + var(--onboard-gray-700, var(--gray-700)) + );width:100%;padding:8px}.dropdown-button.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd{padding:4px 12px;border-radius:var( + --notify-onboard-dropdown-border-radius, + var(--onboard-border-radius-5, var(--border-radius-5)) + );background-color:transparent;font-size:var( + --notify-onboard-dropdown-font-size, + var(--onboard-font-size-6, var(--font-size-6)) + );color:var( + --notify-onboard-dropdown-text-color, + var(--onboard-primary-400, var(--primary-400)) + );transition:all 150ms ease-in-out;cursor:pointer}.dropdown-button.svelte-ftkynd.svelte-ftkynd.svelte-ftkynd:hover{background:var( + --notify-onboard-dropdown-btn-hover-background, + rgba(146, 155, 237, 0.2) + )}`)}function de(i){let e,t,n,o,a,f;return{c(){e=h("div"),t=h("button"),t.textContent="Cancel",n=L(),o=h("button"),o.textContent="Speed-up",m(t,"class","dropdown-button svelte-ftkynd"),m(o,"class","dropdown-button svelte-ftkynd"),m(e,"class","dropdown-buttons flex items-center justify-end svelte-ftkynd")},m(l,s){_(l,e,s),g(e,t),g(e,n),g(e,o),a||(f=[S(t,"click",i[10]),S(o,"click",i[11])],a=!0)},p:I,d(l){l&&C(e),a=!1,he(f)}}}function ft(i){let e,t,n,o,a,f,l,s,r,c,d,v,u,y;n=new Ze({props:{notification:i[0],chainStyles:J[W[i[0].network]]}}),a=new ot({props:{notification:i[0]}});let p=i[0].eventCode==="txPool"&&de(i);return{c(){e=h("div"),t=h("div"),H(n.$$.fragment),o=L(),H(a.$$.fragment),f=L(),l=h("div"),s=h("div"),r=L(),c=h("div"),p&&p.c(),m(s,"class","flex items-center close-icon svelte-ftkynd"),m(l,"class","notify-close-btn notify-close-btn-"+i[4].type+" pointer flex svelte-ftkynd"),m(t,"class","flex bn-notify-notification-inner svelte-ftkynd"),m(c,"class","dropdown svelte-ftkynd"),V(c,"dropdown-visible",i[2]&&i[5]&&le(i[0].eventCode)&&se(i[0].network)&&ce(i[7])),m(e,"class",d="bn-notify-notification bn-notify-notification-"+i[0].type+"} svelte-ftkynd"),V(e,"bn-notify-clickable",i[0].onClick)},m(b,z){_(b,e,z),g(e,t),D(n,t,null),g(t,o),D(a,t,null),g(t,f),g(t,l),g(l,s),s.innerHTML=at,g(e,r),g(e,c),p&&p.m(c,null),v=!0,u||(y=[S(l,"click",be(i[9])),S(e,"mouseenter",i[12]),S(e,"mouseleave",i[13]),S(e,"click",i[8])],u=!0)},p(b,[z]){const j={};z&1&&(j.notification=b[0]),z&1&&(j.chainStyles=J[W[b[0].network]]),n.$set(j);const k={};z&1&&(k.notification=b[0]),a.$set(k),b[0].eventCode==="txPool"?p?p.p(b,z):(p=de(b),p.c(),p.m(c,null)):p&&(p.d(1),p=null),(!v||z&165)&&V(c,"dropdown-visible",b[2]&&b[5]&&le(b[0].eventCode)&&se(b[0].network)&&ce(b[7])),(!v||z&1&&d!==(d="bn-notify-notification bn-notify-notification-"+b[0].type+"} svelte-ftkynd"))&&m(e,"class",d),(!v||z&1)&&V(e,"bn-notify-clickable",b[0].onClick)},i(b){v||(w(n.$$.fragment,b),w(a.$$.fragment,b),v=!0)},o(b){T(n.$$.fragment,b),T(a.$$.fragment,b),v=!1},d(b){b&&C(e),G(n),G(a),p&&p.d(),u=!1,he(y)}}}function dt(i,e,t){let n,o;F(i,Ne,k=>t(15,n=k)),F(i,ge,k=>t(3,o=k));const{device:a,gas:f}=Y;let{notification:l}=e,{updateParentOnRemove:s}=e,r,c=!1;const d=Oe.getValue().find(({hash:k})=>k===l.id),v=d&&n.find(({accounts:k})=>!!k.find(({address:P})=>P.toLowerCase()===d.from.toLowerCase()));function u(k){l!=null&&l.onClick&&l.onClick(k)}ke(()=>{clearTimeout(r)});const y=()=>{U(l.id),Q(l.id),s()},p=async()=>{try{await fe({type:"cancel",wallet:v,transaction:d})}catch{const P=`${d.hash.slice(0,9)}:txReplaceError${d.hash.slice(-5)}`;X({id:P,type:"hint",eventCode:"txError",message:o("notify.transaction.txReplaceError"),key:P,autoDismiss:4e3})}},b=async()=>{try{await fe({type:"speedup",wallet:v,transaction:d})}catch{const P=`${d.hash.slice(0,9)}:txReplaceError${d.hash.slice(-5)}`;X({id:P,type:"hint",eventCode:"txError",message:o("notify.transaction.txReplaceError"),key:P,autoDismiss:4e3})}},z=()=>t(2,c=!0),j=()=>t(2,c=!1);return i.$$set=k=>{"notification"in k&&t(0,l=k.notification),"updateParentOnRemove"in k&&t(1,s=k.updateParentOnRemove)},i.$$.update=()=>{i.$$.dirty&1&&l.autoDismiss&&(r=setTimeout(()=>{U(l.id),Q(l.id)},l.autoDismiss))},[l,s,c,o,a,f,d,v,u,y,p,b,z,j]}class ut extends R{constructor(e){super(),M(this,e,dt,ft,N,{notification:0,updateParentOnRemove:1},ct)}}function vt(i){O(i,"svelte-1h8mmo3",`ul.svelte-1h8mmo3{padding-left:0;display:flex;flex-flow:column nowrap;font-size:var( + --notify-onboard-font-size, + var(--onboard-font-size-5, var(--font-size-5)) + );list-style-type:none;overflow:visible;scrollbar-width:none;box-sizing:border-box;z-index:var(--notify-onboard-z-index, 300);font-family:var( + --notify-onboard-font-family, + var(--onboard-font-family-normal, inherit) + );margin:8px 0;pointer-events:all}.y-scroll.svelte-1h8mmo3{overflow-y:scroll}.y-visible.svelte-1h8mmo3{overflow-y:visible}li.notification-list-top.svelte-1h8mmo3:not(:first-child){margin-top:8px}li.notification-list-bottom.svelte-1h8mmo3:not(:first-child){margin-bottom:8px}ul.bn-notify-bottomLeft.svelte-1h8mmo3,ul.bn-notify-bottomRight.svelte-1h8mmo3{flex-direction:column-reverse}@media only screen and (max-width: 450px){ul.svelte-1h8mmo3{width:100%}}.bn-notify-clickable:hover{cursor:pointer}.svelte-1h8mmo3::-webkit-scrollbar{display:none}`)}function ue(i,e,t){const n=i.slice();return n[12]=e[t],n}function ve(i){let e,t=[],n=new Map,o,a,f,l=i[2];const s=r=>r[12].key;for(let r=0;r{c&&(l&&l.end(1),f=xe(t,Pe,{duration:1200,delay:300,x:e[3],y:e[4],easing:mt}),f.start())}),c=!0)},o(u){T(n.$$.fragment,u),f&&f.invalidate(),l=Se(t,Re,{duration:300,easing:ye}),c=!1},d(u){u&&C(t),G(n),u&&l&&l.end(),d=!1,v()}}}function pt(i){let e,t,n=i[2].length&&ve(i);return{c(){n&&n.c(),e=me()},m(o,a){n&&n.m(o,a),_(o,e,a),t=!0},p(o,[a]){o[2].length?n?(n.p(o,a),a&4&&w(n,1)):(n=ve(o),n.c(),w(n,1),n.m(e.parentNode,e)):n&&($(),T(n,1,1,()=>{n=null}),A())},i(o){t||(w(n),t=!0)},o(o){T(n),t=!1},d(o){n&&n.d(o),o&&C(e)}}}function mt(i){return Math.sin(-13*(i+1)*Math.PI/2)*Math.pow(2,-35*i)+1}function bt(i,e,t){let n;const{device:o}=Y,a=Z.select("accountCenter").pipe(_e(Z.get().accountCenter),we(1));F(i,a,p=>t(6,n=p));let{position:f}=e,{sharedContainer:l}=e,{notifications:s}=e,r,c;r=0,c=0;let d="y-scroll";const v=()=>{d!=="y-visible"&&t(5,d="y-visible"),u(function(){t(5,d="y-scroll")},1e3)},u=function(){let p=null;return(b,z)=>{clearTimeout(p),p=setTimeout(b,z)}}();function y(p){Ee.call(this,i,p)}return i.$$set=p=>{"position"in p&&t(0,f=p.position),"sharedContainer"in p&&t(1,l=p.sharedContainer),"notifications"in p&&t(2,s=p.notifications)},i.$$.update=()=>{i.$$.dirty&1&&(f.includes("top")?t(4,c=-50):t(4,c=50))},[f,l,s,r,c,d,n,o,a,v,y]}class ht extends R{constructor(e){super(),M(this,e,bt,pt,N,{position:0,sharedContainer:1,notifications:2},vt)}}export{ht as default}; diff --git a/main/packages/examples/with-web3onboard/build/assets/Index-6c094240-aac10a74.js b/main/packages/examples/with-web3onboard/build/assets/Index-6c094240-aac10a74.js new file mode 100644 index 000000000..3dcaec894 --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/Index-6c094240-aac10a74.js @@ -0,0 +1,91 @@ +import{a1 as Be,a2 as Dt,a3 as De,a4 as We,a5 as Wt,a6 as Nt,a7 as Et,a8 as Ft,a9 as Ot,aa as Zt,ab as Gt,ac as Rt,ad as Ut,ae as Xt,af as Yt,ag as pe,ah as ve,ai as me,aj as he,ak as h,al as z,am as p,an as M,ao as c,ap as Y,aq as y,ar as ae,as as A,at as ie,au as S,av as te,aw as ye,ax as Ce,ay as ee,az as Jt,aA as F,aB as O,aC as Z,aD as Ne,aE as G,aF as ue,aG as Me,aH as je,aI as Tt,aJ as Ee,aK as P,aL as ge,aM as be,aN as L,aO as _e,aP as ce,aQ as Kt,aR as fe,aS as we,aT as Mt,aU as Qt,aV as V,aW as Ae,aX as Fe,aY as Oe,aZ as Ze,a_ as ke,a$ as St,b0 as xt,b1 as en,b2 as Ve,b3 as ze,b4 as It,b5 as tn,b6 as nn,b7 as rn,b8 as Pt,b9 as on,ba as de,bb as Ie,bc as $e,bd as ln,be as He,bf as an,bg as sn,bh as Lt,bi as qt,bj as cn,bk as dn,P as Ge,bl as un,bm as Re,bn as fn,bo as Ue,bp as Pe,bq as Xe,br as pn,bs as Le,bt as Ye,bu as vn,bv as mn,bw as Je,bx as hn}from"./index-c9f1dfa0.js";var bn=function(e){Be(t,e);function t(n,r){return e.call(this)||this}return t.prototype.schedule=function(n,r){return this},t}(Dt),qe={setInterval:function(e,t){for(var n=[],r=2;r + + +`;function zn(e){he(e,"svelte-1uqued6","select.svelte-1uqued6{border:none;background-image:none;background-color:transparent;-webkit-appearance:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;appearance:none;font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));transition:width 250ms ease-in-out;background-repeat:no-repeat, repeat;background-position:right 0px top 0px, 0 0;scrollbar-width:none;-ms-overflow-style:none;padding:0 14px 0 0;white-space:nowrap;text-overflow:ellipsis}select.minimized_ac.svelte-1uqued6{min-width:80px;max-width:80px}select.maximized_ac.svelte-1uqued6{width:auto !important}select.svelte-1uqued6:focus{outline:none}span.switching-placeholder.svelte-1uqued6{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));min-width:80px;max-width:80px;padding:0 8px 0 4px}")}function Qe(e,t,n){const r=e.slice();return r[15]=t[n],r}function xe(e){let t;function n(l,a){return l[7]?An:$n}let r=n(e),o=r(e);return{c(){o.c(),t=ue()},m(l,a){o.m(l,a),M(l,t,a)},p(l,a){r===(r=n(l))&&o?o.p(l,a):(o.d(1),o=r(l),o&&(o.c(),o.m(t.parentNode,t)))},d(l){o.d(l),l&&S(t)}}}function $n(e){let t,n=!Ue(e[6].chains[0],e[2]),r,o=[],l=new Map,a,s,i,f,d,v=n&&et(e),k=e[2];const g=b=>b[15].id;for(let b=0;bn(12,l=w));let{selectIcon:s=jt}=t,{colorVar:i}=t,{chains:f}=t,{bold:d=!1}=t,{parentCSSId:v=""}=t;const k=new an(!1);ee(e,k,w=>n(7,a=w));let g;const b=kn(Me,k.pipe(Cn(1))).pipe(yn(50),sn((w,C)=>typeof w=="boolean"||typeof C=="boolean"?!1:w[0]&&C[0]&&w[0].chains[0].id===C[0].chains[0].id));ee(e,b,w=>n(11,o=w));async function m(){const w=g.selectedOptions[0].value;w!==r.chains[0].id&&(k.next(!0),await cn({chainId:w,chainNamespace:"evm",wallet:r.label}),k.next(!1))}function u(){if(!g)return;let w=document.createElement("option");w.textContent=g.selectedOptions[0].textContent;let C=document.createElement("select");C.style.visibility="hidden",C.style.position="fixed",C.appendChild(w),g.after(C),n(5,g.style.width=`${C.clientWidth-22}px`,g),C.remove()}function _(w){St[w?"unshift":"push"](()=>{g=w,n(5,g),n(2,f),n(6,r),n(12,l)})}return e.$$set=w=>{"selectIcon"in w&&n(0,s=w.selectIcon),"colorVar"in w&&n(1,i=w.colorVar),"chains"in w&&n(2,f=w.chains),"bold"in w&&n(3,d=w.bold),"parentCSSId"in w&&n(4,v=w.parentCSSId)},e.$$.update=()=>{e.$$.dirty&4096&&n(6,[r]=l,r),e.$$.dirty&2048&&o&&u()},[s,i,f,d,v,g,r,a,k,b,m,o,l,_]}class Vt extends pe{constructor(t){super(),ve(this,t,Mn,Tn,me,{selectIcon:0,colorVar:1,chains:2,bold:3,parentCSSId:4},zn)}}var Sn=` + + + +`;function In(e){he(e,"svelte-hb2n95",`.container.svelte-hb2n95.svelte-hb2n95{display:flex;align-items:center;gap:0.5rem;cursor:pointer;position:relative;z-index:0;width:100%;padding:0.25rem;margin-bottom:0.25rem;border-radius:12px;transition:background-color 150ms ease-in-out}.container.svelte-hb2n95.svelte-hb2n95::before{content:'';display:block;position:absolute;top:0;bottom:0;left:0;right:0;height:100%;width:100%;background:var(--action-color);border-radius:12px;z-index:-1;opacity:0}.container.svelte-hb2n95.svelte-hb2n95:hover::before{opacity:0.2}.container.svelte-hb2n95:hover .balance.svelte-hb2n95,.container.svelte-hb2n95:hover .elipsis-container.svelte-hb2n95{opacity:1}.container.svelte-hb2n95:hover .balance.svelte-hb2n95{color:var(--account-center-maximized-balance-color, inherit)}.container.primary.svelte-hb2n95.svelte-hb2n95:hover{background-color:var( + --account-center-maximized-account-section-background-hover + )}.account-details.svelte-hb2n95.svelte-hb2n95{flex:1 1;display:flex;gap:inherit;overflow:hidden}.address-domain.svelte-hb2n95.svelte-hb2n95{flex:1 0 auto;max-width:70%;white-space:nowrap;font-weight:600;color:var(--account-center-maximized-address-color, inherit);overflow:scroll;scrollbar-width:none;-ms-overflow-style:none}.address-domain.svelte-hb2n95.svelte-hb2n95::-webkit-scrollbar{display:none}.balance.svelte-hb2n95.svelte-hb2n95{flex:1 1 auto;max-width:70%;white-space:nowrap;text-align:end;opacity:0.4;transition:color 150ms ease-in-out, background-color 150ms ease-in-out;overflow:scroll;scrollbar-width:none;-ms-overflow-style:none}.balance.svelte-hb2n95.svelte-hb2n95::-webkit-scrollbar{display:none}.elipsis-container.svelte-hb2n95.svelte-hb2n95{flex:0;padding:0.25rem;border-radius:24px;transition:color 150ms ease-in-out, background-color 150ms ease-in-out;background-color:transparent;opacity:0.4}.elipsis-container.svelte-hb2n95.svelte-hb2n95:hover{color:var(--text-color)}.elipsis-container.active.svelte-hb2n95.svelte-hb2n95{color:var(--text-color)}.elipsis.svelte-hb2n95.svelte-hb2n95{width:24px}.menu.svelte-hb2n95.svelte-hb2n95{background:var(--onboard-white, var(--white));border:1px solid var(--onboard-gray-100, var(--gray-100));border-radius:8px;list-style-type:none;right:0.25rem;top:2.25rem;margin:0;padding:0;border:none;overflow:hidden;z-index:1}.menu.svelte-hb2n95 li.svelte-hb2n95{color:var(--onboard-primary-500, var(--primary-500));font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));padding:12px 16px;background:var(--onboard-white, var(--white));transition:background-color 150ms ease-in-out;cursor:pointer}.menu.svelte-hb2n95 li.svelte-hb2n95:hover{background:var(--onboard-primary-200, var(--primary-200))}`)}function nt(e,t,n){const r=e.slice();return r[14]=t[n].address,r[15]=t[n].ens,r[16]=t[n].uns,r[17]=t[n].balance,r[19]=n,r}function rt(e){let t,n,r;return n=new Ve({props:{size:14}}),{c(){t=h("div"),F(n.$$.fragment),_e(t,"right","-5px"),_e(t,"bottom","-5px"),p(t,"class","drop-shadow absolute")},m(o,l){M(o,t,l),O(n,t,null),r=!0},i(o){r||(y(n.$$.fragment,o),r=!0)},o(o){A(n.$$.fragment,o),r=!1},d(o){o&&S(t),Z(n)}}}function ot(e){let t,n=st(e[17])+"",r,o;return{c(){t=h("div"),r=L(n),p(t,"class","balance svelte-hb2n95")},m(l,a){M(l,t,a),c(t,r)},p(l,a){a&1&&n!==(n=st(l[17])+"")&&V(r,n)},i(l){l&&(o||Ae(()=>{o=Ie(t,$e,{}),o.start()}))},o:G,d(l){l&&S(t)}}}function lt(e){let t,n,r=e[4]("accountCenter.addAccount",{default:e[2].accountCenter.addAccount})+"",o,l,a,s,i=e[4]("accountCenter.disconnectWallet",{default:e[2].accountCenter.disconnectWallet})+"",f,d,v,k=e[2].accountCenter.copyAddress+"",g,b,m,u,_=!(e[1]&&e[19]===0)&&at(e);function w(){return e[13](e[15],e[16],e[14])}return{c(){t=h("ul"),n=h("li"),o=L(r),l=z(),_&&_.c(),a=z(),s=h("li"),f=L(i),d=z(),v=h("li"),g=L(k),p(n,"class","svelte-hb2n95"),p(s,"class","svelte-hb2n95"),p(v,"class","svelte-hb2n95"),p(t,"class","menu absolute svelte-hb2n95")},m(C,$){M(C,t,$),c(t,n),c(n,o),c(t,l),_&&_.m(t,null),c(t,a),c(t,s),c(s,f),c(t,d),c(t,v),c(v,g),m||(u=[Y(n,"click",fe(e[10])),Y(s,"click",fe(e[12])),Y(v,"click",fe(w))],m=!0)},p(C,$){e=C,$&20&&r!==(r=e[4]("accountCenter.addAccount",{default:e[2].accountCenter.addAccount})+"")&&V(o,r),e[1]&&e[19]===0?_&&(_.d(1),_=null):_?_.p(e,$):(_=at(e),_.c(),_.m(t,a)),$&20&&i!==(i=e[4]("accountCenter.disconnectWallet",{default:e[2].accountCenter.disconnectWallet})+"")&&V(f,i),$&4&&k!==(k=e[2].accountCenter.copyAddress+"")&&V(g,k)},i(C){C&&(b||Ae(()=>{b=Ie(t,$e,{}),b.start()}))},o:G,d(C){C&&S(t),_&&_.d(),m=!1,ke(u)}}}function at(e){let t,n=e[4]("accountCenter.setPrimaryAccount",{default:e[2].accountCenter.setPrimaryAccount})+"",r,o,l;function a(){return e[11](e[14])}return{c(){t=h("li"),r=L(n),p(t,"class","svelte-hb2n95")},m(s,i){M(s,t,i),c(t,r),o||(l=Y(t,"click",fe(a)),o=!0)},p(s,i){e=s,i&20&&n!==(n=e[4]("accountCenter.setPrimaryAccount",{default:e[2].accountCenter.setPrimaryAccount})+"")&&V(r,n)},d(s){s&&S(t),o=!1,l()}}}function it(e){let t,n,r,o,l,a,s,i,f=(e[15]?de(e[15].name):e[16]?de(e[16].name):He(e[14]))+"",d,v,k,g,b,m,u,_,w,C;o=new ge({props:{size:32,padding:4,background:"custom",color:"#EFF1FC",customBackgroundColor:e[1]&&e[19]===0?"rgba(24, 206, 102, 0.2)":"rgba(235, 235, 237, 0.1)",border:e[1]&&e[19]===0?"green":"gray",radius:8,icon:e[0].icon}});let $=e[1]&&e[19]===0&&rt(),I=e[17]&&ot(e);function B(){return e[8](e[14])}function D(){return e[9](e[14])}let H=e[3]===e[14]&<(e);return{c(){t=h("div"),n=h("div"),r=h("div"),F(o.$$.fragment),l=z(),$&&$.c(),a=z(),s=h("div"),i=h("div"),d=L(f),v=z(),I&&I.c(),k=z(),g=h("div"),b=h("div"),m=z(),H&&H.c(),u=z(),p(r,"class","flex items-center relative"),p(i,"class","address-domain svelte-hb2n95"),p(s,"class","account-details svelte-hb2n95"),p(b,"class","elipsis pointer flex items-center justify-center relative svelte-hb2n95"),p(g,"class","elipsis-container svelte-hb2n95"),ce(g,"active",e[3]===e[14]),p(n,"class","container svelte-hb2n95"),ce(n,"primary",e[1]&&e[19]===0),p(t,"class","relative")},m(q,W){M(q,t,W),c(t,n),c(n,r),O(o,r,null),c(r,l),$&&$.m(r,null),c(n,a),c(n,s),c(s,i),c(i,d),c(s,v),I&&I.m(s,null),c(n,k),c(n,g),c(g,b),b.innerHTML=Sn,c(t,m),H&&H.m(t,null),c(t,u),_=!0,w||(C=[Y(b,"click",fe(B)),Y(n,"click",D)],w=!0)},p(q,W){e=q;const U={};W&2&&(U.customBackgroundColor=e[1]&&e[19]===0?"rgba(24, 206, 102, 0.2)":"rgba(235, 235, 237, 0.1)"),W&2&&(U.border=e[1]&&e[19]===0?"green":"gray"),W&1&&(U.icon=e[0].icon),o.$set(U),e[1]&&e[19]===0?$?W&2&&y($,1):($=rt(),$.c(),y($,1),$.m(r,null)):$&&(ae(),A($,1,1,()=>{$=null}),ie()),(!_||W&1)&&f!==(f=(e[15]?de(e[15].name):e[16]?de(e[16].name):He(e[14]))+"")&&V(d,f),e[17]?I?(I.p(e,W),W&1&&y(I,1)):(I=ot(e),I.c(),y(I,1),I.m(s,null)):I&&(I.d(1),I=null),(!_||W&9)&&ce(g,"active",e[3]===e[14]),(!_||W&2)&&ce(n,"primary",e[1]&&e[19]===0),e[3]===e[14]?H?(H.p(e,W),W&9&&y(H,1)):(H=lt(e),H.c(),y(H,1),H.m(t,u)):H&&(H.d(1),H=null)},i(q){_||(y(o.$$.fragment,q),y($),y(I),y(H),_=!0)},o(q){A(o.$$.fragment,q),A($),_=!1},d(q){q&&S(t),Z(o),$&&$.d(),I&&I.d(),H&&H.d(),w=!1,ke(C)}}}function Pn(e){let t,n,r=e[0].accounts,o=[];for(let a=0;aA(o[a],1,1,()=>{o[a]=null});return{c(){for(let a=0;a7?e[t].slice(0,7):e[t]} ${t}`}function Ln(e,t,n){let r;ee(e,je,u=>n(4,r=u));let{wallet:o}=t,{primary:l}=t;function a(){n(3,s="")}let s="";async function i(u){try{await dn(u.provider)}catch(_){const{code:w}=_;(w===Ge.UNSUPPORTED_METHOD||w===Ge.DOES_NOT_EXIST)&&un.next({inProgress:!1,actionRequired:u.label})}}function f(){n(2,P.accountCenter.copyAddress="Copied Successfully",P),setTimeout(a,500),setTimeout(()=>{n(2,P.accountCenter.copyAddress="Copy Wallet address",P)},700)}const d=u=>n(3,s=s===u?"":u),v=u=>Re(o,u),k=()=>{n(3,s=""),i(o)},g=u=>{n(3,s=""),Re(o,u)},b=()=>{n(3,s=""),It({label:o.label})},m=(u,_,w)=>{fn(u?u.name:_?_.name:w).then(()=>{f()})};return e.$$set=u=>{"wallet"in u&&n(0,o=u.wallet),"primary"in u&&n(1,l=u.primary)},[o,l,P,s,r,i,f,a,d,v,k,g,b,m]}class qn extends pe{constructor(t){super(),ve(this,t,Ln,Pn,me,{wallet:0,primary:1,hideMenu:7},In)}get hideMenu(){return this.$$.ctx[7]}}var jn=` + + + +`,Vn=` + + + +`,Hn='',Ht=` + + +`;function Bn(e){he(e,"svelte-1ubxcdp",".content.svelte-1ubxcdp{padding:1rem;width:300px;font-family:var(--onboard-font-family-normal, var(--font-family-normal));font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:24px}.icon-container.svelte-1ubxcdp{width:3rem;height:3rem;background:var(--onboard-warning-100, var(--warning-100));border-radius:24px;padding:12px;color:var(--onboard-warning-500, var(--warning-500))}h4.svelte-1ubxcdp{margin:1.5rem 0 0.5rem 0;font-weight:600}p.svelte-1ubxcdp{margin:0;font-weight:400}button.svelte-1ubxcdp{margin-top:1.5rem;width:50%;font-weight:600}.right.svelte-1ubxcdp{margin-left:0.5rem;width:60%}")}function Dn(e){let t,n,r,o,l=e[2]("modals.confirmDisconnectAll.heading",{default:P.modals.confirmDisconnectAll.heading})+"",a,s,i,f=e[2]("modals.confirmDisconnectAll.description")+"",d,v,k,g,b=e[2]("modals.confirmDisconnectAll.cancel",{default:P.modals.confirmDisconnectAll.cancel})+"",m,u,_,w=e[2]("modals.confirmDisconnectAll.confirm",{default:P.modals.confirmDisconnectAll.confirm})+"",C,$,I;return{c(){t=h("div"),n=h("div"),r=z(),o=h("h4"),a=L(l),s=z(),i=h("p"),d=L(f),v=z(),k=h("div"),g=h("button"),m=L(b),u=z(),_=h("button"),C=L(w),p(n,"class","icon-container flex justify-center items-center svelte-1ubxcdp"),p(o,"class","svelte-1ubxcdp"),p(i,"class","svelte-1ubxcdp"),p(g,"class","button-neutral-solid-b rounded svelte-1ubxcdp"),p(_,"class","right button-neutral-solid rounded svelte-1ubxcdp"),p(k,"class","flex justify-between items-center w-100"),p(t,"class","content svelte-1ubxcdp")},m(B,D){M(B,t,D),c(t,n),n.innerHTML=Se,c(t,r),c(t,o),c(o,a),c(t,s),c(t,i),c(i,d),c(t,v),c(t,k),c(k,g),c(g,m),c(k,u),c(k,_),c(_,C),$||(I=[Y(g,"click",function(){we(e[1])&&e[1].apply(this,arguments)}),Y(_,"click",function(){we(e[0])&&e[0].apply(this,arguments)})],$=!0)},p(B,D){e=B,D&4&&l!==(l=e[2]("modals.confirmDisconnectAll.heading",{default:P.modals.confirmDisconnectAll.heading})+"")&&V(a,l),D&4&&f!==(f=e[2]("modals.confirmDisconnectAll.description")+"")&&V(d,f),D&4&&b!==(b=e[2]("modals.confirmDisconnectAll.cancel",{default:P.modals.confirmDisconnectAll.cancel})+"")&&V(m,b),D&4&&w!==(w=e[2]("modals.confirmDisconnectAll.confirm",{default:P.modals.confirmDisconnectAll.confirm})+"")&&V(C,w)},d(B){B&&S(t),$=!1,ke(I)}}}function Wn(e){let t,n;return t=new qt({props:{close:e[1],$$slots:{default:[Dn]},$$scope:{ctx:e}}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,[o]){const l={};o&2&&(l.close=r[1]),o&15&&(l.$$scope={dirty:o,ctx:r}),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function Nn(e,t,n){let r;ee(e,je,a=>n(2,r=a));let{onConfirm:o}=t,{onClose:l}=t;return e.$$set=a=>{"onConfirm"in a&&n(0,o=a.onConfirm),"onClose"in a&&n(1,l=a.onClose)},[o,l,r]}class En extends pe{constructor(t){super(),ve(this,t,Nn,Wn,me,{onConfirm:0,onClose:1},Bn)}}function Fn(e){he(e,"svelte-ruodf3",".content.svelte-ruodf3{--background-color:var(--w3o-background-color);--text-color:var(--w3o-text-color);--action-color:var(--w3o-action-color, var(--primary-500));font-size:1rem;line-height:1.5rem;display:flex;flex-flow:column;gap:1.5rem;padding:1rem;max-width:320px;background:var(--background-color);color:var(--text-color)}.icon-container.svelte-ruodf3{position:relative;overflow:hidden;width:3rem;height:3rem;border-radius:24px;padding:0.75rem;background:none}.icon-container.svelte-ruodf3::before{content:'';position:absolute;height:100%;width:100%;opacity:0.2;background:var(--action-color)}.text-container.svelte-ruodf3{display:flex;flex-flow:column;gap:0.5rem;padding:0 0.5rem}.actions-container.svelte-ruodf3{display:flex;flex-flow:row nowrap;gap:1rem}.heading.svelte-ruodf3{font-weight:600}button.svelte-ruodf3{font-weight:600}button.primary.svelte-ruodf3{background:var(--action-color)}")}function On(e){let t,n,r,o,l,a=e[3]("modals.confirmTransactionProtection.heading",{default:P.modals.confirmTransactionProtection.heading})+"",s,i,f,d=e[3]("modals.confirmTransactionProtection.description")+"",v,k,g,b=e[3]("modals.confirmTransactionProtection.link",{default:P.modals.confirmTransactionProtection.link})+"",m,u,_,w,C=e[3]("modals.confirmTransactionProtection.dismiss",{default:P.modals.confirmTransactionProtection.dismiss})+"",$,I,B,D=e[3]("modals.confirmTransactionProtection.enable",{default:P.modals.confirmTransactionProtection.enable})+"",H,q,W;return{c(){t=h("div"),n=h("div"),r=z(),o=h("div"),l=h("div"),s=L(a),i=z(),f=h("div"),v=L(d),k=z(),g=h("a"),m=L(b),u=z(),_=h("div"),w=h("button"),$=L(C),I=z(),B=h("button"),H=L(D),p(n,"class","icon-container flex justify-center items-center svelte-ruodf3"),p(l,"class","heading svelte-ruodf3"),p(g,"href",e[2]),p(g,"target","_blank"),p(g,"rel","noreferrer noopener"),p(g,"class","no-link"),p(o,"class","text-container svelte-ruodf3"),p(w,"class","button-neutral-solid-b svelte-ruodf3"),p(B,"class","button-neutral-solid rounded primary svelte-ruodf3"),p(_,"class","actions-container svelte-ruodf3"),p(t,"class","content svelte-ruodf3")},m(U,X){M(U,t,X),c(t,n),n.innerHTML=Ht,c(t,r),c(t,o),c(o,l),c(l,s),c(o,i),c(o,f),c(f,v),c(o,k),c(o,g),c(g,m),c(t,u),c(t,_),c(_,w),c(w,$),c(_,I),c(_,B),c(B,H),q||(W=[Y(w,"click",function(){we(e[1])&&e[1].apply(this,arguments)}),Y(B,"click",function(){we(e[0])&&e[0].apply(this,arguments)})],q=!0)},p(U,X){e=U,X&8&&a!==(a=e[3]("modals.confirmTransactionProtection.heading",{default:P.modals.confirmTransactionProtection.heading})+"")&&V(s,a),X&8&&d!==(d=e[3]("modals.confirmTransactionProtection.description")+"")&&V(v,d),X&8&&b!==(b=e[3]("modals.confirmTransactionProtection.link",{default:P.modals.confirmTransactionProtection.link})+"")&&V(m,b),X&4&&p(g,"href",e[2]),X&8&&C!==(C=e[3]("modals.confirmTransactionProtection.dismiss",{default:P.modals.confirmTransactionProtection.dismiss})+"")&&V($,C),X&8&&D!==(D=e[3]("modals.confirmTransactionProtection.enable",{default:P.modals.confirmTransactionProtection.enable})+"")&&V(H,D)},d(U){U&&S(t),q=!1,ke(W)}}}function Zn(e){let t,n;return t=new qt({props:{close:e[1],$$slots:{default:[On]},$$scope:{ctx:e}}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,[o]){const l={};o&2&&(l.close=r[1]),o&31&&(l.$$scope={dirty:o,ctx:r}),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function Gn(e,t,n){let r;ee(e,je,s=>n(3,r=s));let{onEnable:o}=t,{onDismiss:l}=t,{infoLink:a}=t;return e.$$set=s=>{"onEnable"in s&&n(0,o=s.onEnable),"onDismiss"in s&&n(1,l=s.onDismiss),"infoLink"in s&&n(2,a=s.infoLink)},[o,l,a,r]}class Rn extends pe{constructor(t){super(),ve(this,t,Gn,Zn,me,{onEnable:0,onDismiss:1,infoLink:2},Fn)}}function Un(e){he(e,"svelte-b848yl",".secondary-token-container.svelte-b848yl.svelte-b848yl{width:100%}table.svelte-b848yl.svelte-b848yl{width:100%}tr.svelte-b848yl.svelte-b848yl{padding:0.25rem 1rem;line-height:1rem;border-bottom:1px solid var(--border-color);display:flex;flex-direction:row;align-items:flex-start;gap:1rem}thead.svelte-b848yl .secondary-token-table-header.svelte-b848yl{text-align:inherit;font-size:var(--onboard-font-size-7, var(--font-size-7))}.token-icon.svelte-b848yl.svelte-b848yl{width:30%;font-weight:700;font-size:var(--onboard-font-size-6, var(--font-size-6));color:var(--text-color)}.icon-name-container.svelte-b848yl.svelte-b848yl{display:flex;flex-direction:row;align-items:flex-start;padding:0px;gap:0.5rem}.icon.svelte-b848yl.svelte-b848yl{width:1rem;height:1rem}img.svelte-b848yl.svelte-b848yl{height:100%;width:100%}.token-balance.svelte-b848yl.svelte-b848yl{width:70%;font-weight:200;font-size:var(--onboard-font-size-6, var(--font-size-6));color:var(--text-color)}")}function ct(e,t,n){const r=e.slice();return r[1]=t[n],r}function dt(e){let t,n,r,o,l=e[1].name.toUpperCase()+"",a,s,i,f=(e[1].balance.length>7?e[1].balance.slice(0,7):e[1].balance)+"",d,v;function k(m,u){return m[1].icon?Yn:Xn}let g=k(e),b=g(e);return{c(){t=h("tr"),n=h("td"),r=h("div"),b.c(),o=z(),a=L(l),s=z(),i=h("td"),d=L(f),v=z(),p(r,"class","icon-name-container svelte-b848yl"),p(n,"class","token-icon svelte-b848yl"),p(i,"class","token-balance svelte-b848yl"),p(t,"class","token-row svelte-b848yl")},m(m,u){M(m,t,u),c(t,n),c(n,r),b.m(r,null),c(r,o),c(r,a),c(t,s),c(t,i),c(i,d),c(t,v)},p(m,u){g===(g=k(m))&&b?b.p(m,u):(b.d(1),b=g(m),b&&(b.c(),b.m(r,o))),u&1&&l!==(l=m[1].name.toUpperCase()+"")&&V(a,l),u&1&&f!==(f=(m[1].balance.length>7?m[1].balance.slice(0,7):m[1].balance)+"")&&V(d,f)},d(m){m&&S(t),b.d()}}}function Xn(e){let t;return{c(){t=h("div"),p(t,"class","icon svelte-b848yl")},m(n,r){M(n,t,r)},p:G,d(n){n&&S(t)}}}function Yn(e){let t,n,r={ctx:e,current:null,token:null,hasCatch:!1,pending:er,then:Kn,catch:Jn,value:4};return Ye(n=e[1].icon,r),{c(){t=ue(),r.block.c()},m(o,l){M(o,t,l),r.block.m(o,r.anchor=l),r.mount=()=>t.parentNode,r.anchor=t},p(o,l){e=o,r.ctx=e,l&1&&n!==(n=e[1].icon)&&Ye(n,r)||vn(r,e,l)},d(o){o&&S(t),r.block.d(o),r.token=null,r=null}}}function Jn(e){return{c:G,m:G,p:G,i:G,o:G,d:G}}function Kn(e){let t,n,r;function o(s,i){return i&1&&(n=null),n==null&&(n=!!mn(s[4])),n?xn:Qn}let l=o(e,-1),a=l(e);return{c(){t=h("div"),a.c(),p(t,"class","icon svelte-b848yl")},m(s,i){M(s,t,i),a.m(t,null)},p(s,i){l===(l=o(s,i))&&a?a.p(s,i):(a.d(1),a=l(s),a&&(a.c(),a.m(t,null)))},i(s){s&&(r||Ae(()=>{r=Ie(t,$e,{}),r.start()}))},o:G,d(s){s&&S(t),a.d()}}}function Qn(e){let t,n;return{c(){t=h("img"),Je(t.src,n=e[4])||p(t,"src",n),p(t,"alt","logo"),p(t,"class","svelte-b848yl")},m(r,o){M(r,t,o)},p(r,o){o&1&&!Je(t.src,n=r[4])&&p(t,"src",n)},d(r){r&&S(t)}}}function xn(e){let t,n=e[4]+"",r;return{c(){t=new hn(!1),r=ue(),t.a=r},m(o,l){t.m(n,o,l),M(o,r,l)},p(o,l){l&1&&n!==(n=o[4]+"")&&t.p(n)},d(o){o&&S(r),o&&t.d()}}}function er(e){return{c:G,m:G,p:G,i:G,o:G,d:G}}function ut(e){let t,n=e[1]&&e[1].name&&e[1].balance&&dt(e);return{c(){n&&n.c(),t=ue()},m(r,o){n&&n.m(r,o),M(r,t,o)},p(r,o){r[1]&&r[1].name&&r[1].balance?n?n.p(r,o):(n=dt(r),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null)},d(r){n&&n.d(r),r&&S(t)}}}function tr(e){let t,n,r,o,l,a=e[0],s=[];for(let i=0;iToken Balances:',o=z(),l=h("tbody");for(let i=0;i{"secondaryTokens"in o&&n(0,r=o.secondaryTokens)},[r]}class rr extends pe{constructor(t){super(),ve(this,t,nr,tr,me,{secondaryTokens:0},Un)}}function or(e){he(e,"svelte-177u10y",`.outer-container.svelte-177u10y{--background-color:var(--w3o-background-color);--text-color:var(--w3o-text-color);--border-color:var(--w3o-border-color, var(--gray-500));--action-color:var(--w3o-action-color, var(--primary-500));--border-radius:var(--w3o-border-radius, 1rem);--account-center-network-selector-color:var(--text-color, white);width:100%;overflow:hidden;pointer-events:auto;border:1px solid transparent;background:var( + --account-center-maximized-upper-background, + var(--background-color) + );border-color:var(--border-color);border-radius:var(--account-center-border-radius, var(--border-radius))}.wallets-section.svelte-177u10y{width:100%;color:var(--text-color, var(--gray-100));background:var(--background-color, var(--gray-700))}.p5.svelte-177u10y{padding:var(--onboard-spacing-5, var(--spacing-5))}.wallets.svelte-177u10y{width:100%;margin-bottom:0.5rem}.actions.svelte-177u10y{color:var( + --account-center-maximized-upper-action-color, + var(--action-color) + );padding-left:2px}.action-container.svelte-177u10y{padding:0.25rem 12px 0.25rem 0.5rem;border-radius:0.5rem;transition:background-color 150ms ease-in-out}.action-container.svelte-177u10y:hover{background-color:var( + --account-center-maximized-upper-action-background-hover, + rgba(146, 155, 237, 0.2) + )}.plus-icon.svelte-177u10y{width:20px}.arrow-forward.svelte-177u10y{width:20px}.mt.svelte-177u10y{margin-top:0.25rem}.action-text.svelte-177u10y{font-size:var(--onboard-font-size-6, var(--font-size-6));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));margin-left:0.5rem}.background-blue.svelte-177u10y{background:var( + --account-center-maximized-network-section-background, + var(--onboard-primary-100, var(--primary-100)) + )}.background-gray.svelte-177u10y{background:var(--onboard-gray-100, var(--gray-100))}.background-yellow.svelte-177u10y{background:var(--onboard-warning-100, var(--warning-100))}.network-container.svelte-177u10y{background:var(--background-color);border-top:1px solid var(--border-color);width:100%;display:flex;flex-direction:column;align-items:flex-start;padding:0.75rem;gap:0.5rem;border-radius:var( + --account-center-border-radius, + var(--onboard-border-radius-3, var(--border-radius-3)) + );color:var( + --account-center-maximized-network-text-color, + var(--account-center-maximized-network-section, inherit) + )}.network-section.svelte-177u10y{flex-direction:row;align-items:flex-start;padding:0px;gap:16px}.network-selector-container.svelte-177u10y{width:100%}.protect.svelte-177u10y{flex-direction:row;padding:0.25rem 0.375rem 0;gap:0.375rem;width:100%}.shield.svelte-177u10y{width:20px;height:20px;display:flex;justify-content:center}.protect-text.svelte-177u10y{font-size:var(--onboard-font-size-6, var(--font-size-6));color:var( + --account-center-maximized-upper-action-color, + var(--action-color) + );line-height:1.75rem;display:flex;align-items:center}.network-selector-container.svelte-177u10y{margin-left:1rem;width:100%}.network-selector-label.svelte-177u10y{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3))}.app-info-container.svelte-177u10y{color:var(--text-color, var(--gray-700));background:var( + --account-center-maximized-info-section-background-color, + var( + --account-center-maximized-info-section, + var(--background-color, #fff) + ) + );border-top:1px solid var(--border-color);border-radius:var(--account-center-border-radius, inherit);display:flex;flex-direction:column;align-items:flex-start;padding:0px}.app-info-header.svelte-177u10y{width:100%;flex-direction:column;align-items:flex-start;padding:0.75rem;gap:0.5rem;border-bottom:1px solid var(--border-color)}.app-icon-name.svelte-177u10y{display:flex;align-items:center;flex-direction:row;gap:0.75rem}.app-name.svelte-177u10y{font-size:1rem;font-weight:600;line-height:1rem;margin-bottom:0.25rem;color:var(--account-center-maximized-app-name-color, inherit)}.app-description.svelte-177u10y{margin:0;font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));color:var(--account-center-maximized-app-info-color, inherit);display:flex;flex-direction:row;align-items:flex-start;padding:0px 0.25rem;gap:1rem}.app-info.svelte-177u10y{width:100%;font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));color:var(--account-center-maximized-app-info-color, inherit);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;align-items:flex-start;padding:0.5rem 1rem;gap:0.25rem}.app-info-heading.svelte-177u10y{font-weight:700;color:var(--account-center-maximized-app-info-color, inherit)}.w100.svelte-177u10y{width:100%}a.svelte-177u10y{font-weight:700}.powered-by-container.svelte-177u10y{color:var(--text-color);padding:0.75rem}`)}function ft(e,t,n){const r=e.slice();return r[29]=t[n],r[31]=n,r}function pt(e){let t,n;return t=new En({props:{onClose:e[22],onConfirm:e[13]}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,o){const l={};o[0]&4&&(l.onClose=r[22]),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function vt(e){let t,n;return t=new Rn({props:{onDismiss:e[23],onEnable:e[24],infoLink:e[9].transactionProtectionInfoLink||Ee}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,o){const l={};o[0]&16&&(l.onDismiss=r[23]),o[0]&512&&(l.infoLink=r[9].transactionProtectionInfoLink||Ee),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function mt(e){let t,n,r,o,l=[],a=new Map,s,i,f,d,v,k,g,b,m,u,_,w=e[10]("accountCenter.currentNetwork",{default:P.accountCenter.currentNetwork})+"",C,$,I,B,D,H,q,W,U,X,Q,ne,re,T,N,x=e[1];const Te=E=>E[29].label;for(let E=0;E{R=null}),ie()),(!re||j[0]&1024)&&w!==(w=e[10]("accountCenter.currentNetwork",{default:P.accountCenter.currentNetwork})+"")&&V(C,w),!e[9].hideTransactionProtectionBtn&&(e[6]||e[5]&&e[5].protectedRpcUrl)?oe?oe.p(e,j):(oe=gt(e),oe.c(),oe.m(d,null)):oe&&(oe.d(1),oe=null),(!re||j[0]&160)&&ce(d,"background-blue",e[5]&&e[5].icon||e[7]),(!re||j[0]&32)&&ce(d,"background-yellow",!e[5]),(!re||j[0]&160)&&ce(d,"background-gray",e[5]&&!e[7]),e[11]?J?(J.p(e,j),j[0]&2048&&y(J,1)):(J=_t(e),J.c(),y(J,1),J.m(q,W)):J&&(ae(),A(J,1,1,()=>{J=null}),ie()),e[8]&&e[8].length?K?(K.p(e,j),j[0]&256&&y(K,1)):(K=Ct(e),K.c(),y(K,1),K.m(q,U)):K&&(ae(),A(K,1,1,()=>{K=null}),ie())},i(E){if(!re){for(let j=0;j{re&&(ne||(ne=Fe(t,Ze,{duration:600,y:e[16].includes("bottom")?56:-76,easing:Oe,opacity:0},!0)),ne.run(1))}),re=!0}},o(E){for(let j=0;jxt(r,"hideMenu",a)),{key:e,first:null,c(){n=ue(),F(r.$$.fragment),this.first=n},m(i,f){M(i,n,f),O(r,i,f),l=!0},p(i,f){t=i;const d={};f[0]&2&&(d.wallet=t[29]),f[0]&2&&(d.primary=t[31]===0),!o&&f[0]&8&&(o=!0,d.hideMenu=t[3],en(()=>o=!1)),r.$set(d)},i(i){l||(y(r.$$.fragment,i),l=!0)},o(i){A(r.$$.fragment,i),l=!1},d(i){i&&S(n),Z(r,i)}}}function lr(e){let t,n,r,o,l=e[10]("accountCenter.connectAnotherWallet",{default:P.accountCenter.connectAnotherWallet})+"",a,s,i,f,d,v,k=e[10]("accountCenter.disconnectAllWallets",{default:P.accountCenter.disconnectAllWallets})+"",g,b,m;return{c(){t=h("div"),n=h("div"),r=z(),o=h("span"),a=L(l),s=z(),i=h("div"),f=h("div"),d=z(),v=h("span"),g=L(k),p(n,"class","plus-icon flex items-center justify-center svelte-177u10y"),p(o,"class","action-text svelte-177u10y"),p(t,"class","action-container flex items-center pointer svelte-177u10y"),p(f,"class","arrow-forward flex items-center justify-center svelte-177u10y"),p(v,"class","action-text svelte-177u10y"),p(i,"class","action-container flex items-center mt pointer svelte-177u10y")},m(u,_){M(u,t,_),c(t,n),n.innerHTML=jn,c(t,r),c(t,o),c(o,a),M(u,s,_),M(u,i,_),c(i,f),f.innerHTML=Vn,c(i,d),c(i,v),c(v,g),b||(m=[Y(t,"click",e[26]),Y(i,"click",e[27])],b=!0)},p(u,_){_[0]&1024&&l!==(l=u[10]("accountCenter.connectAnotherWallet",{default:P.accountCenter.connectAnotherWallet})+"")&&V(a,l),_[0]&1024&&k!==(k=u[10]("accountCenter.disconnectAllWallets",{default:P.accountCenter.disconnectAllWallets})+"")&&V(g,k)},d(u){u&&S(t),u&&S(s),u&&S(i),b=!1,ke(m)}}}function bt(e){let t,n,r;return n=new Ve({props:{size:14}}),{c(){t=h("div"),F(n.$$.fragment),_e(t,"right","-5px"),_e(t,"bottom","-5px"),p(t,"class","drop-shadow absolute")},m(o,l){M(o,t,l),O(n,t,null),r=!0},i(o){r||(y(n.$$.fragment,o),r=!0)},o(o){A(n.$$.fragment,o),r=!1},d(o){o&&S(t),Z(n)}}}function gt(e){let t,n,r,o,l=e[10]("accountCenter.enableTransactionProtection",{default:P.accountCenter.enableTransactionProtection})+"",a,s,i;return{c(){t=h("div"),n=h("div"),r=z(),o=h("span"),a=L(l),p(n,"class","shield svelte-177u10y"),p(o,"class","protect-text svelte-177u10y"),p(t,"class","protect action-container flex items-center pointer svelte-177u10y")},m(f,d){M(f,t,d),c(t,n),n.innerHTML=Ht,c(t,r),c(t,o),c(o,a),s||(i=Y(t,"click",e[28]),s=!0)},p(f,d){d[0]&1024&&l!==(l=f[10]("accountCenter.enableTransactionProtection",{default:P.accountCenter.enableTransactionProtection})+"")&&V(a,l)},d(f){f&&S(t),s=!1,i()}}}function _t(e){let t,n,r,o,l,a=(e[11]&&e[11].name||"App Name")+"",s,i,f,d=(e[11]&&e[11].description||"This app has not added a description.")+"",v,k,g,b;r=new ge({props:{size:32,padding:4,background:"white",border:"black",radius:8,icon:e[11]&&e[11].icon||ze}});let m=(e[11].gettingStartedGuide||e[11].explore)&&wt(e);return{c(){t=h("div"),n=h("div"),F(r.$$.fragment),o=z(),l=h("div"),s=L(a),i=z(),f=h("div"),v=L(d),k=z(),m&&m.c(),g=ue(),p(l,"class","app-name svelte-177u10y"),p(n,"class","relative flex app-icon-name svelte-177u10y"),p(f,"class","app-description svelte-177u10y"),p(t,"class","flex items-start app-info-header svelte-177u10y")},m(u,_){M(u,t,_),c(t,n),O(r,n,null),c(n,o),c(n,l),c(l,s),c(t,i),c(t,f),c(f,v),M(u,k,_),m&&m.m(u,_),M(u,g,_),b=!0},p(u,_){const w={};_[0]&2048&&(w.icon=u[11]&&u[11].icon||ze),r.$set(w),(!b||_[0]&2048)&&a!==(a=(u[11]&&u[11].name||"App Name")+"")&&V(s,a),(!b||_[0]&2048)&&d!==(d=(u[11]&&u[11].description||"This app has not added a description.")+"")&&V(v,d),u[11].gettingStartedGuide||u[11].explore?m?m.p(u,_):(m=wt(u),m.c(),m.m(g.parentNode,g)):m&&(m.d(1),m=null)},i(u){b||(y(r.$$.fragment,u),b=!0)},o(u){A(r.$$.fragment,u),b=!1},d(u){u&&S(t),Z(r),u&&S(k),m&&m.d(u),u&&S(g)}}}function wt(e){let t,n,r=e[10]("accountCenter.appInfo",{default:P.accountCenter.appInfo})+"",o,l,a,s=e[11].gettingStartedGuide&&kt(e),i=e[11].explore&&yt(e);return{c(){t=h("div"),n=h("div"),o=L(r),l=z(),s&&s.c(),a=z(),i&&i.c(),p(n,"class","app-info-heading svelte-177u10y"),p(t,"class","app-info svelte-177u10y")},m(f,d){M(f,t,d),c(t,n),c(n,o),c(t,l),s&&s.m(t,null),c(t,a),i&&i.m(t,null)},p(f,d){d[0]&1024&&r!==(r=f[10]("accountCenter.appInfo",{default:P.accountCenter.appInfo})+"")&&V(o,r),f[11].gettingStartedGuide?s?s.p(f,d):(s=kt(f),s.c(),s.m(t,a)):s&&(s.d(1),s=null),f[11].explore?i?i.p(f,d):(i=yt(f),i.c(),i.m(t,null)):i&&(i.d(1),i=null)},d(f){f&&S(t),s&&s.d(),i&&i.d()}}}function kt(e){let t,n,r=e[10]("accountCenter.learnMore",{default:P.accountCenter.learnMore})+"",o,l,a,s=e[10]("accountCenter.gettingStartedGuide",{default:P.accountCenter.gettingStartedGuide})+"",i,f;return{c(){t=h("div"),n=h("div"),o=L(r),l=z(),a=h("a"),i=L(s),p(a,"href",f=e[11].gettingStartedGuide),p(a,"target","_blank"),p(a,"rel","noreferrer noopener"),p(a,"class","svelte-177u10y"),p(t,"class","flex justify-between items-center w100 svelte-177u10y")},m(d,v){M(d,t,v),c(t,n),c(n,o),c(t,l),c(t,a),c(a,i)},p(d,v){v[0]&1024&&r!==(r=d[10]("accountCenter.learnMore",{default:P.accountCenter.learnMore})+"")&&V(o,r),v[0]&1024&&s!==(s=d[10]("accountCenter.gettingStartedGuide",{default:P.accountCenter.gettingStartedGuide})+"")&&V(i,s),v[0]&2048&&f!==(f=d[11].gettingStartedGuide)&&p(a,"href",f)},d(d){d&&S(t)}}}function yt(e){let t,n,r=e[10]("accountCenter.smartContracts",{default:P.accountCenter.smartContracts})+"",o,l,a,s=e[10]("accountCenter.explore",{default:P.accountCenter.explore})+"",i,f;return{c(){t=h("div"),n=h("div"),o=L(r),l=z(),a=h("a"),i=L(s),p(a,"href",f=e[11].explore),p(a,"target","_blank"),p(a,"rel","noreferrer noopener"),p(a,"class","svelte-177u10y"),p(t,"class","flex justify-between items-center w100 svelte-177u10y")},m(d,v){M(d,t,v),c(t,n),c(n,o),c(t,l),c(t,a),c(a,i)},p(d,v){v[0]&1024&&r!==(r=d[10]("accountCenter.smartContracts",{default:P.accountCenter.smartContracts})+"")&&V(o,r),v[0]&1024&&s!==(s=d[10]("accountCenter.explore",{default:P.accountCenter.explore})+"")&&V(i,s),v[0]&2048&&f!==(f=d[11].explore)&&p(a,"href",f)},d(d){d&&S(t)}}}function Ct(e){let t,n;return t=new rr({props:{secondaryTokens:e[8]}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,o){const l={};o[0]&256&&(l.secondaryTokens=r[8]),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function ar(e){let t,n,r,o,l=e[2]&&pt(e),a=e[4]&&vt(e),s=e[0]&&mt(e);return{c(){l&&l.c(),t=z(),a&&a.c(),n=z(),s&&s.c(),r=ue()},m(i,f){l&&l.m(i,f),M(i,t,f),a&&a.m(i,f),M(i,n,f),s&&s.m(i,f),M(i,r,f),o=!0},p(i,f){i[2]?l?(l.p(i,f),f[0]&4&&y(l,1)):(l=pt(i),l.c(),y(l,1),l.m(t.parentNode,t)):l&&(ae(),A(l,1,1,()=>{l=null}),ie()),i[4]?a?(a.p(i,f),f[0]&16&&y(a,1)):(a=vt(i),a.c(),y(a,1),a.m(n.parentNode,n)):a&&(ae(),A(a,1,1,()=>{a=null}),ie()),i[0]?s?(s.p(i,f),f[0]&1&&y(s,1)):(s=mt(i),s.c(),y(s,1),s.m(r.parentNode,r)):s&&(ae(),A(s,1,1,()=>{s=null}),ie())},i(i){o||(y(l),y(a),y(s),o=!0)},o(i){A(l),A(a),A(s),o=!1},d(i){l&&l.d(i),i&&S(t),a&&a.d(i),i&&S(n),s&&s.d(i),i&&S(r)}}}function ir(e,t,n){let r,o,l,a,s,i,f,d,v,k;ee(e,Me,T=>n(1,f=T)),ee(e,je,T=>n(10,v=T));let{expanded:g}=t;const b=te.select("accountCenter").pipe(ye(te.get().accountCenter),Ce(1));ee(e,b,T=>n(9,d=T));function m(){f.forEach(({label:T})=>It({label:T}))}const{chains:u}=te.get();let _=!1,w,C=!1;const $=te.select("appMetadata").pipe(ye(te.get().appMetadata),Ce(1));ee(e,$,T=>n(11,k=T));const{position:I}=te.get().accountCenter,{device:B}=tn,D=async()=>{if(a)try{await nn(r.provider,a,a.protectedRpcUrl||rn),n(4,C=!1)}catch(T){const{code:N}=T;console.log(T,N)}};function H(T){Pt.call(this,e,T)}const q=()=>n(2,_=!1),W=()=>n(4,C=!1),U=()=>D();function X(T){w=T,n(3,w)}const Q=()=>on(),ne=()=>n(2,_=!0),re=()=>n(4,C=!0);return e.$$set=T=>{"expanded"in T&&n(0,g=T.expanded)},e.$$.update=()=>{e.$$.dirty[0]&2&&n(19,[r]=f,r),e.$$.dirty[0]&524288&&n(20,[o]=r?r.chains:[],o),e.$$.dirty[0]&524288&&n(8,l=r&&r.accounts.length&&r.accounts[0].secondaryTokens),e.$$.dirty[0]&1048576&&n(5,a=u.find(({id:T,namespace:N})=>o?T===o.id&&N===o.namespace:!1)),e.$$.dirty[0]&1048576&&n(7,s=Tt(o&&o.id)),e.$$.dirty[0]&1048576&&n(6,i=o&&o.id==="0x1")},[g,f,_,w,C,a,i,s,l,d,v,k,b,m,u,$,I,B,D,r,o,H,q,W,U,X,Q,ne,re]}class Bt extends pe{constructor(t){super(),ve(this,t,ir,ar,me,{expanded:0},or,[-1,-1])}}function sr(e){he(e,"svelte-1xsvwqj",`.ac-trigger.svelte-1xsvwqj{--background-color:var( + --account-center-minimized-background, + var(--w3o-background-color, white) + );--text-color:var(--w3o-text-color, var(--gray-700));--border-color:var( + --account-center-border, + var(--w3o-border-color, var(--onboard-gray-200, var(--gray-200))) + );--border-radius:var( + --account-center-border-radius, + var(--w3o-border-radius, 1rem) + );cursor:pointer;pointer-events:auto;width:100%;padding:0.5rem;border:1px solid;background:var(--background-color);color:var(--text-color);border-color:var(--border-color);border-radius:var(--border-radius);box-shadow:var( + --account-center-box-shadow, + var(--onboard-shadow-3, var(--shadow-3)) + );z-index:var(--account-center-z-index, 1)}.inner-row.svelte-1xsvwqj{display:flex;flex-flow:row nowrap;align-items:center;gap:0.5rem;padding:0 0.25rem}.wallet-info.svelte-1xsvwqj{display:flex;flex:1;flex-flow:column;height:2.5rem;overflow:hidden}.address.svelte-1xsvwqj{font-weight:600;line-height:1.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--account-center-minimized-address-color, inherit)}.balance.svelte-1xsvwqj{font-weight:400;line-height:1.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;opacity:0.6;color:var(--account-center-minimized-balance-color, inherit)}.chain-icon-container.svelte-1xsvwqj{margin-right:4px}.container.svelte-1xsvwqj{border:1px solid transparent;border-radius:16px;padding:1px;transition:border-color 250ms ease-in-out, backround 250ms ease-in-out;max-width:128px;cursor:default}.drop-shadow.svelte-1xsvwqj{filter:drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2))}`)}function zt(e){let t,n=(e[5].length>7?e[5].slice(0,7):e[5])+"",r,o,l,a;return{c(){t=h("div"),r=L(n),o=z(),l=L(e[2]),p(t,"class","balance svelte-1xsvwqj")},m(s,i){M(s,t,i),c(t,r),c(t,o),c(t,l)},p(s,i){i&32&&n!==(n=(s[5].length>7?s[5].slice(0,7):s[5])+"")&&V(r,n),i&4&&V(l,s[2])},i(s){s&&(a||Ae(()=>{a=Ie(t,$e,{}),a.start()}))},o:G,d(s){s&&S(t)}}}function cr(e){let t,n,r,o,l,a,s,i,f,d,v,k,g,b,m=(e[8]?de(e[8]):e[7]?de(e[7]):e[6])+"",u,_,w,C,$,I,B,D,H,q,W,U,X,Q,ne,re;l=new ge({props:{size:32,padding:4,background:"white",border:"darkGreen",radius:8,icon:e[9]&&e[9].icon||ze}}),i=new ge({props:{size:32,padding:4,background:"green",border:"darkGreen",radius:8,icon:e[1]?e[1].icon:""}}),v=new Ve({props:{size:14}});let T=e[5]&&zt(e);return D=new ge({props:{size:22,padding:4,background:"custom",color:e[4]?e[4].icon?void 0:"var(--onboard-primary-100, var(--primary-100))":`var( + --account-center-chain-warning, + var(--onboard-warning-500, var(--warning-500)) + )`,customBackgroundColor:e[4]?e[4].color||e[3]&&e[3].color||be.color:"var(--onboard-warning-200, var(--warning-200))",border:"transparent",radius:25,icon:e[4]?e[4].icon||e[3]&&e[3].icon||be.icon:Se}}),q=new Vt({props:{chains:e[11],colorVar:"--account-center-minimized-network-selector-color",selectIcon:jt,parentCSSId:"minimized_ac"}}),{c(){t=h("div"),n=h("div"),r=h("div"),o=h("div"),F(l.$$.fragment),a=z(),s=h("div"),F(i.$$.fragment),f=z(),d=h("div"),F(v.$$.fragment),k=z(),g=h("div"),b=h("div"),u=L(m),_=z(),T&&T.c(),w=z(),C=h("div"),$=h("div"),I=h("div"),B=h("div"),F(D.$$.fragment),H=z(),F(q.$$.fragment),p(o,"class","drop-shadow svelte-1xsvwqj"),_e(s,"margin-left","-0.5rem"),p(s,"class","drop-shadow svelte-1xsvwqj"),_e(d,"right","-4px"),_e(d,"bottom","-4px"),p(d,"class","drop-shadow absolute svelte-1xsvwqj"),p(r,"class","flex relative"),p(b,"class","address svelte-1xsvwqj"),p(g,"class","wallet-info svelte-1xsvwqj"),p(B,"class","chain-icon-container svelte-1xsvwqj"),p(I,"class","flex items-center"),p($,"class","container shadow-1 flex items-center svelte-1xsvwqj"),p($,"style",W=`border-color: var(${e[4]?"--onboard-primary-200, var(--primary-200)":"--onboard-warning-500, var(--warning-500)"}); background-color: var(${e[4]?"--account-center-minimized-chain-select-background, var(--primary-100)":"--account-center-minimized-chain-select-background-warning, var(--warning-100)"})`),p(C,"class","network"),p(n,"class","inner-row svelte-1xsvwqj"),p(t,"class","ac-trigger svelte-1xsvwqj")},m(N,x){M(N,t,x),c(t,n),c(n,r),c(r,o),O(l,o,null),c(r,a),c(r,s),O(i,s,null),c(r,f),c(r,d),O(v,d,null),c(n,k),c(n,g),c(g,b),c(b,u),c(g,_),T&&T.m(g,null),c(n,w),c(n,C),c(C,$),c($,I),c(I,B),O(D,B,null),c(I,H),O(q,I,null),Q=!0,ne||(re=[Y($,"click",fe(e[15])),Y(t,"click",fe(function(){we(e[0])&&e[0].apply(this,arguments)}))],ne=!0)},p(N,[x]){e=N;const Te={};x&512&&(Te.icon=e[9]&&e[9].icon||ze),l.$set(Te);const se={};x&2&&(se.icon=e[1]?e[1].icon:""),i.$set(se),(!Q||x&448)&&m!==(m=(e[8]?de(e[8]):e[7]?de(e[7]):e[6])+"")&&V(u,m),e[5]?T?(T.p(e,x),x&32&&y(T,1)):(T=zt(e),T.c(),y(T,1),T.m(g,null)):T&&(T.d(1),T=null);const R={};x&16&&(R.color=e[4]?e[4].icon?void 0:"var(--onboard-primary-100, var(--primary-100))":`var( + --account-center-chain-warning, + var(--onboard-warning-500, var(--warning-500)) + )`),x&24&&(R.customBackgroundColor=e[4]?e[4].color||e[3]&&e[3].color||be.color:"var(--onboard-warning-200, var(--warning-200))"),x&24&&(R.icon=e[4]?e[4].icon||e[3]&&e[3].icon||be.icon:Se),D.$set(R),(!Q||x&16&&W!==(W=`border-color: var(${e[4]?"--onboard-primary-200, var(--primary-200)":"--onboard-warning-500, var(--warning-500)"}); background-color: var(${e[4]?"--account-center-minimized-chain-select-background, var(--primary-100)":"--account-center-minimized-chain-select-background-warning, var(--warning-100)"})`))&&p($,"style",W)},i(N){Q||(y(l.$$.fragment,N),y(i.$$.fragment,N),y(v.$$.fragment,N),y(T),y(D.$$.fragment,N),y(q.$$.fragment,N),N&&Ae(()=>{Q&&(X&&X.end(1),U=Ie(t,$e,{duration:250}),U.start())}),Q=!0)},o(N){A(l.$$.fragment,N),A(i.$$.fragment,N),A(v.$$.fragment,N),A(D.$$.fragment,N),A(q.$$.fragment,N),U&&U.invalidate(),X=ln(t,$e,{duration:100}),Q=!1},d(N){N&&S(t),Z(l),Z(i),Z(v),T&&T.d(),Z(D),Z(q),N&&X&&X.end(),ne=!1,ke(re)}}}function dr(e,t,n){let r,o,l,a,s,i,f,d,v,k,g,b;ee(e,Me,C=>n(14,g=C));let{toggle:m}=t;const u=te.select("appMetadata").pipe(ye(te.get().appMetadata),Ce(1));ee(e,u,C=>n(9,b=C));const _=te.get().chains;function w(C){Pt.call(this,e,C)}return e.$$set=C=>{"toggle"in C&&n(0,m=C.toggle)},e.$$.update=()=>{e.$$.dirty&16384&&n(1,[r]=g,r),e.$$.dirty&2&&n(13,[o]=r?r.accounts:[],o),e.$$.dirty&8192&&n(8,l=o&&o.ens&&de(o.ens.name)),e.$$.dirty&8192&&n(7,a=o&&o.uns&&de(o.uns.name)),e.$$.dirty&8192&&n(6,s=o?He(o.address):""),e.$$.dirty&8192&&n(2,[i]=o&&o.balance?Object.keys(o.balance):[],i),e.$$.dirty&8196&&n(5,f=o&&o.balance?o.balance[i]:null),e.$$.dirty&2&&n(12,d=r&&r.chains[0]),e.$$.dirty&4096&&n(4,v=_.find(({id:C,namespace:$})=>d?C===d.id&&$===d.namespace:!1)),e.$$.dirty&4096&&n(3,k=Tt(d&&d.id))},[m,r,i,k,v,f,s,a,l,b,u,_,d,o,g,w]}class ur extends pe{constructor(t){super(),ve(this,t,dr,cr,me,{toggle:0},sr)}}function fr(e){he(e,"svelte-1o9vinu",`.ac-trigger.svelte-1o9vinu{--background-color:var( + --account-center-minimized-background, + var(--w3o-background-color, white) + );--text-color:var(--w3o-text-color, var(--gray-700));--border-color:var( + --account-center-border, + var(--w3o-border-color, var(--onboard-gray-200, var(--gray-200))) + );--border-radius:var( + --account-center-border-radius, + var(--w3o-border-radius, 1rem) + );position:relative;cursor:pointer;pointer-events:auto;min-width:80px;background:var(--background-color);color:var(--text-color);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var( + --account-center-box-shadow, + var(--onboard-shadow-3, var(--shadow-3)) + );z-index:var(--account-center-z-index, 1)}.wallet-square-wrapper.svelte-1o9vinu{position:relative;margin-left:-8px}.check-icon-wrapper.svelte-1o9vinu{position:absolute;right:-4px;bottom:-4px}.inner-row.svelte-1o9vinu{display:flex;flex-flow:row nowrap;width:80px;padding:0.75rem}.drop-shadow.svelte-1o9vinu{filter:drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2))}`)}function pr(e){let t,n,r,o,l,a,s,i,f,d,v,k,g,b,m;return o=new ge({props:{size:32,padding:4,background:"white",border:"darkGreen",radius:8,icon:e[3]&&e[3].icon||ze}}),i=new ge({props:{size:32,padding:4,background:"green",border:"darkGreen",radius:8,icon:e[1]?e[1].icon:""}}),v=new Ve({props:{size:14}}),{c(){t=h("div"),n=h("div"),r=h("div"),F(o.$$.fragment),l=z(),a=h("div"),s=h("div"),F(i.$$.fragment),f=z(),d=h("div"),F(v.$$.fragment),p(r,"class","drop-shadow svelte-1o9vinu"),p(s,"class","drop-shadow svelte-1o9vinu"),p(d,"class","check-icon-wrapper drop-shadow svelte-1o9vinu"),p(a,"class","wallet-square-wrapper svelte-1o9vinu"),p(n,"class","inner-row svelte-1o9vinu"),p(t,"class","ac-trigger svelte-1o9vinu"),p(t,"style",k=e[2].position.includes("Left")?"align-self: flex-start":null)},m(u,_){M(u,t,_),c(t,n),c(n,r),O(o,r,null),c(n,l),c(n,a),c(a,s),O(i,s,null),c(a,f),c(a,d),O(v,d,null),g=!0,b||(m=Y(t,"click",fe(function(){we(e[0])&&e[0].apply(this,arguments)})),b=!0)},p(u,[_]){e=u;const w={};_&8&&(w.icon=e[3]&&e[3].icon||ze),o.$set(w);const C={};_&2&&(C.icon=e[1]?e[1].icon:""),i.$set(C),(!g||_&4&&k!==(k=e[2].position.includes("Left")?"align-self: flex-start":null))&&p(t,"style",k)},i(u){g||(y(o.$$.fragment,u),y(i.$$.fragment,u),y(v.$$.fragment,u),g=!0)},o(u){A(o.$$.fragment,u),A(i.$$.fragment,u),A(v.$$.fragment,u),g=!1},d(u){u&&S(t),Z(o),Z(i),Z(v),b=!1,m()}}}function vr(e,t,n){let r,o,l,a;ee(e,Me,d=>n(6,o=d));let{toggle:s}=t;const i=te.select("appMetadata").pipe(ye(te.get().appMetadata),Ce(1));ee(e,i,d=>n(3,a=d));const f=te.select("accountCenter").pipe(ye(te.get().accountCenter),Ce(1));return ee(e,f,d=>n(2,l=d)),e.$$set=d=>{"toggle"in d&&n(0,s=d.toggle)},e.$$.update=()=>{e.$$.dirty&64&&n(1,[r]=o,r)},[s,r,l,a,i,f,o]}class mr extends pe{constructor(t){super(),ve(this,t,vr,pr,me,{toggle:0},fr)}}function hr(e){he(e,"svelte-1nua59o",".ac-container.svelte-1nua59o{display:flex;flex-flow:column;align-items:flex-end;gap:0.5rem}")}function $t(e){let t,n;return t=new Bt({props:{expanded:e[0]}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,o){const l={};o&1&&(l.expanded=r[0]),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function br(e){let t,n;return t=new ur({props:{toggle:e[4]}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p:G,i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function gr(e){let t,n;return t=new mr({props:{toggle:e[4]}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p:G,i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function At(e){let t,n;return t=new Bt({props:{expanded:e[0]}}),{c(){F(t.$$.fragment)},m(r,o){O(t,r,o),n=!0},p(r,o){const l={};o&1&&(l.expanded=r[0]),t.$set(l)},i(r){n||(y(t.$$.fragment,r),n=!0)},o(r){A(t.$$.fragment,r),n=!1},d(r){Z(t,r)}}}function _r(e){let t,n=e[1].position.includes("bottom"),r,o,l,a,s=e[1].position.includes("top"),i,f,d,v=n&&$t(e);const k=[gr,br],g=[];function b(u,_){return u[1].minimal?0:1}o=b(e),l=g[o]=k[o](e);let m=s&&At(e);return{c(){t=h("div"),v&&v.c(),r=z(),l.c(),a=z(),m&&m.c(),p(t,"class","ac-container svelte-1nua59o")},m(u,_){M(u,t,_),v&&v.m(t,null),c(t,r),g[o].m(t,null),c(t,a),m&&m.m(t,null),i=!0,f||(d=Y(window,"click",e[3]),f=!0)},p(u,[_]){_&2&&(n=u[1].position.includes("bottom")),n?v?(v.p(u,_),_&2&&y(v,1)):(v=$t(u),v.c(),y(v,1),v.m(t,r)):v&&(ae(),A(v,1,1,()=>{v=null}),ie());let w=o;o=b(u),o===w?g[o].p(u,_):(ae(),A(g[w],1,1,()=>{g[w]=null}),ie(),l=g[o],l?l.p(u,_):(l=g[o]=k[o](u),l.c()),y(l,1),l.m(t,a)),_&2&&(s=u[1].position.includes("top")),s?m?(m.p(u,_),_&2&&y(m,1)):(m=At(u),m.c(),y(m,1),m.m(t,null)):m&&(ae(),A(m,1,1,()=>{m=null}),ie())},i(u){i||(y(v),y(l),y(m),i=!0)},o(u){A(v),A(l),A(m),i=!1},d(u){u&&S(t),v&&v.d(),g[o].d(),m&&m.d(),f=!1,d()}}}function wr(e,t,n){let r,o=!1;const l=te.select("accountCenter").pipe(ye(te.get().accountCenter),Ce(1));ee(e,l,i=>n(1,r=i)),Jt(a);function a(){r.expanded&&(Ne({expanded:!1}),n(0,o=!1))}function s(){Ne({expanded:!r.expanded}),n(0,o=!o)}return[o,r,l,a,s]}class yr extends pe{constructor(t){super(),ve(this,t,wr,_r,me,{},hr)}}export{yr as default}; diff --git a/main/packages/examples/with-web3onboard/build/assets/ccip-c78d2f16-8bd1d0a3.js b/main/packages/examples/with-web3onboard/build/assets/ccip-c78d2f16-8bd1d0a3.js new file mode 100644 index 000000000..e584d21fd --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/ccip-c78d2f16-8bd1d0a3.js @@ -0,0 +1 @@ +import{d as O,c as L,e as E,H as h,s as w}from"./index-021f6a62-ddbac087.js";import{C as x,n as M,B as p,J as b,i as m,I as y}from"./transactionRequest-be6a8ea9-6f2aa5fb.js";import"./index-c9f1dfa0.js";class R extends p{constructor({callbackSelector:e,cause:t,data:n,extraData:c,sender:u,urls:r}){var i;super(t.shortMessage||"An error occurred while fetching for an offchain result.",{cause:t,metaMessages:[...t.metaMessages||[],(i=t.metaMessages)!=null&&i.length?"":[],"Offchain Gateway Call:",r&&[" Gateway URL(s):",...r.map(d=>` ${b(d)}`)],` Sender: ${u}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${c}`].flat()}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"OffchainLookupError"})}}class $ extends p{constructor({result:e,url:t}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${b(t)}`,`Response: ${w(e)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"OffchainLookupResponseMalformedError"})}}class S extends p{constructor({sender:e,to:t}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"OffchainLookupSenderMismatchError"})}}function A(a,e){if(!m(a,{strict:!1}))throw new y({address:a});if(!m(e,{strict:!1}))throw new y({address:e});return a.toLowerCase()===e.toLowerCase()}const D="0x556f1830",C={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function T(a,{blockNumber:e,blockTag:t,data:n,to:c}){const{args:u}=O({data:n,abi:[C]}),[r,i,d,s,o]=u,{ccipRead:f}=a,g=f&&typeof(f==null?void 0:f.request)=="function"?f.request:q;try{if(!A(c,r))throw new S({sender:r,to:c});const l=await g({data:d,sender:r,urls:i}),{data:k}=await L(a,{blockNumber:e,blockTag:t,data:x([s,E([{type:"bytes"},{type:"bytes"}],[l,o])]),to:c});return k}catch(l){throw new R({callbackSelector:s,cause:l,data:n,extraData:o,sender:r,urls:i})}}async function q({data:a,sender:e,urls:t}){var c;let n=new Error("An unknown error occurred.");for(let u=0;u>--c&1}const l=31,f=2**l,d=f>>>1,h=d>>1,p=f-1;let w=0;for(let E=0;E1;){let Q=v+F>>>1;E>>1|A(),B=B<<1^d,b=(b^d)<<1|d|1;C=B,y=1+b-B}let M=r-4;return m.map(E=>{switch(E-M){case 3:return M+65792+(e[a++]<<16|e[a++]<<8|e[a++]);case 2:return M+256+(e[a++]<<8|e[a++]);case 1:return M+e[a++];default:return E-1}})}function xn(e){let t=0;return()=>e[t++]}function Nt(e){return xn(Nn(On(e)))}function On(e){let t=[];[..."ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"].forEach((o,s)=>t[o.charCodeAt(0)]=s);let n=e.length,r=new Uint8Array(6*n>>3);for(let o=0,s=0,i=0,a=0;o=8&&(r[s++]=a>>(i-=8));return r}function kn(e){return e&1?~e>>1:e>>1}function Fn(e,t){let n=Array(e);for(let r=0,o=0;r{let t=q(e);if(t.length)return t})}function Ot(e){let t=[];for(;;){let n=e();if(n==0)break;t.push(Sn(n,e))}for(;;){let n=e()-1;if(n<0)break;t.push(Un(n,e))}return t.flat()}function $(e){let t=[];for(;;){let n=e(t.length);if(!n)break;t.push(n)}return t}function kt(e,t,n){let r=Array(e).fill().map(()=>[]);for(let o=0;or[i].push(s));return r}function Sn(e,t){let n=1+t(),r=t(),o=$(t);return kt(o.length,1+e,t).flatMap((i,a)=>{let[c,...u]=i;return Array(o[a]).fill().map((A,l)=>{let f=l*r;return[c+l*n,u.map(d=>d+f)]})})}function Un(e,t){let n=1+t();return kt(n,1+e,t).map(o=>[o[0],o.slice(1)])}function jn(e){let t=[],n=q(e);return o(r([]),[]),t;function r(s){let i=e(),a=$(()=>{let c=q(e).map(u=>n[u]);if(c.length)return r(c)});return{S:i,B:a,Q:s}}function o({S:s,B:i},a,c){if(!(s&4&&c===a[a.length-1])){s&2&&(c=a[a.length-1]),s&1&&t.push(a);for(let u of i)for(let A of u.Q)o(u,[...a,A],c)}}}function Hn(e){return e.toString(16).toUpperCase().padStart(2,"0")}function Ft(e){return`{${Hn(e)}}`}function zn(e){let t=[];for(let n=0,r=e.length;n>24&255}function jt(e){return e&16777215}let Ne,dt,xe,ae;function Yn(){let e=Nt(Gn);Ne=new Map(xt(e).flatMap((t,n)=>t.map(r=>[r,n+1<<24]))),dt=new Set(q(e)),xe=new Map,ae=new Map;for(let[t,n]of Ot(e)){if(!dt.has(t)&&n.length==2){let[r,o]=n,s=ae.get(r);s||(s=new Map,ae.set(r,s)),s.set(o,t)}xe.set(t,n.reverse())}}function Ht(e){return e>=_&&e=le&&e=fe&&tde&&t0&&o(de+u)}else{let i=xe.get(s);i?n.push(...i):o(s)}if(!n.length)break;s=n.pop()}if(r&&t.length>1){let s=Z(t[0]);for(let i=1;i0&&o>=i)i==0?(t.push(r,...n),n.length=0,r=a):n.push(a),o=i;else{let c=Wn(r,a);c>=0?r=c:o==0&&i==0?(t.push(r),r=a):(n.push(a),o=i)}}return r>=0&&t.push(r,...n),t}function Tt(e){return zt(e).map(jt)}function qn(e){return Xn(zt(e))}const pt=45,Gt=".",Jt=65039,Lt=1,U=e=>Array.from(e);function ee(e,t){return e.P.has(t)||e.Q.has(t)}class $n extends Array{get is_emoji(){return!0}}let Oe,Vt,N,ke,Kt,j,ve,S,Zt,ht,Fe;function ze(){if(Oe)return;let e=Nt(Pn);const t=()=>q(e),n=()=>new Set(t());Oe=new Map(Ot(e)),Vt=n(),N=t(),ke=new Set(t().map(A=>N[A])),N=new Set(N),Kt=n(),n();let r=xt(e),o=e();const s=()=>new Set(t().flatMap(A=>r[A]).concat(t()));j=$(A=>{let l=$(e).map(f=>f+96);if(l.length){let f=A>=o;l[0]-=32,l=z(l),f&&(l=`Restricted[${l}]`);let d=s(),h=s(),p=!e();return{N:l,P:d,Q:h,M:p,R:f}}}),ve=n(),S=new Map;let i=t().concat(U(ve)).sort((A,l)=>A-l);i.forEach((A,l)=>{let f=e(),d=i[l]=f?i[l-f]:{V:[],M:new Map};d.V.push(A),ve.has(A)||S.set(A,d)});for(let{V:A,M:l}of new Set(S.values())){let f=[];for(let h of A){let p=j.filter(m=>ee(m,h)),w=f.find(({G:m})=>p.some(C=>m.has(C)));w||(w={G:new Set,V:[]},f.push(w)),w.V.push(h),p.forEach(m=>w.G.add(m))}let d=f.flatMap(h=>U(h.G));for(let{G:h,V:p}of f){let w=new Set(d.filter(m=>!h.has(m)));for(let m of p)l.set(m,w)}}let a=new Set,c=new Set;const u=A=>a.has(A)?c.add(A):a.add(A);for(let A of j){for(let l of A.P)u(l);for(let l of A.Q)u(l)}for(let A of a)!S.has(A)&&!c.has(A)&&S.set(A,Lt);Zt=new Set(U(a).concat(U(Tt(a)))),ht=jn(e).map(A=>$n.from(A)).sort(Tn),Fe=new Map;for(let A of ht){let l=[Fe];for(let f of A){let d=l.map(h=>{let p=h.get(f);return p||(p=new Map,h.set(f,p)),p});f===Jt?l.push(...d):l=d}for(let f of l)f.V=A}}function Te(e){return(Yt(e)?"":`${Ge(be([e]))} `)+Ft(e)}function Ge(e){return`"${e}"‎`}function _n(e){if(e.length>=4&&e[2]==pt&&e[3]==pt)throw new Error(`invalid label extension: "${z(e.slice(0,4))}"`)}function er(e){for(let n=e.lastIndexOf(95);n>0;)if(e[--n]!==95)throw new Error("underscore allowed only at start")}function tr(e){let t=e[0],n=lt.get(t);if(n)throw W(`leading ${n}`);let r=e.length,o=-1;for(let s=1;s{let s=zn(o),i={input:s,offset:r};r+=s.length+1;try{let a=i.tokens=ur(s,t,n),c=a.length,u;if(!c)throw new Error("empty label");let A=i.output=a.flat();if(er(A),!(i.emoji=c>1||a[0].is_emoji)&&A.every(f=>f<128))_n(A),u="ASCII";else{let f=a.flatMap(d=>d.is_emoji?[]:d);if(!f.length)u="Emoji";else{if(N.has(A[0]))throw W("leading combining mark");for(let p=1;pi.has(a)):U(i),!n.length)return}else r.push(o)}if(n){for(let o of n)if(r.every(s=>ee(o,s)))throw new Error(`whole-script confusable: ${e.N}/${o.N}`)}}function ir(e){let t=j;for(let n of e){let r=t.filter(o=>ee(o,n));if(!r.length)throw j.some(o=>ee(o,n))?Xt(t[0],n):Wt(n);if(t=r,r.length==1)break}return t}function ar(e){return e.map(({input:t,error:n,output:r})=>{if(n){let o=n.message;throw new Error(e.length==1?o:`Invalid label ${Ge(be(t))}: ${o}`)}return z(r)}).join(Gt)}function Wt(e){return new Error(`disallowed character: ${Te(e)}`)}function Xt(e,t){let n=Te(t),r=j.find(o=>o.P.has(t));return r&&(n=`${r.N} ${n}`),new Error(`illegal mixture: ${e.N} + ${n}`)}function W(e){return new Error(`illegal placement: ${e}`)}function cr(e,t){for(let n of t)if(!ee(e,n))throw Xt(e,n);if(e.M){let n=Tt(t);for(let r=1,o=n.length;rft)throw new Error(`excessive non-spacing marks: ${Ge(be(n.slice(r-1,s)))} (${s-r}/${ft})`);r=s}}}function ur(e,t,n){let r=[],o=[];for(e=e.slice().reverse();e.length;){let s=lr(e);if(s)o.length&&(r.push(t(o)),o=[]),r.push(n(s));else{let i=e.pop();if(Zt.has(i))o.push(i);else{let a=Oe.get(i);if(a)o.push(...a);else if(!Vt.has(i))throw Wt(i)}}}return o.length&&r.push(t(o)),r}function Ar(e){return e.filter(t=>t!=Jt)}function lr(e,t){let n=Fe,r,o=e.length;for(;o&&(n=n.get(e[--o]),!!n);){let{V:s}=n;s&&(r=s,t&&t.push(...e.slice(o).reverse()),e.length=o)}return r}function fr(e){return rr(e)}const gt=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"}],qt=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],$t=[...qt,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],dr=[...qt,{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]},{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]}],wt=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],mt=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}];function G(e,{includeName:t=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new Mr(e.type);return`${e.name}(${Je(e.inputs,{includeName:t})})`}function Je(e,{includeName:t=!1}={}){return e?e.map(n=>pr(n,{includeName:t})).join(t?", ":","):""}function pr(e,{includeName:t}){return e.type.startsWith("tuple")?`(${Je(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:"")}class hr extends g{constructor({data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(` +`),{metaMessages:[`Params: (${Je(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiDecodingDataSizeTooSmallError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t,this.params=n,this.size=r}}class Le extends g{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiDecodingZeroDataError"})}}class gr extends g{constructor({expectedLength:t,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${t}`,`Given length: ${n}`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEncodingArrayLengthMismatchError"})}}class wr extends g{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${D(n)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEncodingBytesSizeMismatchError"})}}class mr extends g{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${n}`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEncodingLengthMismatchError"})}}class _t extends g{constructor(t,{docsPath:n}){super([`Encoded error signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${t}.`].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=t}}class he extends g{constructor(t,{docsPath:n}={}){super([`Function ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiFunctionNotFoundError"})}}class br extends g{constructor(t,{docsPath:n}){super([`Function "${t}" does not contain any \`outputs\` on ABI.`,"Cannot decode function result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the function exists on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiFunctionOutputsNotFoundError"})}}class yr extends g{constructor(t,n){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${t.type}\` in \`${G(t.abiItem)}\`, and`,`\`${n.type}\` in \`${G(n.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItemAmbiguityError"})}}class Er extends g{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiEncodingType"})}}class Cr extends g{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiDecodingType"})}}class Br extends g{constructor(t){super([`Value "${t}" is not a valid array.`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidArrayError"})}}class Mr extends g{constructor(t){super([`"${t}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidDefinitionTypeError"})}}function vr(e,t={}){typeof t.size<"u"&&me(e,{size:t.size});const n=P(e,t);return Bn(n,t)}function Dr(e,t={}){let n=e;if(typeof t.size<"u"&&(me(n,{size:t.size}),n=ge(n)),n.length>1||n[0]>1)throw new Mn(n);return!!n[0]}function R(e,t={}){typeof t.size<"u"&&me(e,{size:t.size});const n=P(e,t);return vn(n,t)}function Qr(e,t={}){let n=e;return typeof t.size<"u"&&(me(n,{size:t.size}),n=ge(n,{dir:"right"})),new TextDecoder().decode(n)}function Rr(e,t){if(e.length!==t.length)throw new mr({expectedLength:e.length,givenLength:t.length});const n=Ir({params:e,values:t}),r=Ke(n);return r.length===0?"0x":r}function Ir({params:e,values:t}){const n=[];for(let r=0;r0?O([a,i]):a}}if(o)return{dynamic:!0,encoded:i}}return{dynamic:!1,encoded:O(s.map(({encoded:i})=>i))}}function xr(e,{param:t}){const[,n]=t.type.split("bytes"),r=D(e);if(!n){let o=e;return r%32!==0&&(o=x(o,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:O([x(I(r,{size:32})),o])}}if(r!==Number.parseInt(n))throw new wr({expectedSize:Number.parseInt(n),value:e});return{dynamic:!1,encoded:x(e,{dir:"right"})}}function Or(e){if(typeof e!="boolean")throw new g(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:x(pn(e))}}function kr(e,{signed:t}){return{dynamic:!1,encoded:I(e,{size:32,signed:t})}}function Fr(e){const t=hn(e),n=Math.ceil(D(t)/32),r=[];for(let o=0;oo))}}function Ze(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function en(e,t){const n=typeof t=="string"?wn(t):t,r=mn(n);if(D(n)===0&&e.length>0)throw new Le;if(D(t)&&D(t)<32)throw new hr({data:typeof t=="string"?t:P(t),params:e,size:D(t)});let o=0;const s=[];for(let i=0;i48?vr(o,{signed:n}):R(o,{signed:n}),32]}function Gr(e,t,{staticPosition:n}){const r=t.components.length===0||t.components.some(({name:i})=>!i),o=r?[]:{};let s=0;if(te(t)){const i=R(e.readBytes(Se)),a=n+i;for(let c=0;cAe(Qt(e));function Vr(e){return Lr(e)}function Kr(e,t){const n=e.exec(t);return n==null?void 0:n.groups}const yt=/^tuple(?(\[(\d*)\])*)$/;function Ue(e){let t=e.type;if(yt.test(e.type)&&"components"in e){t="(";const n=e.components.length;for(let o=0;o{const t=(()=>typeof e=="string"?e:Zr(e))();return Yr(t)};function tn(e){return Vr(Wr(e))}const Xr=tn,Ye=e=>ue(tn(e),0,4);function We(e){const{abi:t,args:n=[],name:r}=e,o=It(r,{strict:!1}),s=t.filter(a=>o?a.type==="function"?Ye(a)===r:a.type==="event"?Xr(a)===r:!1:"name"in a&&a.name===r);if(s.length===0)return;if(s.length===1)return s[0];let i;for(const a of s){if(!("inputs"in a))continue;if(!n||n.length===0){if(!a.inputs||a.inputs.length===0)return a;continue}if(!a.inputs||a.inputs.length===0||a.inputs.length!==n.length)continue;if(n.every((u,A)=>{const l="inputs"in a&&a.inputs[A];return l?je(u,l):!1})){if(i&&"inputs"in i&&i.inputs){const u=nn(a.inputs,i.inputs,n);if(u)throw new yr({abiItem:a,type:u[0]},{abiItem:i,type:u[1]})}i=a}}return i||s[0]}function je(e,t){const n=typeof e,r=t.type;switch(r){case"address":return k(e,{strict:!1});case"bool":return n==="boolean";case"function":return n==="string";case"string":return n==="string";default:return r==="tuple"&&"components"in t?Object.values(t.components).every((o,s)=>je(Object.values(e)[s],o)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n==="number"||n==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)?Array.isArray(e)&&e.every(o=>je(o,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function nn(e,t,n){for(const r in e){const o=e[r],s=t[r];if(o.type==="tuple"&&s.type==="tuple"&&"components"in o&&"components"in s)return nn(o.components,s.components,n[r]);const i=[o.type,s.type];if((()=>i.includes("address")&&i.includes("bytes20")?!0:i.includes("address")&&i.includes("string")?k(n[r],{strict:!1}):i.includes("address")&&i.includes("bytes")?k(n[r],{strict:!1}):!1)())return i}}const De="/docs/contract/decodeFunctionResult";function ye(e){const{abi:t,args:n,functionName:r,data:o}=e;let s=t[0];if(r){const a=We({abi:t,args:n,name:r});if(!a)throw new he(r,{docsPath:De});s=a}if(s.type!=="function")throw new he(void 0,{docsPath:De});if(!s.outputs)throw new br(s.name,{docsPath:De});const i=en(s.outputs,o);if(i&&i.length>1)return i;if(i&&i.length===1)return i[0]}const Et="/docs/contract/encodeFunctionData";function qr(e){const{abi:t,args:n,functionName:r}=e;let o=t[0];if(r){const s=We({abi:t,args:n,name:r});if(!s)throw new he(r,{docsPath:Et});o=s}if(o.type!=="function")throw new he(void 0,{docsPath:Et});return{abi:[o],functionName:Ye(G(o))}}function Ee(e){const{args:t}=e,{abi:n,functionName:r}=(()=>{var a;return e.abi.length===1&&((a=e.functionName)!=null&&a.startsWith("0x"))?e:qr(e)})(),o=n[0],s=r,i="inputs"in o&&o.inputs?Rr(o.inputs,t??[]):void 0;return En([s,i??"0x"])}function ne({blockNumber:e,chain:t,contract:n}){var o;const r=(o=t==null?void 0:t.contracts)==null?void 0:o[n];if(!r)throw new Re({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Re({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}const rn={1:"An `assert` condition failed.",17:"Arithmetic operation resulted in underflow or overflow.",18:"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).",33:"Attempted to convert to an invalid type.",34:"Attempted to access a storage byte array that is incorrectly encoded.",49:"Performed `.pop()` on an empty array",50:"Array index is out of bounds.",65:"Allocated too much memory or created an array which is too large.",81:"Attempted to call a zero-initialized variable of internal function type."},$r={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},_r={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};function Xe(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}function eo(e){const{abi:t,data:n}=e,r=ue(n,0,4);if(r==="0x")throw new Le;const s=[...t||[],$r,_r].find(i=>i.type==="error"&&r===Ye(G(i)));if(!s)throw new _t(r,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:s,args:"inputs"in s&&s.inputs&&s.inputs.length>0?en(s.inputs,ue(n,4)):void 0,errorName:s.name}}const qe=(e,t,n)=>JSON.stringify(e,(r,o)=>{const s=typeof o=="bigint"?o.toString():o;return typeof t=="function"?t(r,s):s},n);function on({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if("name"in e&&"inputs"in e&&e.inputs)return`${n?e.name:""}(${e.inputs.map((o,s)=>`${r&&o.name?`${o.name}: `:""}${typeof t[s]=="object"?qe(t[s]):t[s]}`).join(", ")})`}class to extends g{constructor({address:t}){super(`State for account "${t}" is set multiple times.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AccountStateConflictError"})}}class no extends g{constructor(){super("state and stateDiff are set on the same account."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"StateAssignmentConflictError"})}}function Ct(e){return e.reduce((t,{slot:n,value:r})=>`${t} ${n}: ${r} +`,"")}function ro(e){return e.reduce((t,{address:n,...r})=>{let o=`${t} ${n}: +`;return r.nonce&&(o+=` nonce: ${r.nonce} +`),r.balance&&(o+=` balance: ${r.balance} +`),r.code&&(o+=` code: ${r.code} +`),r.state&&(o+=` state: +`,o+=Ct(r.state)),r.stateDiff&&(o+=` stateDiff: +`,o+=Ct(r.stateDiff)),o},` State Override: +`).slice(0,-1)}class oo extends g{constructor(t,{account:n,docsPath:r,chain:o,data:s,gas:i,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:A,to:l,value:f,stateOverride:d}){var w;const h=n?Xe(n):void 0;let p=Pt({from:h==null?void 0:h.address,to:l,value:typeof f<"u"&&`${In(f)} ${((w=o==null?void 0:o.nativeCurrency)==null?void 0:w.symbol)||"ETH"}`,data:s,gas:i,gasPrice:typeof a<"u"&&`${Me(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${Me(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${Me(u)} gwei`,nonce:A});d&&(p+=` +${ro(d)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Raw Call Arguments:",p].filter(Boolean)}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CallExecutionError"}),this.cause=t}}class so extends g{constructor(t,{abi:n,args:r,contractAddress:o,docsPath:s,functionName:i,sender:a}){const c=We({abi:n,args:r,name:i}),u=c?on({abiItem:c,args:r,includeFunctionName:!1,includeName:!1}):void 0,A=c?G(c,{includeName:!0}):void 0,l=Pt({address:o&&Rn(o),function:A,args:u&&u!=="()"&&`${[...Array((i==null?void 0:i.length)??0).keys()].map(()=>" ").join("")}${u}`,sender:a});super(t.shortMessage||`An unknown error occurred while executing the contract function "${i}".`,{cause:t,docsPath:s,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Contract Call:",l].filter(Boolean)}),Object.defineProperty(this,"abi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{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,"contractAddress",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"formattedArgs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"functionName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sender",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ContractFunctionExecutionError"}),this.abi=n,this.args=r,this.cause=t,this.contractAddress=o,this.functionName=i,this.sender=a}}class He extends g{constructor({abi:t,data:n,functionName:r,message:o}){let s,i,a,c;if(n&&n!=="0x")try{i=eo({abi:t,data:n});const{abiItem:A,errorName:l,args:f}=i;if(l==="Error")c=f[0];else if(l==="Panic"){const[d]=f;c=rn[d]}else{const d=A?G(A,{includeName:!0}):void 0,h=A&&f?on({abiItem:A,args:f,includeFunctionName:!1,includeName:!1}):void 0;a=[d?`Error: ${d}`:"",h&&h!=="()"?` ${[...Array((l==null?void 0:l.length)??0).keys()].map(()=>" ").join("")}${h}`:""]}}catch(A){s=A}else o&&(c=o);let u;s instanceof _t&&(u=s.signature,a=[`Unable to decode signature "${u}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${u}.`]),super(c&&c!=="execution reverted"||u?[`The contract function "${r}" reverted with the following ${u?"signature":"reason"}:`,c||u].join(` +`):`The contract function "${r}" reverted.`,{cause:s,metaMessages:a}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ContractFunctionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"reason",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=i,this.reason=c,this.signature=u}}class io extends g{constructor({functionName:t}){super(`The contract function "${t}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${t}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ContractFunctionZeroDataError"})}}class sn extends g{constructor({data:t,message:n}){super(n||""),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RawContractError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t}}function $e(e,t){var r,o,s,i,a,c;if(!(e instanceof g))return!1;const n=e.walk(u=>u instanceof He);return n instanceof He?!!(((r=n.data)==null?void 0:r.errorName)==="ResolverNotFound"||((o=n.data)==null?void 0:o.errorName)==="ResolverWildcardNotSupported"||((s=n.data)==null?void 0:s.errorName)==="ResolverNotContract"||((i=n.data)==null?void 0:i.errorName)==="ResolverError"||((a=n.data)==null?void 0:a.errorName)==="HttpError"||(c=n.reason)!=null&&c.includes("Wildcard on non-extended resolvers is not supported")||t==="reverse"&&n.reason===rn[50]):!1}function an(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return It(t)?t:null}function X(e){let t=new Uint8Array(32).fill(0);if(!e)return P(t);const n=e.split(".");for(let r=n.length-1;r>=0;r-=1){const o=an(n[r]),s=o?Qt(o):Ae(Y(n[r]),"bytes");t=Ae(O([t,s]),"bytes")}return P(t)}function ao(e){return`[${e.slice(2)}]`}function cn(e){const t=new Uint8Array(32).fill(0);return e?an(e)||Ae(Y(e)):P(t)}function re(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const n=new Uint8Array(Y(t).byteLength+2);let r=0;const o=t.split(".");for(let s=0;s255&&(i=Y(ao(cn(o[s])))),n[r]=i.length,n.set(i,r+1),r+=i.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}function L(e,t,n){return r=>{var o,s;return((o=e[t.name])==null?void 0:o.call(e,r))??((s=e[n])==null?void 0:s.call(e,r))??t(e,r)}}class Lo extends g{constructor({body:t,details:n,headers:r,status:o,url:s}){super("HTTP request failed.",{details:n,metaMessages:[o&&`Status: ${o}`,`URL: ${vt(s)}`,t&&`Request body: ${qe(t)}`].filter(Boolean)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=t,this.headers=r,this.status=o,this.url=s}}class co extends g{constructor({body:t,error:n,url:r}){super("RPC Request failed.",{cause:n,details:n.message,metaMessages:[`URL: ${vt(r)}`,`Request body: ${qe(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n.code}}const uo=-1;class Ao extends g{constructor(t,{code:n,docsPath:r,metaMessages:o,shortMessage:s}){super(s,{cause:t,docsPath:r,metaMessages:o||(t==null?void 0:t.metaMessages)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=t.name,this.code=t instanceof co?t.code:n??uo}}class Ce extends Ao{constructor(t){super(t,{code:Ce.code,shortMessage:"An internal error was received."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InternalRpcError"})}}Object.defineProperty(Ce,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});const lo=3;function fo(e,{abi:t,address:n,args:r,docsPath:o,functionName:s,sender:i}){const{code:a,data:c,message:u,shortMessage:A}=e instanceof sn?e:e instanceof g?e.walk(f=>"data"in f)||e.walk():{},l=(()=>e instanceof Le?new io({functionName:s}):[lo,Ce.code].includes(a)&&(c||u||A)?new He({abi:t,data:typeof c=="object"?c.data:c,functionName:s,message:A??u}):e)();return new so(l,{abi:t,args:r,contractAddress:n,docsPath:o,functionName:s,sender:i})}const po="0x82ad56cb";function ho(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof g?e.walk(o=>o.code===ie.code):e;return r instanceof g?new ie({cause:e,message:r.details}):ie.nodeMessage.test(n)?new ie({cause:e,message:e.details}):Ie.nodeMessage.test(n)?new Ie({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):nt.nodeMessage.test(n)?new nt({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):rt.nodeMessage.test(n)?new rt({cause:e,nonce:t==null?void 0:t.nonce}):ot.nodeMessage.test(n)?new ot({cause:e,nonce:t==null?void 0:t.nonce}):st.nodeMessage.test(n)?new st({cause:e,nonce:t==null?void 0:t.nonce}):it.nodeMessage.test(n)?new it({cause:e}):at.nodeMessage.test(n)?new at({cause:e,gas:t==null?void 0:t.gas}):ct.nodeMessage.test(n)?new ct({cause:e,gas:t==null?void 0:t.gas}):ut.nodeMessage.test(n)?new ut({cause:e}):Pe.nodeMessage.test(n)?new Pe({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas,maxPriorityFeePerGas:t==null?void 0:t.maxPriorityFeePerGas}):new Rt({cause:e})}function go(e,{docsPath:t,...n}){const r=(()=>{const o=ho(e,n);return o instanceof Rt?e:o})();return new oo(r,{docsPath:t,...n})}function wo(e,{format:t}){if(!t)return{};const n={};function r(s){const i=Object.keys(s);for(const a of i)a in e&&(n[a]=e[a]),s[a]&&typeof s[a]=="object"&&!Array.isArray(s[a])&&r(s[a])}const o=t(e||{});return r(o),n}const Qe=new Map;function mo({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:o}){const s=async()=>{const A=c();i();const l=A.map(({args:f})=>f);l.length!==0&&e(l).then(f=>{var d;o&&Array.isArray(f)&&f.sort(o);for(let h=0;h{var d;for(let h=0;hQe.delete(t),a=()=>c().map(({args:A})=>A),c=()=>Qe.get(t)||[],u=A=>Qe.set(t,[...c(),A]);return{flush:i,async schedule(A){const l={},f=new Promise((p,w)=>{l.resolve=p,l.reject=w});return(n==null?void 0:n([...a(),A]))&&s(),c().length>0?(u({args:A,pendingPromise:l}),f):(u({args:A,pendingPromise:l}),setTimeout(s,r),f)}}}function Bt(e){if(!(!e||e.length===0))return e.reduce((t,{slot:n,value:r})=>{if(n.length!==66)throw new At({size:n.length,targetSize:66,type:"hex"});if(r.length!==66)throw new At({size:r.length,targetSize:66,type:"hex"});return t[n]=r,t},{})}function bo(e){const{balance:t,nonce:n,state:r,stateDiff:o,code:s}=e,i={};if(s!==void 0&&(i.code=s),t!==void 0&&(i.balance=I(t)),n!==void 0&&(i.nonce=I(n)),r!==void 0&&(i.state=Bt(r)),o!==void 0){if(i.state)throw new no;i.stateDiff=Bt(o)}return i}function yo(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!k(n,{strict:!1}))throw new ce({address:n});if(t[n])throw new to({address:n});t[n]=bo(r)}return t}function Eo(e){const{account:t,gasPrice:n,maxFeePerGas:r,maxPriorityFeePerGas:o,to:s}=e,i=t?Xe(t):void 0;if(i&&!k(i.address))throw new ce({address:i.address});if(s&&!k(s))throw new ce({address:s});if(typeof n<"u"&&(typeof r<"u"||typeof o<"u"))throw new Cn;if(r&&r>2n**256n-1n)throw new Ie({maxFeePerGas:r});if(o&&r&&o>r)throw new Pe({maxFeePerGas:r,maxPriorityFeePerGas:o})}async function Co(e,t){var M,E,v,F;const{account:n=e.account,batch:r=!!((M=e.batch)!=null&&M.multicall),blockNumber:o,blockTag:s="latest",accessList:i,blobs:a,data:c,gas:u,gasPrice:A,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:d,nonce:h,to:p,value:w,stateOverride:m,...C}=t,y=n?Xe(n):void 0;try{Eo(t);const b=(o?I(o):void 0)||s,Q=yo(m),oe=(F=(v=(E=e.chain)==null?void 0:E.formatters)==null?void 0:v.transactionRequest)==null?void 0:F.format,se=(oe||gn)({...wo(C,{format:oe}),from:y==null?void 0:y.address,accessList:i,blobs:a,data:c,gas:u,gasPrice:A,maxFeePerBlobGas:l,maxFeePerGas:f,maxPriorityFeePerGas:d,nonce:h,to:p,value:w});if(r&&Bo({request:se})&&!Q)try{return await Mo(e,{...se,blockNumber:o,blockTag:s})}catch(Be){if(!(Be instanceof Dt)&&!(Be instanceof Re))throw Be}const tt=await e.request({method:"eth_call",params:Q?[se,b,Q]:[se,b]});return tt==="0x"?{data:void 0}:{data:tt}}catch(B){const b=vo(B),{offchainLookup:Q,offchainLookupSignature:oe}=await dn(()=>import("./ccip-c78d2f16-8bd1d0a3.js"),["./ccip-c78d2f16-8bd1d0a3.js","./transactionRequest-be6a8ea9-6f2aa5fb.js","./index-c9f1dfa0.js","./index-b0ac98ae.css"],import.meta.url);if(e.ccipRead!==!1&&(b==null?void 0:b.slice(0,10))===oe&&p)return{data:await Q(e,{data:b,to:p})};throw go(B,{...t,account:y,chain:e.chain})}}function Bo({request:e}){const{data:t,to:n,...r}=e;return!(!t||t.startsWith(po)||!n||Object.values(r).filter(o=>typeof o<"u").length>0)}async function Mo(e,t){var p;const{batchSize:n=1024,wait:r=0}=typeof((p=e.batch)==null?void 0:p.multicall)=="object"?e.batch.multicall:{},{blockNumber:o,blockTag:s="latest",data:i,multicallAddress:a,to:c}=t;let u=a;if(!u){if(!e.chain)throw new Dt;u=ne({blockNumber:o,chain:e.chain,contract:"multicall3"})}const l=(o?I(o):void 0)||s,{schedule:f}=mo({id:`${e.uid}.${l}`,wait:r,shouldSplitBatch(w){return w.reduce((C,{data:y})=>C+(y.length-2),0)>n*2},fn:async w=>{const m=w.map(M=>({allowFailure:!0,callData:M.data,target:M.to})),C=Ee({abi:gt,args:[m],functionName:"aggregate3"}),y=await e.request({method:"eth_call",params:[{data:C,to:u},l]});return ye({abi:gt,args:[m],functionName:"aggregate3",data:y||"0x"})}}),[{returnData:d,success:h}]=await f({data:i,to:c});if(!h)throw new sn({data:d});return d==="0x"?{data:void 0}:{data:d}}function vo(e){var n;if(!(e instanceof g))return;const t=e.walk();return typeof(t==null?void 0:t.data)=="object"?(n=t.data)==null?void 0:n.data:t.data}async function J(e,t){const{abi:n,address:r,args:o,functionName:s,...i}=t,a=Ee({abi:n,args:o,functionName:s});try{const{data:c}=await L(e,Co,"call")({...i,data:a,to:r});return ye({abi:n,args:o,functionName:s,data:c||"0x"})}catch(c){throw fo(c,{abi:n,address:r,args:o,docsPath:"/docs/contract/readContract",functionName:s})}}async function Do(e,{blockNumber:t,blockTag:n,coinType:r,name:o,gatewayUrls:s,strict:i,universalResolverAddress:a}){let c=a;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=ne({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const u=Ee({abi:mt,functionName:"addr",...r!=null?{args:[X(o),BigInt(r)]}:{args:[X(o)]}}),A={address:c,abi:$t,functionName:"resolve",args:[we(re(o)),u],blockNumber:t,blockTag:n},l=L(e,J,"readContract"),f=s?await l({...A,args:[...A.args,s]}):await l(A);if(f[0]==="0x")return null;const d=ye({abi:mt,args:r!=null?[X(o),BigInt(r)]:void 0,functionName:"addr",data:f[0]});return d==="0x"||ge(d)==="0x00"?null:d}catch(u){if(i)throw u;if($e(u,"resolve"))return null;throw u}}class Qo extends g{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarInvalidMetadataError"})}}class K extends g{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarInvalidNftUriError"})}}class _e extends g{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarUriResolutionError"})}}class Ro extends g{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarUnsupportedNamespaceError"})}}const Io=/(?https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?\/)?(?ipfs\/|ipns\/)?(?[\w\-.]+)(?\/.*)?/,Po=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?[\w\-.]+))?(?\/.*)?$/,No=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,xo=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function Oo(e){try{const t=await fetch(e,{method:"HEAD"});if(t.status===200){const n=t.headers.get("content-type");return n==null?void 0:n.startsWith("image/")}return!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(n=>{const r=new Image;r.onload=()=>{n(!0)},r.onerror=()=>{n(!1)},r.src=e})}}function Mt(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function un({uri:e,gatewayUrls:t}){const n=No.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=Mt(t==null?void 0:t.ipfs,"https://ipfs.io"),o=Mt(t==null?void 0:t.arweave,"https://arweave.net"),s=e.match(Io),{protocol:i,subpath:a,target:c,subtarget:u=""}=(s==null?void 0:s.groups)||{},A=i==="ipns:/"||a==="ipns/",l=i==="ipfs:/"||a==="ipfs/"||Po.test(e);if(e.startsWith("http")&&!A&&!l){let d=e;return t!=null&&t.arweave&&(d=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:d,isOnChain:!1,isEncoded:!1}}if((A||l)&&c)return{uri:`${r}/${A?"ipns":"ipfs"}/${c}${u}`,isOnChain:!1,isEncoded:!1};if(i==="ar:/"&&c)return{uri:`${o}/${c}${u||""}`,isOnChain:!1,isEncoded:!1};let f=e.replace(xo,"");if(f.startsWith("o.json());return await et({gatewayUrls:e,uri:An(n)})}catch{throw new _e({uri:t})}}async function et({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=un({uri:t,gatewayUrls:e});if(r||await Oo(n))return n;throw new _e({uri:t})}function Fo(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[n,r,o]=t.split("/"),[s,i]=n.split(":"),[a,c]=r.split(":");if(!s||s.toLowerCase()!=="eip155")throw new K({reason:"Only EIP-155 supported"});if(!i)throw new K({reason:"Chain ID not found"});if(!c)throw new K({reason:"Contract address not found"});if(!o)throw new K({reason:"Token ID not found"});if(!a)throw new K({reason:"ERC namespace not found"});return{chainID:Number.parseInt(i),namespace:a.toLowerCase(),contractAddress:c,tokenID:o}}async function So(e,{nft:t}){if(t.namespace==="erc721")return J(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return J(e,{address:t.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(t.tokenID)]});throw new Ro({namespace:t.namespace})}async function ln(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?Uo(e,{gatewayUrls:t,record:n}):et({uri:n,gatewayUrls:t})}async function Uo(e,{gatewayUrls:t,record:n}){const r=Fo(n),o=await So(e,{nft:r}),{uri:s,isOnChain:i,isEncoded:a}=un({uri:o,gatewayUrls:t});if(i&&(s.includes("data:application/json;base64,")||s.startsWith("{"))){const u=a?atob(s.replace("data:application/json;base64,","")):s,A=JSON.parse(u);return et({uri:An(A),gatewayUrls:t})}let c=r.tokenID;return r.namespace==="erc1155"&&(c=c.replace("0x","").padStart(64,"0")),ko({gatewayUrls:t,uri:s.replace(/(?:0x)?{id}/,c)})}async function fn(e,{blockNumber:t,blockTag:n,name:r,key:o,gatewayUrls:s,strict:i,universalResolverAddress:a}){let c=a;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=ne({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const u={address:c,abi:$t,functionName:"resolve",args:[we(re(r)),Ee({abi:wt,functionName:"text",args:[X(r),o]})],blockNumber:t,blockTag:n},A=L(e,J,"readContract"),l=s?await A({...u,args:[...u.args,s]}):await A(u);if(l[0]==="0x")return null;const f=ye({abi:wt,functionName:"text",data:l[0]});return f===""?null:f}catch(u){if(i)throw u;if($e(u,"resolve"))return null;throw u}}async function jo(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:o,gatewayUrls:s,strict:i,universalResolverAddress:a}){const c=await L(e,fn,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:o,universalResolverAddress:a,gatewayUrls:s,strict:i});if(!c)return null;try{return await ln(e,{record:c,gatewayUrls:r})}catch{return null}}async function Ho(e,{address:t,blockNumber:n,blockTag:r,gatewayUrls:o,strict:s,universalResolverAddress:i}){let a=i;if(!a){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");a=ne({blockNumber:n,chain:e.chain,contract:"ensUniversalResolver"})}const c=`${t.toLowerCase().substring(2)}.addr.reverse`;try{const u={address:a,abi:dr,functionName:"reverse",args:[we(re(c))],blockNumber:n,blockTag:r},A=L(e,J,"readContract"),[l,f]=o?await A({...u,args:[...u.args,o]}):await A(u);return t.toLowerCase()!==f.toLowerCase()?null:l}catch(u){if(s)throw u;if($e(u,"reverse"))return null;throw u}}async function zo(e,{blockNumber:t,blockTag:n,name:r,universalResolverAddress:o}){let s=o;if(!s){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");s=ne({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}const[i]=await L(e,J,"readContract")({address:s,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[we(re(r))],blockNumber:t,blockTag:n});return i}var Vo=Object.freeze({__proto__:null,normalize:fr,getEnsAddress:Do,getEnsAvatar:jo,getEnsName:Ho,getEnsResolver:zo,getEnsText:fn,labelhash:cn,namehash:X,parseAvatarRecord:ln,packetToBytes:re});export{Lo as H,Co as c,eo as d,Rr as e,Vo as i,qe as s}; diff --git a/main/packages/examples/with-web3onboard/build/assets/index-4327b2d3.js b/main/packages/examples/with-web3onboard/build/assets/index-4327b2d3.js new file mode 100644 index 000000000..67cf951cd --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/index-4327b2d3.js @@ -0,0 +1,37 @@ +import{B as T,s as X,n as ae,o as O,q as be,r as _s,u as ir,f as R,x as K,y as an,z as j,A as kt,I as go,C as Y,D as $t,E as Ms,F as wo,G as tt,H as Qr,_ as cr,J as _e,t as ye,K as Zt,L as vo,M as xo,N as Eo}from"./index-c9f1dfa0.js";import{R as sp,S as ap,U as op,T as ip,V as cp,W as up,O as dp,Y as lp,g as fp,Z as pp,$ as mp,X as yp,a0 as bp,p as hp,Q as gp}from"./index-c9f1dfa0.js";import{k as H,c as fe,i as ie,I as he,s as Fe,a as Ct,b as Yt,d as ur,e as Po,p as dr,f as Me,E as Ut,F as Un,g as es,N as ts,h as ns,j as rs,l as ss,m as as,n as os,T as is,o as zn,U as on,q as Ao,r as qs,t as Io,u as So,v as To,w as js,x as Bo,y as Ot,P as ko,z as Le,C as Dn,A as Fs,B as $o,D as Co,G as Oo,H as Ue,J as Ro,K as No,S as _o,L as Mo,M as qo,O as cn,Q as jo,R as Fo,V as Lo,W as Uo,X as zo,Y as Ls,Z as Do,_ as Us,$ as Go,a0 as Ho,a1 as Vo,a2 as Zo,a3 as cs,a4 as Wo,a5 as Ko,a6 as zs,a7 as Jt,a8 as us,a9 as Yo,aa as Jo}from"./number-84aafe0c.js";import{bH as vp,bI as xp,bJ as Ep,bQ as Pp,bT as Ap,bK as Ip,bU as Sp,bL as Tp,bN as Bp,bO as kp,bR as $p,an as Cp,ao as Op,ap as Rp,aq as Np,ar as _p,as as Mp,at as qp,ac as jp,au as Fp,av as Lp,aw as Up,ax as zp,ay as Dp,az as Gp,aA as Hp,aB as Vp,aC as Zp,aD as Wp,ad as Kp,aE as Yp,aF as Jp,aG as Xp,ae as Qp,af as e0,ag as t0,ah as n0,ai as r0,aj as s0,ab as a0,ak as o0,al as i0,am as c0,aT as u0,aU as d0,aV as l0,aW as f0,aX as p0,aY as m0,aZ as y0,aI as b0,a_ as h0,a$ as g0,b0 as w0,b1 as v0,b2 as x0,b3 as E0,b4 as P0,b5 as A0,b6 as I0,b7 as S0,aJ as T0,b8 as B0,b9 as k0,ba as $0,aK as C0,aL as O0,aM as R0,aN as N0,aO as _0,aP as M0,aH as q0,aQ as j0,aR as F0,aS as L0,bn as U0,bo as z0,bp as D0,bq as G0,br as H0,bs as V0,bt as Z0,bc as W0,bu as K0,bv as Y0,bw as J0,bx as X0,by as Q0,bz as em,bA as tm,bB as nm,bC as rm,bD as sm,bd as am,bE as om,bF as im,bG as cm,be as um,bf as dm,bg as lm,bh as fm,bi as pm,bj as mm,bb as ym,bk as bm,bl as hm,bm as gm,bP as wm,bW as vm,bV as xm,bS as Em,bM as Pm}from"./number-84aafe0c.js";const Xo="1.0.0";class Z extends Error{constructor(t,n={}){var o;const r=n.cause instanceof Z?n.cause.details:(o=n.cause)!=null&&o.message?n.cause.message:n.details,s=n.cause instanceof Z&&n.cause.docsPath||n.docsPath,a=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...s?[`Docs: https://abitype.dev${s}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Xo}`].join(` +`);super(a),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiTypeError"}),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=s,this.metaMessages=n.metaMessages,this.shortMessage=t}}function ke(e,t){const n=e.exec(t);return n==null?void 0:n.groups}const Ds=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Gs=/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Hs=/^\(.+?\).*?$/,ds=/^tuple(?(\[(\d*)\])*)$/;function Gn(e){let t=e.type;if(ds.test(e.type)&&"components"in e){t="(";const n=e.components.length;for(let s=0;s[a-zA-Z$_][a-zA-Z0-9$_]*)\((?.*?)\)$/;function ei(e){return Vs.test(e)}function ti(e){return ke(Vs,e)}const Zs=/^event (?[a-zA-Z$_][a-zA-Z0-9$_]*)\((?.*?)\)$/;function ni(e){return Zs.test(e)}function ri(e){return ke(Zs,e)}const Ws=/^function (?[a-zA-Z$_][a-zA-Z0-9$_]*)\((?.*?)\)(?: (?external|public{1}))?(?: (?pure|view|nonpayable|payable{1}))?(?: returns\s?\((?.*?)\))?$/;function si(e){return Ws.test(e)}function ai(e){return ke(Ws,e)}const Ks=/^struct (?[a-zA-Z$_][a-zA-Z0-9$_]*) \{(?.*?)\}$/;function Rt(e){return Ks.test(e)}function oi(e){return ke(Ks,e)}const Ys=/^constructor\((?.*?)\)(?:\s(?payable{1}))?$/;function ii(e){return Ys.test(e)}function ci(e){return ke(Ys,e)}const ui=/^fallback\(\)$/;function di(e){return ui.test(e)}const li=/^receive\(\) external payable$/;function fi(e){return li.test(e)}const Xt=new Set(["memory","indexed","storage","calldata"]),pi=new Set(["indexed"]),Hn=new Set(["calldata","memory","storage"]);class mi extends Z{constructor({signature:t}){super("Failed to parse ABI item.",{details:`parseAbiItem(${JSON.stringify(t,null,2)})`,docsPath:"/api/human#parseabiitem-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiItemError"})}}class yi extends Z{constructor({type:t}){super("Unknown type.",{metaMessages:[`Type "${t}" is not a valid ABI type. Perhaps you forgot to include a struct signature?`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownTypeError"})}}class bi extends Z{constructor({type:t}){super("Unknown type.",{metaMessages:[`Type "${t}" is not a valid ABI type.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSolidityTypeError"})}}class hi extends Z{constructor({param:t}){super("Failed to parse ABI parameter.",{details:`parseAbiParameter(${JSON.stringify(t,null,2)})`,docsPath:"/api/human#parseabiparameter-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParameterError"})}}class gi extends Z{constructor({params:t}){super("Failed to parse ABI parameters.",{details:`parseAbiParameters(${JSON.stringify(t,null,2)})`,docsPath:"/api/human#parseabiparameters-1"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiParametersError"})}}class wi extends Z{constructor({param:t}){super("Invalid ABI parameter.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParameterError"})}}class vi extends Z{constructor({param:t,name:n}){super("Invalid ABI parameter.",{details:t,metaMessages:[`"${n}" is a protected Solidity keyword. More info: https://docs.soliditylang.org/en/latest/cheatsheet.html`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SolidityProtectedKeywordError"})}}class xi extends Z{constructor({param:t,type:n,modifier:r}){super("Invalid ABI parameter.",{details:t,metaMessages:[`Modifier "${r}" not allowed${n?` in "${n}" type`:""}.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidModifierError"})}}class Ei extends Z{constructor({param:t,type:n,modifier:r}){super("Invalid ABI parameter.",{details:t,metaMessages:[`Modifier "${r}" not allowed${n?` in "${n}" type`:""}.`,`Data location can only be specified for array, struct, or mapping types, but "${r}" was given.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidFunctionModifierError"})}}class Pi extends Z{constructor({abiParameter:t}){super("Invalid ABI parameter.",{details:JSON.stringify(t,null,2),metaMessages:["ABI parameter type is invalid."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiTypeParameterError"})}}class dt extends Z{constructor({signature:t,type:n}){super(`Invalid ${n} signature.`,{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSignatureError"})}}class Ai extends Z{constructor({signature:t}){super("Unknown signature.",{details:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownSignatureError"})}}class Ii extends Z{constructor({signature:t}){super("Invalid struct signature.",{details:t,metaMessages:["No properties exist."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStructSignatureError"})}}class Si extends Z{constructor({type:t}){super("Circular reference detected.",{metaMessages:[`Struct "${t}" is a circular reference.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CircularReferenceError"})}}class Ti extends Z{constructor({current:t,depth:n}){super("Unbalanced parentheses.",{metaMessages:[`"${t.trim()}" has too many ${n>0?"opening":"closing"} parentheses.`],details:`Depth "${n}"`}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParenthesisError"})}}function Bi(e,t){return t?`${t}:${e}`:e}const Bn=new Map([["address",{type:"address"}],["bool",{type:"bool"}],["bytes",{type:"bytes"}],["bytes32",{type:"bytes32"}],["int",{type:"int256"}],["int256",{type:"int256"}],["string",{type:"string"}],["uint",{type:"uint256"}],["uint8",{type:"uint8"}],["uint16",{type:"uint16"}],["uint24",{type:"uint24"}],["uint32",{type:"uint32"}],["uint64",{type:"uint64"}],["uint96",{type:"uint96"}],["uint112",{type:"uint112"}],["uint160",{type:"uint160"}],["uint192",{type:"uint192"}],["uint256",{type:"uint256"}],["address owner",{type:"address",name:"owner"}],["address to",{type:"address",name:"to"}],["bool approved",{type:"bool",name:"approved"}],["bytes _data",{type:"bytes",name:"_data"}],["bytes data",{type:"bytes",name:"data"}],["bytes signature",{type:"bytes",name:"signature"}],["bytes32 hash",{type:"bytes32",name:"hash"}],["bytes32 r",{type:"bytes32",name:"r"}],["bytes32 root",{type:"bytes32",name:"root"}],["bytes32 s",{type:"bytes32",name:"s"}],["string name",{type:"string",name:"name"}],["string symbol",{type:"string",name:"symbol"}],["string tokenURI",{type:"string",name:"tokenURI"}],["uint tokenId",{type:"uint256",name:"tokenId"}],["uint8 v",{type:"uint8",name:"v"}],["uint256 balance",{type:"uint256",name:"balance"}],["uint256 tokenId",{type:"uint256",name:"tokenId"}],["uint256 value",{type:"uint256",name:"value"}],["event:address indexed from",{type:"address",name:"from",indexed:!0}],["event:address indexed to",{type:"address",name:"to",indexed:!0}],["event:uint indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}],["event:uint256 indexed tokenId",{type:"uint256",name:"tokenId",indexed:!0}]]);function Vn(e,t={}){if(si(e)){const n=ai(e);if(!n)throw new dt({signature:e,type:"function"});const r=se(n.parameters),s=[],a=r.length;for(let i=0;i[a-zA-Z$_][a-zA-Z0-9$_]*)(?(?:\[\d*?\])+?)?(?:\s(?calldata|indexed|memory|storage{1}))?(?:\s(?[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,$i=/^\((?.+?)\)(?(?:\[\d*?\])+?)?(?:\s(?calldata|indexed|memory|storage{1}))?(?:\s(?[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ci=/^u?int$/;function de(e,t){var d,f;const n=Bi(e,t==null?void 0:t.type);if(Bn.has(n))return Bn.get(n);const r=Hs.test(e),s=ke(r?$i:ki,e);if(!s)throw new wi({param:e});if(s.name&&Ri(s.name))throw new vi({param:e,name:s.name});const a=s.name?{name:s.name}:{},o=s.modifier==="indexed"?{indexed:!0}:{},i=(t==null?void 0:t.structs)??{};let c,u={};if(r){c="tuple";const y=se(s.type),m=[],p=y.length;for(let h=0;h[a-zA-Z$_][a-zA-Z0-9$_]*)(?(?:\[\d*?\])+?)?$/;function Xs(e,t,n=new Set){const r=[],s=e.length;for(let a=0;a{var s,a;return((s=e[t.name])==null?void 0:s.call(e,r))??((a=e[n])==null?void 0:a.call(e,r))??t(e,r)}}function pe(e,{includeName:t=!1}={}){if(e.type!=="function"&&e.type!=="event"&&e.type!=="error")throw new Vi(e.type);return`${e.name}(${dn(e.inputs,{includeName:t})})`}function dn(e,{includeName:t=!1}={}){return e?e.map(n=>Mi(n,{includeName:t})).join(t?", ":","):""}function Mi(e,{includeName:t}){return e.type.startsWith("tuple")?`(${dn(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:"")}class Qs extends T{constructor({docsPath:t}){super(["A constructor was not found on the ABI.","Make sure you are using the correct ABI and that the constructor exists on it."].join(` +`),{docsPath:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiConstructorNotFoundError"})}}class Qt extends T{constructor({docsPath:t}){super(["Constructor arguments were provided (`args`), but a constructor parameters (`inputs`) were not found on the ABI.","Make sure you are using the correct ABI, and that the `inputs` attribute on the constructor exists."].join(` +`),{docsPath:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiConstructorParamsNotFoundError"})}}class hf extends T{constructor({data:t,size:n}){super([`Data size of ${n} bytes is invalid.`,"Size must be in increments of 32 bytes (size % 32 === 0)."].join(` +`),{metaMessages:[`Data: ${t} (${n} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiDecodingDataSizeInvalidError"})}}class ea extends T{constructor({data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for given parameters.`].join(` +`),{metaMessages:[`Params: (${dn(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiDecodingDataSizeTooSmallError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t,this.params=n,this.size=r}}class ln extends T{constructor(){super('Cannot decode zero data ("0x") with ABI parameters.'),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiDecodingZeroDataError"})}}class qi extends T{constructor({expectedLength:t,givenLength:n,type:r}){super([`ABI encoding array length mismatch for type ${r}.`,`Expected length: ${t}`,`Given length: ${n}`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEncodingArrayLengthMismatchError"})}}class ji extends T{constructor({expectedSize:t,value:n}){super(`Size of bytes "${n}" (bytes${X(n)}) does not match expected size (bytes${t}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEncodingBytesSizeMismatchError"})}}class ta extends T{constructor({expectedLength:t,givenLength:n}){super(["ABI encoding params/values length mismatch.",`Expected length (params): ${t}`,`Given length (values): ${n}`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEncodingLengthMismatchError"})}}class Fi extends T{constructor(t,{docsPath:n}){super([`Arguments (\`args\`) were provided to "${t}", but "${t}" on the ABI does not contain any parameters (\`inputs\`).`,"Cannot encode error result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the inputs exist on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiErrorInputsNotFoundError"})}}class ls extends T{constructor(t,{docsPath:n}={}){super([`Error ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiErrorNotFoundError"})}}class na extends T{constructor(t,{docsPath:n}){super([`Encoded error signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${t}.`].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiErrorSignatureNotFoundError"}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=t}}class Li extends T{constructor({docsPath:t}){super("Cannot extract event signature from empty topics.",{docsPath:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEventSignatureEmptyTopicsError"})}}class ra extends T{constructor(t,{docsPath:n}){super([`Encoded event signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${t}.`].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEventSignatureNotFoundError"})}}class fs extends T{constructor(t,{docsPath:n}={}){super([`Event ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the event exists on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiEventNotFoundError"})}}class Ye extends T{constructor(t,{docsPath:n}={}){super([`Function ${t?`"${t}" `:""}not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiFunctionNotFoundError"})}}class sa extends T{constructor(t,{docsPath:n}){super([`Function "${t}" does not contain any \`outputs\` on ABI.`,"Cannot decode function result without knowing what the parameter types are.","Make sure you are using the correct ABI and that the function exists on it."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiFunctionOutputsNotFoundError"})}}class Ui extends T{constructor(t,{docsPath:n}){super([`Encoded function signature "${t}" not found on ABI.`,"Make sure you are using the correct ABI and that the function exists on it.",`You can look up the signature here: https://openchain.xyz/signatures?query=${t}.`].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiFunctionSignatureNotFoundError"})}}class zi extends T{constructor(t,n){super("Found ambiguous types in overloaded ABI items.",{metaMessages:[`\`${t.type}\` in \`${pe(t.abiItem)}\`, and`,`\`${n.type}\` in \`${pe(n.abiItem)}\``,"","These types encode differently and cannot be distinguished at runtime.","Remove one of the ambiguous items in the ABI."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AbiItemAmbiguityError"})}}class aa extends T{constructor({expectedSize:t,givenSize:n}){super(`Expected bytes${t}, got bytes${n}.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BytesSizeMismatchError"})}}class lt extends T{constructor({abiItem:t,data:n,params:r,size:s}){super([`Data size of ${s} bytes is too small for non-indexed event parameters.`].join(` +`),{metaMessages:[`Params: (${dn(r,{includeName:!0})})`,`Data: ${n} (${s} bytes)`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"DecodeLogDataMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"params",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"size",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t,this.data=n,this.params=r,this.size=s}}class fn extends T{constructor({abiItem:t,param:n}){super([`Expected a topic for indexed event parameter${n.name?` "${n.name}"`:""} on event "${pe(t,{includeName:!0})}".`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"DecodeLogTopicsMismatch"}),Object.defineProperty(this,"abiItem",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=t}}class Di extends T{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid encoding type.`,"Please provide a valid ABI type."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiEncodingType"})}}class Gi extends T{constructor(t,{docsPath:n}){super([`Type "${t}" is not a valid decoding type.`,"Please provide a valid ABI type."].join(` +`),{docsPath:n}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAbiDecodingType"})}}class Hi extends T{constructor(t){super([`Value "${t}" is not a valid array.`].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidArrayError"})}}class Vi extends T{constructor(t){super([`"${t}" is not a valid definition type.`,'Valid types: "function", "event", "error"'].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidDefinitionTypeError"})}}class Zi extends T{constructor(t){super(`Type "${t}" is not supported for packed encoding.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnsupportedPackedAbiType"})}}class Wi extends T{constructor(t){super(`Filter type "${t}" is not supported.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"FilterTypeNotSupportedError"})}}const Ki=e=>H(ae(e));function Yi(e){return Ki(e)}function Ji(e){let t=!0,n="",r=0,s="",a=!1;for(let o=0;o{const t=(()=>typeof e=="string"?e:Qo(e))();return Ji(t)};function oa(e){return Yi(Xi(e))}const lr=oa;function $e(e,t){if(e.length!==t.length)throw new ta({expectedLength:e.length,givenLength:t.length});const n=Qi({params:e,values:t}),r=pr(n);return r.length===0?"0x":r}function Qi({params:e,values:t}){const n=[];for(let r=0;r0?fe([i,o]):i}}if(s)return{dynamic:!0,encoded:o}}return{dynamic:!1,encoded:fe(a.map(({encoded:o})=>o))}}function nc(e,{param:t}){const[,n]=t.type.split("bytes"),r=X(e);if(!n){let s=e;return r%32!==0&&(s=be(s,{dir:"right",size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:fe([be(O(r,{size:32})),s])}}if(r!==Number.parseInt(n))throw new ji({expectedSize:Number.parseInt(n),value:e});return{dynamic:!1,encoded:be(e,{dir:"right"})}}function rc(e){if(typeof e!="boolean")throw new T(`Invalid boolean value: "${e}" (type: ${typeof e}). Expected: \`true\` or \`false\`.`);return{dynamic:!1,encoded:be(_s(e))}}function sc(e,{signed:t}){return{dynamic:!1,encoded:O(e,{size:32,signed:t})}}function ac(e){const t=ir(e),n=Math.ceil(X(t)/32),r=[];for(let s=0;ss))}}function mr(e){const t=e.match(/^(.*)\[(\d+)?\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}const Nt=e=>Fe(oa(e),0,4);function Ge(e){const{abi:t,args:n=[],name:r}=e,s=R(r,{strict:!1}),a=t.filter(i=>s?i.type==="function"?Nt(i)===r:i.type==="event"?lr(i)===r:!1:"name"in i&&i.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(const i of a){if(!("inputs"in i))continue;if(!n||n.length===0){if(!i.inputs||i.inputs.length===0)return i;continue}if(!i.inputs||i.inputs.length===0||i.inputs.length!==n.length)continue;if(n.every((u,l)=>{const d="inputs"in i&&i.inputs[l];return d?Zn(u,d):!1})){if(o&&"inputs"in o&&o.inputs){const u=ia(i.inputs,o.inputs,n);if(u)throw new zi({abiItem:i,type:u[0]},{abiItem:o,type:u[1]})}o=i}}return o||a[0]}function Zn(e,t){const n=typeof e,r=t.type;switch(r){case"address":return ie(e,{strict:!1});case"bool":return n==="boolean";case"function":return n==="string";case"string":return n==="string";default:return r==="tuple"&&"components"in t?Object.values(t.components).every((s,a)=>Zn(Object.values(e)[a],s)):/^u?int(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/.test(r)?n==="number"||n==="bigint":/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/.test(r)?n==="string"||e instanceof Uint8Array:/[a-z]+[1-9]{0,3}(\[[0-9]{0,}\])+$/.test(r)?Array.isArray(e)&&e.every(s=>Zn(s,{...t,type:r.replace(/(\[[0-9]{0,}\])$/,"")})):!1}}function ia(e,t,n){for(const r in e){const s=e[r],a=t[r];if(s.type==="tuple"&&a.type==="tuple"&&"components"in s&&"components"in a)return ia(s.components,a.components,n[r]);const o=[s.type,a.type];if((()=>o.includes("address")&&o.includes("bytes20")?!0:o.includes("address")&&o.includes("string")?ie(n[r],{strict:!1}):o.includes("address")&&o.includes("bytes")?ie(n[r],{strict:!1}):!1)())return o}}const ps="/docs/contract/encodeEventTopics";function _t(e){var c;const{abi:t,eventName:n,args:r}=e;let s=t[0];if(n){const u=Ge({abi:t,name:n});if(!u)throw new fs(n,{docsPath:ps});s=u}if(s.type!=="event")throw new fs(void 0,{docsPath:ps});const a=pe(s),o=lr(a);let i=[];if(r&&"inputs"in s){const u=(c=s.inputs)==null?void 0:c.filter(d=>"indexed"in d&&d.indexed),l=Array.isArray(r)?r:Object.values(r).length>0?(u==null?void 0:u.map(d=>r[d.name]))??[]:[];l.length>0&&(i=(u==null?void 0:u.map((d,f)=>Array.isArray(l[f])?l[f].map((y,m)=>ms({param:d,value:l[f][m]})):l[f]?ms({param:d,value:l[f]}):null))??[])}return[o,...i]}function ms({param:e,value:t}){if(e.type==="string"||e.type==="bytes")return H(ae(t));if(e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/))throw new Wi(e.type);return $e([e],[t])}function pn(e,{method:t}){var r,s;const n={};return e.transport.type==="fallback"&&((s=(r=e.transport).onResponse)==null||s.call(r,({method:a,response:o,status:i,transport:c})=>{i==="success"&&t===a&&(n[o]=c.request)})),a=>n[a]||e.request}async function yr(e,t){const{address:n,abi:r,args:s,eventName:a,fromBlock:o,strict:i,toBlock:c}=t,u=pn(e,{method:"eth_newFilter"}),l=a?_t({abi:r,args:s,eventName:a}):void 0,d=await e.request({method:"eth_newFilter",params:[{address:n,fromBlock:typeof o=="bigint"?O(o):o,toBlock:typeof c=="bigint"?O(c):c,topics:l}]});return{abi:r,args:s,eventName:a,id:d,request:u(d),strict:!!i,type:"event"}}function ce(e){return typeof e=="string"?{address:e,type:"json-rpc"}:e}const ys="/docs/contract/encodeFunctionData";function ic(e){const{abi:t,args:n,functionName:r}=e;let s=t[0];if(r){const a=Ge({abi:t,args:n,name:r});if(!a)throw new Ye(r,{docsPath:ys});s=a}if(s.type!=="function")throw new Ye(void 0,{docsPath:ys});return{abi:[s],functionName:Nt(pe(s))}}function Ce(e){const{args:t}=e,{abi:n,functionName:r}=(()=>{var i;return e.abi.length===1&&((i=e.functionName)!=null&&i.startsWith("0x"))?e:ic(e)})(),s=n[0],a=r,o="inputs"in s&&s.inputs?$e(s.inputs,t??[]):void 0;return Ct([a,o??"0x"])}const ca={1:"An `assert` condition failed.",17:"Arithmetic operation resulted in underflow or overflow.",18:"Division or modulo by zero (e.g. `5 / 0` or `23 % 0`).",33:"Attempted to convert to an invalid type.",34:"Attempted to access a storage byte array that is incorrectly encoded.",49:"Performed `.pop()` on an empty array",50:"Array index is out of bounds.",65:"Allocated too much memory or created an array which is too large.",81:"Attempted to call a zero-initialized variable of internal function type."},cc={inputs:[{name:"message",type:"string"}],name:"Error",type:"error"},uc={inputs:[{name:"reason",type:"uint256"}],name:"Panic",type:"error"};function gf(e,t){const n=typeof t=="string"?{to:t}:t,r=n.to;return r==="number"?me(e,n):r==="bigint"?ua(e,n):r==="boolean"?da(e,n):r==="string"?la(e,n):K(e,n)}function ua(e,t={}){typeof t.size<"u"&&an(e,{size:t.size});const n=K(e,t);return j(n,t)}function da(e,t={}){let n=e;if(typeof t.size<"u"&&(an(n,{size:t.size}),n=kt(n)),n.length>1||n[0]>1)throw new go(n);return!!n[0]}function me(e,t={}){typeof t.size<"u"&&an(e,{size:t.size});const n=K(e,t);return Y(n,t)}function la(e,t={}){let n=e;return typeof t.size<"u"&&(an(n,{size:t.size}),n=kt(n,{dir:"right"})),new TextDecoder().decode(n)}function nt(e,t){const n=typeof t=="string"?$t(t):t,r=Yt(n);if(X(n)===0&&e.length>0)throw new ln;if(X(t)&&X(t)<32)throw new ea({data:typeof t=="string"?t:K(t),params:e,size:X(t)});let s=0;const a=[];for(let o=0;o48?ua(s,{signed:n}):me(s,{signed:n}),32]}function yc(e,t,{staticPosition:n}){const r=t.components.length===0||t.components.some(({name:o})=>!o),s=r?[]:{};let a=0;if(ft(t)){const o=me(e.readBytes(Wn)),i=n+o;for(let c=0;co.type==="error"&&r===Nt(pe(o)));if(!a)throw new na(r,{docsPath:"/docs/contract/decodeErrorResult"});return{abiItem:a,args:"inputs"in a&&a.inputs&&a.inputs.length>0?nt(a.inputs,Fe(n,4)):void 0,errorName:a.name}}const z=(e,t,n)=>JSON.stringify(e,(r,s)=>{const a=typeof s=="bigint"?s.toString():s;return typeof t=="function"?t(r,a):a},n);function pa({abiItem:e,args:t,includeFunctionName:n=!0,includeName:r=!1}){if("name"in e&&"inputs"in e&&e.inputs)return`${n?e.name:""}(${e.inputs.map((s,a)=>`${r&&s.name?`${s.name}: `:""}${typeof t[a]=="object"?z(t[a]):t[a]}`).join(", ")})`}class hc extends T{constructor({address:t}){super(`State for account "${t}" is set multiple times.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AccountStateConflictError"})}}class gc extends T{constructor(){super("state and stateDiff are set on the same account."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"StateAssignmentConflictError"})}}function hs(e){return e.reduce((t,{slot:n,value:r})=>`${t} ${n}: ${r} +`,"")}function wc(e){return e.reduce((t,{address:n,...r})=>{let s=`${t} ${n}: +`;return r.nonce&&(s+=` nonce: ${r.nonce} +`),r.balance&&(s+=` balance: ${r.balance} +`),r.code&&(s+=` code: ${r.code} +`),r.state&&(s+=` state: +`,s+=hs(r.state)),r.stateDiff&&(s+=` stateDiff: +`,s+=hs(r.stateDiff)),s},` State Override: +`).slice(0,-1)}class ma extends T{constructor(t,{account:n,docsPath:r,chain:s,data:a,gas:o,gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:l,to:d,value:f,stateOverride:y}){var h;const m=n?ce(n):void 0;let p=dr({from:m==null?void 0:m.address,to:d,value:typeof f<"u"&&`${Ms(f)} ${((h=s==null?void 0:s.nativeCurrency)==null?void 0:h.symbol)||"ETH"}`,data:a,gas:o,gasPrice:typeof i<"u"&&`${Me(i)} gwei`,maxFeePerGas:typeof c<"u"&&`${Me(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${Me(u)} gwei`,nonce:l});y&&(p+=` +${wc(y)}`),super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Raw Call Arguments:",p].filter(Boolean)}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"CallExecutionError"}),this.cause=t}}class vc extends T{constructor(t,{abi:n,args:r,contractAddress:s,docsPath:a,functionName:o,sender:i}){const c=Ge({abi:n,args:r,name:o}),u=c?pa({abiItem:c,args:r,includeFunctionName:!1,includeName:!1}):void 0,l=c?pe(c,{includeName:!0}):void 0,d=dr({address:s&&wo(s),function:l,args:u&&u!=="()"&&`${[...Array((o==null?void 0:o.length)??0).keys()].map(()=>" ").join("")}${u}`,sender:i});super(t.shortMessage||`An unknown error occurred while executing the contract function "${o}".`,{cause:t,docsPath:a,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Contract Call:",d].filter(Boolean)}),Object.defineProperty(this,"abi",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"args",{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,"contractAddress",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"formattedArgs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"functionName",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"sender",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ContractFunctionExecutionError"}),this.abi=n,this.args=r,this.cause=t,this.contractAddress=s,this.functionName=o,this.sender=i}}class Kn extends T{constructor({abi:t,data:n,functionName:r,message:s}){let a,o,i,c;if(n&&n!=="0x")try{o=fa({abi:t,data:n});const{abiItem:l,errorName:d,args:f}=o;if(d==="Error")c=f[0];else if(d==="Panic"){const[y]=f;c=ca[y]}else{const y=l?pe(l,{includeName:!0}):void 0,m=l&&f?pa({abiItem:l,args:f,includeFunctionName:!1,includeName:!1}):void 0;i=[y?`Error: ${y}`:"",m&&m!=="()"?` ${[...Array((d==null?void 0:d.length)??0).keys()].map(()=>" ").join("")}${m}`:""]}}catch(l){a=l}else s&&(c=s);let u;a instanceof na&&(u=a.signature,i=[`Unable to decode signature "${u}" as it was not found on the provided ABI.`,"Make sure you are using the correct ABI and that the error exists on it.",`You can look up the decoded signature here: https://openchain.xyz/signatures?query=${u}.`]),super(c&&c!=="execution reverted"||u?[`The contract function "${r}" reverted with the following ${u?"signature":"reason"}:`,c||u].join(` +`):`The contract function "${r}" reverted.`,{cause:a,metaMessages:i}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ContractFunctionRevertedError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"reason",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"signature",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=o,this.reason=c,this.signature=u}}class xc extends T{constructor({functionName:t}){super(`The contract function "${t}" returned no data ("0x").`,{metaMessages:["This could be due to any of the following:",` - The contract does not have the function "${t}",`," - The parameters passed to the contract function may be invalid, or"," - The address is not a contract."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ContractFunctionZeroDataError"})}}class br extends T{constructor({data:t,message:n}){super(n||""),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RawContractError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t}}class qe extends T{constructor({body:t,details:n,headers:r,status:s,url:a}){super("HTTP request failed.",{details:n,metaMessages:[s&&`Status: ${s}`,`URL: ${tt(a)}`,t&&`Request body: ${z(t)}`].filter(Boolean)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"HttpRequestError"}),Object.defineProperty(this,"body",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"headers",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"status",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"url",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.body=t,this.headers=r,this.status=s,this.url=a}}class Ec extends T{constructor({body:t,details:n,url:r}){super("WebSocket request failed.",{details:n,metaMessages:[`URL: ${tt(r)}`,`Request body: ${z(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WebSocketRequestError"})}}class hr extends T{constructor({body:t,error:n,url:r}){super("RPC Request failed.",{cause:n,details:n.message,metaMessages:[`URL: ${tt(r)}`,`Request body: ${z(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RpcRequestError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=n.code}}class Yn extends T{constructor({body:t,url:n}){super("The request took too long to respond.",{details:"The request timed out.",metaMessages:[`URL: ${tt(n)}`,`Request body: ${z(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TimeoutError"})}}const Pc=-1;class Q extends T{constructor(t,{code:n,docsPath:r,metaMessages:s,shortMessage:a}){super(a,{cause:t,docsPath:r,metaMessages:s||(t==null?void 0:t.metaMessages)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RpcError"}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=t.name,this.code=t instanceof hr?t.code:n??Pc}}class rt extends Q{constructor(t,n){super(t,n),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ProviderRpcError"}),Object.defineProperty(this,"data",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=n.data}}class pt extends Q{constructor(t){super(t,{code:pt.code,shortMessage:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ParseRpcError"})}}Object.defineProperty(pt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32700});class mt extends Q{constructor(t){super(t,{code:mt.code,shortMessage:"JSON is not a valid request object."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidRequestRpcError"})}}Object.defineProperty(mt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32600});class yt extends Q{constructor(t){super(t,{code:yt.code,shortMessage:"The method does not exist / is not available."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"MethodNotFoundRpcError"})}}Object.defineProperty(yt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32601});class bt extends Q{constructor(t){super(t,{code:bt.code,shortMessage:["Invalid parameters were provided to the RPC method.","Double check you have provided the correct parameters."].join(` +`)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidParamsRpcError"})}}Object.defineProperty(bt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32602});class ze extends Q{constructor(t){super(t,{code:ze.code,shortMessage:"An internal error was received."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InternalRpcError"})}}Object.defineProperty(ze,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32603});class De extends Q{constructor(t){super(t,{code:De.code,shortMessage:["Missing or invalid parameters.","Double check you have provided the correct parameters."].join(` +`)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidInputRpcError"})}}Object.defineProperty(De,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32e3});class ht extends Q{constructor(t){super(t,{code:ht.code,shortMessage:"Requested resource not found."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceNotFoundRpcError"})}}Object.defineProperty(ht,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32001});class gt extends Q{constructor(t){super(t,{code:gt.code,shortMessage:"Requested resource not available."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ResourceUnavailableRpcError"})}}Object.defineProperty(gt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32002});class Je extends Q{constructor(t){super(t,{code:Je.code,shortMessage:"Transaction creation failed."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TransactionRejectedRpcError"})}}Object.defineProperty(Je,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32003});class wt extends Q{constructor(t){super(t,{code:wt.code,shortMessage:"Method is not implemented."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"MethodNotSupportedRpcError"})}}Object.defineProperty(wt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32004});class Xe extends Q{constructor(t){super(t,{code:Xe.code,shortMessage:"Request exceeds defined limit."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"LimitExceededRpcError"})}}Object.defineProperty(Xe,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32005});class vt extends Q{constructor(t){super(t,{code:vt.code,shortMessage:"Version of JSON-RPC protocol is not supported."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"JsonRpcVersionUnsupportedError"})}}Object.defineProperty(vt,"code",{enumerable:!0,configurable:!0,writable:!0,value:-32006});class je extends rt{constructor(t){super(t,{code:je.code,shortMessage:"User rejected the request."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UserRejectedRequestError"})}}Object.defineProperty(je,"code",{enumerable:!0,configurable:!0,writable:!0,value:4001});class xt extends rt{constructor(t){super(t,{code:xt.code,shortMessage:"The requested method and/or account has not been authorized by the user."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnauthorizedProviderError"})}}Object.defineProperty(xt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4100});class Et extends rt{constructor(t){super(t,{code:Et.code,shortMessage:"The Provider does not support the requested method."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnsupportedProviderMethodError"})}}Object.defineProperty(Et,"code",{enumerable:!0,configurable:!0,writable:!0,value:4200});class Pt extends rt{constructor(t){super(t,{code:Pt.code,shortMessage:"The Provider is disconnected from all chains."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ProviderDisconnectedError"})}}Object.defineProperty(Pt,"code",{enumerable:!0,configurable:!0,writable:!0,value:4900});class At extends rt{constructor(t){super(t,{code:At.code,shortMessage:"The Provider is not connected to the requested chain."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ChainDisconnectedError"})}}Object.defineProperty(At,"code",{enumerable:!0,configurable:!0,writable:!0,value:4901});class It extends rt{constructor(t){super(t,{code:It.code,shortMessage:"An error occurred when attempting to switch chain."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SwitchChainError"})}}Object.defineProperty(It,"code",{enumerable:!0,configurable:!0,writable:!0,value:4902});class Ac extends Q{constructor(t){super(t,{shortMessage:"An unknown RPC error occurred."}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownRpcError"})}}const Ic=3;function St(e,{abi:t,address:n,args:r,docsPath:s,functionName:a,sender:o}){const{code:i,data:c,message:u,shortMessage:l}=e instanceof br?e:e instanceof T?e.walk(f=>"data"in f)||e.walk():{},d=(()=>e instanceof ln?new xc({functionName:a}):[Ic,ze.code].includes(i)&&(c||u||l)?new Kn({abi:t,data:typeof c=="object"?c.data:c,functionName:a,message:l??u}):e)();return new vc(d,{abi:t,args:r,contractAddress:n,docsPath:s,functionName:a,sender:o})}class Sc extends T{constructor(t,{account:n,docsPath:r,chain:s,data:a,gas:o,gasPrice:i,maxFeePerGas:c,maxPriorityFeePerGas:u,nonce:l,to:d,value:f}){var m;const y=dr({from:n==null?void 0:n.address,to:d,value:typeof f<"u"&&`${Ms(f)} ${((m=s==null?void 0:s.nativeCurrency)==null?void 0:m.symbol)||"ETH"}`,data:a,gas:o,gasPrice:typeof i<"u"&&`${Me(i)} gwei`,maxFeePerGas:typeof c<"u"&&`${Me(c)} gwei`,maxPriorityFeePerGas:typeof u<"u"&&`${Me(u)} gwei`,nonce:l});super(t.shortMessage,{cause:t,docsPath:r,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Estimate Gas Arguments:",y].filter(Boolean)}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EstimateGasExecutionError"}),this.cause=t}}function gr(e,t){const n=(e.details||"").toLowerCase(),r=e instanceof T?e.walk(s=>s.code===Ut.code):e;return r instanceof T?new Ut({cause:e,message:r.details}):Ut.nodeMessage.test(n)?new Ut({cause:e,message:e.details}):Un.nodeMessage.test(n)?new Un({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):es.nodeMessage.test(n)?new es({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas}):ts.nodeMessage.test(n)?new ts({cause:e,nonce:t==null?void 0:t.nonce}):ns.nodeMessage.test(n)?new ns({cause:e,nonce:t==null?void 0:t.nonce}):rs.nodeMessage.test(n)?new rs({cause:e,nonce:t==null?void 0:t.nonce}):ss.nodeMessage.test(n)?new ss({cause:e}):as.nodeMessage.test(n)?new as({cause:e,gas:t==null?void 0:t.gas}):os.nodeMessage.test(n)?new os({cause:e,gas:t==null?void 0:t.gas}):is.nodeMessage.test(n)?new is({cause:e}):zn.nodeMessage.test(n)?new zn({cause:e,maxFeePerGas:t==null?void 0:t.maxFeePerGas,maxPriorityFeePerGas:t==null?void 0:t.maxPriorityFeePerGas}):new on({cause:e})}function Tc(e,{docsPath:t,...n}){const r=(()=>{const s=gr(e,n);return s instanceof on?e:s})();return new Sc(r,{docsPath:t,...n})}function mn(e,{format:t}){if(!t)return{};const n={};function r(a){const o=Object.keys(a);for(const i of o)i in e&&(n[i]=e[i]),a[i]&&typeof a[i]=="object"&&!Array.isArray(a[i])&&r(a[i])}const s=t(e||{});return r(s),n}function gs(e){if(!(!e||e.length===0))return e.reduce((t,{slot:n,value:r})=>{if(n.length!==66)throw new Qr({size:n.length,targetSize:66,type:"hex"});if(r.length!==66)throw new Qr({size:r.length,targetSize:66,type:"hex"});return t[n]=r,t},{})}function Bc(e){const{balance:t,nonce:n,state:r,stateDiff:s,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=O(t)),n!==void 0&&(o.nonce=O(n)),r!==void 0&&(o.state=gs(r)),s!==void 0){if(o.state)throw new gc;o.stateDiff=gs(s)}return o}function ya(e){if(!e)return;const t={};for(const{address:n,...r}of e){if(!ie(n,{strict:!1}))throw new he({address:n});if(t[n])throw new hc({address:n});t[n]=Bc(r)}return t}function Mt(e){const{account:t,gasPrice:n,maxFeePerGas:r,maxPriorityFeePerGas:s,to:a}=e,o=t?ce(t):void 0;if(o&&!ie(o.address))throw new he({address:o.address});if(a&&!ie(a))throw new he({address:a});if(typeof n<"u"&&(typeof r<"u"||typeof s<"u"))throw new Ao;if(r&&r>2n**256n-1n)throw new Un({maxFeePerGas:r});if(s&&r&&s>r)throw new zn({maxFeePerGas:r,maxPriorityFeePerGas:s})}class kc extends T{constructor(){super("`baseFeeMultiplier` must be greater than 1."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseFeeScalarError"})}}class wr extends T{constructor(){super("Chain does not support EIP-1559 fees."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Eip1559FeesNotSupportedError"})}}class $c extends T{constructor({maxPriorityFeePerGas:t}){super(`\`maxFeePerGas\` cannot be less than the \`maxPriorityFeePerGas\` (${Me(t)} gwei).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"MaxFeePerGasTooLowError"})}}class ba extends T{constructor({blockHash:t,blockNumber:n}){let r="Block";t&&(r=`Block at hash "${t}"`),n&&(r=`Block at number "${n}"`),super(`${r} could not be found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BlockNotFoundError"})}}async function Ie(e,{blockHash:t,blockNumber:n,blockTag:r,includeTransactions:s}={}){var l,d,f;const a=r??"latest",o=s??!1,i=n!==void 0?O(n):void 0;let c=null;if(t?c=await e.request({method:"eth_getBlockByHash",params:[t,o]}):c=await e.request({method:"eth_getBlockByNumber",params:[i||a,o]}),!c)throw new ba({blockHash:t,blockNumber:n});return(((f=(d=(l=e.chain)==null?void 0:l.formatters)==null?void 0:d.block)==null?void 0:f.format)||qs)(c)}async function vr(e){const t=await e.request({method:"eth_gasPrice"});return BigInt(t)}async function Cc(e,t){return ha(e,t)}async function ha(e,t){var a,o,i;const{block:n,chain:r=e.chain,request:s}=t||{};if(typeof((a=r==null?void 0:r.fees)==null?void 0:a.defaultPriorityFee)=="function"){const c=n||await $(e,Ie,"getBlock")({});return r.fees.defaultPriorityFee({block:c,client:e,request:s})}if(typeof((o=r==null?void 0:r.fees)==null?void 0:o.defaultPriorityFee)<"u")return(i=r==null?void 0:r.fees)==null?void 0:i.defaultPriorityFee;try{const c=await e.request({method:"eth_maxPriorityFeePerGas"});return j(c)}catch{const[c,u]=await Promise.all([n?Promise.resolve(n):$(e,Ie,"getBlock")({}),$(e,vr,"getGasPrice")({})]);if(typeof c.baseFeePerGas!="bigint")throw new wr;const l=u-c.baseFeePerGas;return l<0n?0n:l}}async function Oc(e,t){return Jn(e,t)}async function Jn(e,t){var f,y;const{block:n,chain:r=e.chain,request:s,type:a="eip1559"}=t||{},o=await(async()=>{var m,p;return typeof((m=r==null?void 0:r.fees)==null?void 0:m.baseFeeMultiplier)=="function"?r.fees.baseFeeMultiplier({block:n,client:e,request:s}):((p=r==null?void 0:r.fees)==null?void 0:p.baseFeeMultiplier)??1.2})();if(o<1)throw new kc;const c=10**(((f=o.toString().split(".")[1])==null?void 0:f.length)??0),u=m=>m*BigInt(Math.ceil(o*c))/BigInt(c),l=n||await $(e,Ie,"getBlock")({});if(typeof((y=r==null?void 0:r.fees)==null?void 0:y.estimateFeesPerGas)=="function"){const m=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:u,request:s,type:a});if(m!==null)return m}if(a==="eip1559"){if(typeof l.baseFeePerGas!="bigint")throw new wr;const m=typeof(s==null?void 0:s.maxPriorityFeePerGas)=="bigint"?s.maxPriorityFeePerGas:await ha(e,{block:l,chain:r,request:s}),p=u(l.baseFeePerGas);return{maxFeePerGas:(s==null?void 0:s.maxFeePerGas)??p+m,maxPriorityFeePerGas:m}}return{gasPrice:(s==null?void 0:s.gasPrice)??u(await $(e,vr,"getGasPrice")({}))}}async function ga(e,{address:t,blockTag:n="latest",blockNumber:r}){const s=await e.request({method:"eth_getTransactionCount",params:[t,r?O(r):n]});return Y(s)}async function qt(e){const t=await e.request({method:"eth_chainId"});return Y(t)}const wa=["blobVersionedHashes","chainId","fees","gas","nonce","type"];async function yn(e,t){const{account:n=e.account,blobs:r,chain:s,chainId:a,gas:o,kzg:i,nonce:c,parameters:u=wa,type:l}=t,d=n?ce(n):void 0,f={...t,...d?{from:d==null?void 0:d.address}:{}};let y;async function m(){return y||(y=await $(e,Ie,"getBlock")({blockTag:"latest"}),y)}if((u.includes("blobVersionedHashes")||u.includes("sidecars"))&&r&&i){const p=Io({blobs:r,kzg:i});if(u.includes("blobVersionedHashes")){const h=So({commitments:p,to:"hex"});f.blobVersionedHashes=h}if(u.includes("sidecars")){const h=To({blobs:r,commitments:p,kzg:i}),b=js({blobs:r,commitments:p,proofs:h,to:"hex"});f.sidecars=b}}if(u.includes("chainId")&&(s?f.chainId=s.id:typeof a<"u"?f.chainId=a:f.chainId=await $(e,qt,"getChainId")({})),u.includes("nonce")&&typeof c>"u"&&d&&(f.nonce=await $(e,ga,"getTransactionCount")({address:d.address,blockTag:"pending"})),(u.includes("fees")||u.includes("type"))&&typeof l>"u")try{f.type=Bo(f)}catch{const p=await m();f.type=typeof(p==null?void 0:p.baseFeePerGas)=="bigint"?"eip1559":"legacy"}if(u.includes("fees"))if(f.type!=="legacy"&&f.type!=="eip2930"){if(typeof f.maxFeePerGas>"u"||typeof f.maxPriorityFeePerGas>"u"){const p=await m(),{maxFeePerGas:h,maxPriorityFeePerGas:b}=await Jn(e,{block:p,chain:s,request:f});if(typeof t.maxPriorityFeePerGas>"u"&&t.maxFeePerGas&&t.maxFeePerGas"u"&&(f.gas=await $(e,xr,"estimateGas")({...f,account:d?{address:d.address,type:"json-rpc"}:void 0})),Mt(f),delete f.parameters,f}async function xr(e,t){var s,a,o;const n=t.account??e.account,r=n?ce(n):void 0;try{const{accessList:i,blobs:c,blobVersionedHashes:u,blockNumber:l,blockTag:d,data:f,gas:y,gasPrice:m,maxFeePerBlobGas:p,maxFeePerGas:h,maxPriorityFeePerGas:b,nonce:g,to:w,value:v,stateOverride:E,...x}=await yn(e,{...t,parameters:(r==null?void 0:r.type)==="local"?void 0:["blobVersionedHashes"]}),A=(l?O(l):void 0)||d,S=ya(E);Mt(t);const k=(o=(a=(s=e.chain)==null?void 0:s.formatters)==null?void 0:a.transactionRequest)==null?void 0:o.format,M=(k||Ot)({...mn(x,{format:k}),from:r==null?void 0:r.address,accessList:i,blobs:c,blobVersionedHashes:u,data:f,gas:y,gasPrice:m,maxFeePerBlobGas:p,maxFeePerGas:h,maxPriorityFeePerGas:b,nonce:g,to:w,value:v}),_=await e.request({method:"eth_estimateGas",params:S?[M,A??"latest",S]:A?[M,A]:[M]});return BigInt(_)}catch(i){throw Tc(i,{...t,account:r,chain:e.chain})}}async function va(e,t){const{abi:n,address:r,args:s,functionName:a,...o}=t,i=Ce({abi:n,args:s,functionName:a});try{return await $(e,xr,"estimateGas")({data:i,to:r,...o})}catch(c){const u=o.account?ce(o.account):void 0;throw St(c,{abi:n,address:r,args:s,docsPath:"/docs/contract/estimateContractGas",functionName:a,sender:u==null?void 0:u.address})}}const ws="/docs/contract/decodeEventLog";function Er(e){const{abi:t,data:n,strict:r,topics:s}=e,a=r??!0,[o,...i]=s;if(!o)throw new Li({docsPath:ws});const c=t.find(p=>p.type==="event"&&o===lr(pe(p)));if(!(c&&"name"in c)||c.type!=="event")throw new ra(o,{docsPath:ws});const{name:u,inputs:l}=c,d=l==null?void 0:l.some(p=>!("name"in p&&p.name));let f=d?[]:{};const y=l.filter(p=>"indexed"in p&&p.indexed);for(let p=0;p!("indexed"in p&&p.indexed));if(m.length>0){if(n&&n!=="0x")try{const p=nt(m,n);if(p)if(d)f=[...f,...p];else for(let h=0;h0?f:void 0}}function Rc({param:e,value:t}){return e.type==="string"||e.type==="bytes"||e.type==="tuple"||e.type.match(/^(.*)\[(\d+)?\]$/)?t:(nt([e],t)||[])[0]}function Pr({abi:e,eventName:t,logs:n,strict:r=!0}){return n.map(s=>{var a;try{const o=Er({...s,abi:e,strict:r});return t&&!t.includes(o.eventName)?null:{...o,...s}}catch(o){let i,c;if(o instanceof ra)return null;if(o instanceof lt||o instanceof fn){if(r)return null;i=o.abiItem.name,c=(a=o.abiItem.inputs)==null?void 0:a.some(u=>!("name"in u&&u.name))}return{...s,args:c?[]:{},eventName:i}}}).filter(Boolean)}async function Ar(e,{address:t,blockHash:n,fromBlock:r,toBlock:s,event:a,events:o,args:i,strict:c}={}){const u=c??!1,l=o??(a?[a]:void 0);let d=[];l&&(d=[l.flatMap(m=>_t({abi:[m],eventName:m.name,args:i}))],a&&(d=d[0]));let f;n?f=await e.request({method:"eth_getLogs",params:[{address:t,topics:d,blockHash:n}]}):f=await e.request({method:"eth_getLogs",params:[{address:t,topics:d,fromBlock:typeof r=="bigint"?O(r):r,toBlock:typeof s=="bigint"?O(s):s}]});const y=f.map(m=>Le(m));return l?Pr({abi:l,logs:y,strict:u}):y}async function Ir(e,t){const{abi:n,address:r,args:s,blockHash:a,eventName:o,fromBlock:i,toBlock:c,strict:u}=t,l=o?Ge({abi:n,name:o}):void 0,d=l?void 0:n.filter(f=>f.type==="event");return $(e,Ar,"getLogs")({address:r,args:s,blockHash:a,event:l,events:d,fromBlock:i,toBlock:c,strict:u})}const kn="/docs/contract/decodeFunctionResult";function st(e){const{abi:t,args:n,functionName:r,data:s}=e;let a=t[0];if(r){const i=Ge({abi:t,args:n,name:r});if(!i)throw new Ye(r,{docsPath:kn});a=i}if(a.type!=="function")throw new Ye(void 0,{docsPath:kn});if(!a.outputs)throw new sa(a.name,{docsPath:kn});const o=nt(a.outputs,s);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}const Xn=[{inputs:[{components:[{name:"target",type:"address"},{name:"allowFailure",type:"bool"},{name:"callData",type:"bytes"}],name:"calls",type:"tuple[]"}],name:"aggregate3",outputs:[{components:[{name:"success",type:"bool"},{name:"returnData",type:"bytes"}],name:"returnData",type:"tuple[]"}],stateMutability:"view",type:"function"}],xa=[{inputs:[],name:"ResolverNotFound",type:"error"},{inputs:[],name:"ResolverWildcardNotSupported",type:"error"},{inputs:[],name:"ResolverNotContract",type:"error"},{inputs:[{name:"returnData",type:"bytes"}],name:"ResolverError",type:"error"},{inputs:[{components:[{name:"status",type:"uint16"},{name:"message",type:"string"}],name:"errors",type:"tuple[]"}],name:"HttpError",type:"error"}],Ea=[...xa,{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]},{name:"resolve",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes"},{name:"data",type:"bytes"},{name:"gateways",type:"string[]"}],outputs:[{name:"",type:"bytes"},{name:"address",type:"address"}]}],Nc=[...xa,{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]},{name:"reverse",type:"function",stateMutability:"view",inputs:[{type:"bytes",name:"reverseName"},{type:"string[]",name:"gateways"}],outputs:[{type:"string",name:"resolvedName"},{type:"address",name:"resolvedAddress"},{type:"address",name:"reverseResolver"},{type:"address",name:"resolver"}]}],vs=[{name:"text",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"key",type:"string"}],outputs:[{name:"",type:"string"}]}],xs=[{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"}],outputs:[{name:"",type:"address"}]},{name:"addr",type:"function",stateMutability:"view",inputs:[{name:"name",type:"bytes32"},{name:"coinType",type:"uint256"}],outputs:[{name:"",type:"bytes"}]}],_c=[{inputs:[{internalType:"address",name:"_signer",type:"address"},{internalType:"bytes32",name:"_hash",type:"bytes32"},{internalType:"bytes",name:"_signature",type:"bytes"}],stateMutability:"nonpayable",type:"constructor"}],wf=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],vf=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}]},{type:"function",name:"allowance",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"approve",stateMutability:"nonpayable",inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"decimals",stateMutability:"view",inputs:[],outputs:[{type:"uint8"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"bytes32"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transfer",stateMutability:"nonpayable",inputs:[{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]},{type:"function",name:"transferFrom",stateMutability:"nonpayable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"amount",type:"uint256"}],outputs:[{type:"bool"}]}],xf=[{type:"event",name:"Approval",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!0,name:"tokenId",type:"uint256"}]},{type:"event",name:"ApprovalForAll",inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"operator",type:"address"},{indexed:!1,name:"approved",type:"bool"}]},{type:"event",name:"Transfer",inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!0,name:"tokenId",type:"uint256"}]},{type:"function",name:"approve",stateMutability:"payable",inputs:[{name:"spender",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]},{type:"function",name:"balanceOf",stateMutability:"view",inputs:[{name:"account",type:"address"}],outputs:[{type:"uint256"}]},{type:"function",name:"getApproved",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{type:"address"}]},{type:"function",name:"isApprovedForAll",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"operator",type:"address"}],outputs:[{type:"bool"}]},{type:"function",name:"name",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"ownerOf",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"owner",type:"address"}]},{type:"function",name:"safeTransferFrom",stateMutability:"payable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"tokenId",type:"uint256"}],outputs:[]},{type:"function",name:"safeTransferFrom",stateMutability:"nonpayable",inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"id",type:"uint256"},{name:"data",type:"bytes"}],outputs:[]},{type:"function",name:"setApprovalForAll",stateMutability:"nonpayable",inputs:[{name:"operator",type:"address"},{name:"approved",type:"bool"}],outputs:[]},{type:"function",name:"symbol",stateMutability:"view",inputs:[],outputs:[{type:"string"}]},{type:"function",name:"tokenByIndex",stateMutability:"view",inputs:[{name:"index",type:"uint256"}],outputs:[{type:"uint256"}]},{type:"function",name:"tokenByIndex",stateMutability:"view",inputs:[{name:"owner",type:"address"},{name:"index",type:"uint256"}],outputs:[{name:"tokenId",type:"uint256"}]},{type:"function",name:"tokenURI",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{type:"string"}]},{type:"function",name:"totalSupply",stateMutability:"view",inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"transferFrom",stateMutability:"payable",inputs:[{name:"sender",type:"address"},{name:"recipient",type:"address"},{name:"tokeId",type:"uint256"}],outputs:[]}],Ef=[{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"receiver",type:"address"},{indexed:!1,name:"assets",type:"uint256"},{indexed:!1,name:"shares",type:"uint256"}],name:"Deposit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"sender",type:"address"},{indexed:!0,name:"receiver",type:"address"},{indexed:!0,name:"owner",type:"address"},{indexed:!1,name:"assets",type:"uint256"},{indexed:!1,name:"shares",type:"uint256"}],name:"Withdraw",type:"event"},{inputs:[{name:"owner",type:"address"},{name:"spender",type:"address"}],name:"allowance",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"spender",type:"address"},{name:"amount",type:"uint256"}],name:"approve",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"asset",outputs:[{name:"assetTokenAddress",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{name:"account",type:"address"}],name:"balanceOf",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"convertToAssets",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"convertToShares",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"},{name:"receiver",type:"address"}],name:"deposit",outputs:[{name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"caller",type:"address"}],name:"maxDeposit",outputs:[{name:"maxAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"caller",type:"address"}],name:"maxMint",outputs:[{name:"maxShares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"maxRedeem",outputs:[{name:"maxShares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"owner",type:"address"}],name:"maxWithdraw",outputs:[{name:"maxAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"},{name:"receiver",type:"address"}],name:"mint",outputs:[{name:"assets",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"previewDeposit",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"previewMint",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"}],name:"previewRedeem",outputs:[{name:"assets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"assets",type:"uint256"}],name:"previewWithdraw",outputs:[{name:"shares",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"shares",type:"uint256"},{name:"receiver",type:"address"},{name:"owner",type:"address"}],name:"redeem",outputs:[{name:"assets",type:"uint256"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"totalAssets",outputs:[{name:"totalManagedAssets",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{name:"to",type:"address"},{name:"amount",type:"uint256"}],name:"transfer",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{name:"assets",type:"uint256"},{name:"receiver",type:"address"},{name:"owner",type:"address"}],name:"withdraw",outputs:[{name:"shares",type:"uint256"}],stateMutability:"nonpayable",type:"function"}],Mc="0x82ad56cb";function at({blockNumber:e,chain:t,contract:n}){var s;const r=(s=t==null?void 0:t.contracts)==null?void 0:s[n];if(!r)throw new Dn({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Dn({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}function qc(e,{docsPath:t,...n}){const r=(()=>{const s=gr(e,n);return s instanceof on?e:s})();return new ma(r,{docsPath:t,...n})}const $n=new Map;function Sr({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:s}){const a=async()=>{const l=c();o();const d=l.map(({args:f})=>f);d.length!==0&&e(d).then(f=>{var y;s&&Array.isArray(f)&&f.sort(s);for(let m=0;m{var y;for(let m=0;m$n.delete(t),i=()=>c().map(({args:l})=>l),c=()=>$n.get(t)||[],u=l=>$n.set(t,[...c(),l]);return{flush:o,async schedule(l){const d={},f=new Promise((p,h)=>{d.resolve=p,d.reject=h});return(n==null?void 0:n([...i(),l]))&&a(),c().length>0?(u({args:l,pendingPromise:d}),f):(u({args:l,pendingPromise:d}),setTimeout(a,r),f)}}}async function jt(e,t){var v,E,x,P;const{account:n=e.account,batch:r=!!((v=e.batch)!=null&&v.multicall),blockNumber:s,blockTag:a="latest",accessList:o,blobs:i,data:c,gas:u,gasPrice:l,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:y,nonce:m,to:p,value:h,stateOverride:b,...g}=t,w=n?ce(n):void 0;try{Mt(t);const S=(s?O(s):void 0)||a,k=ya(b),C=(P=(x=(E=e.chain)==null?void 0:E.formatters)==null?void 0:x.transactionRequest)==null?void 0:P.format,_=(C||Ot)({...mn(g,{format:C}),from:w==null?void 0:w.address,accessList:o,blobs:i,data:c,gas:u,gasPrice:l,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:y,nonce:m,to:p,value:h});if(r&&jc({request:_})&&!k)try{return await Fc(e,{..._,blockNumber:s,blockTag:a})}catch(I){if(!(I instanceof Fs)&&!(I instanceof Dn))throw I}const ee=await e.request({method:"eth_call",params:k?[_,S,k]:[_,S]});return ee==="0x"?{data:void 0}:{data:ee}}catch(A){const S=Lc(A),{offchainLookup:k,offchainLookupSignature:C}=await cr(()=>Promise.resolve().then(()=>Nu),void 0,import.meta.url);if(e.ccipRead!==!1&&(S==null?void 0:S.slice(0,10))===C&&p)return{data:await k(e,{data:S,to:p})};throw qc(A,{...t,account:w,chain:e.chain})}}function jc({request:e}){const{data:t,to:n,...r}=e;return!(!t||t.startsWith(Mc)||!n||Object.values(r).filter(s=>typeof s<"u").length>0)}async function Fc(e,t){var p;const{batchSize:n=1024,wait:r=0}=typeof((p=e.batch)==null?void 0:p.multicall)=="object"?e.batch.multicall:{},{blockNumber:s,blockTag:a="latest",data:o,multicallAddress:i,to:c}=t;let u=i;if(!u){if(!e.chain)throw new Fs;u=at({blockNumber:s,chain:e.chain,contract:"multicall3"})}const d=(s?O(s):void 0)||a,{schedule:f}=Sr({id:`${e.uid}.${d}`,wait:r,shouldSplitBatch(h){return h.reduce((g,{data:w})=>g+(w.length-2),0)>n*2},fn:async h=>{const b=h.map(v=>({allowFailure:!0,callData:v.data,target:v.to})),g=Ce({abi:Xn,args:[b],functionName:"aggregate3"}),w=await e.request({method:"eth_call",params:[{data:g,to:u},d]});return st({abi:Xn,args:[b],functionName:"aggregate3",data:w||"0x"})}}),[{returnData:y,success:m}]=await f({data:o,to:c});if(!m)throw new br({data:y});return y==="0x"?{data:void 0}:{data:y}}function Lc(e){var n;if(!(e instanceof T))return;const t=e.walk();return typeof(t==null?void 0:t.data)=="object"?(n=t.data)==null?void 0:n.data:t.data}async function ge(e,t){const{abi:n,address:r,args:s,functionName:a,...o}=t,i=Ce({abi:n,args:s,functionName:a});try{const{data:c}=await $(e,jt,"call")({...o,data:i,to:r});return st({abi:n,args:s,functionName:a,data:c||"0x"})}catch(c){throw St(c,{abi:n,address:r,args:s,docsPath:"/docs/contract/readContract",functionName:a})}}async function Pa(e,t){const{abi:n,address:r,args:s,dataSuffix:a,functionName:o,...i}=t,c=i.account?ce(i.account):e.account,u=Ce({abi:n,args:s,functionName:o});try{const{data:l}=await $(e,jt,"call")({batch:!1,data:`${u}${a?a.replace("0x",""):""}`,to:r,...i,account:c}),d=st({abi:n,args:s,functionName:o,data:l||"0x"}),f=n.filter(y=>"name"in y&&y.name===t.functionName);return{result:d,request:{abi:f,address:r,args:s,dataSuffix:a,functionName:o,...i,account:c}}}catch(l){throw St(l,{abi:n,address:r,args:s,docsPath:"/docs/contract/simulateContract",functionName:o,sender:c==null?void 0:c.address})}}const Cn=new Map,Es=new Map;let Uc=0;function Se(e,t,n){const r=++Uc,s=()=>Cn.get(e)||[],a=()=>{const l=s();Cn.set(e,l.filter(d=>d.id!==r))},o=()=>{const l=Es.get(e);s().length===1&&l&&l(),a()},i=s();if(Cn.set(e,[...i,{id:r,fns:t}]),i&&i.length>0)return o;const c={};for(const l in t)c[l]=(...d)=>{var y,m;const f=s();if(f.length!==0)for(const p of f)(m=(y=p.fns)[l])==null||m.call(y,...d)};const u=n(c);return typeof u=="function"&&Es.set(e,u),o}async function en(e){return new Promise(t=>setTimeout(t,e))}function Ft(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let s=!0;const a=()=>s=!1;return(async()=>{let i;t&&(i=await e({unpoll:a}));const c=await(n==null?void 0:n(i))??r;await en(c);const u=async()=>{s&&(await e({unpoll:a}),await en(r),u())};u()})(),a}const zc=new Map,Dc=new Map;function Gc(e){const t=(s,a)=>({clear:()=>a.delete(s),get:()=>a.get(s),set:o=>a.set(s,o)}),n=t(e,zc),r=t(e,Dc);return{clear:()=>{n.clear(),r.clear()},promise:n,response:r}}async function Hc(e,{cacheKey:t,cacheTime:n=Number.POSITIVE_INFINITY}){const r=Gc(t),s=r.response.get();if(s&&n>0&&new Date().getTime()-s.created.getTime()`blockNumber.${e}`;async function Lt(e,{cacheTime:t=e.cacheTime}={}){const n=await Hc(()=>e.request({method:"eth_blockNumber"}),{cacheKey:Vc(e.uid),cacheTime:t});return BigInt(n)}async function bn(e,{filter:t}){const n="strict"in t&&t.strict,r=await t.request({method:"eth_getFilterChanges",params:[t.id]});if(typeof r[0]=="string")return r;const s=r.map(a=>Le(a));return!("abi"in t)||!t.abi?s:Pr({abi:t.abi,logs:s,strict:n})}async function hn(e,{filter:t}){return t.request({method:"eth_uninstallFilter",params:[t.id]})}function Aa(e,t){const{abi:n,address:r,args:s,batch:a=!0,eventName:o,fromBlock:i,onError:c,onLogs:u,poll:l,pollingInterval:d=e.pollingInterval,strict:f}=t;return(()=>typeof l<"u"?l:typeof i=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"))()?(()=>{const h=f??!1,b=z(["watchContractEvent",r,s,a,e.uid,o,d,h,i]);return Se(b,{onLogs:u,onError:c},g=>{let w;i!==void 0&&(w=i-1n);let v,E=!1;const x=Ft(async()=>{var P;if(!E){try{v=await $(e,yr,"createContractEventFilter")({abi:n,address:r,args:s,eventName:o,strict:h,fromBlock:i})}catch{}E=!0;return}try{let A;if(v)A=await $(e,bn,"getFilterChanges")({filter:v});else{const S=await $(e,Lt,"getBlockNumber")({});w&&w!==S?A=await $(e,Ir,"getContractEvents")({abi:n,address:r,args:s,eventName:o,fromBlock:w+1n,toBlock:S,strict:h}):A=[],w=S}if(A.length===0)return;if(a)g.onLogs(A);else for(const S of A)g.onLogs([S])}catch(A){v&&A instanceof De&&(E=!1),(P=g.onError)==null||P.call(g,A)}},{emitOnBegin:!0,interval:d});return async()=>{v&&await $(e,hn,"uninstallFilter")({filter:v}),x()}})})():(()=>{const h=f??!1,b=z(["watchContractEvent",r,s,a,e.uid,o,d,h]);let g=!0,w=()=>g=!1;return Se(b,{onLogs:u,onError:c},v=>((async()=>{try{const E=(()=>{if(e.transport.type==="fallback"){const A=e.transport.transports.find(S=>S.config.type==="webSocket");return A?A.value:e.transport}return e.transport})(),x=o?_t({abi:n,eventName:o,args:s}):[],{unsubscribe:P}=await E.subscribe({params:["logs",{address:r,topics:x}],onData(A){var k;if(!g)return;const S=A.result;try{const{eventName:C,args:M}=Er({abi:n,data:S.data,topics:S.topics,strict:f}),_=Le(S,{args:M,eventName:C});v.onLogs([_])}catch(C){let M,_;if(C instanceof lt||C instanceof fn){if(f)return;M=C.abiItem.name,_=(k=C.abiItem.inputs)==null?void 0:k.some(I=>!("name"in I&&I.name))}const ee=Le(S,{args:_?[]:{},eventName:M});v.onLogs([ee])}},onError(A){var S;(S=v.onError)==null||S.call(v,A)}});w=P,g||w()}catch(E){c==null||c(E)}})(),()=>w()))})()}class gn extends T{constructor({docsPath:t}={}){super(["Could not find an Account to execute with this Action.","Please provide an Account with the `account` argument on the Action, or by supplying an `account` to the WalletClient."].join(` +`),{docsPath:t,docsSlug:"account"}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"AccountNotFoundError"})}}function Ia({chain:e,currentChainId:t}){if(!e)throw new $o;if(t!==e.id)throw new Co({chain:e,currentChainId:t})}function Zc(e,{docsPath:t,...n}){const r=(()=>{const s=gr(e,n);return s instanceof on?e:s})();return new Oo(r,{docsPath:t,...n})}async function Tr(e,{serializedTransaction:t}){return e.request({method:"eth_sendRawTransaction",params:[t]},{retryCount:0})}async function Br(e,t){var b,g,w,v;const{account:n=e.account,chain:r=e.chain,accessList:s,blobs:a,data:o,gas:i,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:l,maxPriorityFeePerGas:d,nonce:f,to:y,value:m,...p}=t;if(!n)throw new gn({docsPath:"/docs/actions/wallet/sendTransaction"});const h=ce(n);try{Mt(t);let E;if(r!==null&&(E=await $(e,qt,"getChainId")({}),Ia({currentChainId:E,chain:r})),h.type==="local"){const S=await $(e,yn,"prepareTransactionRequest")({account:h,accessList:s,blobs:a,chain:r,chainId:E,data:o,gas:i,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:l,maxPriorityFeePerGas:d,nonce:f,parameters:[...wa,"sidecars"],to:y,value:m,...p}),k=(b=r==null?void 0:r.serializers)==null?void 0:b.transaction,C=await h.signTransaction(S,{serializer:k});return await $(e,Tr,"sendRawTransaction")({serializedTransaction:C})}const x=(v=(w=(g=e.chain)==null?void 0:g.formatters)==null?void 0:w.transactionRequest)==null?void 0:v.format,A=(x||Ot)({...mn(p,{format:x}),accessList:s,blobs:a,data:o,from:h.address,gas:i,gasPrice:c,maxFeePerBlobGas:u,maxFeePerGas:l,maxPriorityFeePerGas:d,nonce:f,to:y,value:m});return await e.request({method:"eth_sendTransaction",params:[A]},{retryCount:0})}catch(E){throw Zc(E,{...t,account:h,chain:t.chain||void 0})}}async function Sa(e,t){const{abi:n,address:r,args:s,dataSuffix:a,functionName:o,...i}=t,c=Ce({abi:n,args:s,functionName:o});return $(e,Br,"sendTransaction")({data:`${c}${a?a.replace("0x",""):""}`,to:r,...i})}function Pf({abi:e,address:t,client:n}){const r=n,[s,a]=(()=>r?"public"in r&&"wallet"in r?[r.public,r.wallet]:"public"in r?[r.public,void 0]:"wallet"in r?[void 0,r.wallet]:[r,r]:[void 0,void 0])(),o=s!=null,i=a!=null,c={};let u=!1,l=!1,d=!1;for(const f of e)if(f.type==="function"?f.stateMutability==="view"||f.stateMutability==="pure"?u=!0:l=!0:f.type==="event"&&(d=!0),u&&l&&d)break;return o&&(u&&(c.read=new Proxy({},{get(f,y){return(...m)=>{const{args:p,options:h}=zt(m);return $(s,ge,"readContract")({abi:e,address:t,functionName:y,args:p,...h})}}})),l&&(c.simulate=new Proxy({},{get(f,y){return(...m)=>{const{args:p,options:h}=zt(m);return $(s,Pa,"simulateContract")({abi:e,address:t,functionName:y,args:p,...h})}}})),d&&(c.createEventFilter=new Proxy({},{get(f,y){return(...m)=>{const p=e.find(g=>g.type==="event"&&g.name===y),{args:h,options:b}=On(m,p);return $(s,yr,"createContractEventFilter")({abi:e,address:t,eventName:y,args:h,...b})}}}),c.getEvents=new Proxy({},{get(f,y){return(...m)=>{const p=e.find(g=>g.type==="event"&&g.name===y),{args:h,options:b}=On(m,p);return $(s,Ir,"getContractEvents")({abi:e,address:t,eventName:y,args:h,...b})}}}),c.watchEvent=new Proxy({},{get(f,y){return(...m)=>{const p=e.find(g=>g.type==="event"&&g.name===y),{args:h,options:b}=On(m,p);return $(s,Aa,"watchContractEvent")({abi:e,address:t,eventName:y,args:h,...b})}}}))),i&&l&&(c.write=new Proxy({},{get(f,y){return(...m)=>{const{args:p,options:h}=zt(m);return $(a,Sa,"writeContract")({abi:e,address:t,functionName:y,args:p,...h})}}})),(o||i)&&l&&(c.estimateGas=new Proxy({},{get(f,y){return(...m)=>{const{args:p,options:h}=zt(m);return $(s??a,va,"estimateContractGas")({abi:e,address:t,functionName:y,args:p,...h,account:h.account??a.account})}}})),c.address=t,c.abi=e,c}function zt(e){const t=e.length&&Array.isArray(e[0]),n=t?e[0]:[],r=(t?e[1]:e[0])??{};return{args:n,options:r}}function On(e,t){let n=!1;Array.isArray(e[0])?n=!0:e.length===1?n=t.inputs.some(a=>a.indexed):e.length===2&&(n=!0);const r=n?e[0]:void 0,s=(n?e[1]:e[0])??{};return{args:r,options:s}}async function Wc(e,{chain:t}){const{id:n,name:r,nativeCurrency:s,rpcUrls:a,blockExplorers:o}=t;await e.request({method:"wallet_addEthereumChain",params:[{chainId:O(n),chainName:r,nativeCurrency:s,rpcUrls:a.default.http,blockExplorerUrls:o?Object.values(o).map(({url:i})=>i):void 0}]},{retryCount:0})}function Kc(e){const t=H(`0x${e.substring(4)}`).substring(26);return ur(`0x${t}`)}const Qn=256;let Dt=Qn,Gt;function Yc(e=11){if(!Gt||Dt+e>Qn*2){Gt="",Dt=0;for(let t=0;t{const g=b(h);for(const v in m)delete g[v];const w={...h,...g};return Object.assign(w,{extend:p(w)})}}return Object.assign(m,{extend:p(m)})}function Af(){return null}function er(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((s,a)=>{const o=async({count:i=0}={})=>{const c=async({error:u})=>{const l=typeof t=="function"?t({count:i,error:u}):t;l&&await en(l),o({count:i+1})};try{const u=await e();s(u)}catch(u){if(i{const{retryDelay:s=150,retryCount:a=3}={...t,...r};return er(async()=>{try{return await e(n)}catch(o){const i=o;switch(i.code){case pt.code:throw new pt(i);case mt.code:throw new mt(i);case yt.code:throw new yt(i);case bt.code:throw new bt(i);case ze.code:throw new ze(i);case De.code:throw new De(i);case ht.code:throw new ht(i);case gt.code:throw new gt(i);case Je.code:throw new Je(i);case wt.code:throw new wt(i);case Xe.code:throw new Xe(i);case vt.code:throw new vt(i);case je.code:throw new je(i);case xt.code:throw new xt(i);case Et.code:throw new Et(i);case Pt.code:throw new Pt(i);case At.code:throw new At(i);case It.code:throw new It(i);case 5e3:throw new je(i);default:throw o instanceof T?o:new Ac(i)}}},{delay:({count:o,error:i})=>{var c;if(i&&i instanceof qe){const u=(c=i==null?void 0:i.headers)==null?void 0:c.get("Retry-After");if(u!=null&&u.match(/\d/))return Number.parseInt(u)*1e3}return~~(1<Xc(o)})}}function Xc(e){return"code"in e&&typeof e.code=="number"?e.code===-1||e.code===Xe.code||e.code===ze.code:e instanceof qe&&e.status?e.status===403||e.status===408||e.status===413||e.status===429||e.status===500||e.status===502||e.status===503||e.status===504:!0}function wn({key:e,name:t,request:n,retryCount:r=3,retryDelay:s=150,timeout:a,type:o},i){return{config:{key:e,name:t,request:n,retryCount:r,retryDelay:s,timeout:a,type:o},request:Jc(n,{retryCount:r,retryDelay:s}),value:i}}function If(e,t={}){const{key:n="custom",name:r="Custom Provider",retryDelay:s}=t;return({retryCount:a})=>wn({key:n,name:r,request:e.request.bind(e),retryCount:t.retryCount??a,retryDelay:s,type:"custom"})}function Sf(e,t={}){const{key:n="fallback",name:r="Fallback",rank:s=!1,retryCount:a,retryDelay:o}=t;return({chain:i,pollingInterval:c=4e3,timeout:u,...l})=>{let d=e,f=()=>{};const y=wn({key:n,name:r,async request({method:m,params:p}){const h=async(b=0)=>{const g=d[b]({...l,chain:i,retryCount:0,timeout:u});try{const w=await g.request({method:m,params:p});return f({method:m,params:p,response:w,transport:g,status:"success"}),w}catch(w){if(f({error:w,method:m,params:p,transport:g,status:"error"}),Qc(w)||b===d.length-1)throw w;return h(b+1)}};return h()},retryCount:a,retryDelay:o,type:"fallback"},{onResponse:m=>f=m,transports:d.map(m=>m({chain:i,retryCount:0}))});if(s){const m=typeof s=="object"?s:{};eu({chain:i,interval:m.interval??c,onTransports:p=>d=p,sampleCount:m.sampleCount,timeout:m.timeout,transports:d,weights:m.weights})}return y}}function Qc(e){return"code"in e&&typeof e.code=="number"&&(e.code===Je.code||e.code===je.code||e.code===5e3)}function eu({chain:e,interval:t=4e3,onTransports:n,sampleCount:r=10,timeout:s=1e3,transports:a,weights:o={}}){const{stability:i=.7,latency:c=.3}=o,u=[],l=async()=>{const d=await Promise.all(a.map(async m=>{const p=m({chain:e,retryCount:0,timeout:s}),h=Date.now();let b,g;try{await p.request({method:"net_listening"}),g=1}catch{g=0}finally{b=Date.now()}return{latency:b-h,success:g}}));u.push(d),u.length>r&&u.shift();const f=Math.max(...u.map(m=>Math.max(...m.map(({latency:p})=>p)))),y=a.map((m,p)=>{const h=u.map(E=>E[p].latency),g=1-h.reduce((E,x)=>E+x,0)/h.length/f,w=u.map(E=>E[p].success),v=w.reduce((E,x)=>E+x,0)/w.length;return v===0?[0,p]:[c*g+i*v,p]}).sort((m,p)=>p[0]-m[0]);n(y.map(([,m])=>a[m])),await en(t),l()};l()}class Ta extends T{constructor(){super("No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",{docsPath:"/docs/clients/intro"})}}function Ba(e,{errorInstance:t=new Error("timed out"),timeout:n,signal:r}){return new Promise((s,a)=>{(async()=>{let o;try{const i=new AbortController;n>0&&(o=setTimeout(()=>{r?i.abort():a(t)},n)),s(await e({signal:(i==null?void 0:i.signal)||null}))}catch(i){i.name==="AbortError"&&a(t),a(i)}finally{clearTimeout(o)}})()})}function tu(){return{current:0,take(){return this.current++},reset(){this.current=0}}}const tr=tu();function nu(e,t={}){return{async request(n){var d;const{body:r,onRequest:s=t.onRequest,onResponse:a=t.onResponse,timeout:o=t.timeout??1e4}=n,i={...t.fetchOptions??{},...n.fetchOptions??{}},{headers:c,method:u,signal:l}=i;try{const f=await Ba(async({signal:m})=>{const p={...i,body:Array.isArray(r)?z(r.map(g=>({jsonrpc:"2.0",id:g.id??tr.take(),...g}))):z({jsonrpc:"2.0",id:r.id??tr.take(),...r}),headers:{...c,"Content-Type":"application/json"},method:u||"POST",signal:l||(o>0?m:null)},h=new Request(e,p);return s&&await s(h),await fetch(e,p)},{errorInstance:new Yn({body:r,url:e}),timeout:o,signal:!0});a&&await a(f);let y;if((d=f.headers.get("Content-Type"))!=null&&d.startsWith("application/json")?y=await f.json():(y=await f.text(),y=JSON.parse(y||"{}")),!f.ok)throw new qe({body:r,details:z(y.error)||f.statusText,headers:f.headers,status:f.status,url:e});return y}catch(f){throw f instanceof qe||f instanceof Yn?f:new qe({body:r,details:f.message,url:e})}}}}function Tf(e,t={}){const{batch:n,fetchOptions:r,key:s="http",name:a="HTTP JSON-RPC",onFetchRequest:o,onFetchResponse:i,retryDelay:c}=t;return({chain:u,retryCount:l,timeout:d})=>{const{batchSize:f=1e3,wait:y=0}=typeof n=="object"?n:{},m=t.retryCount??l,p=d??t.timeout??1e4,h=e||(u==null?void 0:u.rpcUrls.default.http[0]);if(!h)throw new Ta;const b=nu(h,{fetchOptions:r,onRequest:o,onResponse:i,timeout:p});return wn({key:s,name:a,async request({method:g,params:w}){const v={method:g,params:w},{schedule:E}=Sr({id:h,wait:y,shouldSplitBatch(S){return S.length>f},fn:S=>b.request({body:S}),sort:(S,k)=>S.id-k.id}),x=async S=>n?E(S):[await b.request({body:S})],[{error:P,result:A}]=await x(v);if(P)throw new hr({body:v,error:P,url:h});return A},retryCount:m,retryDelay:c,timeout:p,type:"http"},{fetchOptions:r,url:h})}}function $r(e,t){var r,s,a,o,i,c;if(!(e instanceof T))return!1;const n=e.walk(u=>u instanceof Kn);return n instanceof Kn?!!(((r=n.data)==null?void 0:r.errorName)==="ResolverNotFound"||((s=n.data)==null?void 0:s.errorName)==="ResolverWildcardNotSupported"||((a=n.data)==null?void 0:a.errorName)==="ResolverNotContract"||((o=n.data)==null?void 0:o.errorName)==="ResolverError"||((i=n.data)==null?void 0:i.errorName)==="HttpError"||(c=n.reason)!=null&&c.includes("Wildcard on non-extended resolvers is not supported")||t==="reverse"&&n.reason===ca[50]):!1}function ka(e){if(e.length!==66||e.indexOf("[")!==0||e.indexOf("]")!==65)return null;const t=`0x${e.slice(1,65)}`;return R(t)?t:null}function Wt(e){let t=new Uint8Array(32).fill(0);if(!e)return K(t);const n=e.split(".");for(let r=n.length-1;r>=0;r-=1){const s=ka(n[r]),a=s?ae(s):H(_e(n[r]),"bytes");t=H(fe([t,a]),"bytes")}return K(t)}function ru(e){return`[${e.slice(2)}]`}function su(e){const t=new Uint8Array(32).fill(0);return e?ka(e)||H(_e(e)):K(t)}function vn(e){const t=e.replace(/^\.|\.$/gm,"");if(t.length===0)return new Uint8Array(1);const n=new Uint8Array(_e(t).byteLength+2);let r=0;const s=t.split(".");for(let a=0;a255&&(o=_e(ru(su(s[a])))),n[r]=o.length,n.set(o,r+1),r+=o.length+1}return n.byteLength!==r+1?n.slice(0,r+1):n}async function au(e,{blockNumber:t,blockTag:n,coinType:r,name:s,gatewayUrls:a,strict:o,universalResolverAddress:i}){let c=i;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=at({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const u=Ce({abi:xs,functionName:"addr",...r!=null?{args:[Wt(s),BigInt(r)]}:{args:[Wt(s)]}}),l={address:c,abi:Ea,functionName:"resolve",args:[ye(vn(s)),u],blockNumber:t,blockTag:n},d=$(e,ge,"readContract"),f=a?await d({...l,args:[...l.args,a]}):await d(l);if(f[0]==="0x")return null;const y=st({abi:xs,args:r!=null?[Wt(s),BigInt(r)]:void 0,functionName:"addr",data:f[0]});return y==="0x"||kt(y)==="0x00"?null:y}catch(u){if(o)throw u;if($r(u,"resolve"))return null;throw u}}class ou extends T{constructor({data:t}){super("Unable to extract image from metadata. The metadata may be malformed or invalid.",{metaMessages:["- Metadata must be a JSON object with at least an `image`, `image_url` or `image_data` property.","",`Provided data: ${JSON.stringify(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarInvalidMetadataError"})}}class ut extends T{constructor({reason:t}){super(`ENS NFT avatar URI is invalid. ${t}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarInvalidNftUriError"})}}class Cr extends T{constructor({uri:t}){super(`Unable to resolve ENS avatar URI "${t}". The URI may be malformed, invalid, or does not respond with a valid image.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarUriResolutionError"})}}class iu extends T{constructor({namespace:t}){super(`ENS NFT avatar namespace "${t}" is not supported. Must be "erc721" or "erc1155".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EnsAvatarUnsupportedNamespaceError"})}}const cu=/(?https?:\/\/[^\/]*|ipfs:\/|ipns:\/|ar:\/)?(?\/)?(?ipfs\/|ipns\/)?(?[\w\-.]+)(?\/.*)?/,uu=/^(Qm[1-9A-HJ-NP-Za-km-z]{44,}|b[A-Za-z2-7]{58,}|B[A-Z2-7]{58,}|z[1-9A-HJ-NP-Za-km-z]{48,}|F[0-9A-F]{50,})(\/(?[\w\-.]+))?(?\/.*)?$/,du=/^data:([a-zA-Z\-/+]*);base64,([^"].*)/,lu=/^data:([a-zA-Z\-/+]*)?(;[a-zA-Z0-9].*?)?(,)/;async function fu(e){try{const t=await fetch(e,{method:"HEAD"});if(t.status===200){const n=t.headers.get("content-type");return n==null?void 0:n.startsWith("image/")}return!1}catch(t){return typeof t=="object"&&typeof t.response<"u"||!globalThis.hasOwnProperty("Image")?!1:new Promise(n=>{const r=new Image;r.onload=()=>{n(!0)},r.onerror=()=>{n(!1)},r.src=e})}}function Ps(e,t){return e?e.endsWith("/")?e.slice(0,-1):e:t}function $a({uri:e,gatewayUrls:t}){const n=du.test(e);if(n)return{uri:e,isOnChain:!0,isEncoded:n};const r=Ps(t==null?void 0:t.ipfs,"https://ipfs.io"),s=Ps(t==null?void 0:t.arweave,"https://arweave.net"),a=e.match(cu),{protocol:o,subpath:i,target:c,subtarget:u=""}=(a==null?void 0:a.groups)||{},l=o==="ipns:/"||i==="ipns/",d=o==="ipfs:/"||i==="ipfs/"||uu.test(e);if(e.startsWith("http")&&!l&&!d){let y=e;return t!=null&&t.arweave&&(y=e.replace(/https:\/\/arweave.net/g,t==null?void 0:t.arweave)),{uri:y,isOnChain:!1,isEncoded:!1}}if((l||d)&&c)return{uri:`${r}/${l?"ipns":"ipfs"}/${c}${u}`,isOnChain:!1,isEncoded:!1};if(o==="ar:/"&&c)return{uri:`${s}/${c}${u||""}`,isOnChain:!1,isEncoded:!1};let f=e.replace(lu,"");if(f.startsWith("s.json());return await Or({gatewayUrls:e,uri:Ca(n)})}catch{throw new Cr({uri:t})}}async function Or({gatewayUrls:e,uri:t}){const{uri:n,isOnChain:r}=$a({uri:t,gatewayUrls:e});if(r||await fu(n))return n;throw new Cr({uri:t})}function mu(e){let t=e;t.startsWith("did:nft:")&&(t=t.replace("did:nft:","").replace(/_/g,"/"));const[n,r,s]=t.split("/"),[a,o]=n.split(":"),[i,c]=r.split(":");if(!a||a.toLowerCase()!=="eip155")throw new ut({reason:"Only EIP-155 supported"});if(!o)throw new ut({reason:"Chain ID not found"});if(!c)throw new ut({reason:"Contract address not found"});if(!s)throw new ut({reason:"Token ID not found"});if(!i)throw new ut({reason:"ERC namespace not found"});return{chainID:Number.parseInt(o),namespace:i.toLowerCase(),contractAddress:c,tokenID:s}}async function yu(e,{nft:t}){if(t.namespace==="erc721")return ge(e,{address:t.contractAddress,abi:[{name:"tokenURI",type:"function",stateMutability:"view",inputs:[{name:"tokenId",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"tokenURI",args:[BigInt(t.tokenID)]});if(t.namespace==="erc1155")return ge(e,{address:t.contractAddress,abi:[{name:"uri",type:"function",stateMutability:"view",inputs:[{name:"_id",type:"uint256"}],outputs:[{name:"",type:"string"}]}],functionName:"uri",args:[BigInt(t.tokenID)]});throw new iu({namespace:t.namespace})}async function bu(e,{gatewayUrls:t,record:n}){return/eip155:/i.test(n)?hu(e,{gatewayUrls:t,record:n}):Or({uri:n,gatewayUrls:t})}async function hu(e,{gatewayUrls:t,record:n}){const r=mu(n),s=await yu(e,{nft:r}),{uri:a,isOnChain:o,isEncoded:i}=$a({uri:s,gatewayUrls:t});if(o&&(a.includes("data:application/json;base64,")||a.startsWith("{"))){const u=i?atob(a.replace("data:application/json;base64,","")):a,l=JSON.parse(u);return Or({uri:Ca(l),gatewayUrls:t})}let c=r.tokenID;return r.namespace==="erc1155"&&(c=c.replace("0x","").padStart(64,"0")),pu({gatewayUrls:t,uri:a.replace(/(?:0x)?{id}/,c)})}async function Oa(e,{blockNumber:t,blockTag:n,name:r,key:s,gatewayUrls:a,strict:o,universalResolverAddress:i}){let c=i;if(!c){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");c=at({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}try{const u={address:c,abi:Ea,functionName:"resolve",args:[ye(vn(r)),Ce({abi:vs,functionName:"text",args:[Wt(r),s]})],blockNumber:t,blockTag:n},l=$(e,ge,"readContract"),d=a?await l({...u,args:[...u.args,a]}):await l(u);if(d[0]==="0x")return null;const f=st({abi:vs,functionName:"text",data:d[0]});return f===""?null:f}catch(u){if(o)throw u;if($r(u,"resolve"))return null;throw u}}async function gu(e,{blockNumber:t,blockTag:n,assetGatewayUrls:r,name:s,gatewayUrls:a,strict:o,universalResolverAddress:i}){const c=await $(e,Oa,"getEnsText")({blockNumber:t,blockTag:n,key:"avatar",name:s,universalResolverAddress:i,gatewayUrls:a,strict:o});if(!c)return null;try{return await bu(e,{record:c,gatewayUrls:r})}catch{return null}}async function wu(e,{address:t,blockNumber:n,blockTag:r,gatewayUrls:s,strict:a,universalResolverAddress:o}){let i=o;if(!i){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");i=at({blockNumber:n,chain:e.chain,contract:"ensUniversalResolver"})}const c=`${t.toLowerCase().substring(2)}.addr.reverse`;try{const u={address:i,abi:Nc,functionName:"reverse",args:[ye(vn(c))],blockNumber:n,blockTag:r},l=$(e,ge,"readContract"),[d,f]=s?await l({...u,args:[...u.args,s]}):await l(u);return t.toLowerCase()!==f.toLowerCase()?null:d}catch(u){if(a)throw u;if($r(u,"reverse"))return null;throw u}}async function vu(e,{blockNumber:t,blockTag:n,name:r,universalResolverAddress:s}){let a=s;if(!a){if(!e.chain)throw new Error("client chain not configured. universalResolverAddress is required.");a=at({blockNumber:t,chain:e.chain,contract:"ensUniversalResolver"})}const[o]=await $(e,ge,"readContract")({address:a,abi:[{inputs:[{type:"bytes"}],name:"findResolver",outputs:[{type:"address"},{type:"bytes32"}],stateMutability:"view",type:"function"}],functionName:"findResolver",args:[ye(vn(r))],blockNumber:t,blockTag:n});return o}async function xu(e){const t=pn(e,{method:"eth_newBlockFilter"}),n=await e.request({method:"eth_newBlockFilter"});return{id:n,request:t(n),type:"block"}}async function Ra(e,{address:t,args:n,event:r,events:s,fromBlock:a,strict:o,toBlock:i}={}){const c=s??(r?[r]:void 0),u=pn(e,{method:"eth_newFilter"});let l=[];c&&(l=[c.flatMap(f=>_t({abi:[f],eventName:f.name,args:n}))],r&&(l=l[0]));const d=await e.request({method:"eth_newFilter",params:[{address:t,fromBlock:typeof a=="bigint"?O(a):a,toBlock:typeof i=="bigint"?O(i):i,...l.length?{topics:l}:{}}]});return{abi:c,args:n,eventName:r?r.name:void 0,fromBlock:a,id:d,request:u(d),strict:!!o,toBlock:i,type:"event"}}async function Na(e){const t=pn(e,{method:"eth_newPendingTransactionFilter"}),n=await e.request({method:"eth_newPendingTransactionFilter"});return{id:n,request:t(n),type:"transaction"}}async function Eu(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=n?O(n):void 0,a=await e.request({method:"eth_getBalance",params:[t,s||r]});return BigInt(a)}async function Pu(e){const t=await e.request({method:"eth_blobBaseFee"});return BigInt(t)}async function Au(e,{blockHash:t,blockNumber:n,blockTag:r="latest"}={}){const s=n!==void 0?O(n):void 0;let a;return t?a=await e.request({method:"eth_getBlockTransactionCountByHash",params:[t]}):a=await e.request({method:"eth_getBlockTransactionCountByNumber",params:[s||r]}),Y(a)}async function Iu(e,{address:t,blockNumber:n,blockTag:r="latest"}){const s=n!==void 0?O(n):void 0,a=await e.request({method:"eth_getCode",params:[t,s||r]});if(a!=="0x")return a}function Su(e){var t;return{baseFeePerGas:e.baseFeePerGas.map(n=>BigInt(n)),gasUsedRatio:e.gasUsedRatio,oldestBlock:BigInt(e.oldestBlock),reward:(t=e.reward)==null?void 0:t.map(n=>n.map(r=>BigInt(r)))}}async function Tu(e,{blockCount:t,blockNumber:n,blockTag:r="latest",rewardPercentiles:s}){const a=n?O(n):void 0,o=await e.request({method:"eth_feeHistory",params:[O(t),a||r,s]});return Su(o)}async function Bu(e,{filter:t}){const n=t.strict??!1,s=(await t.request({method:"eth_getFilterLogs",params:[t.id]})).map(a=>Le(a));return t.abi?Pr({abi:t.abi,logs:s,strict:n}):s}class ku extends T{constructor({callbackSelector:t,cause:n,data:r,extraData:s,sender:a,urls:o}){var i;super(n.shortMessage||"An error occurred while fetching for an offchain result.",{cause:n,metaMessages:[...n.metaMessages||[],(i=n.metaMessages)!=null&&i.length?"":[],"Offchain Gateway Call:",o&&[" Gateway URL(s):",...o.map(c=>` ${tt(c)}`)],` Sender: ${a}`,` Data: ${r}`,` Callback selector: ${t}`,` Extra data: ${s}`].flat()}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"OffchainLookupError"})}}class $u extends T{constructor({result:t,url:n}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${tt(n)}`,`Response: ${z(t)}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"OffchainLookupResponseMalformedError"})}}class Cu extends T{constructor({sender:t,to:n}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${n}`,`OffchainLookup sender address: ${t}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"OffchainLookupSenderMismatchError"})}}function xn(e,t){if(!ie(e,{strict:!1}))throw new he({address:e});if(!ie(t,{strict:!1}))throw new he({address:t});return e.toLowerCase()===t.toLowerCase()}const Ou="0x556f1830",_a={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function Ru(e,{blockNumber:t,blockTag:n,data:r,to:s}){const{args:a}=fa({data:r,abi:[_a]}),[o,i,c,u,l]=a,{ccipRead:d}=e,f=d&&typeof(d==null?void 0:d.request)=="function"?d.request:Ma;try{if(!xn(s,o))throw new Cu({sender:o,to:s});const y=await f({data:c,sender:o,urls:i}),{data:m}=await jt(e,{blockNumber:t,blockTag:n,data:fe([u,$e([{type:"bytes"},{type:"bytes"}],[y,l])]),to:s});return m}catch(y){throw new ku({callbackSelector:u,cause:y,data:r,extraData:l,sender:o,urls:i})}}async function Ma({data:e,sender:t,urls:n}){var s;let r=new Error("An unknown error occurred.");for(let a=0;an.id===t)}const _u=/^(.*)\[([0-9]*)\]$/,qa=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ja=/^(u?int)(8|16|24|32|40|48|56|64|72|80|88|96|104|112|120|128|136|144|152|160|168|176|184|192|200|208|216|224|232|240|248|256)?$/,Rn=new Map;async function Mu(e){const{getSocket:t,key:n="socket",reconnect:r=!0,url:s}=e,{attempts:a=5,delay:o=2e3}=typeof r=="object"?r:{};let i=Rn.get(`${n}:${s}`);if(i)return i;let c=0;const{schedule:u}=Sr({id:`${n}:${s}`,fn:async()=>{const f=new Map,y=new Map;let m,p;async function h(){return t({onError(b){var g,w;m=b;for(const v of f.values())(g=v.onError)==null||g.call(v,m);for(const v of y.values())(w=v.onError)==null||w.call(v,m);f.clear(),y.clear(),r&&c{c++,p=await h().catch(console.error)},o)},onOpen(){m=void 0,c=0},onResponse(b){const g=b.method==="eth_subscription",w=g?b.params.subscription:b.id,v=g?y:f,E=v.get(w);E&&E.onResponse(b),g||v.delete(w)}})}return p=await h(),m=void 0,i={close(){p.close(),Rn.delete(`${n}:${s}`)},socket:p,request({body:b,onError:g,onResponse:w}){m&&g&&g(m);const v=b.id??tr.take(),E=x=>{var P;typeof x.id=="number"&&v!==x.id||(b.method==="eth_subscribe"&&typeof x.result=="string"&&y.set(x.result,{onResponse:E,onError:g}),b.method==="eth_unsubscribe"&&y.delete((P=b.params)==null?void 0:P[0]),w(x))};f.set(v,{onResponse:E,onError:g});try{p.request({body:{jsonrpc:"2.0",id:v,...b}})}catch(x){g==null||g(x)}},requestAsync({body:b,timeout:g=1e4}){return Ba(()=>new Promise((w,v)=>this.request({body:b,onError:v,onResponse:w})),{errorInstance:new Yn({body:b,url:s}),timeout:g})},requests:f,subscriptions:y,url:s},Rn.set(`${n}:${s}`,i),[i]}}),[l,[d]]=await u();return d}async function Kt(e,t={}){const{reconnect:n}=t;return Mu({async getSocket({onError:r,onOpen:s,onResponse:a}){const o=await cr(()=>import("./native-fae38879.js"),[],import.meta.url).then(d=>d.WebSocket),i=new o(e);function c(){i.removeEventListener("close",c),i.removeEventListener("message",u),i.removeEventListener("error",r),i.removeEventListener("open",s)}function u({data:d}){a(JSON.parse(d))}i.addEventListener("close",c),i.addEventListener("message",u),i.addEventListener("error",r),i.addEventListener("open",s),i.readyState===o.CONNECTING&&await new Promise((d,f)=>{i&&(i.onopen=d,i.onerror=f)});const{close:l}=i;return Object.assign(i,{close(){l.bind(i)(),c()},request({body:d}){if(i.readyState===i.CLOSED||i.readyState===i.CLOSING)throw new Ec({body:d,url:i.url,details:"Socket is closed."});return i.send(JSON.stringify(d))}})},reconnect:n,url:e})}async function qu(e){const t=await Kt(e);return Object.assign(t.socket,{requests:t.requests,subscriptions:t.subscriptions})}function Fa(e){const{domain:t={},message:n,primaryType:r}=e,s={EIP712Domain:Rr({domain:t}),...e.types};Ha({domain:t,message:n,primaryType:r,types:s});const a=["0x1901"];return t&&a.push(La({domain:t,types:s})),r!=="EIP712Domain"&&a.push(Ua({data:n,primaryType:r,types:s})),H(fe(a))}function La({domain:e,types:t}){return Ua({data:e,primaryType:"EIP712Domain",types:t})}function Ua({data:e,primaryType:t,types:n}){const r=za({data:e,primaryType:t,types:n});return H(r)}function za({data:e,primaryType:t,types:n}){const r=[{type:"bytes32"}],s=[ju({primaryType:t,types:n})];for(const a of n[t]){const[o,i]=Ga({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(o),s.push(i)}return $e(r,s)}function ju({primaryType:e,types:t}){const n=ye(Fu({primaryType:e,types:t}));return H(n)}function Fu({primaryType:e,types:t}){let n="";const r=Da({primaryType:e,types:t});r.delete(e);const s=[e,...Array.from(r).sort()];for(const a of s)n+=`${a}(${t[a].map(({name:o,type:i})=>`${i} ${o}`).join(",")})`;return n}function Da({primaryType:e,types:t},n=new Set){const r=e.match(/^\w*/u),s=r==null?void 0:r[0];if(n.has(s)||t[s]===void 0)return n;n.add(s);for(const a of t[s])Da({primaryType:a.type,types:t},n);return n}function Ga({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:"bytes32"},H(za({data:r,primaryType:n,types:e}))];if(n==="bytes")return r=`0x${(r.length%2?"0":"")+r.slice(2)}`,[{type:"bytes32"},H(r)];if(n==="string")return[{type:"bytes32"},H(ye(r))];if(n.lastIndexOf("]")===n.length-1){const s=n.slice(0,n.lastIndexOf("[")),a=r.map(o=>Ga({name:t,type:s,types:e,value:o}));return[{type:"bytes32"},H($e(a.map(([o])=>o),a.map(([,o])=>o)))]}return[{type:n},r]}function Ha(e){const{domain:t,message:n,primaryType:r,types:s}=e,a=(o,i)=>{for(const c of o){const{name:u,type:l}=c,d=i[u],f=l.match(ja);if(f&&(typeof d=="number"||typeof d=="bigint")){const[p,h,b]=f;O(d,{signed:h==="int",size:Number.parseInt(b)/8})}if(l==="address"&&typeof d=="string"&&!ie(d))throw new he({address:d});const y=l.match(qa);if(y){const[p,h]=y;if(h&&X(d)!==Number.parseInt(h))throw new aa({expectedSize:Number.parseInt(h),givenSize:X(d)})}const m=s[l];m&&a(m,d)}};if(s.EIP712Domain&&t&&a(s.EIP712Domain,t),r!=="EIP712Domain"){const o=s[r];a(o,n)}}function Rr({domain:e}){return[typeof(e==null?void 0:e.name)=="string"&&{name:"name",type:"string"},(e==null?void 0:e.version)&&{name:"version",type:"string"},typeof(e==null?void 0:e.chainId)=="number"&&{name:"chainId",type:"uint256"},(e==null?void 0:e.verifyingContract)&&{name:"verifyingContract",type:"address"},(e==null?void 0:e.salt)&&{name:"salt",type:"bytes32"}].filter(Boolean)}function kf({domain:e}){return La({domain:e,types:{EIP712Domain:Rr({domain:e})}})}function $f(e){const{abi:t,data:n}=e,r=Fe(n,0,4),s=t.find(a=>a.type==="function"&&r===Nt(pe(a)));if(!s)throw new Ui(r,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:s.name,args:"inputs"in s&&s.inputs&&s.inputs.length>0?nt(s.inputs,Fe(n,4)):void 0}}const Nn="/docs/contract/encodeDeployData";function Va(e){const{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;const s=t.find(o=>"type"in o&&o.type==="constructor");if(!s)throw new Qs({docsPath:Nn});if(!("inputs"in s))throw new Qt({docsPath:Nn});if(!s.inputs||s.inputs.length===0)throw new Qt({docsPath:Nn});const a=$e(s.inputs,n);return Ct([r,a])}const _n="/docs/contract/encodeErrorResult";function Cf(e){const{abi:t,errorName:n,args:r}=e;let s=t[0];if(n){const c=Ge({abi:t,args:r,name:n});if(!c)throw new ls(n,{docsPath:_n});s=c}if(s.type!=="error")throw new ls(void 0,{docsPath:_n});const a=pe(s),o=Nt(a);let i="0x";if(r&&r.length>0){if(!s.inputs)throw new Fi(s.name,{docsPath:_n});i=$e(s.inputs,r)}return Ct([o,i])}const Mn="/docs/contract/encodeFunctionResult";function Of(e){const{abi:t,functionName:n,result:r}=e;let s=t[0];if(n){const o=Ge({abi:t,name:n});if(!o)throw new Ye(n,{docsPath:Mn});s=o}if(s.type!=="function")throw new Ye(void 0,{docsPath:Mn});if(!s.outputs)throw new sa(s.name,{docsPath:Mn});let a=Array.isArray(r)?r:[r];return s.outputs.length===0&&!a[0]&&(a=[]),$e(s.outputs,a)}function Rf(e,t){if(e.length!==t.length)throw new ta({expectedLength:e.length,givenLength:t.length});const n=[];for(let r=0;r"bytecodeHash"in e?As(e.bytecodeHash)?e.bytecodeHash:ae(e.bytecodeHash):H(e.bytecode,"bytes"))();return Ue(Fe(H(fe([ae("0xff"),t,n,r])),12))}function Wa(e,t="hex"){const n=(()=>{if(typeof e=="string"){if(e.length>3&&e.length%2!==0)throw new vo(e);return $t(e)}return e})(),r=Yt(n,{recursiveReadLimit:Number.POSITIVE_INFINITY});return Ka(r,t)}function Ka(e,t="hex"){if(e.bytes.length===0)return t==="hex"?K(e.bytes):e.bytes;const n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){const s=Is(e,n,128),a=e.readBytes(s);return t==="hex"?K(a):a}const r=Is(e,n,192);return zu(e,r,t)}function Is(e,t,n){if(n===128&&t<128)return 1;if(t<=n+55)return t-n;if(t===n+55+1)return e.readUint8();if(t===n+55+2)return e.readUint16();if(t===n+55+3)return e.readUint24();if(t===n+55+4)return e.readUint32();throw new T("Invalid RLP prefix")}function zu(e,t,n){const r=e.position,s=[];for(;e.position-rt),Hu=Ya.map(e=>(9*e+5)%16);let Nr=[Ya],_r=[Hu];for(let e=0;e<4;e++)for(let t of[Nr,_r])t.push(t[e].map(n=>Gu[n]));const Ja=[[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8],[12,13,11,15,6,9,9,7,12,15,11,13,7,8,7,7],[13,15,14,11,7,7,6,8,13,14,13,12,5,5,6,9],[14,11,12,14,8,6,5,5,15,12,15,14,9,9,8,6],[15,12,13,13,9,5,8,6,14,11,12,11,8,6,5,5]].map(e=>new Uint8Array(e)),Vu=Nr.map((e,t)=>e.map(n=>Ja[t][n])),Zu=_r.map((e,t)=>e.map(n=>Ja[t][n])),Wu=new Uint32Array([0,1518500249,1859775393,2400959708,2840853838]),Ku=new Uint32Array([1352829926,1548603684,1836072691,2053994217,0]),Ht=(e,t)=>e<>>32-t;function Ss(e,t,n,r){return e===0?t^n^r:e===1?t&n|~t&r:e===2?(t|~n)^r:e===3?t&r|n&~r:t^(n|~r)}const Vt=new Uint32Array(16);class Yu extends _o{constructor(){super(64,20,8,!0),this.h0=1732584193,this.h1=-271733879,this.h2=-1732584194,this.h3=271733878,this.h4=-1009589776}get(){const{h0:t,h1:n,h2:r,h3:s,h4:a}=this;return[t,n,r,s,a]}set(t,n,r,s,a){this.h0=t|0,this.h1=n|0,this.h2=r|0,this.h3=s|0,this.h4=a|0}process(t,n){for(let y=0;y<16;y++,n+=4)Vt[y]=t.getUint32(n,!0);let r=this.h0|0,s=r,a=this.h1|0,o=a,i=this.h2|0,c=i,u=this.h3|0,l=u,d=this.h4|0,f=d;for(let y=0;y<5;y++){const m=4-y,p=Wu[y],h=Ku[y],b=Nr[y],g=_r[y],w=Vu[y],v=Zu[y];for(let E=0;E<16;E++){const x=Ht(r+Ss(y,a,i,u)+Vt[b[E]]+p,w[E])+d|0;r=d,d=u,u=Ht(i,10)|0,i=a,a=x}for(let E=0;E<16;E++){const x=Ht(s+Ss(m,o,c,l)+Vt[g[E]]+h,v[E])+f|0;s=f,f=l,l=Ht(c,10)|0,c=o,o=x}}this.set(this.h1+i+l|0,this.h2+u+f|0,this.h3+d+s|0,this.h4+r+o|0,this.h0+a+c|0)}roundClean(){Vt.fill(0)}destroy(){this.destroyed=!0,this.buffer.fill(0),this.set(0,0,0,0,0)}}const Ju=No(()=>new Yu);function _f(e,t){const n=t||"hex",r=Ju(R(e,{strict:!1})?ae(e):e);return n==="bytes"?r:ye(r)}async function Xu({hash:e,signature:t}){const n=R(e)?e:ye(e),{secp256k1:r}=await cr(()=>Promise.resolve().then(()=>il),void 0,import.meta.url);return`0x${(()=>{if(typeof t=="object"&&"r"in t&&"s"in t){const{r:u,s:l,v:d,yParity:f}=t,y=Number(f??d),m=Ts(y);return new r.Signature(j(u),j(l)).addRecoveryBit(m)}const o=R(t)?t:ye(t),i=Y(`0x${o.slice(130)}`),c=Ts(i);return r.Signature.fromCompact(o.substring(2,130)).addRecoveryBit(c)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Ts(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw new Error("Invalid yParityOrV value")}async function Mr({hash:e,signature:t}){return Kc(await Xu({hash:e,signature:t}))}const Qu=`Ethereum Signed Message: +`;function qr(e,t){const n=(()=>typeof e=="string"?_e(e):e.raw instanceof Uint8Array?e.raw:ae(e.raw))(),r=_e(`${Qu}${n.length}`);return H(fe([r,n]),t)}async function ed({message:e,signature:t}){return Mr({hash:qr(e),signature:t})}async function td(e){const{domain:t,message:n,primaryType:r,signature:s,types:a}=e;return Mr({hash:Fa({domain:t,message:n,primaryType:r,types:a}),signature:s})}async function Mf({address:e,message:t,signature:n}){return xn(Ue(e),await ed({message:t,signature:n}))}async function qf(e){const{address:t,domain:n,message:r,primaryType:s,signature:a,types:o}=e;return xn(Ue(t),await td({domain:n,message:r,primaryType:s,signature:a,types:o}))}function nd(e){const t=Mo(e,0,1);if(t==="0x03")return"eip4844";if(t==="0x02")return"eip1559";if(t==="0x01")return"eip2930";if(t!=="0x"&&Y(t)>=192)return"legacy";throw new qo({serializedType:t})}function rd(e){const t=nd(e);return t==="eip1559"?ad(e):t==="eip2930"?od(e):t==="eip4844"?sd(e):id(e)}function sd(e){const t=jr(e),n=t.length===4,r=n?t[0]:t,s=n?t.slice(1):[],[a,o,i,c,u,l,d,f,y,m,p,h,b,g]=r,[w,v,E]=s;if(!(r.length===11||r.length===14))throw new cn({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:i,maxFeePerGas:c,gas:u,to:l,value:d,data:f,accessList:y,...r.length>9?{v:h,r:b,s:g}:{}},serializedTransaction:e,type:"eip4844"});const x={blobVersionedHashes:p,chainId:Y(a),type:"eip4844"};return R(l)&&l!=="0x"&&(x.to=l),R(u)&&u!=="0x"&&(x.gas=j(u)),R(f)&&f!=="0x"&&(x.data=f),R(o)&&o!=="0x"&&(x.nonce=Y(o)),R(d)&&d!=="0x"&&(x.value=j(d)),R(m)&&m!=="0x"&&(x.maxFeePerBlobGas=j(m)),R(c)&&c!=="0x"&&(x.maxFeePerGas=j(c)),R(i)&&i!=="0x"&&(x.maxPriorityFeePerGas=j(i)),y.length!==0&&y!=="0x"&&(x.accessList=Fr(y)),w&&v&&E&&(x.sidecars=js({blobs:w,commitments:v,proofs:E})),jo(x),{...r.length===14?Lr(r):void 0,...x}}function ad(e){const t=jr(e),[n,r,s,a,o,i,c,u,l,d,f,y]=t;if(!(t.length===9||t.length===12))throw new cn({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:s,maxFeePerGas:a,gas:o,to:i,value:c,data:u,accessList:l,...t.length>9?{v:d,r:f,s:y}:{}},serializedTransaction:e,type:"eip1559"});const m={chainId:Y(n),type:"eip1559"};return R(i)&&i!=="0x"&&(m.to=i),R(o)&&o!=="0x"&&(m.gas=j(o)),R(u)&&u!=="0x"&&(m.data=u),R(r)&&r!=="0x"&&(m.nonce=Y(r)),R(c)&&c!=="0x"&&(m.value=j(c)),R(a)&&a!=="0x"&&(m.maxFeePerGas=j(a)),R(s)&&s!=="0x"&&(m.maxPriorityFeePerGas=j(s)),l.length!==0&&l!=="0x"&&(m.accessList=Fr(l)),Fo(m),{...t.length===12?Lr(t):void 0,...m}}function od(e){const t=jr(e),[n,r,s,a,o,i,c,u,l,d,f]=t;if(!(t.length===8||t.length===11))throw new cn({attributes:{chainId:n,nonce:r,gasPrice:s,gas:a,to:o,value:i,data:c,accessList:u,...t.length>8?{v:l,r:d,s:f}:{}},serializedTransaction:e,type:"eip2930"});const y={chainId:Y(n),type:"eip2930"};return R(o)&&o!=="0x"&&(y.to=o),R(a)&&a!=="0x"&&(y.gas=j(a)),R(c)&&c!=="0x"&&(y.data=c),R(r)&&r!=="0x"&&(y.nonce=Y(r)),R(i)&&i!=="0x"&&(y.value=j(i)),R(s)&&s!=="0x"&&(y.gasPrice=j(s)),u.length!==0&&u!=="0x"&&(y.accessList=Fr(u)),Lo(y),{...t.length===11?Lr(t):void 0,...y}}function id(e){const t=Wa(e,"hex"),[n,r,s,a,o,i,c,u,l]=t;if(!(t.length===6||t.length===9))throw new cn({attributes:{nonce:n,gasPrice:r,gas:s,to:a,value:o,data:i,...t.length>6?{v:c,r:u,s:l}:{}},serializedTransaction:e,type:"legacy"});const d={type:"legacy"};if(R(a)&&a!=="0x"&&(d.to=a),R(s)&&s!=="0x"&&(d.gas=j(s)),R(i)&&i!=="0x"&&(d.data=i),R(n)&&n!=="0x"&&(d.nonce=Y(n)),R(o)&&o!=="0x"&&(d.value=j(o)),R(r)&&r!=="0x"&&(d.gasPrice=j(r)),Uo(d),t.length===6)return d;const f=R(c)&&c!=="0x"?j(c):0n;if(l==="0x"&&u==="0x")return f>0&&(d.chainId=Number(f)),d;const y=f,m=Number((y-35n)/2n);if(m>0)d.chainId=m;else if(y!==27n&&y!==28n)throw new zo({v:y});return d.v=y,d.s=l,d.r=u,d.yParity=y%2n===0n?1:0,d}function jr(e){return Wa(`0x${e.slice(4)}`,"hex")}function Fr(e){const t=[];for(let n=0;nDu(a)?a:kt(a))})}return t}function Lr(e){const t=e.slice(-3),n=t[0]==="0x"||j(t[0])===0n?27n:28n;return{r:be(t[1],{size:32}),s:be(t[2],{size:32}),v:n,yParity:n===27n?0:1}}function jf(e,t="wei"){return xo(e,Eo[t])}function cd(e){return e.map(t=>({...t,value:BigInt(t.value)}))}function ud(e){return{...e,balance:e.balance?BigInt(e.balance):void 0,nonce:e.nonce?Y(e.nonce):void 0,storageProof:e.storageProof?cd(e.storageProof):void 0}}async function dd(e,{address:t,blockNumber:n,blockTag:r,storageKeys:s}){const a=r??"latest",o=n!==void 0?O(n):void 0,i=await e.request({method:"eth_getProof",params:[t,s,o||a]});return ud(i)}async function ld(e,{address:t,blockNumber:n,blockTag:r="latest",slot:s}){const a=n!==void 0?O(n):void 0;return await e.request({method:"eth_getStorageAt",params:[t,s,a||r]})}async function Ur(e,{blockHash:t,blockNumber:n,blockTag:r,hash:s,index:a}){var l,d,f;const o=r||"latest",i=n!==void 0?O(n):void 0;let c=null;if(s?c=await e.request({method:"eth_getTransactionByHash",params:[s]}):t?c=await e.request({method:"eth_getTransactionByBlockHashAndIndex",params:[t,O(a)]}):(i||o)&&(c=await e.request({method:"eth_getTransactionByBlockNumberAndIndex",params:[i||o,O(a)]})),!c)throw new Ls({blockHash:t,blockNumber:n,blockTag:o,hash:s,index:a});return(((f=(d=(l=e.chain)==null?void 0:l.formatters)==null?void 0:d.transaction)==null?void 0:f.format)||Do)(c)}async function fd(e,{hash:t,transactionReceipt:n}){const[r,s]=await Promise.all([$(e,Lt,"getBlockNumber")({}),t?$(e,Ur,"getBlockNumber")({hash:t}):void 0]),a=(n==null?void 0:n.blockNumber)||(s==null?void 0:s.blockNumber);return a?r-a+1n:0n}async function nr(e,{hash:t}){var s,a,o;const n=await e.request({method:"eth_getTransactionReceipt",params:[t]});if(!n)throw new Us({hash:t});return(((o=(a=(s=e.chain)==null?void 0:s.formatters)==null?void 0:a.transactionReceipt)==null?void 0:o.format)||Go)(n)}async function pd(e,t){var h;const{allowFailure:n=!0,batchSize:r,blockNumber:s,blockTag:a,multicallAddress:o,stateOverride:i}=t,c=t.contracts,u=r??(typeof((h=e.batch)==null?void 0:h.multicall)=="object"&&e.batch.multicall.batchSize||1024);let l=o;if(!l){if(!e.chain)throw new Error("client chain not configured. multicallAddress is required.");l=at({blockNumber:s,chain:e.chain,contract:"multicall3"})}const d=[[]];let f=0,y=0;for(let b=0;b0&&y>u&&d[f].length>0&&(f++,y=(x.length-2)/2,d[f]=[]),d[f]=[...d[f],{allowFailure:!0,callData:x,target:w}]}catch(x){const P=St(x,{abi:g,address:w,args:v,docsPath:"/docs/contract/multicall",functionName:E});if(!n)throw P;d[f]=[...d[f],{allowFailure:!0,callData:"0x",target:w}]}}const m=await Promise.allSettled(d.map(b=>$(e,ge,"readContract")({abi:Xn,address:l,args:[b],blockNumber:s,blockTag:a,functionName:"aggregate3",stateOverride:i}))),p=[];for(let b=0;be instanceof Uint8Array,bd=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Qe(e){if(!Pn(e))throw new Error("Uint8Array expected");let t="";for(let n=0;nr+s.length,0));let n=0;return e.forEach(r=>{if(!Pn(r))throw new Error("Uint8Array expected");t.set(r,n),n+=r.length}),t}function eo(e,t){if(e.length!==t.length)return!1;for(let n=0;nXa;e>>=En,t+=1);return t}function wd(e,t){return e>>BigInt(t)&En}const vd=(e,t,n)=>e|(n?En:Xa)<(yd<new Uint8Array(e),Bs=e=>Uint8Array.from(e);function to(e,t,n){if(typeof e!="number"||e<2)throw new Error("hashLen must be a number");if(typeof t!="number"||t<2)throw new Error("qByteLen must be a number");if(typeof n!="function")throw new Error("hmacFn must be a function");let r=qn(e),s=qn(e),a=0;const o=()=>{r.fill(1),s.fill(0),a=0},i=(...d)=>n(s,r,...d),c=(d=qn())=>{s=i(Bs([0]),d),r=i(),d.length!==0&&(s=i(Bs([1]),d),r=i())},u=()=>{if(a++>=1e3)throw new Error("drbg: tried 1000 values");let d=0;const f=[];for(;d{o(),c(d);let y;for(;!(y=f(u()));)c();return o(),y}}const xd={bigint:e=>typeof e=="bigint",function:e=>typeof e=="function",boolean:e=>typeof e=="boolean",string:e=>typeof e=="string",stringOrUint8Array:e=>typeof e=="string"||e instanceof Uint8Array,isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>typeof e=="function"&&Number.isSafeInteger(e.outputLen)};function ot(e,t,n={}){const r=(s,a,o)=>{const i=xd[a];if(typeof i!="function")throw new Error(`Invalid validator "${a}", expected function`);const c=e[s];if(!(o&&c===void 0)&&!i(c,e))throw new Error(`Invalid param ${String(s)}=${c} (${typeof c}), expected ${a}`)};for(const[s,a]of Object.entries(t))r(s,a,!1);for(const[s,a]of Object.entries(n))r(s,a,!0);return e}const Ed=Object.freeze(Object.defineProperty({__proto__:null,bitGet:wd,bitLen:gd,bitMask:Hr,bitSet:vd,bytesToHex:Qe,bytesToNumberBE:J,bytesToNumberLE:Dr,concatBytes:re,createHmacDrbg:to,ensureBytes:W,equalBytes:eo,hexToBytes:et,hexToNumber:zr,numberToBytesBE:Te,numberToBytesLE:Gr,numberToHexUnpadded:Qa,numberToVarBytesBE:hd,utf8ToBytes:An,validateObject:ot},Symbol.toStringTag,{value:"Module"}));function Pd(e,t){const n=R(e)?ae(e):e,r=R(t)?ae(t):t;return eo(n,r)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const V=BigInt(0),U=BigInt(1),Re=BigInt(2),Ad=BigInt(3),rr=BigInt(4),ks=BigInt(5),$s=BigInt(8);BigInt(9);BigInt(16);function G(e,t){const n=e%t;return n>=V?n:t+n}function Id(e,t,n){if(n<=V||t 0");if(n===U)return V;let r=U;for(;t>V;)t&U&&(r=r*e%n),e=e*e%n,t>>=U;return r}function oe(e,t,n){let r=e;for(;t-- >V;)r*=r,r%=n;return r}function sr(e,t){if(e===V||t<=V)throw new Error(`invert: expected positive integers, got n=${e} mod=${t}`);let n=G(e,t),r=t,s=V,a=U;for(;n!==V;){const i=r/n,c=r%n,u=s-a*i;r=n,n=c,s=a,a=u}if(r!==U)throw new Error("invert: does not exist");return G(s,t)}function Sd(e){const t=(e-U)/Re;let n,r,s;for(n=e-U,r=0;n%Re===V;n/=Re,r++);for(s=Re;s(r[s]="function",r),t);return ot(e,n)}function kd(e,t,n){if(n 0");if(n===V)return e.ONE;if(n===U)return t;let r=e.ONE,s=t;for(;n>V;)n&U&&(r=e.mul(r,s)),s=e.sqr(s),n>>=U;return r}function $d(e,t){const n=new Array(t.length),r=t.reduce((a,o,i)=>e.is0(o)?a:(n[i]=a,e.mul(a,o)),e.ONE),s=e.inv(r);return t.reduceRight((a,o,i)=>e.is0(o)?a:(n[i]=e.mul(a,n[i]),e.mul(a,o)),s),n}function ro(e,t){const n=t!==void 0?t:e.toString(2).length,r=Math.ceil(n/8);return{nBitLength:n,nByteLength:r}}function Cd(e,t,n=!1,r={}){if(e<=V)throw new Error(`Expected Field ORDER > 0, got ${e}`);const{nBitLength:s,nByteLength:a}=ro(e,t);if(a>2048)throw new Error("Field lengths over 2048 bytes are not supported");const o=Td(e),i=Object.freeze({ORDER:e,BITS:s,BYTES:a,MASK:Hr(s),ZERO:V,ONE:U,create:c=>G(c,e),isValid:c=>{if(typeof c!="bigint")throw new Error(`Invalid field element: expected bigint, got ${typeof c}`);return V<=c&&cc===V,isOdd:c=>(c&U)===U,neg:c=>G(-c,e),eql:(c,u)=>c===u,sqr:c=>G(c*c,e),add:(c,u)=>G(c+u,e),sub:(c,u)=>G(c-u,e),mul:(c,u)=>G(c*u,e),pow:(c,u)=>kd(i,c,u),div:(c,u)=>G(c*sr(u,e),e),sqrN:c=>c*c,addN:(c,u)=>c+u,subN:(c,u)=>c-u,mulN:(c,u)=>c*u,inv:c=>sr(c,e),sqrt:r.sqrt||(c=>o(i,c)),invertBatch:c=>$d(i,c),cmov:(c,u,l)=>l?u:c,toBytes:c=>n?Gr(c,a):Te(c,a),fromBytes:c=>{if(c.length!==a)throw new Error(`Fp.fromBytes: expected ${a}, got ${c.length}`);return n?Dr(c):J(c)}});return Object.freeze(i)}function so(e){if(typeof e!="bigint")throw new Error("field order must be bigint");const t=e.toString(2).length;return Math.ceil(t/8)}function ao(e){const t=so(e);return t+Math.ceil(t/2)}function Od(e,t,n=!1){const r=e.length,s=so(t),a=ao(t);if(r<16||r1024)throw new Error(`expected ${a}-1024 bytes of input, got ${r}`);const o=n?J(e):Dr(e),i=G(o,t-U)+U;return n?Gr(i,s):Te(i,s)}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const Rd=BigInt(0),jn=BigInt(1);function Nd(e,t){const n=(s,a)=>{const o=a.negate();return s?o:a},r=s=>{const a=Math.ceil(t/s)+1,o=2**(s-1);return{windows:a,windowSize:o}};return{constTimeNegate:n,unsafeLadder(s,a){let o=e.ZERO,i=s;for(;a>Rd;)a&jn&&(o=o.add(i)),i=i.double(),a>>=jn;return o},precomputeWindow(s,a){const{windows:o,windowSize:i}=r(a),c=[];let u=s,l=u;for(let d=0;d>=y,h>c&&(h-=f,o+=jn);const b=p,g=p+Math.abs(h)-1,w=m%2!==0,v=h<0;h===0?l=l.add(n(w,a[b])):u=u.add(n(v,a[g]))}return{p:u,f:l}},wNAFCached(s,a,o,i){const c=s._WINDOW_SIZE||1;let u=a.get(s);return u||(u=this.precomputeWindow(s,c),c!==1&&a.set(s,i(u))),this.wNAF(c,u,o)}}}function oo(e){return no(e.Fp),ot(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...ro(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function _d(e){const t=oo(e);ot(t,{a:"field",b:"field"},{allowedPrivateKeyLengths:"array",wrapPrivateKey:"boolean",isTorsionFree:"function",clearCofactor:"function",allowInfinityPoint:"boolean",fromBytes:"function",toBytes:"function"});const{endo:n,Fp:r,a:s}=t;if(n){if(!r.eql(s,r.ZERO))throw new Error("Endomorphism can only be defined for Koblitz curves that have a=0");if(typeof n!="object"||typeof n.beta!="bigint"||typeof n.splitScalar!="function")throw new Error("Expected endomorphism with beta: bigint and splitScalar: function")}return Object.freeze({...t})}const{bytesToNumberBE:Md,hexToBytes:qd}=Ed,Ne={Err:class extends Error{constructor(t=""){super(t)}},_parseInt(e){const{Err:t}=Ne;if(e.length<2||e[0]!==2)throw new t("Invalid signature integer tag");const n=e[1],r=e.subarray(2,n+2);if(!n||r.length!==n)throw new t("Invalid signature integer: wrong length");if(r[0]&128)throw new t("Invalid signature integer: negative");if(r[0]===0&&!(r[1]&128))throw new t("Invalid signature integer: unnecessary leading zero");return{d:Md(r),l:e.subarray(n+2)}},toSig(e){const{Err:t}=Ne,n=typeof e=="string"?qd(e):e;if(!(n instanceof Uint8Array))throw new Error("ui8a expected");let r=n.length;if(r<2||n[0]!=48)throw new t("Invalid signature tag");if(n[1]!==r-2)throw new t("Invalid signature: incorrect length");const{d:s,l:a}=Ne._parseInt(n.subarray(2)),{d:o,l:i}=Ne._parseInt(a);if(i.length)throw new t("Invalid signature: left bytes after parsing");return{r:s,s:o}},hexFromSig(e){const t=u=>Number.parseInt(u[0],16)&8?"00"+u:u,n=u=>{const l=u.toString(16);return l.length&1?`0${l}`:l},r=t(n(e.s)),s=t(n(e.r)),a=r.length/2,o=s.length/2,i=n(a),c=n(o);return`30${n(o+a+4)}02${c}${s}02${i}${r}`}},le=BigInt(0),L=BigInt(1),Pe=BigInt(2),tn=BigInt(3),Cs=BigInt(4);function jd(e){const t=_d(e),{Fp:n}=t,r=t.toBytes||((m,p,h)=>{const b=p.toAffine();return re(Uint8Array.from([4]),n.toBytes(b.x),n.toBytes(b.y))}),s=t.fromBytes||(m=>{const p=m.subarray(1),h=n.fromBytes(p.subarray(0,n.BYTES)),b=n.fromBytes(p.subarray(n.BYTES,2*n.BYTES));return{x:h,y:b}});function a(m){const{a:p,b:h}=t,b=n.sqr(m),g=n.mul(b,m);return n.add(n.add(g,n.mul(m,p)),h)}if(!n.eql(n.sqr(t.Gy),a(t.Gx)))throw new Error("bad generator point: equation left != right");function o(m){return typeof m=="bigint"&&len.eql(w,n.ZERO);return g(h)&&g(b)?d.ZERO:new d(h,b,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(p){const h=n.invertBatch(p.map(b=>b.pz));return p.map((b,g)=>b.toAffine(h[g])).map(d.fromAffine)}static fromHex(p){const h=d.fromAffine(s(W("pointHex",p)));return h.assertValidity(),h}static fromPrivateKey(p){return d.BASE.multiply(c(p))}_setWindowSize(p){this._WINDOW_SIZE=p,u.delete(this)}assertValidity(){if(this.is0()){if(t.allowInfinityPoint&&!n.is0(this.py))return;throw new Error("bad point: ZERO")}const{x:p,y:h}=this.toAffine();if(!n.isValid(p)||!n.isValid(h))throw new Error("bad point: x or y not FE");const b=n.sqr(h),g=a(p);if(!n.eql(b,g))throw new Error("bad point: equation left != right");if(!this.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:p}=this.toAffine();if(n.isOdd)return!n.isOdd(p);throw new Error("Field doesn't support isOdd")}equals(p){l(p);const{px:h,py:b,pz:g}=this,{px:w,py:v,pz:E}=p,x=n.eql(n.mul(h,E),n.mul(w,g)),P=n.eql(n.mul(b,E),n.mul(v,g));return x&&P}negate(){return new d(this.px,n.neg(this.py),this.pz)}double(){const{a:p,b:h}=t,b=n.mul(h,tn),{px:g,py:w,pz:v}=this;let E=n.ZERO,x=n.ZERO,P=n.ZERO,A=n.mul(g,g),S=n.mul(w,w),k=n.mul(v,v),C=n.mul(g,w);return C=n.add(C,C),P=n.mul(g,v),P=n.add(P,P),E=n.mul(p,P),x=n.mul(b,k),x=n.add(E,x),E=n.sub(S,x),x=n.add(S,x),x=n.mul(E,x),E=n.mul(C,E),P=n.mul(b,P),k=n.mul(p,k),C=n.sub(A,k),C=n.mul(p,C),C=n.add(C,P),P=n.add(A,A),A=n.add(P,A),A=n.add(A,k),A=n.mul(A,C),x=n.add(x,A),k=n.mul(w,v),k=n.add(k,k),A=n.mul(k,C),E=n.sub(E,A),P=n.mul(k,S),P=n.add(P,P),P=n.add(P,P),new d(E,x,P)}add(p){l(p);const{px:h,py:b,pz:g}=this,{px:w,py:v,pz:E}=p;let x=n.ZERO,P=n.ZERO,A=n.ZERO;const S=t.a,k=n.mul(t.b,tn);let C=n.mul(h,w),M=n.mul(b,v),_=n.mul(g,E),ee=n.add(h,b),I=n.add(w,v);ee=n.mul(ee,I),I=n.add(C,M),ee=n.sub(ee,I),I=n.add(h,g);let B=n.add(w,E);return I=n.mul(I,B),B=n.add(C,_),I=n.sub(I,B),B=n.add(b,g),x=n.add(v,E),B=n.mul(B,x),x=n.add(M,_),B=n.sub(B,x),A=n.mul(S,I),x=n.mul(k,_),A=n.add(x,A),x=n.sub(M,A),A=n.add(M,A),P=n.mul(x,A),M=n.add(C,C),M=n.add(M,C),_=n.mul(S,_),I=n.mul(k,I),M=n.add(M,_),_=n.sub(C,_),_=n.mul(S,_),I=n.add(I,_),C=n.mul(M,I),P=n.add(P,C),C=n.mul(B,I),x=n.mul(ee,x),x=n.sub(x,C),C=n.mul(ee,M),A=n.mul(B,A),A=n.add(A,C),new d(x,P,A)}subtract(p){return this.add(p.negate())}is0(){return this.equals(d.ZERO)}wNAF(p){return y.wNAFCached(this,u,p,h=>{const b=n.invertBatch(h.map(g=>g.pz));return h.map((g,w)=>g.toAffine(b[w])).map(d.fromAffine)})}multiplyUnsafe(p){const h=d.ZERO;if(p===le)return h;if(i(p),p===L)return this;const{endo:b}=t;if(!b)return y.unsafeLadder(this,p);let{k1neg:g,k1:w,k2neg:v,k2:E}=b.splitScalar(p),x=h,P=h,A=this;for(;w>le||E>le;)w&L&&(x=x.add(A)),E&L&&(P=P.add(A)),A=A.double(),w>>=L,E>>=L;return g&&(x=x.negate()),v&&(P=P.negate()),P=new d(n.mul(P.px,b.beta),P.py,P.pz),x.add(P)}multiply(p){i(p);let h=p,b,g;const{endo:w}=t;if(w){const{k1neg:v,k1:E,k2neg:x,k2:P}=w.splitScalar(h);let{p:A,f:S}=this.wNAF(E),{p:k,f:C}=this.wNAF(P);A=y.constTimeNegate(v,A),k=y.constTimeNegate(x,k),k=new d(n.mul(k.px,w.beta),k.py,k.pz),b=A.add(k),g=S.add(C)}else{const{p:v,f:E}=this.wNAF(h);b=v,g=E}return d.normalizeZ([b,g])[0]}multiplyAndAddUnsafe(p,h,b){const g=d.BASE,w=(E,x)=>x===le||x===L||!E.equals(g)?E.multiplyUnsafe(x):E.multiply(x),v=w(this,h).add(w(p,b));return v.is0()?void 0:v}toAffine(p){const{px:h,py:b,pz:g}=this,w=this.is0();p==null&&(p=w?n.ONE:n.inv(g));const v=n.mul(h,p),E=n.mul(b,p),x=n.mul(g,p);if(w)return{x:n.ZERO,y:n.ZERO};if(!n.eql(x,n.ONE))throw new Error("invZ was invalid");return{x:v,y:E}}isTorsionFree(){const{h:p,isTorsionFree:h}=t;if(p===L)return!0;if(h)return h(d,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:p,clearCofactor:h}=t;return p===L?this:h?h(d,this):this.multiplyUnsafe(t.h)}toRawBytes(p=!0){return this.assertValidity(),r(d,this,p)}toHex(p=!0){return Qe(this.toRawBytes(p))}}d.BASE=new d(t.Gx,t.Gy,n.ONE),d.ZERO=new d(n.ZERO,n.ONE,n.ZERO);const f=t.nBitLength,y=Nd(d,t.endo?Math.ceil(f/2):f);return{CURVE:t,ProjectivePoint:d,normPrivateKeyToScalar:c,weierstrassEquation:a,isWithinCurveOrder:o}}function Fd(e){const t=oo(e);return ot(t,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})}function Ld(e){const t=Fd(e),{Fp:n,n:r}=t,s=n.BYTES+1,a=2*n.BYTES+1;function o(I){return leQe(Te(I,t.nByteLength));function m(I){const B=r>>L;return I>B}function p(I){return m(I)?i(-I):I}const h=(I,B,N)=>J(I.slice(B,N));class b{constructor(B,N,F){this.r=B,this.s=N,this.recovery=F,this.assertValidity()}static fromCompact(B){const N=t.nByteLength;return B=W("compactSignature",B,N*2),new b(h(B,0,N),h(B,N,2*N))}static fromDER(B){const{r:N,s:F}=Ne.toSig(W("DER",B));return new b(N,F)}assertValidity(){if(!f(this.r))throw new Error("r must be 0 < r < CURVE.n");if(!f(this.s))throw new Error("s must be 0 < s < CURVE.n")}addRecoveryBit(B){return new b(this.r,this.s,B)}recoverPublicKey(B){const{r:N,s:F,recovery:q}=this,D=P(W("msgHash",B));if(q==null||![0,1,2,3].includes(q))throw new Error("recovery id invalid");const te=q===2||q===3?N+t.n:N;if(te>=n.ORDER)throw new Error("recovery id 2 or 3 invalid");const ne=q&1?"03":"02",ve=u.fromHex(ne+y(te)),xe=c(te),He=i(-D*xe),it=i(F*xe),Ee=u.BASE.multiplyAndAddUnsafe(ve,He,it);if(!Ee)throw new Error("point at infinify");return Ee.assertValidity(),Ee}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new b(this.r,i(-this.s),this.recovery):this}toDERRawBytes(){return et(this.toDERHex())}toDERHex(){return Ne.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return et(this.toCompactHex())}toCompactHex(){return y(this.r)+y(this.s)}}const g={isValidPrivateKey(I){try{return l(I),!0}catch{return!1}},normPrivateKeyToScalar:l,randomPrivateKey:()=>{const I=ao(t.n);return Od(t.randomBytes(I),t.n)},precompute(I=8,B=u.BASE){return B._setWindowSize(I),B.multiply(BigInt(3)),B}};function w(I,B=!0){return u.fromPrivateKey(I).toRawBytes(B)}function v(I){const B=I instanceof Uint8Array,N=typeof I=="string",F=(B||N)&&I.length;return B?F===s||F===a:N?F===2*s||F===2*a:I instanceof u}function E(I,B,N=!0){if(v(I))throw new Error("first arg must be private key");if(!v(B))throw new Error("second arg must be public key");return u.fromHex(B).multiply(l(I)).toRawBytes(N)}const x=t.bits2int||function(I){const B=J(I),N=I.length*8-t.nBitLength;return N>0?B>>BigInt(N):B},P=t.bits2int_modN||function(I){return i(x(I))},A=Hr(t.nBitLength);function S(I){if(typeof I!="bigint")throw new Error("bigint expected");if(!(le<=I&&IOe in N))throw new Error("sign() legacy options not supported");const{hash:F,randomBytes:q}=t;let{lowS:D,prehash:te,extraEntropy:ne}=N;D==null&&(D=!0),I=W("msgHash",I),te&&(I=W("prehashed msgHash",F(I)));const ve=P(I),xe=l(B),He=[S(xe),S(ve)];if(ne!=null){const Oe=ne===!0?q(n.BYTES):ne;He.push(W("extraEntropy",Oe))}const it=re(...He),Ee=ve;function Tn(Oe){const Ve=x(Oe);if(!f(Ve))return;const Yr=c(Ve),Ze=u.BASE.multiply(Ve).toAffine(),ue=i(Ze.x);if(ue===le)return;const We=i(Yr*i(Ee+ue*xe));if(We===le)return;let Jr=(Ze.x===ue?0:2)|Number(Ze.y&L),Xr=We;return D&&m(We)&&(Xr=p(We),Jr^=1),new b(ue,Xr,Jr)}return{seed:it,k2sig:Tn}}const C={lowS:t.lowS,prehash:!1},M={lowS:t.lowS,prehash:!1};function _(I,B,N=C){const{seed:F,k2sig:q}=k(I,B,N),D=t;return to(D.hash.outputLen,D.nByteLength,D.hmac)(F,q)}u.BASE._setWindowSize(8);function ee(I,B,N,F=M){var Ze;const q=I;if(B=W("msgHash",B),N=W("publicKey",N),"strict"in F)throw new Error("options.strict was renamed to lowS");const{lowS:D,prehash:te}=F;let ne,ve;try{if(typeof q=="string"||q instanceof Uint8Array)try{ne=b.fromDER(q)}catch(ue){if(!(ue instanceof Ne.Err))throw ue;ne=b.fromCompact(q)}else if(typeof q=="object"&&typeof q.r=="bigint"&&typeof q.s=="bigint"){const{r:ue,s:We}=q;ne=new b(ue,We)}else throw new Error("PARSE");ve=u.fromHex(N)}catch(ue){if(ue.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(D&&ne.hasHighS())return!1;te&&(B=t.hash(B));const{r:xe,s:He}=ne,it=P(B),Ee=c(He),Tn=i(it*Ee),Oe=i(xe*Ee),Ve=(Ze=u.BASE.multiplyAndAddUnsafe(ve,Tn,Oe))==null?void 0:Ze.toAffine();return Ve?i(Ve.x)===xe:!1}return{CURVE:t,getPublicKey:w,getSharedSecret:E,sign:_,verify:ee,ProjectivePoint:u,Signature:b,utils:g}}function Ud(e,t){const n=e.ORDER;let r=le;for(let m=n-L;m%Pe===le;m/=Pe)r+=L;const s=r,a=Pe<{let h=d,b=e.pow(p,u),g=e.sqr(b);g=e.mul(g,p);let w=e.mul(m,g);w=e.pow(w,c),w=e.mul(w,b),b=e.mul(w,p),g=e.mul(w,m);let v=e.mul(g,b);w=e.pow(v,l);let E=e.eql(w,e.ONE);b=e.mul(g,f),w=e.mul(v,h),g=e.cmov(b,g,E),v=e.cmov(w,v,E);for(let x=s;x>L;x--){let P=x-Pe;P=Pe<{let g=e.sqr(b);const w=e.mul(h,b);g=e.mul(g,w);let v=e.pow(g,m);v=e.mul(v,w);const E=e.mul(v,p),x=e.mul(e.sqr(v),b),P=e.eql(x,h);let A=e.cmov(E,v,P);return{isValid:P,value:A}}}return y}function zd(e,t){if(no(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const n=Ud(e,t.Z);if(!e.isOdd)throw new Error("Fp.isOdd is not implemented!");return r=>{let s,a,o,i,c,u,l,d;s=e.sqr(r),s=e.mul(s,t.Z),a=e.sqr(s),a=e.add(a,s),o=e.add(a,e.ONE),o=e.mul(o,t.B),i=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),i=e.mul(i,t.A),a=e.sqr(o),u=e.sqr(i),c=e.mul(u,t.A),a=e.add(a,c),a=e.mul(a,o),u=e.mul(u,i),c=e.mul(u,t.B),a=e.add(a,c),l=e.mul(s,o);const{isValid:f,value:y}=n(a,u);d=e.mul(s,r),d=e.mul(d,y),l=e.cmov(l,o,f),d=e.cmov(d,y,f);const m=e.isOdd(r)===e.isOdd(d);return d=e.cmov(e.neg(d),d,m),l=e.div(l,i),{x:l,y:d}}}function Dd(e){if(e instanceof Uint8Array)return e;if(typeof e=="string")return An(e);throw new Error("DST must be Uint8Array or string")}const Gd=J;function Ae(e,t){if(e<0||e>=1<<8*t)throw new Error(`bad I2OSP call: value=${e} length=${t}`);const n=Array.from({length:t}).fill(0);for(let r=t-1;r>=0;r--)n[r]=e&255,e>>>=8;return new Uint8Array(n)}function Hd(e,t){const n=new Uint8Array(e.length);for(let r=0;r255&&(t=r(re(An("H2C-OVERSIZE-DST-"),t)));const{outputLen:s,blockLen:a}=r,o=Math.ceil(n/s);if(o>255)throw new Error("Invalid xmd length");const i=re(t,Ae(t.length,1)),c=Ae(0,a),u=Ae(n,2),l=new Array(o),d=r(re(c,e,u,Ae(0,1),i));l[0]=r(re(d,Ae(1,1),i));for(let y=1;y<=o;y++){const m=[Hd(d,l[y-1]),Ae(y+1,1),i];l[y]=r(re(...m))}return re(...l).slice(0,n)}function Zd(e,t,n,r,s){if(Tt(e),Tt(t),Vr(n),t.length>255){const a=Math.ceil(2*r/8);t=s.create({dkLen:a}).update(An("H2C-OVERSIZE-DST-")).update(t).digest()}if(n>65535||t.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return s.create({dkLen:n}).update(e).update(Ae(n,2)).update(t).update(Ae(t.length,1)).digest()}function Os(e,t,n){ot(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});const{p:r,k:s,m:a,hash:o,expand:i,DST:c}=n;Tt(e),Vr(t);const u=Dd(c),l=r.toString(2).length,d=Math.ceil((l+s)/8),f=t*a*d;let y;if(i==="xmd")y=Vd(e,u,f,o);else if(i==="xof")y=Zd(e,u,f,s,o);else if(i==="_internal_pass")y=e;else throw new Error('expand must be "xmd" or "xof"');const m=new Array(t);for(let p=0;pArray.from(r).reverse());return(r,s)=>{const[a,o,i,c]=n.map(u=>u.reduce((l,d)=>e.add(e.mul(l,r),d)));return r=e.div(a,o),s=e.mul(s,e.div(i,c)),{x:r,y:s}}}function Kd(e,t,n){if(typeof t!="function")throw new Error("mapToCurve() must be defined");return{hashToCurve(r,s){const a=Os(r,2,{...n,DST:n.DST,...s}),o=e.fromAffine(t(a[0])),i=e.fromAffine(t(a[1])),c=o.add(i).clearCofactor();return c.assertValidity(),c},encodeToCurve(r,s){const a=Os(r,1,{...n,DST:n.encodeDST,...s}),o=e.fromAffine(t(a[0])).clearCofactor();return o.assertValidity(),o}}}class io extends Ho{constructor(t,n){super(),this.finished=!1,this.destroyed=!1,Vo(t);const r=Zo(n);if(this.iHash=t.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const s=this.blockLen,a=new Uint8Array(s);a.set(r.length>s?t.create().update(r).digest():r);for(let o=0;onew io(e,t).update(n).digest();co.create=(e,t)=>new io(e,t);/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */function Yd(e){return{hash:e,hmac:(t,...n)=>co(e,t,Ko(...n)),randomBytes:zs}}function Jd(e,t){const n=r=>Ld({...e,...Yd(r)});return Object.freeze({...n(t),create:n})}/*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const In=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),nn=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),uo=BigInt(1),rn=BigInt(2),Rs=(e,t)=>(e+t/rn)/t;function lo(e){const t=In,n=BigInt(3),r=BigInt(6),s=BigInt(11),a=BigInt(22),o=BigInt(23),i=BigInt(44),c=BigInt(88),u=e*e*e%t,l=u*u*e%t,d=oe(l,n,t)*l%t,f=oe(d,n,t)*l%t,y=oe(f,rn,t)*u%t,m=oe(y,s,t)*y%t,p=oe(m,a,t)*m%t,h=oe(p,i,t)*p%t,b=oe(h,c,t)*h%t,g=oe(b,i,t)*p%t,w=oe(g,n,t)*l%t,v=oe(w,o,t)*m%t,E=oe(v,r,t)*u%t,x=oe(E,rn,t);if(!Be.eql(Be.sqr(x),e))throw new Error("Cannot find square root");return x}const Be=Cd(In,void 0,void 0,{sqrt:lo}),we=Jd({a:BigInt(0),b:BigInt(7),Fp:Be,n:nn,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{const t=nn,n=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-uo*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),s=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),a=n,o=BigInt("0x100000000000000000000000000000000"),i=Rs(a*e,t),c=Rs(-r*e,t);let u=G(e-i*n-c*s,t),l=G(-i*r-c*a,t);const d=u>o,f=l>o;if(d&&(u=t-u),f&&(l=t-l),u>o||l>o)throw new Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:d,k1:u,k2neg:f,k2:l}}}},Jt),Sn=BigInt(0),fo=e=>typeof e=="bigint"&&Sntypeof e=="bigint"&&Sns.charCodeAt(0)));n=re(r,r),Ns[e]=n}return Jt(re(n,...t))}const Zr=e=>e.toRawBytes(!0).slice(1),ar=e=>Te(e,32),Fn=e=>G(e,In),Bt=e=>G(e,nn),Wr=we.ProjectivePoint,Qd=(e,t,n)=>Wr.BASE.multiplyAndAddUnsafe(e,t,n);function or(e){let t=we.utils.normPrivateKeyToScalar(e),n=Wr.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Bt(-t),bytes:Zr(n)}}function po(e){if(!fo(e))throw new Error("bad x: need 0 < x < p");const t=Fn(e*e),n=Fn(t*e+BigInt(7));let r=lo(n);r%rn!==Sn&&(r=Fn(-r));const s=new Wr(e,r,uo);return s.assertValidity(),s}function mo(...e){return Bt(J(sn("BIP0340/challenge",...e)))}function el(e){return or(e).bytes}function tl(e,t,n=zs(32)){const r=W("message",e),{bytes:s,scalar:a}=or(t),o=W("auxRand",n,32),i=ar(a^J(sn("BIP0340/aux",o))),c=sn("BIP0340/nonce",i,s,r),u=Bt(J(c));if(u===Sn)throw new Error("sign failed: k is zero");const{bytes:l,scalar:d}=or(u),f=mo(l,s,r),y=new Uint8Array(64);if(y.set(l,0),y.set(ar(Bt(d+f*a)),32),!yo(y,r,s))throw new Error("sign: Invalid signature produced");return y}function yo(e,t,n){const r=W("signature",e,64),s=W("message",t),a=W("publicKey",n,32);try{const o=po(J(a)),i=J(r.subarray(0,32));if(!fo(i))return!1;const c=J(r.subarray(32,64));if(!Xd(c))return!1;const u=mo(ar(i),Zr(o),s),l=Qd(o,c,Bt(-u));return!(!l||!l.hasEvenY()||l.toAffine().x!==i)}catch{return!1}}const nl=(()=>({getPublicKey:el,sign:tl,verify:yo,utils:{randomPrivateKey:we.utils.randomPrivateKey,lift_x:po,pointToBytes:Zr,numberToBytesBE:Te,bytesToNumberBE:J,taggedHash:sn,mod:G}}))(),rl=(()=>Wd(Be,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(e=>e.map(t=>BigInt(t)))))(),sl=(()=>zd(Be,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:Be.create(BigInt("-11"))}))(),bo=(()=>Kd(we.ProjectivePoint,e=>{const{x:t,y:n}=sl(Be.create(e[0]));return rl(t,n)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:Be.ORDER,m:1,k:128,expand:"xmd",hash:Jt}))(),al=(()=>bo.hashToCurve)(),ol=(()=>bo.encodeToCurve)(),il=Object.freeze(Object.defineProperty({__proto__:null,encodeToCurve:ol,hashToCurve:al,schnorr:nl,secp256k1:we},Symbol.toStringTag,{value:"Module"}));function cl({r:e,s:t,v:n,yParity:r}){const s=(()=>{if(r===0||r===1)return r;if(n&&(n===27n||n===28n||n>=35n))return n%2n===0n?1:0;throw new Error("Invalid `v` or `yParity` value")})();return`0x${new we.Signature(j(e),j(t)).toCompactHex()}${s===0?"1b":"1c"}`}async function Kr(e,{address:t,hash:n,signature:r,...s}){const a=(()=>R(r)?r:typeof r=="object"&&"r"in r&&"s"in r?cl(r):K(r))();try{const{data:o}=await $(e,jt,"call")({data:Va({abi:_c,args:[t,n,a],bytecode:md}),...s});return Pd(o??"0x0","0x1")}catch(o){if(o instanceof ma)return!1;throw o}}async function ul(e,{address:t,message:n,signature:r,...s}){const a=qr(n);return Kr(e,{address:t,hash:a,signature:r,...s})}async function dl(e,t){const{address:n,signature:r,message:s,primaryType:a,types:o,domain:i,...c}=t,u=Fa({message:s,primaryType:a,types:o,domain:i});return Kr(e,{address:n,hash:u,signature:r,...c})}function ho(e,{emitOnBegin:t=!1,emitMissed:n=!1,onBlockNumber:r,onError:s,poll:a,pollingInterval:o=e.pollingInterval}){const i=(()=>typeof a<"u"?a:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"))();let c;return i?(()=>{const d=z(["watchBlockNumber",e.uid,t,n,o]);return Se(d,{onBlockNumber:r,onError:s},f=>Ft(async()=>{var y;try{const m=await $(e,Lt,"getBlockNumber")({cacheTime:0});if(c){if(m===c)return;if(m-c>1&&n)for(let p=c+1n;pc)&&(f.onBlockNumber(m,c),c=m)}catch(m){(y=f.onError)==null||y.call(f,m)}},{emitOnBegin:t,interval:o}))})():(()=>{const d=z(["watchBlockNumber",e.uid,t,n]);return Se(d,{onBlockNumber:r,onError:s},f=>{let y=!0,m=()=>y=!1;return(async()=>{try{const p=(()=>{if(e.transport.type==="fallback"){const b=e.transport.transports.find(g=>g.config.type==="webSocket");return b?b.value:e.transport}return e.transport})(),{unsubscribe:h}=await p.subscribe({params:["newHeads"],onData(b){var w;if(!y)return;const g=j((w=b.result)==null?void 0:w.number);f.onBlockNumber(g,c),c=g},onError(b){var g;(g=f.onError)==null||g.call(f,b)}});m=h,y||m()}catch(p){s==null||s(p)}})(),()=>m()})})()}async function ll(e,{confirmations:t=1,hash:n,onReplaced:r,pollingInterval:s=e.pollingInterval,retryCount:a=6,retryDelay:o=({count:c})=>~~(1<{i&&setTimeout(()=>p(new us({hash:n})),i);const h=Se(c,{onReplaced:r,resolve:m,reject:p},b=>{const g=$(e,ho,"watchBlockNumber")({emitMissed:!0,emitOnBegin:!0,poll:!0,pollingInterval:s,async onBlockNumber(w){const v=x=>{g(),x(),h()};let E=w;if(!y){u>a&&v(()=>b.reject(new us({hash:n})));try{if(f){if(t>1&&(!f.blockNumber||E-f.blockNumber+1nb.resolve(f));return}if(l||(y=!0,await er(async()=>{l=await $(e,Ur,"getTransaction")({hash:n}),l.blockNumber&&(E=l.blockNumber)},{delay:o,retryCount:a}),y=!1),f=await $(e,nr,"getTransactionReceipt")({hash:n}),t>1&&(!f.blockNumber||E-f.blockNumber+1nb.resolve(f))}catch(x){if(x instanceof Ls||x instanceof Us){if(!l){y=!1;return}try{d=l,y=!0;const P=await er(()=>$(e,Ie,"getBlock")({blockNumber:E,includeTransactions:!0}),{delay:o,retryCount:a,shouldRetry:({error:k})=>k instanceof ba});y=!1;const A=P.transactions.find(({from:k,nonce:C})=>k===d.from&&C===d.nonce);if(!A||(f=await $(e,nr,"getTransactionReceipt")({hash:A.hash}),t>1&&(!f.blockNumber||E-f.blockNumber+1n{var k;(k=b.onReplaced)==null||k.call(b,{reason:S,replacedTransaction:d,transaction:A,transactionReceipt:f}),b.resolve(f)})}catch(P){v(()=>b.reject(P))}}else v(()=>b.reject(x))}finally{u++}}}})})})}function fl(e,{blockTag:t="latest",emitMissed:n=!1,emitOnBegin:r=!1,onBlock:s,onError:a,includeTransactions:o,poll:i,pollingInterval:c=e.pollingInterval}){const u=(()=>typeof i<"u"?i:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"))(),l=o??!1;let d;return u?(()=>{const m=z(["watchBlocks",e.uid,t,n,r,l,c]);return Se(m,{onBlock:s,onError:a},p=>Ft(async()=>{var h;try{const b=await $(e,Ie,"getBlock")({blockTag:t,includeTransactions:l});if(b.number&&(d!=null&&d.number)){if(b.number===d.number)return;if(b.number-d.number>1&&n)for(let g=(d==null?void 0:d.number)+1n;gd.number)&&(p.onBlock(b,d),d=b)}catch(b){(h=p.onError)==null||h.call(p,b)}},{emitOnBegin:r,interval:c}))})():(()=>{let m=!0,p=()=>m=!1;return(async()=>{try{const h=(()=>{if(e.transport.type==="fallback"){const g=e.transport.transports.find(w=>w.config.type==="webSocket");return g?g.value:e.transport}return e.transport})(),{unsubscribe:b}=await h.subscribe({params:["newHeads"],onData(g){var E,x,P;if(!m)return;const v=(((P=(x=(E=e.chain)==null?void 0:E.formatters)==null?void 0:x.block)==null?void 0:P.format)||qs)(g.result);s(v,d),d=v},onError(g){a==null||a(g)}});p=b,m||p()}catch(h){a==null||a(h)}})(),()=>p()})()}function pl(e,{address:t,args:n,batch:r=!0,event:s,events:a,fromBlock:o,onError:i,onLogs:c,poll:u,pollingInterval:l=e.pollingInterval,strict:d}){const f=(()=>typeof u<"u"?u:typeof o=="bigint"?!0:!(e.transport.type==="webSocket"||e.transport.type==="fallback"&&e.transport.transports[0].config.type==="webSocket"))(),y=d??!1;return f?(()=>{const h=z(["watchEvent",t,n,r,e.uid,s,l,o]);return Se(h,{onLogs:c,onError:i},b=>{let g;o!==void 0&&(g=o-1n);let w,v=!1;const E=Ft(async()=>{var x;if(!v){try{w=await $(e,Ra,"createEventFilter")({address:t,args:n,event:s,events:a,strict:y,fromBlock:o})}catch{}v=!0;return}try{let P;if(w)P=await $(e,bn,"getFilterChanges")({filter:w});else{const A=await $(e,Lt,"getBlockNumber")({});g&&g!==A?P=await $(e,Ar,"getLogs")({address:t,args:n,event:s,events:a,fromBlock:g+1n,toBlock:A}):P=[],g=A}if(P.length===0)return;if(r)b.onLogs(P);else for(const A of P)b.onLogs([A])}catch(P){w&&P instanceof De&&(v=!1),(x=b.onError)==null||x.call(b,P)}},{emitOnBegin:!0,interval:l});return async()=>{w&&await $(e,hn,"uninstallFilter")({filter:w}),E()}})})():(()=>{let h=!0,b=()=>h=!1;return(async()=>{try{const g=(()=>{if(e.transport.type==="fallback"){const x=e.transport.transports.find(P=>P.config.type==="webSocket");return x?x.value:e.transport}return e.transport})(),w=a??(s?[s]:void 0);let v=[];w&&(v=[w.flatMap(x=>_t({abi:[x],eventName:x.name,args:n}))],s&&(v=v[0]));const{unsubscribe:E}=await g.subscribe({params:["logs",{address:t,topics:v}],onData(x){var A;if(!h)return;const P=x.result;try{const{eventName:S,args:k}=Er({abi:w??[],data:P.data,topics:P.topics,strict:y}),C=Le(P,{args:k,eventName:S});c([C])}catch(S){let k,C;if(S instanceof lt||S instanceof fn){if(d)return;k=S.abiItem.name,C=(A=S.abiItem.inputs)==null?void 0:A.some(_=>!("name"in _&&_.name))}const M=Le(P,{args:C?[]:{},eventName:k});c([M])}},onError(x){i==null||i(x)}});b=E,h||b()}catch(g){i==null||i(g)}})(),()=>b()})()}function ml(e,{batch:t=!0,onError:n,onTransactions:r,poll:s,pollingInterval:a=e.pollingInterval}){return(typeof s<"u"?s:e.transport.type!=="webSocket")?(()=>{const u=z(["watchPendingTransactions",e.uid,t,a]);return Se(u,{onTransactions:r,onError:n},l=>{let d;const f=Ft(async()=>{var y;try{if(!d)try{d=await $(e,Na,"createPendingTransactionFilter")({});return}catch(p){throw f(),p}const m=await $(e,bn,"getFilterChanges")({filter:d});if(m.length===0)return;if(t)l.onTransactions(m);else for(const p of m)l.onTransactions([p])}catch(m){(y=l.onError)==null||y.call(l,m)}},{emitOnBegin:!0,interval:a});return async()=>{d&&await $(e,hn,"uninstallFilter")({filter:d}),f()}})})():(()=>{let u=!0,l=()=>u=!1;return(async()=>{try{const{unsubscribe:d}=await e.transport.subscribe({params:["newPendingTransactions"],onData(f){if(!u)return;const y=f.result;r([y])},onError(f){n==null||n(f)}});l=d,u||l()}catch(d){n==null||n(d)}})(),()=>l()})()}function yl(e){var d,f,y;const{scheme:t,statement:n,...r}=((d=e.match(bl))==null?void 0:d.groups)??{},{chainId:s,expirationTime:a,issuedAt:o,notBefore:i,requestId:c,...u}=((f=e.match(hl))==null?void 0:f.groups)??{},l=(y=e.split("Resources:")[1])==null?void 0:y.split(` +- `).slice(1);return{...r,...u,...s?{chainId:Number(s)}:{},...a?{expirationTime:new Date(a)}:{},...o?{issuedAt:new Date(o)}:{},...i?{notBefore:new Date(i)}:{},...c?{requestId:c}:{},...l?{resources:l}:{},...t?{scheme:t}:{},...n?{statement:n}:{}}}const bl=/^(?:(?[a-zA-Z][a-zA-Z0-9+-.]*):\/\/)?(?[a-zA-Z0-9+-.]*) (?:wants you to sign in with your Ethereum account:\n)(?
0x[a-fA-F0-9]{40})\n\n(?:(?.*)\n\n)?/,hl=/(?:URI: (?.+))\n(?:Version: (?.+))\n(?:Chain ID: (?\d+))\n(?:Nonce: (?[a-zA-Z0-9]+))\n(?:Issued At: (?.+))(?:\nExpiration Time: (?.+))?(?:\nNot Before: (?.+))?(?:\nRequest ID: (?.+))?/;function gl(e){const{address:t,domain:n,message:r,nonce:s,scheme:a,time:o=new Date}=e;if(n&&r.domain!==n||s&&r.nonce!==s||a&&r.scheme!==a||r.expirationTime&&o>=r.expirationTime||r.notBefore&&ojt(e,t),createBlockFilter:()=>xu(e),createContractEventFilter:t=>yr(e,t),createEventFilter:t=>Ra(e,t),createPendingTransactionFilter:()=>Na(e),estimateContractGas:t=>va(e,t),estimateGas:t=>xr(e,t),getBalance:t=>Eu(e,t),getBlobBaseFee:()=>Pu(e),getBlock:t=>Ie(e,t),getBlockNumber:t=>Lt(e,t),getBlockTransactionCount:t=>Au(e,t),getBytecode:t=>Iu(e,t),getChainId:()=>qt(e),getContractEvents:t=>Ir(e,t),getEnsAddress:t=>au(e,t),getEnsAvatar:t=>gu(e,t),getEnsName:t=>wu(e,t),getEnsResolver:t=>vu(e,t),getEnsText:t=>Oa(e,t),getFeeHistory:t=>Tu(e,t),estimateFeesPerGas:t=>Oc(e,t),getFilterChanges:t=>bn(e,t),getFilterLogs:t=>Bu(e,t),getGasPrice:()=>vr(e),getLogs:t=>Ar(e,t),getProof:t=>dd(e,t),estimateMaxPriorityFeePerGas:t=>Cc(e,t),getStorageAt:t=>ld(e,t),getTransaction:t=>Ur(e,t),getTransactionConfirmations:t=>fd(e,t),getTransactionCount:t=>ga(e,t),getTransactionReceipt:t=>nr(e,t),multicall:t=>pd(e,t),prepareTransactionRequest:t=>yn(e,t),readContract:t=>ge(e,t),sendRawTransaction:t=>Tr(e,t),simulateContract:t=>Pa(e,t),verifyMessage:t=>ul(e,t),verifySiweMessage:t=>wl(e,t),verifyTypedData:t=>dl(e,t),uninstallFilter:t=>hn(e,t),waitForTransactionReceipt:t=>ll(e,t),watchBlocks:t=>fl(e,t),watchBlockNumber:t=>ho(e,t),watchContractEvent:t=>Aa(e,t),watchEvent:t=>pl(e,t),watchPendingTransactions:t=>ml(e,t)}}function Lf(e){const{key:t="public",name:n="Public Client"}=e;return kr({...e,key:t,name:n,type:"publicClient"}).extend(vl)}async function xl(e,{hash:t}){await e.request({method:`${e.mode}_dropTransaction`,params:[t]})}async function El(e){return e.request({method:`${e.mode}_dumpState`})}async function Pl(e){return e.mode==="ganache"?await e.request({method:"eth_mining"}):await e.request({method:`${e.mode}_getAutomine`})}async function Al(e){return await e.request({method:"txpool_content"})}async function Il(e){const{pending:t,queued:n}=await e.request({method:"txpool_status"});return{pending:Y(t),queued:Y(n)}}async function Sl(e,{address:t}){await e.request({method:`${e.mode}_impersonateAccount`,params:[t]})}async function Tl(e,{seconds:t}){return await e.request({method:"evm_increaseTime",params:[O(t)]})}async function Bl(e){return await e.request({method:"txpool_inspect"})}async function kl(e,{state:t}){await e.request({method:`${e.mode}_loadState`,params:[t]})}async function $l(e,{blocks:t,interval:n}){e.mode==="ganache"?await e.request({method:"evm_mine",params:[{blocks:O(t)}]}):await e.request({method:`${e.mode}_mine`,params:[O(t),O(n||0)]})}async function Cl(e){await e.request({method:`${e.mode}_removeBlockTimestampInterval`})}async function Ol(e,{blockNumber:t,jsonRpcUrl:n}={}){await e.request({method:`${e.mode}_reset`,params:[{forking:{blockNumber:Number(t),jsonRpcUrl:n}}]})}async function Rl(e,{id:t}){await e.request({method:"evm_revert",params:[t]})}async function Nl(e,t){var b,g,w;const{accessList:n,data:r,from:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:l,value:d,...f}=t,y=(w=(g=(b=e.chain)==null?void 0:b.formatters)==null?void 0:g.transactionRequest)==null?void 0:w.format,p=(y||Ot)({...mn(f,{format:y}),accessList:n,data:r,from:s,gas:a,gasPrice:o,maxFeePerGas:i,maxPriorityFeePerGas:c,nonce:u,to:l,value:d});return await e.request({method:"eth_sendUnsignedTransaction",params:[p]})}async function _l(e,t){e.mode==="ganache"?t?await e.request({method:"miner_start"}):await e.request({method:"miner_stop"}):await e.request({method:"evm_setAutomine",params:[t]})}async function Ml(e,{address:t,value:n}){e.mode==="ganache"?await e.request({method:"evm_setAccountBalance",params:[t,O(n)]}):await e.request({method:`${e.mode}_setBalance`,params:[t,O(n)]})}async function ql(e,{gasLimit:t}){await e.request({method:"evm_setBlockGasLimit",params:[O(t)]})}async function jl(e,{interval:t}){const n=(()=>e.mode==="hardhat"?t*1e3:t)();await e.request({method:`${e.mode}_setBlockTimestampInterval`,params:[n]})}async function Fl(e,{address:t,bytecode:n}){await e.request({method:`${e.mode}_setCode`,params:[t,n]})}async function Ll(e,{address:t}){await e.request({method:`${e.mode}_setCoinbase`,params:[t]})}async function Ul(e,{interval:t}){const n=(()=>e.mode==="hardhat"?t*1e3:t)();await e.request({method:"evm_setIntervalMining",params:[n]})}async function zl(e,t){await e.request({method:`${e.mode}_setLoggingEnabled`,params:[t]})}async function Dl(e,{gasPrice:t}){await e.request({method:`${e.mode}_setMinGasPrice`,params:[O(t)]})}async function Gl(e,{baseFeePerGas:t}){await e.request({method:`${e.mode}_setNextBlockBaseFeePerGas`,params:[O(t)]})}async function Hl(e,{timestamp:t}){await e.request({method:"evm_setNextBlockTimestamp",params:[O(t)]})}async function Vl(e,{address:t,nonce:n}){await e.request({method:`${e.mode}_setNonce`,params:[t,O(n)]})}async function Zl(e,t){await e.request({method:`${e.mode}_setRpcUrl`,params:[t]})}async function Wl(e,{address:t,index:n,value:r}){await e.request({method:`${e.mode}_setStorageAt`,params:[t,typeof n=="number"?O(n):n,r]})}async function Kl(e){return await e.request({method:"evm_snapshot"})}async function Yl(e,{address:t}){await e.request({method:`${e.mode}_stopImpersonatingAccount`,params:[t]})}function Jl({mode:e}){return t=>{const n=t.extend(()=>({mode:e}));return{dropTransaction:r=>xl(n,r),dumpState:()=>El(n),getAutomine:()=>Pl(n),getTxpoolContent:()=>Al(n),getTxpoolStatus:()=>Il(n),impersonateAccount:r=>Sl(n,r),increaseTime:r=>Tl(n,r),inspectTxpool:()=>Bl(n),loadState:r=>kl(n,r),mine:r=>$l(n,r),removeBlockTimestampInterval:()=>Cl(n),reset:r=>Ol(n,r),revert:r=>Rl(n,r),sendUnsignedTransaction:r=>Nl(n,r),setAutomine:r=>_l(n,r),setBalance:r=>Ml(n,r),setBlockGasLimit:r=>ql(n,r),setBlockTimestampInterval:r=>jl(n,r),setCode:r=>Fl(n,r),setCoinbase:r=>Ll(n,r),setIntervalMining:r=>Ul(n,r),setLoggingEnabled:r=>zl(n,r),setMinGasPrice:r=>Dl(n,r),setNextBlockBaseFeePerGas:r=>Gl(n,r),setNextBlockTimestamp:r=>Hl(n,r),setNonce:r=>Vl(n,r),setRpcUrl:r=>Zl(n,r),setStorageAt:r=>Wl(n,r),snapshot:()=>Kl(n),stopImpersonatingAccount:r=>Yl(n,r)}}}function Uf(e){const{key:t="test",name:n="Test Client",mode:r}=e;return kr({...e,key:t,name:n,type:"testClient"}).extend(a=>({mode:r,...Jl({mode:r})(a)}))}function Xl(e,t){const{abi:n,args:r,bytecode:s,...a}=t,o=Va({abi:n,args:r,bytecode:s});return Br(e,{...a,data:o})}async function Ql(e){var n;return((n=e.account)==null?void 0:n.type)==="local"?[e.account.address]:(await e.request({method:"eth_accounts"})).map(r=>ur(r))}async function ef(e){return await e.request({method:"wallet_getPermissions"})}async function tf(e){return(await e.request({method:"eth_requestAccounts"},{retryCount:0})).map(n=>Ue(n))}async function nf(e,t){return e.request({method:"wallet_requestPermissions",params:[t]},{retryCount:0})}async function rf(e,{account:t=e.account,message:n}){if(!t)throw new gn({docsPath:"/docs/actions/wallet/signMessage"});const r=ce(t);if(r.type==="local")return r.signMessage({message:n});const s=(()=>typeof n=="string"?ir(n):n.raw instanceof Uint8Array?ye(n.raw):n.raw)();return e.request({method:"personal_sign",params:[s,r.address]},{retryCount:0})}async function sf(e,t){var u,l,d,f;const{account:n=e.account,chain:r=e.chain,...s}=t;if(!n)throw new gn({docsPath:"/docs/actions/wallet/signTransaction"});const a=ce(n);Mt({account:a,...t});const o=await $(e,qt,"getChainId")({});r!==null&&Ia({currentChainId:o,chain:r});const i=(r==null?void 0:r.formatters)||((u=e.chain)==null?void 0:u.formatters),c=((l=i==null?void 0:i.transactionRequest)==null?void 0:l.format)||Ot;return a.type==="local"?a.signTransaction({...s,chainId:o},{serializer:(f=(d=e.chain)==null?void 0:d.serializers)==null?void 0:f.transaction}):await e.request({method:"eth_signTransaction",params:[{...c(s),chainId:O(o),from:a.address}]},{retryCount:0})}async function af(e,t){const{account:n=e.account,domain:r,message:s,primaryType:a}=t;if(!n)throw new gn({docsPath:"/docs/actions/wallet/signTypedData"});const o=ce(n),i={EIP712Domain:Rr({domain:r}),...t.types};if(Ha({domain:r,message:s,primaryType:a,types:i}),o.type==="local")return o.signTypedData({domain:r,message:s,primaryType:a,types:i});const c=z({domain:r??{},message:s,primaryType:a,types:i},(u,l)=>R(l)?l.toLowerCase():l);return e.request({method:"eth_signTypedData_v4",params:[o.address,c]},{retryCount:0})}async function of(e,{id:t}){await e.request({method:"wallet_switchEthereumChain",params:[{chainId:O(t)}]},{retryCount:0})}async function cf(e,t){return await e.request({method:"wallet_watchAsset",params:t},{retryCount:0})}function uf(e){return{addChain:t=>Wc(e,t),deployContract:t=>Xl(e,t),getAddresses:()=>Ql(e),getChainId:()=>qt(e),getPermissions:()=>ef(e),prepareTransactionRequest:t=>yn(e,t),requestAddresses:()=>tf(e),requestPermissions:t=>nf(e,t),sendRawTransaction:t=>Tr(e,t),sendTransaction:t=>Br(e,t),signMessage:t=>rf(e,t),signTransaction:t=>sf(e,t),signTypedData:t=>af(e,t),switchChain:t=>of(e,t),watchAsset:t=>cf(e,t),writeContract:t=>Sa(e,t)}}function zf(e){const{key:t="wallet",name:n="Wallet Client",transport:r}=e;return kr({...e,key:t,name:n,transport:r,type:"walletClient"}).extend(uf)}function Df(e,t={}){const{key:n="webSocket",name:r="WebSocket JSON-RPC",reconnect:s,retryDelay:a}=t;return({chain:o,retryCount:i,timeout:c})=>{var f;const u=t.retryCount??i,l=c??t.timeout??1e4,d=e||((f=o==null?void 0:o.rpcUrls.default.webSocket)==null?void 0:f[0]);if(!d)throw new Ta;return wn({key:n,name:r,async request({method:y,params:m}){const p={method:y,params:m},h=await Kt(d,{reconnect:s}),{error:b,result:g}=await h.requestAsync({body:p,timeout:l});if(b)throw new hr({body:p,error:b,url:d});return g},retryCount:u,retryDelay:a,timeout:l,type:"webSocket"},{getSocket(){return qu(d)},getRpcClient(){return Kt(d)},async subscribe({params:y,onData:m,onError:p}){const h=await Kt(d),{result:b}=await new Promise((g,w)=>h.request({body:{method:"eth_subscribe",params:y},onResponse(v){if(v.error){w(v.error),p==null||p(v.error);return}if(typeof v.id=="number"){g(v);return}v.method==="eth_subscription"&&m(v.params)}}));return{subscriptionId:b,async unsubscribe(){return new Promise(g=>h.request({body:{method:"eth_unsubscribe",params:[b]},onResponse:g}))}}}})}}const Gf="0x0000000000000000000000000000000000000000",Hf="0x0000000000000000000000000000000000000000000000000000000000000000",Ln="/docs/contract/decodeDeployData";function Vf(e){const{abi:t,bytecode:n,data:r}=e;if(r===n)return{bytecode:n};const s=t.find(o=>"type"in o&&o.type==="constructor");if(!s)throw new Qs({docsPath:Ln});if(!("inputs"in s))throw new Qt({docsPath:Ln});if(!s.inputs||s.inputs.length===0)throw new Qt({docsPath:Ln});return{args:nt(s.inputs,`0x${r.replace(n,"")}`),bytecode:n}}function Zf({r:e,yParityAndS:t}){const n=$t(t),r=n[0]&128?1:0,s=n;return r===1&&(s[0]&=127),{r:e,s:K(s),yParity:r}}function Wf(e){const{r:t,s:n}=we.Signature.fromCompact(e.slice(2,130));return{r:O(t,{size:32}),yParityAndS:O(n,{size:32})}}function Kf(e){const{r:t,s:n}=we.Signature.fromCompact(e.slice(2,130)),r=+`0x${e.slice(130)}`,[s,a]=(()=>{if(r===0||r===1)return[void 0,r];if(r===27)return[BigInt(r),0];if(r===28)return[BigInt(r),1];throw new Error("Invalid yParityOrV value")})();return typeof s<"u"?{r:O(t,{size:32}),s:O(n,{size:32}),v:s,yParity:a}:{r:O(t,{size:32}),s:O(n,{size:32}),yParity:a}}async function Yf(e){const{serializedTransaction:t,signature:n}=e,r=rd(t),s=n??{r:r.r,s:r.s,v:r.v,yParity:r.yParity},a=Yo({...r,r:void 0,s:void 0,v:void 0,yParity:void 0,sidecars:void 0});return await Mr({hash:H(a),signature:s})}function Jf(e){const{r:t,s:n,v:r,yParity:s}=e,a=Number(s??r-27n);let o=n;if(a===1){const i=$t(n);i[0]|=128,o=K(i)}return{r:t,yParityAndS:o}}function Xf({r:e,yParityAndS:t}){return`0x${new we.Signature(j(e),j(t)).toCompactHex()}`}function Qf(e){const{sidecars:t,version:n}=e,r=e.to??(typeof t[0].blob=="string"?"hex":"bytes"),s=[];for(const{commitment:a}of t)s.push(Jo({commitment:a,to:r,version:n}));return s}function ep(e){const t=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),n=typeof e.blobs[0]=="string"?e.blobs.map(i=>$t(i)):e.blobs,r=n.reduce((i,c)=>i+c.length,0),s=Yt(new Uint8Array(r));let a=!0;for(const i of n){const c=Yt(i);for(;a&&c.position{for(const o of i)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();var Cr=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function bo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var h1={exports:{}},Yl={},m1={exports:{}},ke={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var zs=Symbol.for("react.element"),My=Symbol.for("react.portal"),Py=Symbol.for("react.fragment"),jy=Symbol.for("react.strict_mode"),Ry=Symbol.for("react.profiler"),Iy=Symbol.for("react.provider"),Ny=Symbol.for("react.context"),Dy=Symbol.for("react.forward_ref"),By=Symbol.for("react.suspense"),Hy=Symbol.for("react.memo"),Fy=Symbol.for("react.lazy"),Wp=Symbol.iterator;function zy(e){return e===null||typeof e!="object"?null:(e=Wp&&e[Wp]||e["@@iterator"],typeof e=="function"?e:null)}var g1={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},v1=Object.assign,y1={};function _o(e,t,n){this.props=e,this.context=t,this.refs=y1,this.updater=n||g1}_o.prototype.isReactComponent={};_o.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};_o.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function b1(){}b1.prototype=_o.prototype;function dd(e,t,n){this.props=e,this.context=t,this.refs=y1,this.updater=n||g1}var pd=dd.prototype=new b1;pd.constructor=dd;v1(pd,_o.prototype);pd.isPureReactComponent=!0;var Vp=Array.isArray,_1=Object.prototype.hasOwnProperty,hd={current:null},w1={key:!0,ref:!0,__self:!0,__source:!0};function C1(e,t,n){var r,i={},o=null,s=null;if(t!=null)for(r in t.ref!==void 0&&(s=t.ref),t.key!==void 0&&(o=""+t.key),t)_1.call(t,r)&&!w1.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1>>1,le=W[oe];if(0>>1;oei(Le,se))pei(Ee,Le)?(W[oe]=Ee,W[pe]=se,oe=pe):(W[oe]=Le,W[fe]=se,oe=fe);else if(pei(Ee,se))W[oe]=Ee,W[pe]=se,oe=pe;else break e}}return K}function i(W,K){var se=W.sortIndex-K.sortIndex;return se!==0?se:W.id-K.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var s=Date,a=s.now();e.unstable_now=function(){return s.now()-a}}var c=[],p=[],g=1,l=null,d=3,h=!1,u=!1,f=!1,b=typeof setTimeout=="function"?setTimeout:null,m=typeof clearTimeout=="function"?clearTimeout:null,v=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(W){for(var K=n(p);K!==null;){if(K.callback===null)r(p);else if(K.startTime<=W)r(p),K.sortIndex=K.expirationTime,t(c,K);else break;K=n(p)}}function _(W){if(f=!1,y(W),!u)if(n(c)!==null)u=!0,re(k);else{var K=n(p);K!==null&&ue(_,K.startTime-W)}}function k(W,K){u=!1,f&&(f=!1,m(w),w=-1),h=!0;var se=d;try{for(y(K),l=n(c);l!==null&&(!(l.expirationTime>K)||W&&!A());){var oe=l.callback;if(typeof oe=="function"){l.callback=null,d=l.priorityLevel;var le=oe(l.expirationTime<=K);K=e.unstable_now(),typeof le=="function"?l.callback=le:l===n(c)&&r(c),y(K)}else r(c);l=n(c)}if(l!==null)var Q=!0;else{var fe=n(p);fe!==null&&ue(_,fe.startTime-K),Q=!1}return Q}finally{l=null,d=se,h=!1}}var x=!1,S=null,w=-1,C=5,E=-1;function A(){return!(e.unstable_now()-EW||125oe?(W.sortIndex=se,t(p,W),n(c)===null&&W===n(p)&&(f?(m(w),w=-1):f=!0,ue(_,se-oe))):(W.sortIndex=le,t(c,W),u||h||(u=!0,re(k))),W},e.unstable_shouldYield=A,e.unstable_wrapCallback=function(W){var K=d;return function(){var se=d;d=K;try{return W.apply(this,arguments)}finally{d=se}}}})(x1);E1.exports=x1;var e2=E1.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var $1=Dn,Qt=e2;function Z(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ef=Object.prototype.hasOwnProperty,t2=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,qp={},Zp={};function n2(e){return ef.call(Zp,e)?!0:ef.call(qp,e)?!1:t2.test(e)?Zp[e]=!0:(qp[e]=!0,!1)}function r2(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function i2(e,t,n,r){if(t===null||typeof t>"u"||r2(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function It(e,t,n,r,i,o,s){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=s}var yt={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){yt[e]=new It(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];yt[t]=new It(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){yt[e]=new It(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){yt[e]=new It(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){yt[e]=new It(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){yt[e]=new It(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){yt[e]=new It(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){yt[e]=new It(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){yt[e]=new It(e,5,!1,e.toLowerCase(),null,!1,!1)});var gd=/[\-:]([a-z])/g;function vd(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(gd,vd);yt[t]=new It(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(gd,vd);yt[t]=new It(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(gd,vd);yt[t]=new It(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){yt[e]=new It(e,1,!1,e.toLowerCase(),null,!1,!1)});yt.xlinkHref=new It("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){yt[e]=new It(e,1,!1,e.toLowerCase(),null,!0,!0)});function yd(e,t,n,r){var i=yt.hasOwnProperty(t)?yt[t]:null;(i!==null?i.type!==0:r||!(2a||i[s]!==o[a]){var c=` +`+i[s].replace(" at new "," at ");return e.displayName&&c.includes("")&&(c=c.replace("",e.displayName)),c}while(1<=s&&0<=a);break}}}finally{mc=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Ko(e):""}function o2(e){switch(e.tag){case 5:return Ko(e.type);case 16:return Ko("Lazy");case 13:return Ko("Suspense");case 19:return Ko("SuspenseList");case 0:case 2:case 15:return e=gc(e.type,!1),e;case 11:return e=gc(e.type.render,!1),e;case 1:return e=gc(e.type,!0),e;default:return""}}function of(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Pi:return"Fragment";case Mi:return"Portal";case tf:return"Profiler";case bd:return"StrictMode";case nf:return"Suspense";case rf:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case L1:return(e.displayName||"Context")+".Consumer";case A1:return(e._context.displayName||"Context")+".Provider";case _d:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case wd:return t=e.displayName||null,t!==null?t:of(e.type)||"Memo";case vr:t=e._payload,e=e._init;try{return of(e(t))}catch{}}return null}function s2(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return of(t);case 8:return t===bd?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ir(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function M1(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function a2(e){var t=M1(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(s){r=""+s,o.call(this,s)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(s){r=""+s},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ea(e){e._valueTracker||(e._valueTracker=a2(e))}function P1(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=M1(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function ll(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function sf(e,t){var n=t.checked;return Xe({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Xp(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ir(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function j1(e,t){t=t.checked,t!=null&&yd(e,"checked",t,!1)}function af(e,t){j1(e,t);var n=Ir(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?lf(e,t.type,n):t.hasOwnProperty("defaultValue")&&lf(e,t.type,Ir(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Yp(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function lf(e,t,n){(t!=="number"||ll(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Jo=Array.isArray;function Vi(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=xa.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function vs(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var os={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},l2=["Webkit","ms","Moz","O"];Object.keys(os).forEach(function(e){l2.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),os[t]=os[e]})});function D1(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||os.hasOwnProperty(e)&&os[e]?(""+t).trim():t+"px"}function B1(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=D1(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var u2=Xe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ff(e,t){if(t){if(u2[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(Z(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(Z(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(Z(61))}if(t.style!=null&&typeof t.style!="object")throw Error(Z(62))}}function df(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var pf=null;function Cd(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var hf=null,Gi=null,qi=null;function eh(e){if(e=Vs(e)){if(typeof hf!="function")throw Error(Z(280));var t=e.stateNode;t&&(t=nu(t),hf(e.stateNode,e.type,t))}}function H1(e){Gi?qi?qi.push(e):qi=[e]:Gi=e}function F1(){if(Gi){var e=Gi,t=qi;if(qi=Gi=null,eh(e),t)for(e=0;e>>=0,e===0?32:31-(_2(e)/w2|0)|0}var $a=64,Oa=4194304;function es(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function dl(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,s=n&268435455;if(s!==0){var a=s&~i;a!==0?r=es(a):(o&=s,o!==0&&(r=es(o)))}else s=n&~i,s!==0?r=es(s):o!==0&&(r=es(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===16&&(o&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function Us(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-xn(t),e[t]=n}function E2(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=as),uh=String.fromCharCode(32),ch=!1;function a0(e,t){switch(e){case"keyup":return J2.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function l0(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var ji=!1;function tb(e,t){switch(e){case"compositionend":return l0(t);case"keypress":return t.which!==32?null:(ch=!0,uh);case"textInput":return e=t.data,e===uh&&ch?null:e;default:return null}}function nb(e,t){if(ji)return e==="compositionend"||!Ld&&a0(e,t)?(e=o0(),Ga=$d=kr=null,ji=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=hh(n)}}function d0(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?d0(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function p0(){for(var e=window,t=ll();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=ll(e.document)}return t}function Td(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function fb(e){var t=p0(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&d0(n.ownerDocument.documentElement,n)){if(r!==null&&Td(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=mh(n,o);var s=mh(n,r);i&&s&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(s.node,s.offset)):(t.setEnd(s.node,s.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Ri=null,_f=null,us=null,wf=!1;function gh(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;wf||Ri==null||Ri!==ll(r)||(r=Ri,"selectionStart"in r&&Td(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),us&&ks(us,r)||(us=r,r=ml(_f,"onSelect"),0Di||(e.current=$f[Di],$f[Di]=null,Di--)}function De(e,t){Di++,$f[Di]=e.current,e.current=t}var Nr={},xt=Br(Nr),Ft=Br(!1),ii=Nr;function no(e,t){var n=e.type.contextTypes;if(!n)return Nr;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function zt(e){return e=e.childContextTypes,e!=null}function vl(){ze(Ft),ze(xt)}function kh(e,t,n){if(xt.current!==Nr)throw Error(Z(168));De(xt,t),De(Ft,n)}function C0(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(Z(108,s2(e)||"Unknown",i));return Xe({},n,r)}function yl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Nr,ii=xt.current,De(xt,e),De(Ft,Ft.current),!0}function Sh(e,t,n){var r=e.stateNode;if(!r)throw Error(Z(169));n?(e=C0(e,t,ii),r.__reactInternalMemoizedMergedChildContext=e,ze(Ft),ze(xt),De(xt,e)):ze(Ft),De(Ft,n)}var Jn=null,ru=!1,Lc=!1;function k0(e){Jn===null?Jn=[e]:Jn.push(e)}function kb(e){ru=!0,k0(e)}function Hr(){if(!Lc&&Jn!==null){Lc=!0;var e=0,t=Te;try{var n=Jn;for(Te=1;e>=s,i-=s,er=1<<32-xn(t)+i|n<w?(C=S,S=null):C=S.sibling;var E=d(m,S,y[w],_);if(E===null){S===null&&(S=C);break}e&&S&&E.alternate===null&&t(m,S),v=o(E,v,w),x===null?k=E:x.sibling=E,x=E,S=C}if(w===y.length)return n(m,S),Ve&&Xr(m,w),k;if(S===null){for(;ww?(C=S,S=null):C=S.sibling;var A=d(m,S,E.value,_);if(A===null){S===null&&(S=C);break}e&&S&&A.alternate===null&&t(m,S),v=o(A,v,w),x===null?k=A:x.sibling=A,x=A,S=C}if(E.done)return n(m,S),Ve&&Xr(m,w),k;if(S===null){for(;!E.done;w++,E=y.next())E=l(m,E.value,_),E!==null&&(v=o(E,v,w),x===null?k=E:x.sibling=E,x=E);return Ve&&Xr(m,w),k}for(S=r(m,S);!E.done;w++,E=y.next())E=h(S,m,w,E.value,_),E!==null&&(e&&E.alternate!==null&&S.delete(E.key===null?w:E.key),v=o(E,v,w),x===null?k=E:x.sibling=E,x=E);return e&&S.forEach(function(N){return t(m,N)}),Ve&&Xr(m,w),k}function b(m,v,y,_){if(typeof y=="object"&&y!==null&&y.type===Pi&&y.key===null&&(y=y.props.children),typeof y=="object"&&y!==null){switch(y.$$typeof){case Sa:e:{for(var k=y.key,x=v;x!==null;){if(x.key===k){if(k=y.type,k===Pi){if(x.tag===7){n(m,x.sibling),v=i(x,y.props.children),v.return=m,m=v;break e}}else if(x.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===vr&&Th(k)===x.type){n(m,x.sibling),v=i(x,y.props),v.ref=qo(m,x,y),v.return=m,m=v;break e}n(m,x);break}else t(m,x);x=x.sibling}y.type===Pi?(v=ni(y.props.children,m.mode,_,y.key),v.return=m,m=v):(_=el(y.type,y.key,y.props,null,m.mode,_),_.ref=qo(m,v,y),_.return=m,m=_)}return s(m);case Mi:e:{for(x=y.key;v!==null;){if(v.key===x)if(v.tag===4&&v.stateNode.containerInfo===y.containerInfo&&v.stateNode.implementation===y.implementation){n(m,v.sibling),v=i(v,y.children||[]),v.return=m,m=v;break e}else{n(m,v);break}else t(m,v);v=v.sibling}v=Dc(y,m.mode,_),v.return=m,m=v}return s(m);case vr:return x=y._init,b(m,v,x(y._payload),_)}if(Jo(y))return u(m,v,y,_);if(zo(y))return f(m,v,y,_);Ra(m,y)}return typeof y=="string"&&y!==""||typeof y=="number"?(y=""+y,v!==null&&v.tag===6?(n(m,v.sibling),v=i(v,y),v.return=m,m=v):(n(m,v),v=Nc(y,m.mode,_),v.return=m,m=v),s(m)):n(m,v)}return b}var io=T0(!0),M0=T0(!1),Gs={},Hn=Br(Gs),$s=Br(Gs),Os=Br(Gs);function ei(e){if(e===Gs)throw Error(Z(174));return e}function Hd(e,t){switch(De(Os,t),De($s,e),De(Hn,Gs),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:cf(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=cf(t,e)}ze(Hn),De(Hn,t)}function oo(){ze(Hn),ze($s),ze(Os)}function P0(e){ei(Os.current);var t=ei(Hn.current),n=cf(t,e.type);t!==n&&(De($s,e),De(Hn,n))}function Fd(e){$s.current===e&&(ze(Hn),ze($s))}var Ze=Br(0);function Sl(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Tc=[];function zd(){for(var e=0;en?n:4,e(!0);var r=Mc.transition;Mc.transition={};try{e(!1),t()}finally{Te=n,Mc.transition=r}}function Q0(){return ln().memoizedState}function $b(e,t,n){var r=Mr(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},X0(e))Y0(t,n);else if(n=$0(e,t,n,r),n!==null){var i=Mt();$n(n,e,r,i),K0(n,t,r)}}function Ob(e,t,n){var r=Mr(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(X0(e))Y0(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var s=t.lastRenderedState,a=o(s,n);if(i.hasEagerState=!0,i.eagerState=a,An(a,s)){var c=t.interleaved;c===null?(i.next=i,Dd(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}finally{}n=$0(e,t,i,r),n!==null&&(i=Mt(),$n(n,e,r,i),K0(n,t,r))}}function X0(e){var t=e.alternate;return e===Qe||t!==null&&t===Qe}function Y0(e,t){cs=El=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function K0(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Sd(e,n)}}var xl={readContext:an,useCallback:kt,useContext:kt,useEffect:kt,useImperativeHandle:kt,useInsertionEffect:kt,useLayoutEffect:kt,useMemo:kt,useReducer:kt,useRef:kt,useState:kt,useDebugValue:kt,useDeferredValue:kt,useTransition:kt,useMutableSource:kt,useSyncExternalStore:kt,useId:kt,unstable_isNewReconciler:!1},Ab={readContext:an,useCallback:function(e,t){return Rn().memoizedState=[e,t===void 0?null:t],e},useContext:an,useEffect:Ph,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Xa(4194308,4,W0.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Xa(4194308,4,e,t)},useInsertionEffect:function(e,t){return Xa(4,2,e,t)},useMemo:function(e,t){var n=Rn();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Rn();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=$b.bind(null,Qe,e),[r.memoizedState,e]},useRef:function(e){var t=Rn();return e={current:e},t.memoizedState=e},useState:Mh,useDebugValue:qd,useDeferredValue:function(e){return Rn().memoizedState=e},useTransition:function(){var e=Mh(!1),t=e[0];return e=xb.bind(null,e[1]),Rn().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Qe,i=Rn();if(Ve){if(n===void 0)throw Error(Z(407));n=n()}else{if(n=t(),mt===null)throw Error(Z(349));si&30||I0(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,Ph(D0.bind(null,r,o,e),[e]),r.flags|=2048,Ts(9,N0.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Rn(),t=mt.identifierPrefix;if(Ve){var n=tr,r=er;n=(r&~(1<<32-xn(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=As++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),n==="select"&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[In]=t,e[xs]=r,ag(e,t,!1,!1),t.stateNode=e;e:{switch(s=df(n,r),n){case"dialog":Be("cancel",e),Be("close",e),i=r;break;case"iframe":case"object":case"embed":Be("load",e),i=r;break;case"video":case"audio":for(i=0;iao&&(t.flags|=128,r=!0,Zo(o,!1),t.lanes=4194304)}else{if(!r)if(e=Sl(s),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Zo(o,!0),o.tail===null&&o.tailMode==="hidden"&&!s.alternate&&!Ve)return St(t),null}else 2*Je()-o.renderingStartTime>ao&&n!==1073741824&&(t.flags|=128,r=!0,Zo(o,!1),t.lanes=4194304);o.isBackwards?(s.sibling=t.child,t.child=s):(n=o.last,n!==null?n.sibling=s:t.child=s,o.last=s)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=Je(),t.sibling=null,n=Ze.current,De(Ze,r?n&1|2:n&1),t):(St(t),null);case 22:case 23:return Jd(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Gt&1073741824&&(St(t),t.subtreeFlags&6&&(t.flags|=8192)):St(t),null;case 24:return null;case 25:return null}throw Error(Z(156,t.tag))}function Nb(e,t){switch(Pd(t),t.tag){case 1:return zt(t.type)&&vl(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return oo(),ze(Ft),ze(xt),zd(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Fd(t),null;case 13:if(ze(Ze),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(Z(340));ro()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ze(Ze),null;case 4:return oo(),null;case 10:return Nd(t.type._context),null;case 22:case 23:return Jd(),null;case 24:return null;default:return null}}var Na=!1,Et=!1,Db=typeof WeakSet=="function"?WeakSet:Set,ne=null;function zi(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Ye(e,t,r)}else n.current=null}function Bf(e,t,n){try{n()}catch(r){Ye(e,t,r)}}var zh=!1;function Bb(e,t){if(Cf=pl,e=p0(),Td(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var s=0,a=-1,c=-1,p=0,g=0,l=e,d=null;t:for(;;){for(var h;l!==n||i!==0&&l.nodeType!==3||(a=s+i),l!==o||r!==0&&l.nodeType!==3||(c=s+r),l.nodeType===3&&(s+=l.nodeValue.length),(h=l.firstChild)!==null;)d=l,l=h;for(;;){if(l===e)break t;if(d===n&&++p===i&&(a=s),d===o&&++g===r&&(c=s),(h=l.nextSibling)!==null)break;l=d,d=l.parentNode}l=h}n=a===-1||c===-1?null:{start:a,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(kf={focusedElem:e,selectionRange:n},pl=!1,ne=t;ne!==null;)if(t=ne,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,ne=e;else for(;ne!==null;){t=ne;try{var u=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(u!==null){var f=u.memoizedProps,b=u.memoizedState,m=t.stateNode,v=m.getSnapshotBeforeUpdate(t.elementType===t.type?f:Cn(t.type,f),b);m.__reactInternalSnapshotBeforeUpdate=v}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent="":y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(Z(163))}}catch(_){Ye(t,t.return,_)}if(e=t.sibling,e!==null){e.return=t.return,ne=e;break}ne=t.return}return u=zh,zh=!1,u}function fs(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&Bf(t,n,o)}i=i.next}while(i!==r)}}function su(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Hf(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function cg(e){var t=e.alternate;t!==null&&(e.alternate=null,cg(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[In],delete t[xs],delete t[xf],delete t[wb],delete t[Cb])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function fg(e){return e.tag===5||e.tag===3||e.tag===4}function Uh(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||fg(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Ff(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=gl));else if(r!==4&&(e=e.child,e!==null))for(Ff(e,t,n),e=e.sibling;e!==null;)Ff(e,t,n),e=e.sibling}function zf(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(zf(e,t,n),e=e.sibling;e!==null;)zf(e,t,n),e=e.sibling}var gt=null,kn=!1;function mr(e,t,n){for(n=n.child;n!==null;)dg(e,t,n),n=n.sibling}function dg(e,t,n){if(Bn&&typeof Bn.onCommitFiberUnmount=="function")try{Bn.onCommitFiberUnmount(Kl,n)}catch{}switch(n.tag){case 5:Et||zi(n,t);case 6:var r=gt,i=kn;gt=null,mr(e,t,n),gt=r,kn=i,gt!==null&&(kn?(e=gt,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):gt.removeChild(n.stateNode));break;case 18:gt!==null&&(kn?(e=gt,n=n.stateNode,e.nodeType===8?Ac(e.parentNode,n):e.nodeType===1&&Ac(e,n),ws(e)):Ac(gt,n.stateNode));break;case 4:r=gt,i=kn,gt=n.stateNode.containerInfo,kn=!0,mr(e,t,n),gt=r,kn=i;break;case 0:case 11:case 14:case 15:if(!Et&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,s=o.destroy;o=o.tag,s!==void 0&&(o&2||o&4)&&Bf(n,t,s),i=i.next}while(i!==r)}mr(e,t,n);break;case 1:if(!Et&&(zi(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){Ye(n,t,a)}mr(e,t,n);break;case 21:mr(e,t,n);break;case 22:n.mode&1?(Et=(r=Et)||n.memoizedState!==null,mr(e,t,n),Et=r):mr(e,t,n);break;default:mr(e,t,n)}}function Wh(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Db),t.forEach(function(r){var i=Zb.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function wn(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=s),r&=~o}if(r=i,r=Je()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Fb(r/1960))-r,10e?16:e,Sr===null)var r=!1;else{if(e=Sr,Sr=null,Al=0,$e&6)throw Error(Z(331));var i=$e;for($e|=4,ne=e.current;ne!==null;){var o=ne,s=o.child;if(ne.flags&16){var a=o.deletions;if(a!==null){for(var c=0;cJe()-Yd?ti(e,0):Xd|=n),Ut(e,t)}function _g(e,t){t===0&&(e.mode&1?(t=Oa,Oa<<=1,!(Oa&130023424)&&(Oa=4194304)):t=1);var n=Mt();e=sr(e,t),e!==null&&(Us(e,t,n),Ut(e,n))}function qb(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),_g(e,n)}function Zb(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(Z(314))}r!==null&&r.delete(t),_g(e,n)}var wg;wg=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ft.current)Ht=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Ht=!1,Rb(e,t,n);Ht=!!(e.flags&131072)}else Ht=!1,Ve&&t.flags&1048576&&S0(t,_l,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Ya(e,t),e=t.pendingProps;var i=no(t,xt.current);Qi(t,n),i=Wd(null,t,r,e,i,n);var o=Vd();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,zt(r)?(o=!0,yl(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,Bd(t),i.updater=iu,t.stateNode=i,i._reactInternals=t,Mf(t,r,e,n),t=Rf(null,t,r,!0,o,n)):(t.tag=0,Ve&&o&&Md(t),Lt(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Ya(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=Xb(r),e=Cn(r,e),i){case 0:t=jf(null,t,r,e,n);break e;case 1:t=Bh(null,t,r,e,n);break e;case 11:t=Nh(null,t,r,e,n);break e;case 14:t=Dh(null,t,r,Cn(r.type,e),n);break e}throw Error(Z(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Cn(r,i),jf(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Cn(r,i),Bh(e,t,r,i,n);case 3:e:{if(ig(t),e===null)throw Error(Z(387));r=t.pendingProps,o=t.memoizedState,i=o.element,O0(e,t),kl(t,r,null,n);var s=t.memoizedState;if(r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=so(Error(Z(423)),t),t=Hh(e,t,r,n,i);break e}else if(r!==i){i=so(Error(Z(424)),t),t=Hh(e,t,r,n,i);break e}else for(qt=Ar(t.stateNode.containerInfo.firstChild),Zt=t,Ve=!0,En=null,n=M0(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(ro(),r===i){t=ar(e,t,n);break e}Lt(e,t,r,n)}t=t.child}return t;case 5:return P0(t),e===null&&Af(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,s=i.children,Sf(r,i)?s=null:o!==null&&Sf(r,o)&&(t.flags|=32),rg(e,t),Lt(e,t,s,n),t.child;case 6:return e===null&&Af(t),null;case 13:return og(e,t,n);case 4:return Hd(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=io(t,null,r,n):Lt(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Cn(r,i),Nh(e,t,r,i,n);case 7:return Lt(e,t,t.pendingProps,n),t.child;case 8:return Lt(e,t,t.pendingProps.children,n),t.child;case 12:return Lt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,s=i.value,De(wl,r._currentValue),r._currentValue=s,o!==null)if(An(o.value,s)){if(o.children===i.children&&!Ft.current){t=ar(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var a=o.dependencies;if(a!==null){s=o.child;for(var c=a.firstContext;c!==null;){if(c.context===r){if(o.tag===1){c=rr(-1,n&-n),c.tag=2;var p=o.updateQueue;if(p!==null){p=p.shared;var g=p.pending;g===null?c.next=c:(c.next=g.next,g.next=c),p.pending=c}}o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Lf(o.return,n,t),a.lanes|=n;break}c=c.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(Z(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),Lf(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Lt(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Qi(t,n),i=an(i),r=r(i),t.flags|=1,Lt(e,t,r,n),t.child;case 14:return r=t.type,i=Cn(r,t.pendingProps),i=Cn(r.type,i),Dh(e,t,r,i,n);case 15:return tg(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Cn(r,i),Ya(e,t),t.tag=1,zt(r)?(e=!0,yl(t)):e=!1,Qi(t,n),L0(t,r,i),Mf(t,r,i,n),Rf(null,t,r,!0,e,n);case 19:return sg(e,t,n);case 22:return ng(e,t,n)}throw Error(Z(156,t.tag))};function Cg(e,t){return Z1(e,t)}function Qb(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function on(e,t,n,r){return new Qb(e,t,n,r)}function tp(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Xb(e){if(typeof e=="function")return tp(e)?1:0;if(e!=null){if(e=e.$$typeof,e===_d)return 11;if(e===wd)return 14}return 2}function Pr(e,t){var n=e.alternate;return n===null?(n=on(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function el(e,t,n,r,i,o){var s=2;if(r=e,typeof e=="function")tp(e)&&(s=1);else if(typeof e=="string")s=5;else e:switch(e){case Pi:return ni(n.children,i,o,t);case bd:s=8,i|=8;break;case tf:return e=on(12,n,t,i|2),e.elementType=tf,e.lanes=o,e;case nf:return e=on(13,n,t,i),e.elementType=nf,e.lanes=o,e;case rf:return e=on(19,n,t,i),e.elementType=rf,e.lanes=o,e;case T1:return lu(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case A1:s=10;break e;case L1:s=9;break e;case _d:s=11;break e;case wd:s=14;break e;case vr:s=16,r=null;break e}throw Error(Z(130,e==null?e:typeof e,""))}return t=on(s,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function ni(e,t,n,r){return e=on(7,e,r,t),e.lanes=n,e}function lu(e,t,n,r){return e=on(22,e,r,t),e.elementType=T1,e.lanes=n,e.stateNode={isHidden:!1},e}function Nc(e,t,n){return e=on(6,e,null,t),e.lanes=n,e}function Dc(e,t,n){return t=on(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Yb(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=yc(0),this.expirationTimes=yc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=yc(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function np(e,t,n,r,i,o,s,a,c){return e=new Yb(e,t,n,a,c),t===1?(t=1,o===!0&&(t|=8)):t=0,o=on(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Bd(o),e}function Kb(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(xg)}catch(e){console.error(e)}}xg(),S1.exports=Yt;var r_=S1.exports,Kh=r_;Jc.createRoot=Kh.createRoot,Jc.hydrateRoot=Kh.hydrateRoot;const i_="modulepreload",o_=function(e,t){return new URL(e,t).href},Jh={},Xt=function(t,n,r){if(!n||n.length===0)return t();const i=document.getElementsByTagName("link");return Promise.all(n.map(o=>{if(o=o_(o,r),o in Jh)return;Jh[o]=!0;const s=o.endsWith(".css"),a=s?'[rel="stylesheet"]':"";if(!!r)for(let g=i.length-1;g>=0;g--){const l=i[g];if(l.href===o&&(!s||l.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${o}"]${a}`))return;const p=document.createElement("link");if(p.rel=s?"stylesheet":i_,s||(p.as="script",p.crossOrigin=""),p.href=o,document.head.appendChild(p),s)return new Promise((g,l)=>{p.addEventListener("load",g),p.addEventListener("error",()=>l(new Error(`Unable to preload CSS for ${o}`)))})})).then(()=>t()).catch(o=>{const s=new Event("vite:preloadError",{cancelable:!0});if(s.payload=o,window.dispatchEvent(s),!s.defaultPrevented)throw o})},s_=async()=>{if(Ml)return await Ml;const{createEIP1193Provider:e}=await Xt(()=>import("./index-da2ed2d6.js"),[],import.meta.url),t=await Xt(()=>import("./metamask-sdk-22e0238d.js"),[],import.meta.url),n=t.MetaMaskSDK||t.default.MetaMaskSDK;if(!n)throw new Error("Error importing and initializing MetaMask SDK");return{createEIP1193Provider:e,MetaMaskSDKConstructor:n}};let Ml=null,tn=null;function a_({options:e}){return()=>(Ml=s_().catch(t=>{throw t}),{label:"MetaMask",getIcon:async()=>(await Xt(()=>import("./icon-1c685b94.js"),[],import.meta.url)).default,getInterface:async({appMetadata:t})=>{var n,r;if(tn=window.mmsdk||tn,tn)return{provider:tn.getProvider(),instance:tn};const{name:i,icon:o}=t||{},a=`data:image/svg+xml;base64,${window.btoa(o||"")}`,c=await Ml;if(!(c!=null&&c.MetaMaskSDKConstructor))throw new Error("Error importing and initializing MetaMask SDK");const{MetaMaskSDKConstructor:p}=c;tn=new p({...e,dappMetadata:{name:((n=e.dappMetadata)===null||n===void 0?void 0:n.name)||i||"",url:((r=e.dappMetadata)===null||r===void 0?void 0:r.url)||window.location.origin,base64Icon:a},_source:"web3-onboard"}),await tn.init();const g=tn.getProvider();return g&&(g.disconnect=()=>{tn==null||tn.terminate()}),{provider:g,instance:tn}}})}var qf=function(e,t){return qf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(n[i]=r[i])},qf(e,t)};function Ln(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");qf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var Ae=function(){return Ae=Object.assign||function(t){for(var n,r=1,i=arguments.length;r0&&o[o.length-1])&&(p[0]===6||p[0]===2)){n=0;continue}if(p[0]===3&&(!o||p[1]>o[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function lr(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,o=[],s;try{for(;(t===void 0||t-- >0)&&!(i=r.next()).done;)o.push(i.value)}catch(a){s={error:a}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(s)throw s.error}}return o}function On(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,o;r1||a(d,h)})})}function a(d,h){try{c(r[d](h))}catch(u){l(o[0][3],u)}}function c(d){d.value instanceof Yi?Promise.resolve(d.value.v).then(p,g):l(o[0][2],d)}function p(d){a("next",d)}function g(d){a("throw",d)}function l(d,h){d(h),o.shift(),o.length&&a(o[0][0],o[0][1])}}function c_(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof lo=="function"?lo(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(o){n[o]=e[o]&&function(s){return new Promise(function(a,c){s=e[o](s),i(a,c,s.done,s.value)})}}function i(o,s,a,c){Promise.resolve(c).then(function(p){o({value:p,done:a})},s)}}function Pe(e){return typeof e=="function"}function sp(e){var t=function(r){Error.call(r),r.stack=new Error().stack},n=e(t);return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}var Bc=sp(function(e){return function(n){e(this),this.message=n?n.length+` errors occurred during unsubscription: +`+n.map(function(r,i){return i+1+") "+r.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=n}});function Zf(e,t){if(e){var n=e.indexOf(t);0<=n&&e.splice(n,1)}}var pu=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,n,r,i,o;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=lo(s),c=a.next();!c.done;c=a.next()){var p=c.value;p.remove(this)}}catch(f){t={error:f}}finally{try{c&&!c.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}else s.remove(this);var g=this.initialTeardown;if(Pe(g))try{g()}catch(f){o=f instanceof Bc?f.errors:[f]}var l=this._finalizers;if(l){this._finalizers=null;try{for(var d=lo(l),h=d.next();!h.done;h=d.next()){var u=h.value;try{em(u)}catch(f){o=o??[],f instanceof Bc?o=On(On([],lr(o)),lr(f.errors)):o.push(f)}}}catch(f){r={error:f}}finally{try{h&&!h.done&&(i=d.return)&&i.call(d)}finally{if(r)throw r.error}}}if(o)throw new Bc(o)}},e.prototype.add=function(t){var n;if(t&&t!==this)if(this.closed)em(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(n=this._finalizers)!==null&&n!==void 0?n:[]).push(t)}},e.prototype._hasParent=function(t){var n=this._parentage;return n===t||Array.isArray(n)&&n.includes(t)},e.prototype._addParent=function(t){var n=this._parentage;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t},e.prototype._removeParent=function(t){var n=this._parentage;n===t?this._parentage=null:Array.isArray(n)&&Zf(n,t)},e.prototype.remove=function(t){var n=this._finalizers;n&&Zf(n,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),Og=pu.EMPTY;function Ag(e){return e instanceof pu||e&&"closed"in e&&Pe(e.remove)&&Pe(e.add)&&Pe(e.unsubscribe)}function em(e){Pe(e)?e():e.unsubscribe()}var Lg={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Qf={setTimeout:function(e,t){for(var n=[],r=2;r0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(n){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,n)},t.prototype._subscribe=function(n){return this._throwIfClosed(),this._checkFinalizedStatuses(n),this._innerSubscribe(n)},t.prototype._innerSubscribe=function(n){var r=this,i=this,o=i.hasError,s=i.isStopped,a=i.observers;return o||s?Og:(this.currentObservers=null,a.push(n),new pu(function(){r.currentObservers=null,Zf(a,n)}))},t.prototype._checkFinalizedStatuses=function(n){var r=this,i=r.hasError,o=r.thrownError,s=r.isStopped;i?n.error(o):s&&n.complete()},t.prototype.asObservable=function(){var n=new Pt;return n.source=this,n},t.create=function(n,r){return new nm(n,r)},t}(Pt),nm=function(e){Ln(t,e);function t(n,r){var i=e.call(this)||this;return i.destination=n,i.source=r,i}return t.prototype.next=function(n){var r,i;(i=(r=this.destination)===null||r===void 0?void 0:r.next)===null||i===void 0||i.call(r,n)},t.prototype.error=function(n){var r,i;(i=(r=this.destination)===null||r===void 0?void 0:r.error)===null||i===void 0||i.call(r,n)},t.prototype.complete=function(){var n,r;(r=(n=this.destination)===null||n===void 0?void 0:n.complete)===null||r===void 0||r.call(n)},t.prototype._subscribe=function(n){var r,i;return(i=(r=this.source)===null||r===void 0?void 0:r.subscribe(n))!==null&&i!==void 0?i:Og},t}(cr),qs=function(e){Ln(t,e);function t(n){var r=e.call(this)||this;return r._value=n,r}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(n){var r=e.prototype._subscribe.call(this,n);return!r.closed&&n.next(this._value),r},t.prototype.getValue=function(){var n=this,r=n.hasError,i=n.thrownError,o=n._value;if(r)throw i;return this._throwIfClosed(),o},t.prototype.next=function(n){e.prototype.next.call(this,this._value=n)},t}(cr),Mg={now:function(){return(Mg.delegate||Date).now()},delegate:void 0},w_=function(e){Ln(t,e);function t(n,r,i){n===void 0&&(n=1/0),r===void 0&&(r=1/0),i===void 0&&(i=Mg);var o=e.call(this)||this;return o._bufferSize=n,o._windowTime=r,o._timestampProvider=i,o._buffer=[],o._infiniteTimeWindow=!0,o._infiniteTimeWindow=r===1/0,o._bufferSize=Math.max(1,n),o._windowTime=Math.max(1,r),o}return t.prototype.next=function(n){var r=this,i=r.isStopped,o=r._buffer,s=r._infiniteTimeWindow,a=r._timestampProvider,c=r._windowTime;i||(o.push(n),!s&&o.push(a.now()+c)),this._trimBuffer(),e.prototype.next.call(this,n)},t.prototype._subscribe=function(n){this._throwIfClosed(),this._trimBuffer();for(var r=this._innerSubscribe(n),i=this,o=i._infiniteTimeWindow,s=i._buffer,a=s.slice(),c=0;c0&&(g=new uo({next:function(x){return k.next(x)},error:function(x){f=!0,b(),l=zc(m,i,x),k.error(x)},complete:function(){u=!0,b(),l=zc(m,s),k.complete()}}),dn(y).subscribe(g))})(p)}}function zc(e,t){for(var n=[],r=2;r0&&r[1]||""}static getSecondMatch(t,n){const r=n.match(t);return r&&r.length>1&&r[2]||""}static matchAndReturnConst(t,n,r){if(t.test(n))return r}static getWindowsVersionName(t){switch(t){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}}static getMacOSVersionName(t){const n=t.split(".").splice(0,2).map(r=>parseInt(r,10)||0);if(n.push(0),n[0]===10)switch(n[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}}static getAndroidVersionName(t){const n=t.split(".").splice(0,2).map(r=>parseInt(r,10)||0);if(n.push(0),!(n[0]===1&&n[1]<5)){if(n[0]===1&&n[1]<6)return"Cupcake";if(n[0]===1&&n[1]>=6)return"Donut";if(n[0]===2&&n[1]<2)return"Eclair";if(n[0]===2&&n[1]===2)return"Froyo";if(n[0]===2&&n[1]>2)return"Gingerbread";if(n[0]===3)return"Honeycomb";if(n[0]===4&&n[1]<1)return"Ice Cream Sandwich";if(n[0]===4&&n[1]<4)return"Jelly Bean";if(n[0]===4&&n[1]>=4)return"KitKat";if(n[0]===5)return"Lollipop";if(n[0]===6)return"Marshmallow";if(n[0]===7)return"Nougat";if(n[0]===8)return"Oreo";if(n[0]===9)return"Pie"}}static getVersionPrecision(t){return t.split(".").length}static compareVersions(t,n,r=!1){const i=F.getVersionPrecision(t),o=F.getVersionPrecision(n);let s=Math.max(i,o),a=0;const c=F.map([t,n],p=>{const g=s-F.getVersionPrecision(p),l=p+new Array(g+1).join(".0");return F.map(l.split("."),d=>new Array(20-d.length).join("0")+d).reverse()});for(r&&(a=s-Math.min(i,o)),s-=1;s>=a;){if(c[0][s]>c[1][s])return 1;if(c[0][s]===c[1][s]){if(s===a)return 0;s-=1}else if(c[0][s]{r[c]=s[c]})}return t}static getBrowserAlias(t){return ew[t]}static getBrowserTypeByAlias(t){return Qg[t]||""}}const Ie=/version\/(\d+(\.?_?\d+)+)/i,tw=[{test:[/googlebot/i],describe(e){const t={name:"Googlebot"},n=F.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/opera/i],describe(e){const t={name:"Opera"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opr\/|opios/i],describe(e){const t={name:"Opera"},n=F.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/SamsungBrowser/i],describe(e){const t={name:"Samsung Internet for Android"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Whale/i],describe(e){const t={name:"NAVER Whale Browser"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MZBrowser/i],describe(e){const t={name:"MZ Browser"},n=F.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/focus/i],describe(e){const t={name:"Focus"},n=F.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/swing/i],describe(e){const t={name:"Swing"},n=F.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/coast/i],describe(e){const t={name:"Opera Coast"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe(e){const t={name:"Opera Touch"},n=F.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/yabrowser/i],describe(e){const t={name:"Yandex Browser"},n=F.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/ucbrowser/i],describe(e){const t={name:"UC Browser"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/Maxthon|mxios/i],describe(e){const t={name:"Maxthon"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/epiphany/i],describe(e){const t={name:"Epiphany"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/puffin/i],describe(e){const t={name:"Puffin"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sleipnir/i],describe(e){const t={name:"Sleipnir"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/k-meleon/i],describe(e){const t={name:"K-Meleon"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/micromessenger/i],describe(e){const t={name:"WeChat"},n=F.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/qqbrowser/i],describe(e){const t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},n=F.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/msie|trident/i],describe(e){const t={name:"Internet Explorer"},n=F.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/\sedg\//i],describe(e){const t={name:"Microsoft Edge"},n=F.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/edg([ea]|ios)/i],describe(e){const t={name:"Microsoft Edge"},n=F.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/vivaldi/i],describe(e){const t={name:"Vivaldi"},n=F.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/seamonkey/i],describe(e){const t={name:"SeaMonkey"},n=F.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/sailfish/i],describe(e){const t={name:"Sailfish"},n=F.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return n&&(t.version=n),t}},{test:[/silk/i],describe(e){const t={name:"Amazon Silk"},n=F.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/phantom/i],describe(e){const t={name:"PhantomJS"},n=F.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/slimerjs/i],describe(e){const t={name:"SlimerJS"},n=F.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){const t={name:"BlackBerry"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(web|hpw)[o0]s/i],describe(e){const t={name:"WebOS Browser"},n=F.getFirstMatch(Ie,e)||F.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/bada/i],describe(e){const t={name:"Bada"},n=F.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/tizen/i],describe(e){const t={name:"Tizen"},n=F.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/qupzilla/i],describe(e){const t={name:"QupZilla"},n=F.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/firefox|iceweasel|fxios/i],describe(e){const t={name:"Firefox"},n=F.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/electron/i],describe(e){const t={name:"Electron"},n=F.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/MiuiBrowser/i],describe(e){const t={name:"Miui"},n=F.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/chromium/i],describe(e){const t={name:"Chromium"},n=F.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/chrome|crios|crmo/i],describe(e){const t={name:"Chrome"},n=F.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/GSA/i],describe(e){const t={name:"Google Search"},n=F.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){const t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){const t={name:"Android Browser"},n=F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/playstation 4/i],describe(e){const t={name:"PlayStation 4"},n=F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/safari|applewebkit/i],describe(e){const t={name:"Safari"},n=F.getFirstMatch(Ie,e);return n&&(t.version=n),t}},{test:[/.*/i],describe(e){const t=/^(.*)\/(.*) /,n=/^(.*)\/(.*)[ \t]\((.*)/,i=e.search("\\(")!==-1?n:t;return{name:F.getFirstMatch(i,e),version:F.getSecondMatch(i,e)}}}],nw=[{test:[/Roku\/DVP/],describe(e){const t=F.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:Ot.Roku,version:t}}},{test:[/windows phone/i],describe(e){const t=F.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:Ot.WindowsPhone,version:t}}},{test:[/windows /i],describe(e){const t=F.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),n=F.getWindowsVersionName(t);return{name:Ot.Windows,version:t,versionName:n}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(e){const t={name:Ot.iOS},n=F.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return n&&(t.version=n),t}},{test:[/macintosh/i],describe(e){const t=F.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),n=F.getMacOSVersionName(t),r={name:Ot.MacOS,version:t};return n&&(r.versionName=n),r}},{test:[/(ipod|iphone|ipad)/i],describe(e){const t=F.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:Ot.iOS,version:t}}},{test(e){const t=!e.test(/like android/i),n=e.test(/android/i);return t&&n},describe(e){const t=F.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),n=F.getAndroidVersionName(t),r={name:Ot.Android,version:t};return n&&(r.versionName=n),r}},{test:[/(web|hpw)[o0]s/i],describe(e){const t=F.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),n={name:Ot.WebOS};return t&&t.length&&(n.version=t),n}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe(e){const t=F.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||F.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||F.getFirstMatch(/\bbb(\d+)/i,e);return{name:Ot.BlackBerry,version:t}}},{test:[/bada/i],describe(e){const t=F.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:Ot.Bada,version:t}}},{test:[/tizen/i],describe(e){const t=F.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:Ot.Tizen,version:t}}},{test:[/linux/i],describe(){return{name:Ot.Linux}}},{test:[/CrOS/],describe(){return{name:Ot.ChromeOS}}},{test:[/PlayStation 4/],describe(e){const t=F.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:Ot.PlayStation4,version:t}}}],rw=[{test:[/googlebot/i],describe(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe(e){const t=F.getFirstMatch(/(can-l01)/i,e)&&"Nova",n={type:Ke.mobile,vendor:"Huawei"};return t&&(n.model=t),n}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe(){return{type:Ke.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe(){return{type:Ke.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe(){return{type:Ke.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe(){return{type:Ke.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe(){return{type:Ke.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe(){return{type:Ke.tablet}}},{test(e){const t=e.test(/ipod|iphone/i),n=e.test(/like (ipod|iphone)/i);return t&&!n},describe(e){const t=F.getFirstMatch(/(ipod|iphone)/i,e);return{type:Ke.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe(){return{type:Ke.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe(){return{type:Ke.mobile}}},{test(e){return e.getBrowserName(!0)==="blackberry"},describe(){return{type:Ke.mobile,vendor:"BlackBerry"}}},{test(e){return e.getBrowserName(!0)==="bada"},describe(){return{type:Ke.mobile}}},{test(e){return e.getBrowserName()==="windows phone"},describe(){return{type:Ke.mobile,vendor:"Microsoft"}}},{test(e){const t=Number(String(e.getOSVersion()).split(".")[0]);return e.getOSName(!0)==="android"&&t>=3},describe(){return{type:Ke.tablet}}},{test(e){return e.getOSName(!0)==="android"},describe(){return{type:Ke.mobile}}},{test(e){return e.getOSName(!0)==="macos"},describe(){return{type:Ke.desktop,vendor:"Apple"}}},{test(e){return e.getOSName(!0)==="windows"},describe(){return{type:Ke.desktop}}},{test(e){return e.getOSName(!0)==="linux"},describe(){return{type:Ke.desktop}}},{test(e){return e.getOSName(!0)==="playstation 4"},describe(){return{type:Ke.tv}}},{test(e){return e.getOSName(!0)==="roku"},describe(){return{type:Ke.tv}}}],iw=[{test(e){return e.getBrowserName(!0)==="microsoft edge"},describe(e){if(/\sedg\//i.test(e))return{name:gr.Blink};const n=F.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:gr.EdgeHTML,version:n}}},{test:[/trident/i],describe(e){const t={name:gr.Trident},n=F.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){return e.test(/presto/i)},describe(e){const t={name:gr.Presto},n=F.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test(e){const t=e.test(/gecko/i),n=e.test(/like gecko/i);return t&&!n},describe(e){const t={name:gr.Gecko},n=F.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}},{test:[/(apple)?webkit\/537\.36/i],describe(){return{name:gr.Blink}}},{test:[/(apple)?webkit/i],describe(e){const t={name:gr.WebKit},n=F.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return n&&(t.version=n),t}}];let sm=class{constructor(t,n=!1){if(t==null||t==="")throw new Error("UserAgent parameter can't be empty");this._ua=t,this.parsedResult={},n!==!0&&this.parse()}getUA(){return this._ua}test(t){return t.test(this._ua)}parseBrowser(){this.parsedResult.browser={};const t=F.find(tw,n=>{if(typeof n.test=="function")return n.test(this);if(n.test instanceof Array)return n.test.some(r=>this.test(r));throw new Error("Browser's test function is not valid")});return t&&(this.parsedResult.browser=t.describe(this.getUA())),this.parsedResult.browser}getBrowser(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()}getBrowserName(t){return t?String(this.getBrowser().name).toLowerCase()||"":this.getBrowser().name||""}getBrowserVersion(){return this.getBrowser().version}getOS(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()}parseOS(){this.parsedResult.os={};const t=F.find(nw,n=>{if(typeof n.test=="function")return n.test(this);if(n.test instanceof Array)return n.test.some(r=>this.test(r));throw new Error("Browser's test function is not valid")});return t&&(this.parsedResult.os=t.describe(this.getUA())),this.parsedResult.os}getOSName(t){const{name:n}=this.getOS();return t?String(n).toLowerCase()||"":n||""}getOSVersion(){return this.getOS().version}getPlatform(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()}getPlatformType(t=!1){const{type:n}=this.getPlatform();return t?String(n).toLowerCase()||"":n||""}parsePlatform(){this.parsedResult.platform={};const t=F.find(rw,n=>{if(typeof n.test=="function")return n.test(this);if(n.test instanceof Array)return n.test.some(r=>this.test(r));throw new Error("Browser's test function is not valid")});return t&&(this.parsedResult.platform=t.describe(this.getUA())),this.parsedResult.platform}getEngine(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()}getEngineName(t){return t?String(this.getEngine().name).toLowerCase()||"":this.getEngine().name||""}parseEngine(){this.parsedResult.engine={};const t=F.find(iw,n=>{if(typeof n.test=="function")return n.test(this);if(n.test instanceof Array)return n.test.some(r=>this.test(r));throw new Error("Browser's test function is not valid")});return t&&(this.parsedResult.engine=t.describe(this.getUA())),this.parsedResult.engine}parse(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this}getResult(){return F.assign({},this.parsedResult)}satisfies(t){const n={};let r=0;const i={};let o=0;if(Object.keys(t).forEach(a=>{const c=t[a];typeof c=="string"?(i[a]=c,o+=1):typeof c=="object"&&(n[a]=c,r+=1)}),r>0){const a=Object.keys(n),c=F.find(a,g=>this.isOS(g));if(c){const g=this.satisfies(n[c]);if(g!==void 0)return g}const p=F.find(a,g=>this.isPlatform(g));if(p){const g=this.satisfies(n[p]);if(g!==void 0)return g}}if(o>0){const a=Object.keys(i),c=F.find(a,p=>this.isBrowser(p,!0));if(c!==void 0)return this.compareVersion(i[c])}}isBrowser(t,n=!1){const r=this.getBrowserName().toLowerCase();let i=t.toLowerCase();const o=F.getBrowserTypeByAlias(i);return n&&o&&(i=o.toLowerCase()),i===r}compareVersion(t){let n=[0],r=t,i=!1;const o=this.getBrowserVersion();if(typeof o=="string")return t[0]===">"||t[0]==="<"?(r=t.substr(1),t[1]==="="?(i=!0,r=t.substr(2)):n=[],t[0]===">"?n.push(1):n.push(-1)):t[0]==="="?r=t.substr(1):t[0]==="~"&&(i=!0,r=t.substr(1)),n.indexOf(F.compareVersions(o,r,i))>-1}isOS(t){return this.getOSName(!0)===String(t).toLowerCase()}isPlatform(t){return this.getPlatformType(!0)===String(t).toLowerCase()}isEngine(t){return this.getEngineName(!0)===String(t).toLowerCase()}is(t,n=!1){return this.isBrowser(t,n)||this.isOS(t)||this.isPlatform(t)}some(t=[]){return t.some(n=>this.is(n))}};/*! + * Bowser - a browser detector + * https://github.com/lancedikson/bowser + * MIT License | (c) Dustin Diaz 2012-2015 + * MIT License | (c) Denis Demchenko 2015-2019 + */class ow{static getParser(t,n=!1){if(typeof t!="string")throw new Error("UserAgent should be a string");return new sm(t,n)}static parse(t){return new sm(t).getResult()}static get BROWSER_MAP(){return Qg}static get ENGINE_MAP(){return gr}static get OS_MAP(){return Ot}static get PLATFORMS_MAP(){return Ke}}function Ki(){}function sw(e){return e()}function aw(e){e.forEach(sw)}function lw(e){return typeof e=="function"}function uw(e,t){return e!=e?t==t:e!==t||e&&typeof e=="object"||typeof e=="function"}function cw(e,...t){if(e==null)return Ki;const n=e.subscribe(...t);return n.unsubscribe?()=>n.unsubscribe():n}const Oi=[];function fw(e,t){return{subscribe:mu(e,t).subscribe}}function mu(e,t=Ki){let n;const r=new Set;function i(a){if(uw(e,a)&&(e=a,n)){const c=!Oi.length;for(const p of r)p[1](),Oi.push(p,e);if(c){for(let p=0;p{r.delete(p),r.size===0&&n&&(n(),n=null)}}return{set:i,update:o,subscribe:s}}function ko(e,t,n){const r=!Array.isArray(e),i=r?[e]:e,o=t.length<2;return fw(n,s=>{let a=!1;const c=[];let p=0,g=Ki;const l=()=>{if(p)return;g();const h=t(r?c[0]:c,s);o?s(h):g=lw(h)?h:Ki},d=i.map((h,u)=>cw(h,f=>{c[u]=f,p&=~(1<{p|=1<0}),n=[],r=0,i=t;r1)throw new RangeError("integer-width stems only accept a single optional option");i.options[0].replace(jw,function(c,p,g,l,d,h){if(p)t.minimumIntegerDigits=g.length;else{if(l&&d)throw new Error("We currently do not support maximum integer digits");if(h)throw new Error("We currently do not support exact integer digits")}return""});continue}if(sv.test(i.stem)){t.minimumIntegerDigits=i.stem.length;continue}if(um.test(i.stem)){if(i.options.length>1)throw new RangeError("Fraction-precision stems only accept a single optional option");i.stem.replace(um,function(c,p,g,l,d,h){return g==="*"?t.minimumFractionDigits=p.length:l&&l[0]==="#"?t.maximumFractionDigits=l.length:d&&h?(t.minimumFractionDigits=d.length,t.maximumFractionDigits=d.length+h.length):(t.minimumFractionDigits=p.length,t.maximumFractionDigits=p.length),""});var o=i.options[0];o==="w"?t=Ae(Ae({},t),{trailingZeroDisplay:"stripIfInteger"}):o&&(t=Ae(Ae({},t),cm(o)));continue}if(ov.test(i.stem)){t=Ae(Ae({},t),cm(i.stem));continue}var s=av(i.stem);s&&(t=Ae(Ae({},t),s));var a=Rw(i.stem);a&&(t=Ae(Ae({},t),a))}return t}var Fa={AX:["H"],BQ:["H"],CP:["H"],CZ:["H"],DK:["H"],FI:["H"],ID:["H"],IS:["H"],ML:["H"],NE:["H"],RU:["H"],SE:["H"],SJ:["H"],SK:["H"],AS:["h","H"],BT:["h","H"],DJ:["h","H"],ER:["h","H"],GH:["h","H"],IN:["h","H"],LS:["h","H"],PG:["h","H"],PW:["h","H"],SO:["h","H"],TO:["h","H"],VU:["h","H"],WS:["h","H"],"001":["H","h"],AL:["h","H","hB"],TD:["h","H","hB"],"ca-ES":["H","h","hB"],CF:["H","h","hB"],CM:["H","h","hB"],"fr-CA":["H","h","hB"],"gl-ES":["H","h","hB"],"it-CH":["H","h","hB"],"it-IT":["H","h","hB"],LU:["H","h","hB"],NP:["H","h","hB"],PF:["H","h","hB"],SC:["H","h","hB"],SM:["H","h","hB"],SN:["H","h","hB"],TF:["H","h","hB"],VA:["H","h","hB"],CY:["h","H","hb","hB"],GR:["h","H","hb","hB"],CO:["h","H","hB","hb"],DO:["h","H","hB","hb"],KP:["h","H","hB","hb"],KR:["h","H","hB","hb"],NA:["h","H","hB","hb"],PA:["h","H","hB","hb"],PR:["h","H","hB","hb"],VE:["h","H","hB","hb"],AC:["H","h","hb","hB"],AI:["H","h","hb","hB"],BW:["H","h","hb","hB"],BZ:["H","h","hb","hB"],CC:["H","h","hb","hB"],CK:["H","h","hb","hB"],CX:["H","h","hb","hB"],DG:["H","h","hb","hB"],FK:["H","h","hb","hB"],GB:["H","h","hb","hB"],GG:["H","h","hb","hB"],GI:["H","h","hb","hB"],IE:["H","h","hb","hB"],IM:["H","h","hb","hB"],IO:["H","h","hb","hB"],JE:["H","h","hb","hB"],LT:["H","h","hb","hB"],MK:["H","h","hb","hB"],MN:["H","h","hb","hB"],MS:["H","h","hb","hB"],NF:["H","h","hb","hB"],NG:["H","h","hb","hB"],NR:["H","h","hb","hB"],NU:["H","h","hb","hB"],PN:["H","h","hb","hB"],SH:["H","h","hb","hB"],SX:["H","h","hb","hB"],TA:["H","h","hb","hB"],ZA:["H","h","hb","hB"],"af-ZA":["H","h","hB","hb"],AR:["H","h","hB","hb"],CL:["H","h","hB","hb"],CR:["H","h","hB","hb"],CU:["H","h","hB","hb"],EA:["H","h","hB","hb"],"es-BO":["H","h","hB","hb"],"es-BR":["H","h","hB","hb"],"es-EC":["H","h","hB","hb"],"es-ES":["H","h","hB","hb"],"es-GQ":["H","h","hB","hb"],"es-PE":["H","h","hB","hb"],GT:["H","h","hB","hb"],HN:["H","h","hB","hb"],IC:["H","h","hB","hb"],KG:["H","h","hB","hb"],KM:["H","h","hB","hb"],LK:["H","h","hB","hb"],MA:["H","h","hB","hb"],MX:["H","h","hB","hb"],NI:["H","h","hB","hb"],PY:["H","h","hB","hb"],SV:["H","h","hB","hb"],UY:["H","h","hB","hb"],JP:["H","h","K"],AD:["H","hB"],AM:["H","hB"],AO:["H","hB"],AT:["H","hB"],AW:["H","hB"],BE:["H","hB"],BF:["H","hB"],BJ:["H","hB"],BL:["H","hB"],BR:["H","hB"],CG:["H","hB"],CI:["H","hB"],CV:["H","hB"],DE:["H","hB"],EE:["H","hB"],FR:["H","hB"],GA:["H","hB"],GF:["H","hB"],GN:["H","hB"],GP:["H","hB"],GW:["H","hB"],HR:["H","hB"],IL:["H","hB"],IT:["H","hB"],KZ:["H","hB"],MC:["H","hB"],MD:["H","hB"],MF:["H","hB"],MQ:["H","hB"],MZ:["H","hB"],NC:["H","hB"],NL:["H","hB"],PM:["H","hB"],PT:["H","hB"],RE:["H","hB"],RO:["H","hB"],SI:["H","hB"],SR:["H","hB"],ST:["H","hB"],TG:["H","hB"],TR:["H","hB"],WF:["H","hB"],YT:["H","hB"],BD:["h","hB","H"],PK:["h","hB","H"],AZ:["H","hB","h"],BA:["H","hB","h"],BG:["H","hB","h"],CH:["H","hB","h"],GE:["H","hB","h"],LI:["H","hB","h"],ME:["H","hB","h"],RS:["H","hB","h"],UA:["H","hB","h"],UZ:["H","hB","h"],XK:["H","hB","h"],AG:["h","hb","H","hB"],AU:["h","hb","H","hB"],BB:["h","hb","H","hB"],BM:["h","hb","H","hB"],BS:["h","hb","H","hB"],CA:["h","hb","H","hB"],DM:["h","hb","H","hB"],"en-001":["h","hb","H","hB"],FJ:["h","hb","H","hB"],FM:["h","hb","H","hB"],GD:["h","hb","H","hB"],GM:["h","hb","H","hB"],GU:["h","hb","H","hB"],GY:["h","hb","H","hB"],JM:["h","hb","H","hB"],KI:["h","hb","H","hB"],KN:["h","hb","H","hB"],KY:["h","hb","H","hB"],LC:["h","hb","H","hB"],LR:["h","hb","H","hB"],MH:["h","hb","H","hB"],MP:["h","hb","H","hB"],MW:["h","hb","H","hB"],NZ:["h","hb","H","hB"],SB:["h","hb","H","hB"],SG:["h","hb","H","hB"],SL:["h","hb","H","hB"],SS:["h","hb","H","hB"],SZ:["h","hb","H","hB"],TC:["h","hb","H","hB"],TT:["h","hb","H","hB"],UM:["h","hb","H","hB"],US:["h","hb","H","hB"],VC:["h","hb","H","hB"],VG:["h","hb","H","hB"],VI:["h","hb","H","hB"],ZM:["h","hb","H","hB"],BO:["H","hB","h","hb"],EC:["H","hB","h","hb"],ES:["H","hB","h","hb"],GQ:["H","hB","h","hb"],PE:["H","hB","h","hb"],AE:["h","hB","hb","H"],"ar-001":["h","hB","hb","H"],BH:["h","hB","hb","H"],DZ:["h","hB","hb","H"],EG:["h","hB","hb","H"],EH:["h","hB","hb","H"],HK:["h","hB","hb","H"],IQ:["h","hB","hb","H"],JO:["h","hB","hb","H"],KW:["h","hB","hb","H"],LB:["h","hB","hb","H"],LY:["h","hB","hb","H"],MO:["h","hB","hb","H"],MR:["h","hB","hb","H"],OM:["h","hB","hb","H"],PH:["h","hB","hb","H"],PS:["h","hB","hb","H"],QA:["h","hB","hb","H"],SA:["h","hB","hb","H"],SD:["h","hB","hb","H"],SY:["h","hB","hb","H"],TN:["h","hB","hb","H"],YE:["h","hB","hb","H"],AF:["H","hb","hB","h"],LA:["H","hb","hB","h"],CN:["H","hB","hb","h"],LV:["H","hB","hb","h"],TL:["H","hB","hb","h"],"zu-ZA":["H","hB","hb","h"],CD:["hB","H"],IR:["hB","H"],"hi-IN":["hB","h","H"],"kn-IN":["hB","h","H"],"ml-IN":["hB","h","H"],"te-IN":["hB","h","H"],KH:["hB","h","H","hb"],"ta-IN":["hB","h","hb","H"],BN:["hb","hB","h","H"],MY:["hb","hB","h","H"],ET:["hB","hb","h","H"],"gu-IN":["hB","hb","h","H"],"mr-IN":["hB","hb","h","H"],"pa-IN":["hB","hb","h","H"],TW:["hB","hb","h","H"],KE:["hB","hb","H","h"],MM:["hB","hb","H","h"],TZ:["hB","hb","H","h"],UG:["hB","hb","H","h"]};function Nw(e,t){for(var n="",r=0;r>1),c="a",p=Dw(t);for((p=="H"||p=="k")&&(a=0);a-- >0;)n+=c;for(;s-- >0;)n=p+n}else i==="J"?n+="H":n+=i}return n}function Dw(e){var t=e.hourCycle;if(t===void 0&&e.hourCycles&&e.hourCycles.length&&(t=e.hourCycles[0]),t)switch(t){case"h24":return"k";case"h23":return"H";case"h12":return"h";case"h11":return"K";default:throw new Error("Invalid hourCycle")}var n=e.language,r;n!=="root"&&(r=e.maximize().region);var i=Fa[r||""]||Fa[n||""]||Fa["".concat(n,"-001")]||Fa["001"];return i[0]}var Uc,Bw=new RegExp("^".concat(iv.source,"*")),Hw=new RegExp("".concat(iv.source,"*$"));function xe(e,t){return{start:e,end:t}}var Fw=!!String.prototype.startsWith,zw=!!String.fromCodePoint,Uw=!!Object.fromEntries,Ww=!!String.prototype.codePointAt,Vw=!!String.prototype.trimStart,Gw=!!String.prototype.trimEnd,qw=!!Number.isSafeInteger,Zw=qw?Number.isSafeInteger:function(e){return typeof e=="number"&&isFinite(e)&&Math.floor(e)===e&&Math.abs(e)<=9007199254740991},Jf=!0;try{var Qw=uv("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");Jf=((Uc=Qw.exec("a"))===null||Uc===void 0?void 0:Uc[0])==="a"}catch{Jf=!1}var dm=Fw?function(t,n,r){return t.startsWith(n,r)}:function(t,n,r){return t.slice(r,r+n.length)===n},ed=zw?String.fromCodePoint:function(){for(var t=[],n=0;no;){if(s=t[o++],s>1114111)throw RangeError(s+" is not a valid code point");r+=s<65536?String.fromCharCode(s):String.fromCharCode(((s-=65536)>>10)+55296,s%1024+56320)}return r},pm=Uw?Object.fromEntries:function(t){for(var n={},r=0,i=t;r=r)){var i=t.charCodeAt(n),o;return i<55296||i>56319||n+1===r||(o=t.charCodeAt(n+1))<56320||o>57343?i:(i-55296<<10)+(o-56320)+65536}},Xw=Vw?function(t){return t.trimStart()}:function(t){return t.replace(Bw,"")},Yw=Gw?function(t){return t.trimEnd()}:function(t){return t.replace(Hw,"")};function uv(e,t){return new RegExp(e,t)}var td;if(Jf){var hm=uv("([^\\p{White_Space}\\p{Pattern_Syntax}]*)","yu");td=function(t,n){var r;hm.lastIndex=n;var i=hm.exec(t);return(r=i[1])!==null&&r!==void 0?r:""}}else td=function(t,n){for(var r=[];;){var i=lv(t,n);if(i===void 0||cv(i)||t3(i))break;r.push(i),n+=i>=65536?2:1}return ed.apply(void 0,r)};var Kw=function(){function e(t,n){n===void 0&&(n={}),this.message=t,this.position={offset:0,line:1,column:1},this.ignoreTag=!!n.ignoreTag,this.locale=n.locale,this.requiresOtherClause=!!n.requiresOtherClause,this.shouldParseSkeletons=!!n.shouldParseSkeletons}return e.prototype.parse=function(){if(this.offset()!==0)throw Error("parser can only be used once");return this.parseMessage(0,"",!1)},e.prototype.parseMessage=function(t,n,r){for(var i=[];!this.isEOF();){var o=this.char();if(o===123){var s=this.parseArgument(t,r);if(s.err)return s;i.push(s.val)}else{if(o===125&&t>0)break;if(o===35&&(n==="plural"||n==="selectordinal")){var a=this.clonePosition();this.bump(),i.push({type:We.pound,location:xe(a,this.clonePosition())})}else if(o===60&&!this.ignoreTag&&this.peek()===47){if(r)break;return this.error(Se.UNMATCHED_CLOSING_TAG,xe(this.clonePosition(),this.clonePosition()))}else if(o===60&&!this.ignoreTag&&nd(this.peek()||0)){var s=this.parseTag(t,n);if(s.err)return s;i.push(s.val)}else{var s=this.parseLiteral(t,n);if(s.err)return s;i.push(s.val)}}}return{val:i,err:null}},e.prototype.parseTag=function(t,n){var r=this.clonePosition();this.bump();var i=this.parseTagName();if(this.bumpSpace(),this.bumpIf("/>"))return{val:{type:We.literal,value:"<".concat(i,"/>"),location:xe(r,this.clonePosition())},err:null};if(this.bumpIf(">")){var o=this.parseMessage(t+1,n,!0);if(o.err)return o;var s=o.val,a=this.clonePosition();if(this.bumpIf("")?{val:{type:We.tag,value:i,children:s,location:xe(r,this.clonePosition())},err:null}:this.error(Se.INVALID_TAG,xe(a,this.clonePosition())))}else return this.error(Se.UNCLOSED_TAG,xe(r,this.clonePosition()))}else return this.error(Se.INVALID_TAG,xe(r,this.clonePosition()))},e.prototype.parseTagName=function(){var t=this.offset();for(this.bump();!this.isEOF()&&e3(this.char());)this.bump();return this.message.slice(t,this.offset())},e.prototype.parseLiteral=function(t,n){for(var r=this.clonePosition(),i="";;){var o=this.tryParseQuote(n);if(o){i+=o;continue}var s=this.tryParseUnquoted(t,n);if(s){i+=s;continue}var a=this.tryParseLeftAngleBracket();if(a){i+=a;continue}break}var c=xe(r,this.clonePosition());return{val:{type:We.literal,value:i,location:c},err:null}},e.prototype.tryParseLeftAngleBracket=function(){return!this.isEOF()&&this.char()===60&&(this.ignoreTag||!Jw(this.peek()||0))?(this.bump(),"<"):null},e.prototype.tryParseQuote=function(t){if(this.isEOF()||this.char()!==39)return null;switch(this.peek()){case 39:return this.bump(),this.bump(),"'";case 123:case 60:case 62:case 125:break;case 35:if(t==="plural"||t==="selectordinal")break;return null;default:return null}this.bump();var n=[this.char()];for(this.bump();!this.isEOF();){var r=this.char();if(r===39)if(this.peek()===39)n.push(39),this.bump();else{this.bump();break}else n.push(r);this.bump()}return ed.apply(void 0,n)},e.prototype.tryParseUnquoted=function(t,n){if(this.isEOF())return null;var r=this.char();return r===60||r===123||r===35&&(n==="plural"||n==="selectordinal")||r===125&&t>0?null:(this.bump(),ed(r))},e.prototype.parseArgument=function(t,n){var r=this.clonePosition();if(this.bump(),this.bumpSpace(),this.isEOF())return this.error(Se.EXPECT_ARGUMENT_CLOSING_BRACE,xe(r,this.clonePosition()));if(this.char()===125)return this.bump(),this.error(Se.EMPTY_ARGUMENT,xe(r,this.clonePosition()));var i=this.parseIdentifierIfPossible().value;if(!i)return this.error(Se.MALFORMED_ARGUMENT,xe(r,this.clonePosition()));if(this.bumpSpace(),this.isEOF())return this.error(Se.EXPECT_ARGUMENT_CLOSING_BRACE,xe(r,this.clonePosition()));switch(this.char()){case 125:return this.bump(),{val:{type:We.argument,value:i,location:xe(r,this.clonePosition())},err:null};case 44:return this.bump(),this.bumpSpace(),this.isEOF()?this.error(Se.EXPECT_ARGUMENT_CLOSING_BRACE,xe(r,this.clonePosition())):this.parseArgumentOptions(t,n,i,r);default:return this.error(Se.MALFORMED_ARGUMENT,xe(r,this.clonePosition()))}},e.prototype.parseIdentifierIfPossible=function(){var t=this.clonePosition(),n=this.offset(),r=td(this.message,n),i=n+r.length;this.bumpTo(i);var o=this.clonePosition(),s=xe(t,o);return{value:r,location:s}},e.prototype.parseArgumentOptions=function(t,n,r,i){var o,s=this.clonePosition(),a=this.parseIdentifierIfPossible().value,c=this.clonePosition();switch(a){case"":return this.error(Se.EXPECT_ARGUMENT_TYPE,xe(s,c));case"number":case"date":case"time":{this.bumpSpace();var p=null;if(this.bumpIf(",")){this.bumpSpace();var g=this.clonePosition(),l=this.parseSimpleArgStyleIfPossible();if(l.err)return l;var d=Yw(l.val);if(d.length===0)return this.error(Se.EXPECT_ARGUMENT_STYLE,xe(this.clonePosition(),this.clonePosition()));var h=xe(g,this.clonePosition());p={style:d,styleLocation:h}}var u=this.tryParseArgumentClose(i);if(u.err)return u;var f=xe(i,this.clonePosition());if(p&&dm(p==null?void 0:p.style,"::",0)){var b=Xw(p.style.slice(2));if(a==="number"){var l=this.parseNumberSkeletonFromString(b,p.styleLocation);return l.err?l:{val:{type:We.number,value:r,location:f,style:l.val},err:null}}else{if(b.length===0)return this.error(Se.EXPECT_DATE_TIME_SKELETON,f);var m=b;this.locale&&(m=Nw(b,this.locale));var d={type:po.dateTime,pattern:m,location:p.styleLocation,parsedOptions:this.shouldParseSkeletons?Lw(m):{}},v=a==="date"?We.date:We.time;return{val:{type:v,value:r,location:f,style:d},err:null}}}return{val:{type:a==="number"?We.number:a==="date"?We.date:We.time,value:r,location:f,style:(o=p==null?void 0:p.style)!==null&&o!==void 0?o:null},err:null}}case"plural":case"selectordinal":case"select":{var y=this.clonePosition();if(this.bumpSpace(),!this.bumpIf(","))return this.error(Se.EXPECT_SELECT_ARGUMENT_OPTIONS,xe(y,Ae({},y)));this.bumpSpace();var _=this.parseIdentifierIfPossible(),k=0;if(a!=="select"&&_.value==="offset"){if(!this.bumpIf(":"))return this.error(Se.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,xe(this.clonePosition(),this.clonePosition()));this.bumpSpace();var l=this.tryParseDecimalInteger(Se.EXPECT_PLURAL_ARGUMENT_OFFSET_VALUE,Se.INVALID_PLURAL_ARGUMENT_OFFSET_VALUE);if(l.err)return l;this.bumpSpace(),_=this.parseIdentifierIfPossible(),k=l.val}var x=this.tryParsePluralOrSelectOptions(t,a,n,_);if(x.err)return x;var u=this.tryParseArgumentClose(i);if(u.err)return u;var S=xe(i,this.clonePosition());return a==="select"?{val:{type:We.select,value:r,options:pm(x.val),location:S},err:null}:{val:{type:We.plural,value:r,options:pm(x.val),offset:k,pluralType:a==="plural"?"cardinal":"ordinal",location:S},err:null}}default:return this.error(Se.INVALID_ARGUMENT_TYPE,xe(s,c))}},e.prototype.tryParseArgumentClose=function(t){return this.isEOF()||this.char()!==125?this.error(Se.EXPECT_ARGUMENT_CLOSING_BRACE,xe(t,this.clonePosition())):(this.bump(),{val:!0,err:null})},e.prototype.parseSimpleArgStyleIfPossible=function(){for(var t=0,n=this.clonePosition();!this.isEOF();){var r=this.char();switch(r){case 39:{this.bump();var i=this.clonePosition();if(!this.bumpUntil("'"))return this.error(Se.UNCLOSED_QUOTE_IN_ARGUMENT_STYLE,xe(i,this.clonePosition()));this.bump();break}case 123:{t+=1,this.bump();break}case 125:{if(t>0)t-=1;else return{val:this.message.slice(n.offset,this.offset()),err:null};break}default:this.bump();break}}return{val:this.message.slice(n.offset,this.offset()),err:null}},e.prototype.parseNumberSkeletonFromString=function(t,n){var r=[];try{r=Mw(t)}catch{return this.error(Se.INVALID_NUMBER_SKELETON,n)}return{val:{type:po.number,tokens:r,location:n,parsedOptions:this.shouldParseSkeletons?Iw(r):{}},err:null}},e.prototype.tryParsePluralOrSelectOptions=function(t,n,r,i){for(var o,s=!1,a=[],c=new Set,p=i.value,g=i.location;;){if(p.length===0){var l=this.clonePosition();if(n!=="select"&&this.bumpIf("=")){var d=this.tryParseDecimalInteger(Se.EXPECT_PLURAL_ARGUMENT_SELECTOR,Se.INVALID_PLURAL_ARGUMENT_SELECTOR);if(d.err)return d;g=xe(l,this.clonePosition()),p=this.message.slice(l.offset,this.offset())}else break}if(c.has(p))return this.error(n==="select"?Se.DUPLICATE_SELECT_ARGUMENT_SELECTOR:Se.DUPLICATE_PLURAL_ARGUMENT_SELECTOR,g);p==="other"&&(s=!0),this.bumpSpace();var h=this.clonePosition();if(!this.bumpIf("{"))return this.error(n==="select"?Se.EXPECT_SELECT_ARGUMENT_SELECTOR_FRAGMENT:Se.EXPECT_PLURAL_ARGUMENT_SELECTOR_FRAGMENT,xe(this.clonePosition(),this.clonePosition()));var u=this.parseMessage(t+1,n,r);if(u.err)return u;var f=this.tryParseArgumentClose(h);if(f.err)return f;a.push([p,{value:u.val,location:xe(h,this.clonePosition())}]),c.add(p),this.bumpSpace(),o=this.parseIdentifierIfPossible(),p=o.value,g=o.location}return a.length===0?this.error(n==="select"?Se.EXPECT_SELECT_ARGUMENT_SELECTOR:Se.EXPECT_PLURAL_ARGUMENT_SELECTOR,xe(this.clonePosition(),this.clonePosition())):this.requiresOtherClause&&!s?this.error(Se.MISSING_OTHER_CLAUSE,xe(this.clonePosition(),this.clonePosition())):{val:a,err:null}},e.prototype.tryParseDecimalInteger=function(t,n){var r=1,i=this.clonePosition();this.bumpIf("+")||this.bumpIf("-")&&(r=-1);for(var o=!1,s=0;!this.isEOF();){var a=this.char();if(a>=48&&a<=57)o=!0,s=s*10+(a-48),this.bump();else break}var c=xe(i,this.clonePosition());return o?(s*=r,Zw(s)?{val:s,err:null}:this.error(n,c)):this.error(t,c)},e.prototype.offset=function(){return this.position.offset},e.prototype.isEOF=function(){return this.offset()===this.message.length},e.prototype.clonePosition=function(){return{offset:this.position.offset,line:this.position.line,column:this.position.column}},e.prototype.char=function(){var t=this.position.offset;if(t>=this.message.length)throw Error("out of bound");var n=lv(this.message,t);if(n===void 0)throw Error("Offset ".concat(t," is at invalid UTF-16 code unit boundary"));return n},e.prototype.error=function(t,n){return{val:null,err:{kind:t,message:this.message,location:n}}},e.prototype.bump=function(){if(!this.isEOF()){var t=this.char();t===10?(this.position.line+=1,this.position.column=1,this.position.offset+=1):(this.position.column+=1,this.position.offset+=t<65536?1:2)}},e.prototype.bumpIf=function(t){if(dm(this.message,t,this.offset())){for(var n=0;n=0?(this.bumpTo(r),!0):(this.bumpTo(this.message.length),!1)},e.prototype.bumpTo=function(t){if(this.offset()>t)throw Error("targetOffset ".concat(t," must be greater than or equal to the current offset ").concat(this.offset()));for(t=Math.min(t,this.message.length);;){var n=this.offset();if(n===t)break;if(n>t)throw Error("targetOffset ".concat(t," is at invalid UTF-16 code unit boundary"));if(this.bump(),this.isEOF())break}},e.prototype.bumpSpace=function(){for(;!this.isEOF()&&cv(this.char());)this.bump()},e.prototype.peek=function(){if(this.isEOF())return null;var t=this.char(),n=this.offset(),r=this.message.charCodeAt(n+(t>=65536?2:1));return r??null},e}();function nd(e){return e>=97&&e<=122||e>=65&&e<=90}function Jw(e){return nd(e)||e===47}function e3(e){return e===45||e===46||e>=48&&e<=57||e===95||e>=97&&e<=122||e>=65&&e<=90||e==183||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function cv(e){return e>=9&&e<=13||e===32||e===133||e>=8206&&e<=8207||e===8232||e===8233}function t3(e){return e>=33&&e<=35||e===36||e>=37&&e<=39||e===40||e===41||e===42||e===43||e===44||e===45||e>=46&&e<=47||e>=58&&e<=59||e>=60&&e<=62||e>=63&&e<=64||e===91||e===92||e===93||e===94||e===96||e===123||e===124||e===125||e===126||e===161||e>=162&&e<=165||e===166||e===167||e===169||e===171||e===172||e===174||e===176||e===177||e===182||e===187||e===191||e===215||e===247||e>=8208&&e<=8213||e>=8214&&e<=8215||e===8216||e===8217||e===8218||e>=8219&&e<=8220||e===8221||e===8222||e===8223||e>=8224&&e<=8231||e>=8240&&e<=8248||e===8249||e===8250||e>=8251&&e<=8254||e>=8257&&e<=8259||e===8260||e===8261||e===8262||e>=8263&&e<=8273||e===8274||e===8275||e>=8277&&e<=8286||e>=8592&&e<=8596||e>=8597&&e<=8601||e>=8602&&e<=8603||e>=8604&&e<=8607||e===8608||e>=8609&&e<=8610||e===8611||e>=8612&&e<=8613||e===8614||e>=8615&&e<=8621||e===8622||e>=8623&&e<=8653||e>=8654&&e<=8655||e>=8656&&e<=8657||e===8658||e===8659||e===8660||e>=8661&&e<=8691||e>=8692&&e<=8959||e>=8960&&e<=8967||e===8968||e===8969||e===8970||e===8971||e>=8972&&e<=8991||e>=8992&&e<=8993||e>=8994&&e<=9e3||e===9001||e===9002||e>=9003&&e<=9083||e===9084||e>=9085&&e<=9114||e>=9115&&e<=9139||e>=9140&&e<=9179||e>=9180&&e<=9185||e>=9186&&e<=9254||e>=9255&&e<=9279||e>=9280&&e<=9290||e>=9291&&e<=9311||e>=9472&&e<=9654||e===9655||e>=9656&&e<=9664||e===9665||e>=9666&&e<=9719||e>=9720&&e<=9727||e>=9728&&e<=9838||e===9839||e>=9840&&e<=10087||e===10088||e===10089||e===10090||e===10091||e===10092||e===10093||e===10094||e===10095||e===10096||e===10097||e===10098||e===10099||e===10100||e===10101||e>=10132&&e<=10175||e>=10176&&e<=10180||e===10181||e===10182||e>=10183&&e<=10213||e===10214||e===10215||e===10216||e===10217||e===10218||e===10219||e===10220||e===10221||e===10222||e===10223||e>=10224&&e<=10239||e>=10240&&e<=10495||e>=10496&&e<=10626||e===10627||e===10628||e===10629||e===10630||e===10631||e===10632||e===10633||e===10634||e===10635||e===10636||e===10637||e===10638||e===10639||e===10640||e===10641||e===10642||e===10643||e===10644||e===10645||e===10646||e===10647||e===10648||e>=10649&&e<=10711||e===10712||e===10713||e===10714||e===10715||e>=10716&&e<=10747||e===10748||e===10749||e>=10750&&e<=11007||e>=11008&&e<=11055||e>=11056&&e<=11076||e>=11077&&e<=11078||e>=11079&&e<=11084||e>=11085&&e<=11123||e>=11124&&e<=11125||e>=11126&&e<=11157||e===11158||e>=11159&&e<=11263||e>=11776&&e<=11777||e===11778||e===11779||e===11780||e===11781||e>=11782&&e<=11784||e===11785||e===11786||e===11787||e===11788||e===11789||e>=11790&&e<=11798||e===11799||e>=11800&&e<=11801||e===11802||e===11803||e===11804||e===11805||e>=11806&&e<=11807||e===11808||e===11809||e===11810||e===11811||e===11812||e===11813||e===11814||e===11815||e===11816||e===11817||e>=11818&&e<=11822||e===11823||e>=11824&&e<=11833||e>=11834&&e<=11835||e>=11836&&e<=11839||e===11840||e===11841||e===11842||e>=11843&&e<=11855||e>=11856&&e<=11857||e===11858||e>=11859&&e<=11903||e>=12289&&e<=12291||e===12296||e===12297||e===12298||e===12299||e===12300||e===12301||e===12302||e===12303||e===12304||e===12305||e>=12306&&e<=12307||e===12308||e===12309||e===12310||e===12311||e===12312||e===12313||e===12314||e===12315||e===12316||e===12317||e>=12318&&e<=12319||e===12320||e===12336||e===64830||e===64831||e>=65093&&e<=65094}function rd(e){e.forEach(function(t){if(delete t.location,ev(t)||tv(t))for(var n in t.options)delete t.options[n].location,rd(t.options[n].value);else Yg(t)&&rv(t.style)||(Kg(t)||Jg(t))&&Kf(t.style)?delete t.style.location:nv(t)&&rd(t.children)})}function n3(e,t){t===void 0&&(t={}),t=Ae({shouldParseSkeletons:!0,requiresOtherClause:!0},t);var n=new Kw(e,t).parse();if(n.err){var r=SyntaxError(Se[n.err.kind]);throw r.location=n.err.location,r.originalMessage=n.err.message,r}return t!=null&&t.captureLocation||rd(n.val),n.val}function Wc(e,t){var n=t&&t.cache?t.cache:l3,r=t&&t.serializer?t.serializer:a3,i=t&&t.strategy?t.strategy:i3;return i(e,{cache:n,serializer:r})}function r3(e){return e==null||typeof e=="number"||typeof e=="boolean"}function fv(e,t,n,r){var i=r3(r)?r:n(r),o=t.get(i);return typeof o>"u"&&(o=e.call(this,r),t.set(i,o)),o}function dv(e,t,n){var r=Array.prototype.slice.call(arguments,3),i=n(r),o=t.get(i);return typeof o>"u"&&(o=e.apply(this,r),t.set(i,o)),o}function mp(e,t,n,r,i){return n.bind(t,e,r,i)}function i3(e,t){var n=e.length===1?fv:dv;return mp(e,this,n,t.cache.create(),t.serializer)}function o3(e,t){return mp(e,this,dv,t.cache.create(),t.serializer)}function s3(e,t){return mp(e,this,fv,t.cache.create(),t.serializer)}var a3=function(){return JSON.stringify(arguments)};function gp(){this.cache=Object.create(null)}gp.prototype.get=function(e){return this.cache[e]};gp.prototype.set=function(e,t){this.cache[e]=t};var l3={create:function(){return new gp}},Vc={variadic:o3,monadic:s3},ho;(function(e){e.MISSING_VALUE="MISSING_VALUE",e.INVALID_VALUE="INVALID_VALUE",e.MISSING_INTL_API="MISSING_INTL_API"})(ho||(ho={}));var gu=function(e){Ln(t,e);function t(n,r,i){var o=e.call(this,n)||this;return o.code=r,o.originalMessage=i,o}return t.prototype.toString=function(){return"[formatjs Error: ".concat(this.code,"] ").concat(this.message)},t}(Error),mm=function(e){Ln(t,e);function t(n,r,i,o){return e.call(this,'Invalid values for "'.concat(n,'": "').concat(r,'". Options are "').concat(Object.keys(i).join('", "'),'"'),ho.INVALID_VALUE,o)||this}return t}(gu),u3=function(e){Ln(t,e);function t(n,r,i){return e.call(this,'Value for "'.concat(n,'" must be of type ').concat(r),ho.INVALID_VALUE,i)||this}return t}(gu),c3=function(e){Ln(t,e);function t(n,r){return e.call(this,'The intl string context variable "'.concat(n,'" was not provided to the string "').concat(r,'"'),ho.MISSING_VALUE,r)||this}return t}(gu),At;(function(e){e[e.literal=0]="literal",e[e.object=1]="object"})(At||(At={}));function f3(e){return e.length<2?e:e.reduce(function(t,n){var r=t[t.length-1];return!r||r.type!==At.literal||n.type!==At.literal?t.push(n):r.value+=n.value,t},[])}function d3(e){return typeof e=="function"}function nl(e,t,n,r,i,o,s){if(e.length===1&&lm(e[0]))return[{type:At.literal,value:e[0].value}];for(var a=[],c=0,p=e;c0?new Intl.Locale(n[0]):new Intl.Locale(typeof t=="string"?t:t[0])},e.__parse=n3,e.formats={number:{integer:{maximumFractionDigits:0},currency:{style:"currency"},percent:{style:"percent"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}},e}();function g3(e,t){if(t==null)return;if(t in e)return e[t];const n=t.split(".");let r=e;for(let i=0;i0){const o=n.slice(i,n.length).join(".");if(o in r){r=r[o];break}}r=r[n[i]]}else r=void 0;return r}const Er={},v3=(e,t,n)=>n&&(t in Er||(Er[t]={}),e in Er[t]||(Er[t][e]=n),n),hv=(e,t)=>{if(t==null)return;if(t in Er&&e in Er[t])return Er[t][e];const n=Xs(t);for(let r=0;r(n[e]=xw.all([n[e]||{},...t]),n))}ko([Qs],([e])=>Object.keys(e));Qs.subscribe(e=>vp=e);const il={};function w3(e,t){il[e].delete(t),il[e].size===0&&delete il[e]}function gv(e){return il[e]}function C3(e){return Xs(e).map(t=>{const n=gv(t);return[t,n?[...n]:[]]}).filter(([,t])=>t.length>0)}function jl(e){return e==null?!1:Xs(e).some(t=>{var n;return(n=gv(t))==null?void 0:n.size})}function k3(e,t){return Promise.all(t.map(r=>(w3(e,r),r().then(i=>i.default||i)))).then(r=>rl(e,...r))}const Xo={};function vv(e){if(!jl(e))return e in Xo?Xo[e]:Promise.resolve();const t=C3(e);return Xo[e]=Promise.all(t.map(([n,r])=>k3(n,r))).then(()=>{if(jl(e))return vv(e);delete Xo[e]}),Xo[e]}var gm=Object.getOwnPropertySymbols,S3=Object.prototype.hasOwnProperty,E3=Object.prototype.propertyIsEnumerable,x3=(e,t)=>{var n={};for(var r in e)S3.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&gm)for(var r of gm(e))t.indexOf(r)<0&&E3.call(e,r)&&(n[r]=e[r]);return n};const $3={number:{scientific:{notation:"scientific"},engineering:{notation:"engineering"},compactLong:{notation:"compact",compactDisplay:"long"},compactShort:{notation:"compact",compactDisplay:"short"}},date:{short:{month:"numeric",day:"numeric",year:"2-digit"},medium:{month:"short",day:"numeric",year:"numeric"},long:{month:"long",day:"numeric",year:"numeric"},full:{weekday:"long",month:"long",day:"numeric",year:"numeric"}},time:{short:{hour:"numeric",minute:"numeric"},medium:{hour:"numeric",minute:"numeric",second:"numeric"},long:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"},full:{hour:"numeric",minute:"numeric",second:"numeric",timeZoneName:"short"}}};function O3({locale:e,id:t}){console.warn(`[svelte-i18n] The message "${t}" was not found in "${Xs(e).join('", "')}".${jl(Fr())?` + +Note: there are at least one loader still registered to this locale that wasn't executed.`:""}`)}const A3={fallbackLocale:null,loadingDelay:200,formats:$3,warnOnMissingMessages:!0,handleMissingMessage:void 0,ignoreTag:!0},ns=A3;function mo(){return ns}function L3(e){const t=e,{formats:n}=t,r=x3(t,["formats"]);let i=e.fallbackLocale;if(e.initialLocale)try{pv.resolveLocale(e.initialLocale)&&(i=e.initialLocale)}catch{console.warn(`[svelte-i18n] The initial locale "${e.initialLocale}" is not a valid locale.`)}return r.warnOnMissingMessages&&(delete r.warnOnMissingMessages,r.handleMissingMessage==null?r.handleMissingMessage=O3:console.warn('[svelte-i18n] The "warnOnMissingMessages" option is deprecated. Please use the "handleMissingMessage" option instead.')),Object.assign(ns,r,{initialLocale:i}),n&&("number"in n&&Object.assign(ns.formats.number,n.number),"date"in n&&Object.assign(ns.formats.date,n.date),"time"in n&&Object.assign(ns.formats.time,n.time)),di.set(i)}const qc=mu(!1);var T3=Object.defineProperty,M3=Object.defineProperties,P3=Object.getOwnPropertyDescriptors,vm=Object.getOwnPropertySymbols,j3=Object.prototype.hasOwnProperty,R3=Object.prototype.propertyIsEnumerable,ym=(e,t,n)=>t in e?T3(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,I3=(e,t)=>{for(var n in t||(t={}))j3.call(t,n)&&ym(e,n,t[n]);if(vm)for(var n of vm(t))R3.call(t,n)&&ym(e,n,t[n]);return e},N3=(e,t)=>M3(e,P3(t));let id;const Rl=mu(null);function bm(e){return e.split("-").map((t,n,r)=>r.slice(0,n+1).join("-")).reverse()}function Xs(e,t=mo().fallbackLocale){const n=bm(e);return t?[...new Set([...n,...bm(t)])]:n}function Fr(){return id??void 0}Rl.subscribe(e=>{id=e??void 0,typeof window<"u"&&e!=null&&document.documentElement.setAttribute("lang",e)});const D3=e=>{if(e&&_3(e)&&jl(e)){const{loadingDelay:t}=mo();let n;return typeof window<"u"&&Fr()!=null&&t?n=window.setTimeout(()=>qc.set(!0),t):qc.set(!0),vv(e).then(()=>{Rl.set(e)}).finally(()=>{clearTimeout(n),qc.set(!1)})}return Rl.set(e)},di=N3(I3({},Rl),{set:D3}),B3=()=>typeof window>"u"?null:window.navigator.language||window.navigator.languages[0],vu=e=>{const t=Object.create(null);return r=>{const i=JSON.stringify(r);return i in t?t[i]:t[i]=e(r)}};var H3=Object.defineProperty,Il=Object.getOwnPropertySymbols,yv=Object.prototype.hasOwnProperty,bv=Object.prototype.propertyIsEnumerable,_m=(e,t,n)=>t in e?H3(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,yp=(e,t)=>{for(var n in t||(t={}))yv.call(t,n)&&_m(e,n,t[n]);if(Il)for(var n of Il(t))bv.call(t,n)&&_m(e,n,t[n]);return e},So=(e,t)=>{var n={};for(var r in e)yv.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&Il)for(var r of Il(e))t.indexOf(r)<0&&bv.call(e,r)&&(n[r]=e[r]);return n};const Is=(e,t)=>{const{formats:n}=mo();if(e in n&&t in n[e])return n[e][t];throw new Error(`[svelte-i18n] Unknown "${t}" ${e} format.`)},F3=vu(e=>{var t=e,{locale:n,format:r}=t,i=So(t,["locale","format"]);if(n==null)throw new Error('[svelte-i18n] A "locale" must be set to format numbers');return r&&(i=Is("number",r)),new Intl.NumberFormat(n,i)}),z3=vu(e=>{var t=e,{locale:n,format:r}=t,i=So(t,["locale","format"]);if(n==null)throw new Error('[svelte-i18n] A "locale" must be set to format dates');return r?i=Is("date",r):Object.keys(i).length===0&&(i=Is("date","short")),new Intl.DateTimeFormat(n,i)}),U3=vu(e=>{var t=e,{locale:n,format:r}=t,i=So(t,["locale","format"]);if(n==null)throw new Error('[svelte-i18n] A "locale" must be set to format time values');return r?i=Is("time",r):Object.keys(i).length===0&&(i=Is("time","short")),new Intl.DateTimeFormat(n,i)}),W3=(e={})=>{var t=e,{locale:n=Fr()}=t,r=So(t,["locale"]);return F3(yp({locale:n},r))},V3=(e={})=>{var t=e,{locale:n=Fr()}=t,r=So(t,["locale"]);return z3(yp({locale:n},r))},G3=(e={})=>{var t=e,{locale:n=Fr()}=t,r=So(t,["locale"]);return U3(yp({locale:n},r))},q3=vu((e,t=Fr())=>new pv(e,t,mo().formats,{ignoreTag:mo().ignoreTag})),Z3=(e,t={})=>{var n,r,i,o;let s=t;typeof e=="object"&&(s=e,e=s.id);const{values:a,locale:c=Fr(),default:p}=s;if(c==null)throw new Error("[svelte-i18n] Cannot format a message without first setting the initial locale.");let g=hv(e,c);if(!g)g=(o=(i=(r=(n=mo()).handleMissingMessage)==null?void 0:r.call(n,{locale:c,id:e,defaultValue:p}))!=null?i:p)!=null?o:e;else if(typeof g!="string")return console.warn(`[svelte-i18n] Message with id "${e}" must be of type "string", found: "${typeof g}". Gettin its value through the "$format" method is deprecated; use the "json" method instead.`),g;if(!a)return g;let l=g;try{l=q3(g,c).format(a)}catch(d){d instanceof Error&&console.warn(`[svelte-i18n] Message "${e}" has syntax error:`,d.message)}return l},Q3=(e,t)=>G3(t).format(e),X3=(e,t)=>V3(t).format(e),Y3=(e,t)=>W3(t).format(e),K3=(e,t=Fr())=>hv(e,t),fr=ko([di,Qs],()=>Z3);ko([di],()=>Q3);ko([di],()=>X3);ko([di],()=>Y3);ko([di,Qs],()=>K3);let J3=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,n)=>(n&=63,n<36?t+=n.toString(36):n<62?t+=(n-26).toString(36).toUpperCase():n>62?t+="-":t+="_",t),"");var _v={exports:{}};(function(e,t){(function(n,r){e.exports=r()})(self,()=>{return n={7629:(i,o,s)=>{const a=s(375),c=s(8571),p=s(9474),g=s(1687),l=s(8652),d=s(8160),h=s(3292),u=s(6354),f=s(8901),b=s(9708),m=s(6914),v=s(2294),y=s(6133),_=s(1152),k=s(8863),x=s(2036),S={Base:class{constructor(w){this.type=w,this.$_root=null,this._definition={},this._reset()}_reset(){this._ids=new v.Ids,this._preferences=null,this._refs=new y.Manager,this._cache=null,this._valids=null,this._invalids=null,this._flags={},this._rules=[],this._singleRules=new Map,this.$_terms={},this.$_temp={ruleset:null,whens:{}}}describe(){return a(typeof b.describe=="function","Manifest functionality disabled"),b.describe(this)}allow(){for(var w=arguments.length,C=new Array(w),E=0;E1&&arguments[1]!==void 0?arguments[1]:{};return a(w!==void 0,"Missing example"),d.assertOptions(C,["override"]),this._inner("examples",w,{single:!0,override:C.override})}external(w,C){return typeof w=="object"&&(a(!C,"Cannot combine options with description"),C=w.description,w=w.method),a(typeof w=="function","Method must be a function"),a(C===void 0||C&&typeof C=="string","Description must be a non-empty string"),this._inner("externals",{method:w,description:C},{single:!0})}failover(w,C){return this._default("failover",w,C)}forbidden(){return this.presence("forbidden")}id(w){return w?(a(typeof w=="string","id must be a non-empty string"),a(/^[^\.]+$/.test(w),"id cannot contain period character"),this.$_setFlag("id",w)):this.$_setFlag("id",void 0)}invalid(){for(var w=arguments.length,C=new Array(w),E=0;E0&&arguments[0]!==void 0)||arguments[0];return a(typeof w=="boolean","Invalid mode:",w),this.$_setFlag("only",w)}optional(){return this.presence("optional")}prefs(w){a(w,"Missing preferences"),a(w.context===void 0,"Cannot override context"),a(w.externals===void 0,"Cannot override externals"),a(w.warnings===void 0,"Cannot override warnings"),a(w.debug===void 0,"Cannot override debug"),d.checkPreferences(w);const C=this.clone();return C._preferences=d.preferences(C._preferences,w),C}presence(w){return a(["optional","required","forbidden"].includes(w),"Unknown presence mode",w),this.$_setFlag("presence",w)}raw(){let w=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("result",w?"raw":void 0)}result(w){return a(["raw","strip"].includes(w),"Unknown result mode",w),this.$_setFlag("result",w)}required(){return this.presence("required")}strict(w){const C=this.clone(),E=w!==void 0&&!w;return C._preferences=d.preferences(C._preferences,{convert:E}),C}strip(){let w=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("result",w?"strip":void 0)}tag(){for(var w=arguments.length,C=new Array(w),E=0;EA.keep||A.name!==E),C._singleRules.delete(E));for(const E of w._rules)w._definition.rules[E.method].multi||C._singleRules.set(E.name,E),C._rules.push(E);if(C._flags.empty&&w._flags.empty){C._flags.empty=C._flags.empty.concat(w._flags.empty);const E=Object.assign({},w._flags);delete E.empty,g(C._flags,E)}else if(w._flags.empty){C._flags.empty=w._flags.empty;const E=Object.assign({},w._flags);delete E.empty,g(C._flags,E)}else g(C._flags,w._flags);for(const E in w.$_terms){const A=w.$_terms[E];A?C.$_terms[E]?C.$_terms[E]=C.$_terms[E].concat(A):C.$_terms[E]=A.slice():C.$_terms[E]||(C.$_terms[E]=A)}return this.$_root._tracer&&this.$_root._tracer._combine(C,[this,w]),C.$_mutateRebuild()}extend(w){return a(!w.base,"Cannot extend type with another base"),f.type(this,w)}extract(w){return w=Array.isArray(w)?w:w.split("."),this._ids.reach(w)}fork(w,C){a(!this._inRuleset(),"Cannot fork inside a ruleset");let E=this;for(let A of[].concat(w))A=Array.isArray(A)?A:A.split("."),E=E._ids.fork(A,C,E);return E.$_temp.ruleset=!1,E}rule(w){const C=this._definition;d.assertOptions(w,Object.keys(C.modifiers)),a(this.$_temp.ruleset!==!1,"Cannot apply rules to empty ruleset or the last rule added does not support rule properties");const E=this.$_temp.ruleset===null?this._rules.length-1:this.$_temp.ruleset;a(E>=0&&EE.tailor(w),ref:!1}),C.$_temp.ruleset=!1,C.$_mutateRebuild()}tracer(){return _.location?_.location(this):this}validate(w,C){return k.entry(w,this,C)}validateAsync(w,C){return k.entryAsync(w,this,C)}$_addRule(w){typeof w=="string"&&(w={name:w}),a(w&&typeof w=="object","Invalid options"),a(w.name&&typeof w.name=="string","Invalid rule name");for(const D in w)a(D[0]!=="_","Cannot set private rule properties");const C=Object.assign({},w);C._resolve=[],C.method=C.method||C.name;const E=this._definition.rules[C.method],A=C.args;a(E,"Unknown rule",C.method);const N=this.clone();if(A){a(Object.keys(A).length===1||Object.keys(A).length===this._definition.rules[C.name].args.length,"Invalid rule definition for",this.type,C.name);for(const D in A){let X=A[D];if(E.argsByName){const Y=E.argsByName.get(D);if(Y.ref&&d.isResolvable(X))C._resolve.push(D),N.$_mutateRegister(X);else if(Y.normalize&&(X=Y.normalize(X),A[D]=X),Y.assert){const re=d.validateArg(X,D,Y);a(!re,re,"or reference")}}X!==void 0?A[D]=X:delete A[D]}}return E.multi||(N._ruleRemove(C.name,{clone:!1}),N._singleRules.set(C.name,C)),N.$_temp.ruleset===!1&&(N.$_temp.ruleset=null),E.priority?N._rules.unshift(C):N._rules.push(C),N}$_compile(w,C){return h.schema(this.$_root,w,C)}$_createError(w,C,E,A,N){let D=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{};const X=D.flags!==!1?this._flags:{},Y=D.messages?m.merge(this._definition.messages,D.messages):this._definition.messages;return new u.Report(w,C,E,X,Y,A,N)}$_getFlag(w){return this._flags[w]}$_getRule(w){return this._singleRules.get(w)}$_mapLabels(w){return w=Array.isArray(w)?w:w.split("."),this._ids.labels(w)}$_match(w,C,E,A){(E=Object.assign({},E)).abortEarly=!0,E._externals=!1,C.snapshot();const N=!k.validate(w,this,C,E,A).errors;return C.restore(),N}$_modify(w){return d.assertOptions(w,["each","once","ref","schema"]),v.schema(this,w)||this}$_mutateRebuild(){return a(!this._inRuleset(),"Cannot add this rule inside a ruleset"),this._refs.reset(),this._ids.reset(),this.$_modify({each:(w,C)=>{let{source:E,name:A,path:N,key:D}=C;const X=this._definition[E][A]&&this._definition[E][A].register;X!==!1&&this.$_mutateRegister(w,{family:X,key:D})}}),this._definition.rebuild&&this._definition.rebuild(this),this.$_temp.ruleset=!1,this}$_mutateRegister(w){let{family:C,key:E}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._refs.register(w,C),this._ids.register(w,{key:E})}$_property(w){return this._definition.properties[w]}$_reach(w){return this._ids.reach(w)}$_rootReferences(){return this._refs.roots()}$_setFlag(w,C){let E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};a(w[0]==="_"||!this._inRuleset(),"Cannot set flag inside a ruleset");const A=this._definition.flags[w]||{};if(p(C,A.default)&&(C=void 0),p(C,this._flags[w]))return this;const N=E.clone!==!1?this.clone():this;return C!==void 0?(N._flags[w]=C,N.$_mutateRegister(C)):delete N._flags[w],w[0]!=="_"&&(N.$_temp.ruleset=!1),N}$_parent(w){for(var C=arguments.length,E=new Array(C>1?C-1:0),A=1;A2&&arguments[2]!==void 0?arguments[2]:{};return d.assertOptions(E,"literal"),a(C!==void 0,"Missing",w,"value"),a(typeof C=="function"||!E.literal,"Only function value supports literal option"),typeof C=="function"&&E.literal&&(C={[d.symbols.literal]:!0,literal:C}),this.$_setFlag(w,C)}_generate(w,C,E){if(!this.$_terms.whens)return{schema:this};const A=[],N=[];for(let Y=0;YK)break}const D=N.join(", ");if(C.mainstay.tracer.debug(C,"rule","when",D),!D)return{schema:this};if(!C.mainstay.tracer.active&&this.$_temp.whens[D])return{schema:this.$_temp.whens[D],id:D};let X=this;this._definition.generate&&(X=this._definition.generate(this,w,C,E));for(const Y of A)X=X.concat(Y);return this.$_root._tracer&&this.$_root._tracer._combine(X,[this,...A]),this.$_temp.whens[D]=X,{schema:X,id:D}}_inner(w,C){let E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};a(!this._inRuleset(),`Cannot set ${w} inside a ruleset`);const A=this.clone();return A.$_terms[w]&&!E.override||(A.$_terms[w]=[]),E.single?A.$_terms[w].push(C):A.$_terms[w].push(...C),A.$_temp.ruleset=!1,A}_inRuleset(){return this.$_temp.ruleset!==null&&this.$_temp.ruleset!==!1}_ruleRemove(w){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this._singleRules.has(w))return this;const E=C.clone!==!1?this.clone():this;E._singleRules.delete(w);const A=[];for(let N=0;N{const a=s(375),c=s(8571),p=s(8160),g={max:1e3,supported:new Set(["undefined","boolean","number","string"])};o.provider={provision:l=>new g.Cache(l)},g.Cache=class{constructor(){let l=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};p.assertOptions(l,["max"]),a(l.max===void 0||l.max&&l.max>0&&isFinite(l.max),"Invalid max cache size"),this._max=l.max||g.max,this._map=new Map,this._list=new g.List}get length(){return this._map.size}set(l,d){if(l!==null&&!g.supported.has(typeof l))return;let h=this._map.get(l);if(h)return h.value=d,void this._list.first(h);h=this._list.unshift({key:l,value:d}),this._map.set(l,h),this._compact()}get(l){const d=this._map.get(l);if(d)return this._list.first(d),c(d.value)}_compact(){if(this._map.size>this._max){const l=this._list.pop();this._map.delete(l.key)}}},g.List=class{constructor(){this.tail=null,this.head=null}unshift(l){return l.next=null,l.prev=this.head,this.head&&(this.head.next=l),this.head=l,this.tail||(this.tail=l),l}first(l){l!==this.head&&(this._remove(l),this.unshift(l))}pop(){return this._remove(this.tail)}_remove(l){const{next:d,prev:h}=l;return d.prev=h,h&&(h.next=d),l===this.tail&&(this.tail=d),l.prev=null,l.next=null,l}}},8160:(i,o,s)=>{const a=s(375),c=s(7916),p=s(5934);let g,l;const d={isoDate:/^(?:[-+]\d{2})?(?:\d{4}(?!\d{2}\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\1(?:[12]\d|0[1-9]|3[01]))?|W(?:[0-4]\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[1-6])))(?![T]$|[T][\d]+Z$)(?:[T\s](?:(?:(?:[01]\d|2[0-3])(?:(:?)[0-5]\d)?|24\:?00)(?:[.,]\d+(?!:))?)(?:\2[0-5]\d(?:[.,]\d+)?)?(?:[Z]|(?:[+-])(?:[01]\d|2[0-3])(?::?[0-5]\d)?)?)?)?$/};o.version=p.version,o.defaults={abortEarly:!0,allowUnknown:!1,artifacts:!1,cache:!0,context:null,convert:!0,dateFormat:"iso",errors:{escapeHtml:!1,label:"path",language:null,render:!0,stack:!1,wrap:{label:'"',array:"[]"}},externals:!0,messages:{},nonEnumerables:!1,noDefaults:!1,presence:"optional",skipFunctions:!1,stripUnknown:!1,warnings:!1},o.symbols={any:Symbol.for("@hapi/joi/schema"),arraySingle:Symbol("arraySingle"),deepDefault:Symbol("deepDefault"),errors:Symbol("errors"),literal:Symbol("literal"),override:Symbol("override"),parent:Symbol("parent"),prefs:Symbol("prefs"),ref:Symbol("ref"),template:Symbol("template"),values:Symbol("values")},o.assertOptions=function(h,u){let f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"Options";a(h&&typeof h=="object"&&!Array.isArray(h),"Options must be of type object");const b=Object.keys(h).filter(m=>!u.includes(m));a(b.length===0,`${f} contain unknown keys: ${b}`)},o.checkPreferences=function(h){l=l||s(3378);const u=l.preferences.validate(h);if(u.error)throw new c([u.error.details[0].message])},o.compare=function(h,u,f){switch(f){case"=":return h===u;case">":return h>u;case"<":return h=":return h>=u;case"<=":return h<=u}},o.default=function(h,u){return h===void 0?u:h},o.isIsoDate=function(h){return d.isoDate.test(h)},o.isNumber=function(h){return typeof h=="number"&&!isNaN(h)},o.isResolvable=function(h){return!!h&&(h[o.symbols.ref]||h[o.symbols.template])},o.isSchema=function(h){let u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const f=h&&h[o.symbols.any];return!!f&&(a(u.legacy||f.version===o.version,"Cannot mix different versions of joi schemas"),!0)},o.isValues=function(h){return h[o.symbols.values]},o.limit=function(h){return Number.isSafeInteger(h)&&h>=0},o.preferences=function(h,u){g=g||s(6914),h=h||{},u=u||{};const f=Object.assign({},h,u);return u.errors&&h.errors&&(f.errors=Object.assign({},h.errors,u.errors),f.errors.wrap=Object.assign({},h.errors.wrap,u.errors.wrap)),u.messages&&(f.messages=g.compile(u.messages,h.messages)),delete f[o.symbols.prefs],f},o.tryWithPath=function(h,u){let f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};try{return h()}catch(b){throw b.path!==void 0?b.path=u+"."+b.path:b.path=u,f.append&&(b.message=`${b.message} (${b.path})`),b}},o.validateArg=function(h,u,f){let{assert:b,message:m}=f;if(o.isSchema(b)){const v=b.validate(h);return v.error?v.error.message:void 0}if(!b(h))return u?`${u} ${m}`:m},o.verifyFlat=function(h,u){for(const f of h)a(!Array.isArray(f),"Method no longer accepts array arguments:",u)}},3292:(i,o,s)=>{const a=s(375),c=s(8160),p=s(6133),g={};o.schema=function(l,d){let h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};c.assertOptions(h,["appendPath","override"]);try{return g.schema(l,d,h)}catch(u){throw h.appendPath&&u.path!==void 0&&(u.message=`${u.message} (${u.path})`),u}},g.schema=function(l,d,h){a(d!==void 0,"Invalid undefined schema"),Array.isArray(d)&&(a(d.length,"Invalid empty array schema"),d.length===1&&(d=d[0]));const u=function(f){for(var b=arguments.length,m=new Array(b>1?b-1:0),v=1;v2&&arguments[2]!==void 0?arguments[2]:{};c.assertOptions(h,["legacy"]);const u=d&&d[c.symbols.any];if(u)return a(h.legacy||u.version===c.version,"Cannot mix different versions of joi schemas:",u.version,c.version),d;if(typeof d!="object"||!h.legacy)return o.schema(l,d,{appendPath:!0});const f=g.walk(d);return f?f.compile(f.root,d):o.schema(l,d,{appendPath:!0})},g.walk=function(l){if(typeof l!="object")return null;if(Array.isArray(l)){for(const h of l){const u=g.walk(h);if(u)return u}return null}const d=l[c.symbols.any];if(d)return{root:l[d.root],compile:d.compile};a(Object.getPrototypeOf(l)===Object.getPrototypeOf({}),"Schema can only contain plain objects");for(const h in l){const u=g.walk(l[h]);if(u)return u}return null},g.simple=function(l){return l===null||["boolean","string","number"].includes(typeof l)},o.when=function(l,d,h){if(h===void 0&&(a(d&&typeof d=="object","Missing options"),h=d,d=p.create(".")),Array.isArray(h)&&(h={switch:h}),c.assertOptions(h,["is","not","then","otherwise","switch","break"]),c.isSchema(d))return a(h.is===void 0,'"is" can not be used with a schema condition'),a(h.not===void 0,'"not" can not be used with a schema condition'),a(h.switch===void 0,'"switch" can not be used with a schema condition'),g.condition(l,{is:d,then:h.then,otherwise:h.otherwise,break:h.break});if(a(p.isRef(d)||typeof d=="string","Invalid condition:",d),a(h.not===void 0||h.is===void 0,'Cannot combine "is" with "not"'),h.switch===void 0){let f=h;h.not!==void 0&&(f={is:h.not,then:h.otherwise,otherwise:h.then,break:h.break});let b=f.is!==void 0?l.$_compile(f.is):l.$_root.invalid(null,!1,0,"").required();return a(f.then!==void 0||f.otherwise!==void 0,'options must have at least one of "then", "otherwise", or "switch"'),a(f.break===void 0||f.then===void 0||f.otherwise===void 0,"Cannot specify then, otherwise, and break all together"),h.is===void 0||p.isRef(h.is)||c.isSchema(h.is)||(b=b.required()),g.condition(l,{ref:o.ref(d),is:b,then:f.then,otherwise:f.otherwise,break:f.break})}a(Array.isArray(h.switch),'"switch" must be an array'),a(h.is===void 0,'Cannot combine "switch" with "is"'),a(h.not===void 0,'Cannot combine "switch" with "not"'),a(h.then===void 0,'Cannot combine "switch" with "then"');const u={ref:o.ref(d),switch:[],break:h.break};for(let f=0;f{const a=s(5688),c=s(8160),p=s(3328);o.Report=class{constructor(g,l,d,h,u,f,b){if(this.code=g,this.flags=h,this.messages=u,this.path=f.path,this.prefs=b,this.state=f,this.value=l,this.message=null,this.template=null,this.local=d||{},this.local.label=o.label(this.flags,this.state,this.prefs,this.messages),this.value===void 0||this.local.hasOwnProperty("value")||(this.local.value=this.value),this.path.length){const m=this.path[this.path.length-1];typeof m!="object"&&(this.local.key=m)}}_setTemplate(g){if(this.template=g,!this.flags.label&&this.path.length===0){const l=this._template(this.template,"root");l&&(this.local.label=l)}}toString(){if(this.message)return this.message;const g=this.code;if(!this.prefs.errors.render)return this.code;const l=this._template(this.template)||this._template(this.prefs.messages)||this._template(this.messages);return l===void 0?`Error code "${g}" is not defined, your custom type is missing the correct messages definition`:(this.message=l.render(this.value,this.state,this.prefs,this.local,{errors:this.prefs.errors,messages:[this.prefs.messages,this.messages]}),this.prefs.errors.label||(this.message=this.message.replace(/^"" /,"").trim()),this.message)}_template(g,l){return o.template(this.value,g,l||this.code,this.state,this.prefs)}},o.path=function(g){let l="";for(const d of g)typeof d!="object"&&(typeof d=="string"?(l&&(l+="."),l+=d):l+=`[${d}]`);return l},o.template=function(g,l,d,h,u){if(!l)return;if(p.isTemplate(l))return d!=="root"?l:null;let f=u.errors.language;if(c.isResolvable(f)&&(f=f.resolve(g,h,u)),f&&l[f]){if(l[f][d]!==void 0)return l[f][d];if(l[f]["*"]!==void 0)return l[f]["*"]}return l[d]?l[d]:l["*"]},o.label=function(g,l,d,h){if(g.label)return g.label;if(!d.errors.label)return"";let u=l.path;return d.errors.label==="key"&&l.path.length>1&&(u=l.path.slice(-1)),o.path(u)||o.template(null,d.messages,"root",l,d)||h&&o.template(null,h,"root",l,d)||"value"},o.process=function(g,l,d){if(!g)return null;const{override:h,message:u,details:f}=o.details(g);if(h)return h;if(d.errors.stack)return new o.ValidationError(u,f,l);const b=Error.stackTraceLimit;Error.stackTraceLimit=0;const m=new o.ValidationError(u,f,l);return Error.stackTraceLimit=b,m},o.details=function(g){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},d=[];const h=[];for(const u of g){if(u instanceof Error){if(l.override!==!1)return{override:u};const b=u.toString();d.push(b),h.push({message:b,type:"override",context:{error:u}});continue}const f=u.toString();d.push(f),h.push({message:f,path:u.path.filter(b=>typeof b!="object"),type:u.code,context:u.local})}return d.length>1&&(d=[...new Set(d)]),{message:d.join(". "),details:h}},o.ValidationError=class extends Error{constructor(g,l,d){super(g),this._original=d,this.details=l}static isError(g){return g instanceof o.ValidationError}},o.ValidationError.prototype.isJoi=!0,o.ValidationError.prototype.name="ValidationError",o.ValidationError.prototype.annotate=a.error},8901:(i,o,s)=>{const a=s(375),c=s(8571),p=s(8160),g=s(6914),l={};o.type=function(d,h){const u=Object.getPrototypeOf(d),f=c(u),b=d._assign(Object.create(f)),m=Object.assign({},h);delete m.base,f._definition=m;const v=u._definition||{};m.messages=g.merge(v.messages,m.messages),m.properties=Object.assign({},v.properties,m.properties),b.type=m.type,m.flags=Object.assign({},v.flags,m.flags);const y=Object.assign({},v.terms);if(m.terms)for(const S in m.terms){const w=m.terms[S];a(b.$_terms[S]===void 0,"Invalid term override for",m.type,S),b.$_terms[S]=w.init,y[S]=w}m.terms=y,m.args||(m.args=v.args),m.prepare=l.prepare(m.prepare,v.prepare),m.coerce&&(typeof m.coerce=="function"&&(m.coerce={method:m.coerce}),m.coerce.from&&!Array.isArray(m.coerce.from)&&(m.coerce={method:m.coerce.method,from:[].concat(m.coerce.from)})),m.coerce=l.coerce(m.coerce,v.coerce),m.validate=l.validate(m.validate,v.validate);const _=Object.assign({},v.rules);if(m.rules)for(const S in m.rules){const w=m.rules[S];a(typeof w=="object","Invalid rule definition for",m.type,S);let C=w.method;if(C===void 0&&(C=function(){return this.$_addRule(S)}),C&&(a(!f[S],"Rule conflict in",m.type,S),f[S]=C),a(!_[S],"Rule conflict in",m.type,S),_[S]=w,w.alias){const E=[].concat(w.alias);for(const A of E)f[A]=w.method}w.args&&(w.argsByName=new Map,w.args=w.args.map(E=>(typeof E=="string"&&(E={name:E}),a(!w.argsByName.has(E.name),"Duplicated argument name",E.name),p.isSchema(E.assert)&&(E.assert=E.assert.strict().label(E.name)),w.argsByName.set(E.name,E),E)))}m.rules=_;const k=Object.assign({},v.modifiers);if(m.modifiers)for(const S in m.modifiers){a(!f[S],"Rule conflict in",m.type,S);const w=m.modifiers[S];a(typeof w=="function","Invalid modifier definition for",m.type,S);const C=function(E){return this.rule({[S]:E})};f[S]=C,k[S]=w}if(m.modifiers=k,m.overrides){f._super=u,b.$_super={};for(const S in m.overrides)a(u[S],"Cannot override missing",S),m.overrides[S][p.symbols.parent]=u[S],b.$_super[S]=u[S].bind(b);Object.assign(f,m.overrides)}m.cast=Object.assign({},v.cast,m.cast);const x=Object.assign({},v.manifest,m.manifest);return x.build=l.build(m.manifest&&m.manifest.build,v.manifest&&v.manifest.build),m.manifest=x,m.rebuild=l.rebuild(m.rebuild,v.rebuild),b},l.build=function(d,h){return d&&h?function(u,f){return h(d(u,f),f)}:d||h},l.coerce=function(d,h){return d&&h?{from:d.from&&h.from?[...new Set([...d.from,...h.from])]:null,method(u,f){let b;if((!h.from||h.from.includes(typeof u))&&(b=h.method(u,f),b)){if(b.errors||b.value===void 0)return b;u=b.value}if(!d.from||d.from.includes(typeof u)){const m=d.method(u,f);if(m)return m}return b}}:d||h},l.prepare=function(d,h){return d&&h?function(u,f){const b=d(u,f);if(b){if(b.errors||b.value===void 0)return b;u=b.value}return h(u,f)||b}:d||h},l.rebuild=function(d,h){return d&&h?function(u){h(u),d(u)}:d||h},l.validate=function(d,h){return d&&h?function(u,f){const b=h(u,f);if(b){if(b.errors&&(!Array.isArray(b.errors)||b.errors.length))return b;u=b.value}return d(u,f)||b}:d||h}},5107:(i,o,s)=>{const a=s(375),c=s(8571),p=s(8652),g=s(8160),l=s(3292),d=s(6354),h=s(8901),u=s(9708),f=s(6133),b=s(3328),m=s(1152);let v;const y={types:{alternatives:s(4946),any:s(8068),array:s(546),boolean:s(4937),date:s(7500),function:s(390),link:s(8785),number:s(3832),object:s(8966),string:s(7417),symbol:s(8826)},aliases:{alt:"alternatives",bool:"boolean",func:"function"},root:function(){const _={_types:new Set(Object.keys(y.types))};for(const k of _._types)_[k]=function(){for(var x=arguments.length,S=new Array(x),w=0;w2?x-2:0),w=2;w2?x-2:0),w=2;w{const a=s(375),c=s(8571),p=s(3328);o.compile=function(g,l){if(typeof g=="string")return a(!l,"Cannot set single message string"),new p(g);if(p.isTemplate(g))return a(!l,"Cannot set single message template"),g;a(typeof g=="object"&&!Array.isArray(g),"Invalid message options"),l=l?c(l):{};for(let d in g){const h=g[d];if(d==="root"||p.isTemplate(h)){l[d]=h;continue}if(typeof h=="string"){l[d]=new p(h);continue}a(typeof h=="object"&&!Array.isArray(h),"Invalid message for",d);const u=d;for(d in l[u]=l[u]||{},h){const f=h[d];d==="root"||p.isTemplate(f)?l[u][d]=f:(a(typeof f=="string","Invalid message for",d,"in",u),l[u][d]=new p(f))}}return l},o.decompile=function(g){const l={};for(let d in g){const h=g[d];if(d==="root"){l.root=h;continue}if(p.isTemplate(h)){l[d]=h.describe({compact:!0});continue}const u=d;for(d in l[u]={},h){const f=h[d];d!=="root"?l[u][d]=f.describe({compact:!0}):l[u].root=f}}return l},o.merge=function(g,l){if(!g)return o.compile(l);if(!l)return g;if(typeof l=="string")return new p(l);if(p.isTemplate(l))return l;const d=c(g);for(let h in l){const u=l[h];if(h==="root"||p.isTemplate(u)){d[h]=u;continue}if(typeof u=="string"){d[h]=new p(u);continue}a(typeof u=="object"&&!Array.isArray(u),"Invalid message for",h);const f=h;for(h in d[f]=d[f]||{},u){const b=u[h];h==="root"||p.isTemplate(b)?d[f][h]=b:(a(typeof b=="string","Invalid message for",h,"in",f),d[f][h]=new p(b))}}return d}},2294:(i,o,s)=>{const a=s(375),c=s(8160),p=s(6133),g={};o.Ids=g.Ids=class{constructor(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}clone(){const l=new g.Ids;return l._byId=new Map(this._byId),l._byKey=new Map(this._byKey),l._schemaChain=this._schemaChain,l}concat(l){l._schemaChain&&(this._schemaChain=!0);for(const[d,h]of l._byId.entries())a(!this._byKey.has(d),"Schema id conflicts with existing key:",d),this._byId.set(d,h);for(const[d,h]of l._byKey.entries())a(!this._byId.has(d),"Schema key conflicts with existing id:",d),this._byKey.set(d,h)}fork(l,d,h){const u=this._collect(l);u.push({schema:h});const f=u.shift();let b={id:f.id,schema:d(f.schema)};a(c.isSchema(b.schema),"adjuster function failed to return a joi schema type");for(const m of u)b={id:m.id,schema:g.fork(m.schema,b.id,b.schema)};return b.schema}labels(l){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const h=l[0],u=this._get(h);if(!u)return[...d,...l].join(".");const f=l.slice(1);return d=[...d,u.schema._flags.label||h],f.length?u.schema._ids.labels(f,d):d.join(".")}reach(l){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];const h=l[0],u=this._get(h);a(u,"Schema does not contain path",[...d,...l].join("."));const f=l.slice(1);return f.length?u.schema._ids.reach(f,[...d,h]):u.schema}register(l){let{key:d}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!l||!c.isSchema(l))return;(l.$_property("schemaChain")||l._ids._schemaChain)&&(this._schemaChain=!0);const h=l._flags.id;if(h){const u=this._byId.get(h);a(!u||u.schema===l,"Cannot add different schemas with the same id:",h),a(!this._byKey.has(h),"Schema id conflicts with existing key:",h),this._byId.set(h,{schema:l,id:h})}d&&(a(!this._byKey.has(d),"Schema already contains key:",d),a(!this._byId.has(d),"Schema key conflicts with existing id:",d),this._byKey.set(d,{schema:l,id:d}))}reset(){this._byId=new Map,this._byKey=new Map,this._schemaChain=!1}_collect(l){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];const u=l[0],f=this._get(u);a(f,"Schema does not contain path",[...d,...l].join(".")),h=[f,...h];const b=l.slice(1);return b.length?f.schema._ids._collect(b,[...d,u],h):h}_get(l){return this._byId.get(l)||this._byKey.get(l)}},g.fork=function(l,d,h){const u=o.schema(l,{each:(f,b)=>{let{key:m}=b;if(d===(f._flags.id||m))return h},ref:!1});return u?u.$_mutateRebuild():l},o.schema=function(l,d){let h;for(const u in l._flags){if(u[0]==="_")continue;const f=g.scan(l._flags[u],{source:"flags",name:u},d);f!==void 0&&(h=h||l.clone(),h._flags[u]=f)}for(let u=0;u{const a=s(375),c=s(8571),p=s(9621),g=s(8160);let l;const d={symbol:Symbol("ref"),defaults:{adjust:null,in:!1,iterables:null,map:null,separator:".",type:"value"}};o.create=function(h){let u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};a(typeof h=="string","Invalid reference key:",h),g.assertOptions(u,["adjust","ancestor","in","iterables","map","prefix","render","separator"]),a(!u.prefix||typeof u.prefix=="object","options.prefix must be of type object");const f=Object.assign({},d.defaults,u);delete f.prefix;const b=f.separator,m=d.context(h,b,u.prefix);if(f.type=m.type,h=m.key,f.type==="value")if(m.root&&(a(!b||h[0]!==b,"Cannot specify relative path with root prefix"),f.ancestor="root",h||(h=null)),b&&b===h)h=null,f.ancestor=0;else if(f.ancestor!==void 0)a(!b||!h||h[0]!==b,"Cannot combine prefix with ancestor option");else{const[v,y]=d.ancestor(h,b);y&&(h=h.slice(y))===""&&(h=null),f.ancestor=v}return f.path=b?h===null?[]:h.split(b):[h],new d.Ref(f)},o.in=function(h){let u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return o.create(h,{...u,in:!0})},o.isRef=function(h){return!!h&&!!h[g.symbols.ref]},d.Ref=class{constructor(h){a(typeof h=="object","Invalid reference construction"),g.assertOptions(h,["adjust","ancestor","in","iterables","map","path","render","separator","type","depth","key","root","display"]),a([!1,void 0].includes(h.separator)||typeof h.separator=="string"&&h.separator.length===1,"Invalid separator"),a(!h.adjust||typeof h.adjust=="function","options.adjust must be a function"),a(!h.map||Array.isArray(h.map),"options.map must be an array"),a(!h.map||!h.adjust,"Cannot set both map and adjust options"),Object.assign(this,d.defaults,h),a(this.type==="value"||this.ancestor===void 0,"Non-value references cannot reference ancestors"),Array.isArray(this.map)&&(this.map=new Map(this.map)),this.depth=this.path.length,this.key=this.path.length?this.path.join(this.separator):null,this.root=this.path[0],this.updateDisplay()}resolve(h,u,f,b){let m=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{};return a(!this.in||m.in,"Invalid in() reference usage"),this.type==="global"?this._resolve(f.context,u,m):this.type==="local"?this._resolve(b,u,m):this.ancestor?this.ancestor==="root"?this._resolve(u.ancestors[u.ancestors.length-1],u,m):(a(this.ancestor<=u.ancestors.length,"Invalid reference exceeds the schema root:",this.display),this._resolve(u.ancestors[this.ancestor-1],u,m)):this._resolve(h,u,m)}_resolve(h,u,f){let b;if(this.type==="value"&&u.mainstay.shadow&&f.shadow!==!1&&(b=u.mainstay.shadow.get(this.absolute(u))),b===void 0&&(b=p(h,this.path,{iterables:this.iterables,functions:!0})),this.adjust&&(b=this.adjust(b)),this.map){const m=this.map.get(b);m!==void 0&&(b=m)}return u.mainstay&&u.mainstay.tracer.resolve(u,this,b),b}toString(){return this.display}absolute(h){return[...h.path.slice(0,-this.ancestor),...this.path]}clone(){return new d.Ref(this)}describe(){const h={path:this.path};this.type!=="value"&&(h.type=this.type),this.separator!=="."&&(h.separator=this.separator),this.type==="value"&&this.ancestor!==1&&(h.ancestor=this.ancestor),this.map&&(h.map=[...this.map]);for(const u of["adjust","iterables","render"])this[u]!==null&&this[u]!==void 0&&(h[u]=this[u]);return this.in!==!1&&(h.in=!0),{ref:h}}updateDisplay(){const h=this.key!==null?this.key:"";if(this.type!=="value")return void(this.display=`ref:${this.type}:${h}`);if(!this.separator)return void(this.display=`ref:${h}`);if(!this.ancestor)return void(this.display=`ref:${this.separator}${h}`);if(this.ancestor==="root")return void(this.display=`ref:root:${h}`);if(this.ancestor===1)return void(this.display=`ref:${h||".."}`);const u=new Array(this.ancestor+1).fill(this.separator).join("");this.display=`ref:${u}${h||""}`}},d.Ref.prototype[g.symbols.ref]=!0,o.build=function(h){return(h=Object.assign({},d.defaults,h)).type==="value"&&h.ancestor===void 0&&(h.ancestor=1),new d.Ref(h)},d.context=function(h,u){let f=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(h=h.trim(),f){const b=f.global===void 0?"$":f.global;if(b!==u&&h.startsWith(b))return{key:h.slice(b.length),type:"global"};const m=f.local===void 0?"#":f.local;if(m!==u&&h.startsWith(m))return{key:h.slice(m.length),type:"local"};const v=f.root===void 0?"/":f.root;if(v!==u&&h.startsWith(v))return{key:h.slice(v.length),type:"value",root:!0}}return{key:h,type:"value"}},d.ancestor=function(h,u){if(!u)return[1,0];if(h[0]!==u)return[1,0];if(h[1]!==u)return[0,1];let f=2;for(;h[f]===u;)++f;return[f-1,f]},o.toSibling=0,o.toParent=1,o.Manager=class{constructor(){this.refs=[]}register(h,u){if(h)if(u=u===void 0?o.toParent:u,Array.isArray(h))for(const f of h)this.register(f,u);else if(g.isSchema(h))for(const f of h._refs.refs)f.ancestor-u>=0&&this.refs.push({ancestor:f.ancestor-u,root:f.root});else o.isRef(h)&&h.type==="value"&&h.ancestor-u>=0&&this.refs.push({ancestor:h.ancestor-u,root:h.root}),l=l||s(3328),l.isTemplate(h)&&this.register(h.refs(),u)}get length(){return this.refs.length}clone(){const h=new o.Manager;return h.refs=c(this.refs),h}reset(){this.refs=[]}roots(){return this.refs.filter(h=>!h.ancestor).map(h=>h.root)}}},3378:(i,o,s)=>{const a=s(5107),c={};c.wrap=a.string().min(1).max(2).allow(!1),o.preferences=a.object({allowUnknown:a.boolean(),abortEarly:a.boolean(),artifacts:a.boolean(),cache:a.boolean(),context:a.object(),convert:a.boolean(),dateFormat:a.valid("date","iso","string","time","utc"),debug:a.boolean(),errors:{escapeHtml:a.boolean(),label:a.valid("path","key",!1),language:[a.string(),a.object().ref()],render:a.boolean(),stack:a.boolean(),wrap:{label:c.wrap,array:c.wrap,string:c.wrap}},externals:a.boolean(),messages:a.object(),noDefaults:a.boolean(),nonEnumerables:a.boolean(),presence:a.valid("required","optional","forbidden"),skipFunctions:a.boolean(),stripUnknown:a.object({arrays:a.boolean(),objects:a.boolean()}).or("arrays","objects").allow(!0,!1),warnings:a.boolean()}).strict(),c.nameRx=/^[a-zA-Z0-9]\w*$/,c.rule=a.object({alias:a.array().items(a.string().pattern(c.nameRx)).single(),args:a.array().items(a.string(),a.object({name:a.string().pattern(c.nameRx).required(),ref:a.boolean(),assert:a.alternatives([a.function(),a.object().schema()]).conditional("ref",{is:!0,then:a.required()}),normalize:a.function(),message:a.string().when("assert",{is:a.function(),then:a.required()})})),convert:a.boolean(),manifest:a.boolean(),method:a.function().allow(!1),multi:a.boolean(),validate:a.function()}),o.extension=a.object({type:a.alternatives([a.string(),a.object().regex()]).required(),args:a.function(),cast:a.object().pattern(c.nameRx,a.object({from:a.function().maxArity(1).required(),to:a.function().minArity(1).maxArity(2).required()})),base:a.object().schema().when("type",{is:a.object().regex(),then:a.forbidden()}),coerce:[a.function().maxArity(3),a.object({method:a.function().maxArity(3).required(),from:a.array().items(a.string()).single()})],flags:a.object().pattern(c.nameRx,a.object({setter:a.string(),default:a.any()})),manifest:{build:a.function().arity(2)},messages:[a.object(),a.string()],modifiers:a.object().pattern(c.nameRx,a.function().minArity(1).maxArity(2)),overrides:a.object().pattern(c.nameRx,a.function()),prepare:a.function().maxArity(3),rebuild:a.function().arity(1),rules:a.object().pattern(c.nameRx,c.rule),terms:a.object().pattern(c.nameRx,a.object({init:a.array().allow(null).required(),manifest:a.object().pattern(/.+/,[a.valid("schema","single"),a.object({mapped:a.object({from:a.string().required(),to:a.string().required()}).required()})])})),validate:a.function().maxArity(3)}).strict(),o.extensions=a.array().items(a.object(),a.function().arity(1)).strict(),c.desc={buffer:a.object({buffer:a.string()}),func:a.object({function:a.function().required(),options:{literal:!0}}),override:a.object({override:!0}),ref:a.object({ref:a.object({type:a.valid("value","global","local"),path:a.array().required(),separator:a.string().length(1).allow(!1),ancestor:a.number().min(0).integer().allow("root"),map:a.array().items(a.array().length(2)).min(1),adjust:a.function(),iterables:a.boolean(),in:a.boolean(),render:a.boolean()}).required()}),regex:a.object({regex:a.string().min(3)}),special:a.object({special:a.valid("deep").required()}),template:a.object({template:a.string().required(),options:a.object()}),value:a.object({value:a.alternatives([a.object(),a.array()]).required()})},c.desc.entity=a.alternatives([a.array().items(a.link("...")),a.boolean(),a.function(),a.number(),a.string(),c.desc.buffer,c.desc.func,c.desc.ref,c.desc.regex,c.desc.special,c.desc.template,c.desc.value,a.link("/")]),c.desc.values=a.array().items(null,a.boolean(),a.function(),a.number().allow(1/0,-1/0),a.string().allow(""),a.symbol(),c.desc.buffer,c.desc.func,c.desc.override,c.desc.ref,c.desc.regex,c.desc.template,c.desc.value),c.desc.messages=a.object().pattern(/.+/,[a.string(),c.desc.template,a.object().pattern(/.+/,[a.string(),c.desc.template])]),o.description=a.object({type:a.string().required(),flags:a.object({cast:a.string(),default:a.any(),description:a.string(),empty:a.link("/"),failover:c.desc.entity,id:a.string(),label:a.string(),only:!0,presence:["optional","required","forbidden"],result:["raw","strip"],strip:a.boolean(),unit:a.string()}).unknown(),preferences:{allowUnknown:a.boolean(),abortEarly:a.boolean(),artifacts:a.boolean(),cache:a.boolean(),convert:a.boolean(),dateFormat:["date","iso","string","time","utc"],errors:{escapeHtml:a.boolean(),label:["path","key"],language:[a.string(),c.desc.ref],wrap:{label:c.wrap,array:c.wrap}},externals:a.boolean(),messages:c.desc.messages,noDefaults:a.boolean(),nonEnumerables:a.boolean(),presence:["required","optional","forbidden"],skipFunctions:a.boolean(),stripUnknown:a.object({arrays:a.boolean(),objects:a.boolean()}).or("arrays","objects").allow(!0,!1),warnings:a.boolean()},allow:c.desc.values,invalid:c.desc.values,rules:a.array().min(1).items({name:a.string().required(),args:a.object().min(1),keep:a.boolean(),message:[a.string(),c.desc.messages],warn:a.boolean()}),keys:a.object().pattern(/.*/,a.link("/")),link:c.desc.ref}).pattern(/^[a-z]\w*$/,a.any())},493:(i,o,s)=>{const a=s(8571),c=s(9621),p=s(8160),g={value:Symbol("value")};i.exports=g.State=class{constructor(l,d,h){this.path=l,this.ancestors=d,this.mainstay=h.mainstay,this.schemas=h.schemas,this.debug=null}localize(l){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;const u=new g.State(l,d,this);return h&&u.schemas&&(u.schemas=[g.schemas(h),...u.schemas]),u}nest(l,d){const h=new g.State(this.path,this.ancestors,this);return h.schemas=h.schemas&&[g.schemas(l),...h.schemas],h.debug=d,h}shadow(l,d){this.mainstay.shadow=this.mainstay.shadow||new g.Shadow,this.mainstay.shadow.set(this.path,l,d)}snapshot(){this.mainstay.shadow&&(this._snapshot=a(this.mainstay.shadow.node(this.path))),this.mainstay.snapshot()}restore(){this.mainstay.shadow&&(this.mainstay.shadow.override(this.path,this._snapshot),this._snapshot=void 0),this.mainstay.restore()}},g.schemas=function(l){return p.isSchema(l)?{schema:l}:l},g.Shadow=class{constructor(){this._values=null}set(l,d,h){if(!l.length||h==="strip"&&typeof l[l.length-1]=="number")return;this._values=this._values||new Map;let u=this._values;for(let f=0;f{const a=s(375),c=s(8571),p=s(5277),g=s(1447),l=s(8160),d=s(6354),h=s(6133),u={symbol:Symbol("template"),opens:new Array(1e3).join("\0"),closes:new Array(1e3).join(""),dateFormat:{date:Date.prototype.toDateString,iso:Date.prototype.toISOString,string:Date.prototype.toString,time:Date.prototype.toTimeString,utc:Date.prototype.toUTCString}};i.exports=u.Template=class{constructor(f,b){a(typeof f=="string","Template source must be a string"),a(!f.includes("\0")&&!f.includes(""),"Template source cannot contain reserved control characters"),this.source=f,this.rendered=f,this._template=null,this._settings=c(b),this._parse()}_parse(){if(!this.source.includes("{"))return;const f=u.encode(this.source),b=u.split(f);let m=!1;const v=[],y=b.shift();y&&v.push(y);for(const _ of b){const k=_[0]!=="{",x=k?"}":"}}",S=_.indexOf(x);if(S===-1||_[1]==="{"){v.push(`{${u.decode(_)}`);continue}let w=_.slice(k?0:1,S);const C=w[0]===":";C&&(w=w.slice(1));const E=this._ref(u.decode(w),{raw:k,wrapped:C});v.push(E),typeof E!="string"&&(m=!0);const A=_.slice(S+x.length);A&&v.push(u.decode(A))}m?this._template=v:this.rendered=v.join("")}static date(f,b){return u.dateFormat[b.dateFormat].call(f)}describe(){let f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!this._settings&&f.compact)return this.source;const b={template:this.source};return this._settings&&(b.options=this._settings),b}static build(f){return new u.Template(f.template,f.options)}isDynamic(){return!!this._template}static isTemplate(f){return!!f&&!!f[l.symbols.template]}refs(){if(!this._template)return;const f=[];for(const b of this._template)typeof b!="string"&&f.push(...b.refs);return f}resolve(f,b,m,v){return this._template&&this._template.length===1?this._part(this._template[0],f,b,m,v,{}):this.render(f,b,m,v)}_part(f){for(var b=arguments.length,m=new Array(b>1?b-1:0),v=1;v4&&arguments[4]!==void 0?arguments[4]:{};if(!this.isDynamic())return this.rendered;const _=[];for(const k of this._template)if(typeof k=="string")_.push(k);else{const x=this._part(k,f,b,m,v,y),S=u.stringify(x,f,b,m,v,y);if(S!==void 0){const w=k.raw||(y.errors&&y.errors.escapeHtml)===!1?S:p(S);_.push(u.wrap(w,k.wrapped&&m.errors.wrap.label))}}return _.join("")}_ref(f,b){let{raw:m,wrapped:v}=b;const y=[],_=x=>{const S=h.create(x,this._settings);return y.push(S),w=>S.resolve(...w)};try{var k=new g.Parser(f,{reference:_,functions:u.functions,constants:u.constants})}catch(x){throw x.message=`Invalid template variable "${f}" fails due to: ${x.message}`,x}if(k.single){if(k.single.type==="reference"){const x=y[0];return{ref:x,raw:m,refs:y,wrapped:v||x.type==="local"&&x.key==="label"}}return u.stringify(k.single.value)}return{formula:k,raw:m,refs:y}}toString(){return this.source}},u.Template.prototype[l.symbols.template]=!0,u.Template.prototype.isImmutable=!0,u.encode=function(f){return f.replace(/\\(\{+)/g,(b,m)=>u.opens.slice(0,m.length)).replace(/\\(\}+)/g,(b,m)=>u.closes.slice(0,m.length))},u.decode=function(f){return f.replace(/\u0000/g,"{").replace(/\u0001/g,"}")},u.split=function(f){const b=[];let m="";for(let v=0;v5&&arguments[5]!==void 0?arguments[5]:{};const k=typeof f,x=v&&v.errors&&v.errors.wrap||{};let S=!1;if(h.isRef(f)&&f.render&&(S=f.in,f=f.resolve(b,m,v,y,{in:f.in,..._})),f===null)return"null";if(k==="string")return u.wrap(f,_.arrayItems&&x.string);if(k==="number"||k==="function"||k==="symbol")return f.toString();if(k!=="object")return JSON.stringify(f);if(f instanceof Date)return u.Template.date(f,v);if(f instanceof Map){const C=[];for(const[E,A]of f.entries())C.push(`${E.toString()} -> ${A.toString()}`);f=C}if(!Array.isArray(f))return f.toString();const w=[];for(const C of f)w.push(u.stringify(C,b,m,v,y,{arrayItems:!0,..._}));return u.wrap(w.join(", "),!S&&x.array)},u.constants={true:!0,false:!1,null:null,second:1e3,minute:6e4,hour:36e5,day:864e5},u.functions={if:(f,b,m)=>f?b:m,length:f=>typeof f=="string"?f.length:f&&typeof f=="object"?Array.isArray(f)?f.length:Object.keys(f).length:null,msg(f){const[b,m,v,y,_]=this,k=_.messages;if(!k)return"";const x=d.template(b,k[0],f,m,v)||d.template(b,k[1],f,m,v);return x?x.render(b,m,v,y,_):""},number:f=>typeof f=="number"?f:typeof f=="string"?parseFloat(f):typeof f=="boolean"?f?1:0:f instanceof Date?f.getTime():null}},4946:(i,o,s)=>{const a=s(375),c=s(1687),p=s(8068),g=s(8160),l=s(3292),d=s(6354),h=s(6133),u={};i.exports=p.extend({type:"alternatives",flags:{match:{default:"any"}},terms:{matches:{init:[],register:h.toSibling}},args(f){for(var b=arguments.length,m=new Array(b>1?b-1:0),v=1;vd.details(C,{override:!1}))})};if(m._flags.match==="one")return x.length===1?{value:x[0]}:{errors:v("alternatives.one")};if(x.length!==m.$_terms.matches.length)return{errors:v("alternatives.all",{details:S.map(C=>d.details(C,{override:!1}))})};const w=C=>C.$_terms.matches.some(E=>E.schema.type==="object"||E.schema.type==="alternatives"&&w(E.schema));return w(m)?{value:x.reduce((C,E)=>c(C,E,{mergeArrays:!1}))}:{value:x[x.length-1]}}const k=[];for(let x=0;xm.path[0]!=="is"?b.label(f):void 0,ref:!1})}},rebuild(f){f.$_modify({each:b=>{g.isSchema(b)&&b.type==="array"&&f.$_setFlag("_arrayItems",!0,{clone:!1})}})},manifest:{build(f,b){if(b.matches)for(const m of b.matches){const{schema:v,ref:y,is:_,not:k,then:x,otherwise:S}=m;f=v?f.try(v):y?f.conditional(y,{is:_,then:x,not:k,otherwise:S,switch:m.switch}):f.conditional(_,{then:x,otherwise:S})}return f}},messages:{"alternatives.all":"{{#label}} does not match all of the required types","alternatives.any":"{{#label}} does not match any of the allowed types","alternatives.match":"{{#label}} does not match any of the allowed types","alternatives.one":"{{#label}} matches more than one allowed type","alternatives.types":"{{#label}} must be one of {{#types}}"}}),u.errors=function(f,b){let{error:m,state:v}=b;if(!f.length)return{errors:m("alternatives.any")};if(f.length===1)return{errors:f[0].reports};const y=new Set,_=[];for(const{reports:k,schema:x}of f){if(k.length>1)return u.unmatched(f,m);const S=k[0];if(S instanceof d.Report==0)return u.unmatched(f,m);if(S.state.path.length!==v.path.length){_.push({type:x.type,report:S});continue}if(S.code==="any.only"){for(const E of S.local.valids)y.add(E);continue}const[w,C]=S.code.split(".");C==="base"?y.add(w):_.push({type:x.type,report:S})}return _.length?_.length===1?{errors:_[0].report}:u.unmatched(f,m):{errors:m("alternatives.types",{types:[...y]})}},u.unmatched=function(f,b){const m=[];for(const v of f)m.push(...v.reports);return{errors:b("alternatives.match",d.details(m,{override:!1}))}}},8068:(i,o,s)=>{const a=s(375),c=s(7629),p=s(8160),g=s(6914);i.exports=c.extend({type:"any",flags:{only:{default:!1}},terms:{alterations:{init:null},examples:{init:null},externals:{init:null},metas:{init:[]},notes:{init:[]},shared:{init:null},tags:{init:[]},whens:{init:null}},rules:{custom:{method(l,d){return a(typeof l=="function","Method must be a function"),a(d===void 0||d&&typeof d=="string","Description must be a non-empty string"),this.$_addRule({name:"custom",args:{method:l,description:d}})},validate(l,d,h){let{method:u}=h;try{return u(l,d)}catch(f){return d.error("any.custom",{error:f})}},args:["method","description"],multi:!0},messages:{method(l){return this.prefs({messages:l})}},shared:{method(l){a(p.isSchema(l)&&l._flags.id,"Schema must be a schema with an id");const d=this.clone();return d.$_terms.shared=d.$_terms.shared||[],d.$_terms.shared.push(l),d.$_mutateRegister(l),d}},warning:{method(l,d){return a(l&&typeof l=="string","Invalid warning code"),this.$_addRule({name:"warning",args:{code:l,local:d},warn:!0})},validate(l,d,h){let{code:u,local:f}=h;return d.error(u,f)},args:["code","local"],multi:!0}},modifiers:{keep(l){let d=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];l.keep=d},message(l,d){l.message=g.compile(d)},warn(l){let d=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];l.warn=d}},manifest:{build(l,d){for(const h in d){const u=d[h];if(["examples","externals","metas","notes","tags"].includes(h))for(const f of u)l=l[h.slice(0,-1)](f);else if(h!=="alterations")if(h!=="whens"){if(h==="shared")for(const f of u)l=l.shared(f)}else for(const f of u){const{ref:b,is:m,not:v,then:y,otherwise:_,concat:k}=f;l=k?l.concat(k):b?l.when(b,{is:m,not:v,then:y,otherwise:_,switch:f.switch,break:f.break}):l.when(m,{then:y,otherwise:_,break:f.break})}else{const f={};for(const{target:b,adjuster:m}of u)f[b]=m;l=l.alter(f)}}return l}},messages:{"any.custom":"{{#label}} failed custom validation because {{#error.message}}","any.default":"{{#label}} threw an error when running default method","any.failover":"{{#label}} threw an error when running failover method","any.invalid":"{{#label}} contains an invalid value","any.only":'{{#label}} must be {if(#valids.length == 1, "", "one of ")}{{#valids}}',"any.ref":"{{#label}} {{#arg}} references {{:#ref}} which {{#reason}}","any.required":"{{#label}} is required","any.unknown":"{{#label}} is not allowed"}})},546:(i,o,s)=>{const a=s(375),c=s(9474),p=s(9621),g=s(8068),l=s(8160),d=s(3292),h={};i.exports=g.extend({type:"array",flags:{single:{default:!1},sparse:{default:!1}},terms:{items:{init:[],manifest:"schema"},ordered:{init:[],manifest:"schema"},_exclusions:{init:[]},_inclusions:{init:[]},_requireds:{init:[]}},coerce:{from:"object",method(u,f){let{schema:b,state:m,prefs:v}=f;if(!Array.isArray(u))return;const y=b.$_getRule("sort");return y?h.sort(b,u,y.args.options,m,v):void 0}},validate(u,f){let{schema:b,error:m}=f;if(!Array.isArray(u)){if(b._flags.single){const v=[u];return v[l.symbols.arraySingle]=!0,{value:v}}return{errors:m("array.base")}}if(b.$_getRule("items")||b.$_terms.externals)return{value:u.slice()}},rules:{has:{method(u){u=this.$_compile(u,{appendPath:!0});const f=this.$_addRule({name:"has",args:{schema:u}});return f.$_mutateRegister(u),f},validate(u,f,b){let{state:m,prefs:v,error:y}=f,{schema:_}=b;const k=[u,...m.ancestors];for(let S=0;Sthis.$_compile(f[v]),v,{append:!0});m.$_terms.items.push(y)}return m.$_mutateRebuild()},validate(u,f){let{schema:b,error:m,state:v,prefs:y,errorsArray:_}=f;const k=b.$_terms._requireds.slice(),x=b.$_terms.ordered.slice(),S=[...b.$_terms._inclusions,...k],w=!u[l.symbols.arraySingle];delete u[l.symbols.arraySingle];const C=_();let E=u.length;for(let A=0;A="})}},ordered:{method(){for(var u=arguments.length,f=new Array(u),b=0;bthis.$_compile(f[v]),v,{append:!0});h.validateSingle(y,m),m.$_mutateRegister(y),m.$_terms.ordered.push(y)}return m.$_mutateRebuild()}},single:{method(u){const f=u===void 0||!!u;return a(!f||!this._flags._arrayItems,"Cannot specify single rule when array has array items"),this.$_setFlag("single",f)}},sort:{method(){let u=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};l.assertOptions(u,["by","order"]);const f={order:u.order||"ascending"};return u.by&&(f.by=d.ref(u.by,{ancestor:0}),a(!f.by.ancestor,"Cannot sort by ancestor")),this.$_addRule({name:"sort",args:{options:f}})},validate(u,f,b){let{error:m,state:v,prefs:y,schema:_}=f,{options:k}=b;const{value:x,errors:S}=h.sort(_,u,k,v,y);if(S)return S;for(let w=0;w1&&arguments[1]!==void 0?arguments[1]:{};a(!u||typeof u=="function"||typeof u=="string","comparator must be a function or a string"),l.assertOptions(f,["ignoreUndefined","separator"]);const b={name:"unique",args:{options:f,comparator:u}};if(u)if(typeof u=="string"){const m=l.default(f.separator,".");b.path=m?u.split(m):[u]}else b.comparator=u;return this.$_addRule(b)},validate(u,f,b,m){let{state:v,error:y,schema:_}=f,{comparator:k,options:x}=b,{comparator:S,path:w}=m;const C={string:Object.create(null),number:Object.create(null),undefined:Object.create(null),boolean:Object.create(null),object:new Map,function:new Map,custom:new Map},E=S||c,A=x.ignoreUndefined;for(let N=0;Nnew Set(u)}},rebuild(u){u.$_terms._inclusions=[],u.$_terms._exclusions=[],u.$_terms._requireds=[];for(const f of u.$_terms.items)h.validateSingle(f,u),f._flags.presence==="required"?u.$_terms._requireds.push(f):f._flags.presence==="forbidden"?u.$_terms._exclusions.push(f):u.$_terms._inclusions.push(f);for(const f of u.$_terms.ordered)h.validateSingle(f,u)},manifest:{build:(u,f)=>(f.items&&(u=u.items(...f.items)),f.ordered&&(u=u.ordered(...f.ordered)),u)},messages:{"array.base":"{{#label}} must be an array","array.excludes":"{{#label}} contains an excluded value","array.hasKnown":"{{#label}} does not contain at least one required match for type {:#patternLabel}","array.hasUnknown":"{{#label}} does not contain at least one required match","array.includes":"{{#label}} does not match any of the allowed types","array.includesRequiredBoth":"{{#label}} does not contain {{#knownMisses}} and {{#unknownMisses}} other required value(s)","array.includesRequiredKnowns":"{{#label}} does not contain {{#knownMisses}}","array.includesRequiredUnknowns":"{{#label}} does not contain {{#unknownMisses}} required value(s)","array.length":"{{#label}} must contain {{#limit}} items","array.max":"{{#label}} must contain less than or equal to {{#limit}} items","array.min":"{{#label}} must contain at least {{#limit}} items","array.orderedLength":"{{#label}} must contain at most {{#limit}} items","array.sort":"{{#label}} must be sorted in {#order} order by {{#by}}","array.sort.mismatching":"{{#label}} cannot be sorted due to mismatching types","array.sort.unsupported":"{{#label}} cannot be sorted due to unsupported type {#type}","array.sparse":"{{#label}} must not be a sparse array item","array.unique":"{{#label}} contains a duplicate value"}}),h.fillMissedErrors=function(u,f,b,m,v,y){const _=[];let k=0;for(const x of b){const S=x._flags.label;S?_.push(S):++k}_.length?k?f.push(u.$_createError("array.includesRequiredBoth",m,{knownMisses:_,unknownMisses:k},v,y)):f.push(u.$_createError("array.includesRequiredKnowns",m,{knownMisses:_},v,y)):f.push(u.$_createError("array.includesRequiredUnknowns",m,{unknownMisses:k},v,y))},h.fillOrderedErrors=function(u,f,b,m,v,y){const _=[];for(const k of b)k._flags.presence==="required"&&_.push(k);_.length&&h.fillMissedErrors(u,f,_,m,v,y)},h.fillDefault=function(u,f,b,m){const v=[];let y=!0;for(let _=u.length-1;_>=0;--_){const k=u[_],x=[f,...b.ancestors],S=k.$_validate(void 0,b.localize(b.path,x,k),m).value;if(y){if(S===void 0)continue;y=!1}v.unshift(S)}v.length&&f.push(...v)},h.fastSplice=function(u,f){let b=f;for(;b{let C=h.compare(S,w,_,k);if(C!==null||(b.by&&(S=b.by.resolve(S,m,v),w=b.by.resolve(w,m,v)),C=h.compare(S,w,_,k),C!==null))return C;const E=typeof S;if(E!==typeof w)throw u.$_createError("array.sort.mismatching",f,null,m,v);if(E!=="number"&&E!=="string")throw u.$_createError("array.sort.unsupported",f,{type:E},m,v);return E==="number"?(S-w)*y:S{const a=s(375),c=s(8068),p=s(8160),g=s(2036),l={isBool:function(d){return typeof d=="boolean"}};i.exports=c.extend({type:"boolean",flags:{sensitive:{default:!1}},terms:{falsy:{init:null,manifest:"values"},truthy:{init:null,manifest:"values"}},coerce(d,h){let{schema:u}=h;if(typeof d!="boolean"){if(typeof d=="string"){const f=u._flags.sensitive?d:d.toLowerCase();d=f==="true"||f!=="false"&&d}return typeof d!="boolean"&&(d=u.$_terms.truthy&&u.$_terms.truthy.has(d,null,null,!u._flags.sensitive)||(!u.$_terms.falsy||!u.$_terms.falsy.has(d,null,null,!u._flags.sensitive))&&d),{value:d}}},validate(d,h){let{error:u}=h;if(typeof d!="boolean")return{value:d,errors:u("boolean.base")}},rules:{truthy:{method(){for(var d=arguments.length,h=new Array(d),u=0;u0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("sensitive",d)}}},cast:{number:{from:l.isBool,to:(d,h)=>d?1:0},string:{from:l.isBool,to:(d,h)=>d?"true":"false"}},manifest:{build:(d,h)=>(h.truthy&&(d=d.truthy(...h.truthy)),h.falsy&&(d=d.falsy(...h.falsy)),d)},messages:{"boolean.base":"{{#label}} must be a boolean"}})},7500:(i,o,s)=>{const a=s(375),c=s(8068),p=s(8160),g=s(3328),l={isDate:function(d){return d instanceof Date}};i.exports=c.extend({type:"date",coerce:{from:["number","string"],method(d,h){let{schema:u}=h;return{value:l.parse(d,u._flags.format)||d}}},validate(d,h){let{schema:u,error:f,prefs:b}=h;if(d instanceof Date&&!isNaN(d.getTime()))return;const m=u._flags.format;return b.convert&&m&&typeof d=="string"?{value:d,errors:f("date.format",{format:m})}:{value:d,errors:f("date.base")}},rules:{compare:{method:!1,validate(d,h,u,f){let{date:b}=u,{name:m,operator:v,args:y}=f;const _=b==="now"?Date.now():b.getTime();return p.compare(d.getTime(),_,v)?d:h.error("date."+m,{limit:y.date,value:d})},args:[{name:"date",ref:!0,normalize:d=>d==="now"?d:l.parse(d),assert:d=>d!==null,message:"must have a valid date format"}]},format:{method(d){return a(["iso","javascript","unix"].includes(d),"Unknown date format",d),this.$_setFlag("format",d)}},greater:{method(d){return this.$_addRule({name:"greater",method:"compare",args:{date:d},operator:">"})}},iso:{method(){return this.format("iso")}},less:{method(d){return this.$_addRule({name:"less",method:"compare",args:{date:d},operator:"<"})}},max:{method(d){return this.$_addRule({name:"max",method:"compare",args:{date:d},operator:"<="})}},min:{method(d){return this.$_addRule({name:"min",method:"compare",args:{date:d},operator:">="})}},timestamp:{method(){let d=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"javascript";return a(["javascript","unix"].includes(d),'"type" must be one of "javascript, unix"'),this.format(d)}}},cast:{number:{from:l.isDate,to:(d,h)=>d.getTime()},string:{from:l.isDate,to(d,h){let{prefs:u}=h;return g.date(d,u)}}},messages:{"date.base":"{{#label}} must be a valid date","date.format":'{{#label}} must be in {msg("date.format." + #format) || #format} format',"date.greater":"{{#label}} must be greater than {{:#limit}}","date.less":"{{#label}} must be less than {{:#limit}}","date.max":"{{#label}} must be less than or equal to {{:#limit}}","date.min":"{{#label}} must be greater than or equal to {{:#limit}}","date.format.iso":"ISO 8601 date","date.format.javascript":"timestamp or number of milliseconds","date.format.unix":"timestamp or number of seconds"}}),l.parse=function(d,h){if(d instanceof Date)return d;if(typeof d!="string"&&(isNaN(d)||!isFinite(d))||/^\s*$/.test(d))return null;if(h==="iso")return p.isIsoDate(d)?l.date(d.toString()):null;const u=d;if(typeof d=="string"&&/^[+-]?\d+(\.\d+)?$/.test(d)&&(d=parseFloat(d)),h){if(h==="javascript")return l.date(1*d);if(h==="unix")return l.date(1e3*d);if(typeof u=="string")return null}return l.date(d)},l.date=function(d){const h=new Date(d);return isNaN(h.getTime())?null:h}},390:(i,o,s)=>{const a=s(375),c=s(7824);i.exports=c.extend({type:"function",properties:{typeof:"function"},rules:{arity:{method(p){return a(Number.isSafeInteger(p)&&p>=0,"n must be a positive integer"),this.$_addRule({name:"arity",args:{n:p}})},validate(p,g,l){let{n:d}=l;return p.length===d?p:g.error("function.arity",{n:d})}},class:{method(){return this.$_addRule("class")},validate:(p,g)=>/^\s*class\s/.test(p.toString())?p:g.error("function.class",{value:p})},minArity:{method(p){return a(Number.isSafeInteger(p)&&p>0,"n must be a strict positive integer"),this.$_addRule({name:"minArity",args:{n:p}})},validate(p,g,l){let{n:d}=l;return p.length>=d?p:g.error("function.minArity",{n:d})}},maxArity:{method(p){return a(Number.isSafeInteger(p)&&p>=0,"n must be a positive integer"),this.$_addRule({name:"maxArity",args:{n:p}})},validate(p,g,l){let{n:d}=l;return p.length<=d?p:g.error("function.maxArity",{n:d})}}},messages:{"function.arity":"{{#label}} must have an arity of {{#n}}","function.class":"{{#label}} must be a class","function.maxArity":"{{#label}} must have an arity lesser or equal to {{#n}}","function.minArity":"{{#label}} must have an arity greater or equal to {{#n}}"}})},7824:(i,o,s)=>{const a=s(978),c=s(375),p=s(8571),g=s(3652),l=s(8068),d=s(8160),h=s(3292),u=s(6354),f=s(6133),b=s(3328),m={renameDefaults:{alias:!1,multiple:!1,override:!1}};i.exports=l.extend({type:"_keys",properties:{typeof:"object"},flags:{unknown:{default:!1}},terms:{dependencies:{init:null},keys:{init:null,manifest:{mapped:{from:"schema",to:"key"}}},patterns:{init:null},renames:{init:null}},args:(v,y)=>v.keys(y),validate(v,y){let{schema:_,error:k,state:x,prefs:S}=y;if(!v||typeof v!==_.$_property("typeof")||Array.isArray(v))return{value:v,errors:k("object.base",{type:_.$_property("typeof")})};if(!(_.$_terms.renames||_.$_terms.dependencies||_.$_terms.keys||_.$_terms.patterns||_.$_terms.externals))return;v=m.clone(v,S);const w=[];if(_.$_terms.renames&&!m.rename(_,v,x,S,w))return{value:v,errors:w};if(!_.$_terms.keys&&!_.$_terms.patterns&&!_.$_terms.dependencies)return{value:v,errors:w};const C=new Set(Object.keys(v));if(_.$_terms.keys){const E=[v,...x.ancestors];for(const A of _.$_terms.keys){const N=A.key,D=v[N];C.delete(N);const X=x.localize([...x.path,N],E,A),Y=A.schema.$_validate(D,X,S);if(Y.errors){if(S.abortEarly)return{value:v,errors:Y.errors};Y.value!==void 0&&(v[N]=Y.value),w.push(...Y.errors)}else A.schema._flags.result==="strip"||Y.value===void 0&&D!==void 0?delete v[N]:Y.value!==void 0&&(v[N]=Y.value)}}if(C.size||_._flags._hasPatternMatch){const E=m.unknown(_,v,C,w,x,S);if(E)return E}if(_.$_terms.dependencies)for(const E of _.$_terms.dependencies){if(E.key!==null&&m.isPresent(E.options)(E.key.resolve(v,x,S,null,{shadow:!1}))===!1)continue;const A=m.dependencies[E.rel](_,E,v,x,S);if(A){const N=_.$_createError(A.code,v,A.context,x,S);if(S.abortEarly)return{value:v,errors:N};w.push(N)}}return{value:v,errors:w}},rules:{and:{method(){for(var v=arguments.length,y=new Array(v),_=0;_!v.hasOwnProperty(_.key)):new m.Keys;for(const _ in v)d.tryWithPath(()=>y.$_terms.keys.push({key:_,schema:this.$_compile(v[_])}),_)}else y.$_terms.keys=new m.Keys;else y.$_terms.keys=null;return y.$_mutateRebuild()}},length:{method(v){return this.$_addRule({name:"length",args:{limit:v},operator:"="})},validate(v,y,_,k){let{limit:x}=_,{name:S,operator:w,args:C}=k;return d.compare(Object.keys(v).length,x,w)?v:y.error("object."+S,{limit:C.limit,value:v})},args:[{name:"limit",ref:!0,assert:d.limit,message:"must be a positive integer"}]},max:{method(v){return this.$_addRule({name:"max",method:"length",args:{limit:v},operator:"<="})}},min:{method(v){return this.$_addRule({name:"min",method:"length",args:{limit:v},operator:">="})}},nand:{method(){for(var v=arguments.length,y=new Array(v),_=0;_2&&arguments[2]!==void 0?arguments[2]:{};const k=v instanceof RegExp;k||(v=this.$_compile(v,{appendPath:!0})),c(y!==void 0,"Invalid rule"),d.assertOptions(_,["fallthrough","matches"]),k&&c(!v.flags.includes("g")&&!v.flags.includes("y"),"pattern should not use global or sticky mode"),y=this.$_compile(y,{appendPath:!0});const x=this.clone();x.$_terms.patterns=x.$_terms.patterns||[];const S={[k?"regex":"schema"]:v,rule:y};return _.matches&&(S.matches=this.$_compile(_.matches),S.matches.type!=="array"&&(S.matches=S.matches.$_root.array().items(S.matches)),x.$_mutateRegister(S.matches),x.$_setFlag("_hasPatternMatch",!0,{clone:!1})),_.fallthrough&&(S.fallthrough=!0),x.$_terms.patterns.push(S),x.$_mutateRegister(y),x}},ref:{method(){return this.$_addRule("ref")},validate:(v,y)=>f.isRef(v)?v:y.error("object.refType",{value:v})},regex:{method(){return this.$_addRule("regex")},validate:(v,y)=>v instanceof RegExp?v:y.error("object.regex",{value:v})},rename:{method(v,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};c(typeof v=="string"||v instanceof RegExp,"Rename missing the from argument"),c(typeof y=="string"||y instanceof b,"Invalid rename to argument"),c(y!==v,"Cannot rename key to same name:",v),d.assertOptions(_,["alias","ignoreUndefined","override","multiple"]);const k=this.clone();k.$_terms.renames=k.$_terms.renames||[];for(const x of k.$_terms.renames)c(x.from!==v,"Cannot rename the same key multiple times");return y instanceof b&&k.$_mutateRegister(y),k.$_terms.renames.push({from:v,to:y,options:a(m.renameDefaults,_)}),k}},schema:{method(){let v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"any";return this.$_addRule({name:"schema",args:{type:v}})},validate(v,y,_){let{type:k}=_;return!d.isSchema(v)||k!=="any"&&v.type!==k?y.error("object.schema",{type:k}):v}},unknown:{method(v){return this.$_setFlag("unknown",v!==!1)}},with:{method(v,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return m.dependency(this,"with",v,y,_)}},without:{method(v,y){let _=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return m.dependency(this,"without",v,y,_)}},xor:{method(){for(var v=arguments.length,y=new Array(v),_=0;_y.add(_,{after:_.schema.$_rootReferences(),group:_.key}),_.key);v.$_terms.keys=new m.Keys(...y.nodes)}},manifest:{build(v,y){if(y.keys&&(v=v.keys(y.keys)),y.dependencies)for(const{rel:_,key:k=null,peers:x,options:S}of y.dependencies)v=m.dependency(v,_,k,x,S);if(y.patterns)for(const{regex:_,schema:k,rule:x,fallthrough:S,matches:w}of y.patterns)v=v.pattern(_||k,x,{fallthrough:S,matches:w});if(y.renames)for(const{from:_,to:k,options:x}of y.renames)v=v.rename(_,k,x);return v}},messages:{"object.and":"{{#label}} contains {{#presentWithLabels}} without its required peers {{#missingWithLabels}}","object.assert":'{{#label}} is invalid because {if(#subject.key, `"` + #subject.key + `" failed to ` + (#message || "pass the assertion test"), #message || "the assertion failed")}',"object.base":"{{#label}} must be of type {{#type}}","object.instance":"{{#label}} must be an instance of {{:#type}}","object.length":'{{#label}} must have {{#limit}} key{if(#limit == 1, "", "s")}',"object.max":'{{#label}} must have less than or equal to {{#limit}} key{if(#limit == 1, "", "s")}',"object.min":'{{#label}} must have at least {{#limit}} key{if(#limit == 1, "", "s")}',"object.missing":"{{#label}} must contain at least one of {{#peersWithLabels}}","object.nand":"{{:#mainWithLabel}} must not exist simultaneously with {{#peersWithLabels}}","object.oxor":"{{#label}} contains a conflict between optional exclusive peers {{#peersWithLabels}}","object.pattern.match":"{{#label}} keys failed to match pattern requirements","object.refType":"{{#label}} must be a Joi reference","object.regex":"{{#label}} must be a RegExp object","object.rename.multiple":"{{#label}} cannot rename {{:#from}} because multiple renames are disabled and another key was already renamed to {{:#to}}","object.rename.override":"{{#label}} cannot rename {{:#from}} because override is disabled and target {{:#to}} exists","object.schema":"{{#label}} must be a Joi schema of {{#type}} type","object.unknown":"{{#label}} is not allowed","object.with":"{{:#mainWithLabel}} missing required peer {{:#peerWithLabel}}","object.without":"{{:#mainWithLabel}} conflict with forbidden peer {{:#peerWithLabel}}","object.xor":"{{#label}} contains a conflict between exclusive peers {{#peersWithLabels}}"}}),m.clone=function(v,y){if(typeof v=="object"){if(y.nonEnumerables)return p(v,{shallow:!0});const k=Object.create(Object.getPrototypeOf(v));return Object.assign(k,v),k}const _=function(){for(var k=arguments.length,x=new Array(k),S=0;S1&&typeof k[k.length-1]=="object"?k.pop():{}),d.assertOptions(x,["separator","isPresent"]),k=[].concat(k);const S=d.default(x.separator,"."),w=[];for(const E of k)c(typeof E=="string",y,"peers must be strings"),w.push(h.ref(E,{separator:S,ancestor:0,prefix:!1}));_!==null&&(_=h.ref(_,{separator:S,ancestor:0,prefix:!1}));const C=v.clone();return C.$_terms.dependencies=C.$_terms.dependencies||[],C.$_terms.dependencies.push(new m.Dependency(y,_,w,k,x)),C},m.dependencies={and(v,y,_,k,x){const S=[],w=[],C=y.peers.length,E=m.isPresent(y.options);for(const A of y.peers)E(A.resolve(_,k,x,null,{shadow:!1}))===!1?S.push(A.key):w.push(A.key);if(S.length!==C&&w.length!==C)return{code:"object.and",context:{present:w,presentWithLabels:m.keysToLabels(v,w),missing:S,missingWithLabels:m.keysToLabels(v,S)}}},nand(v,y,_,k,x){const S=[],w=m.isPresent(y.options);for(const A of y.peers)w(A.resolve(_,k,x,null,{shadow:!1}))&&S.push(A.key);if(S.length!==y.peers.length)return;const C=y.paths[0],E=y.paths.slice(1);return{code:"object.nand",context:{main:C,mainWithLabel:m.keysToLabels(v,C),peers:E,peersWithLabels:m.keysToLabels(v,E)}}},or(v,y,_,k,x){const S=m.isPresent(y.options);for(const w of y.peers)if(S(w.resolve(_,k,x,null,{shadow:!1})))return;return{code:"object.missing",context:{peers:y.paths,peersWithLabels:m.keysToLabels(v,y.paths)}}},oxor(v,y,_,k,x){const S=[],w=m.isPresent(y.options);for(const E of y.peers)w(E.resolve(_,k,x,null,{shadow:!1}))&&S.push(E.key);if(!S.length||S.length===1)return;const C={peers:y.paths,peersWithLabels:m.keysToLabels(v,y.paths)};return C.present=S,C.presentWithLabels=m.keysToLabels(v,S),{code:"object.oxor",context:C}},with(v,y,_,k,x){const S=m.isPresent(y.options);for(const w of y.peers)if(S(w.resolve(_,k,x,null,{shadow:!1}))===!1)return{code:"object.with",context:{main:y.key.key,mainWithLabel:m.keysToLabels(v,y.key.key),peer:w.key,peerWithLabel:m.keysToLabels(v,w.key)}}},without(v,y,_,k,x){const S=m.isPresent(y.options);for(const w of y.peers)if(S(w.resolve(_,k,x,null,{shadow:!1})))return{code:"object.without",context:{main:y.key.key,mainWithLabel:m.keysToLabels(v,y.key.key),peer:w.key,peerWithLabel:m.keysToLabels(v,w.key)}}},xor(v,y,_,k,x){const S=[],w=m.isPresent(y.options);for(const E of y.peers)w(E.resolve(_,k,x,null,{shadow:!1}))&&S.push(E.key);if(S.length===1)return;const C={peers:y.paths,peersWithLabels:m.keysToLabels(v,y.paths)};return S.length===0?{code:"object.missing",context:C}:(C.present=S,C.presentWithLabels=m.keysToLabels(v,S),{code:"object.xor",context:C})}},m.keysToLabels=function(v,y){return Array.isArray(y)?y.map(_=>v.$_mapLabels(_)):v.$_mapLabels(y)},m.isPresent=function(v){return typeof v.isPresent=="function"?v.isPresent:y=>y!==void 0},m.rename=function(v,y,_,k,x){const S={};for(const w of v.$_terms.renames){const C=[],E=typeof w.from!="string";if(E)for(const A in y){if(y[A]===void 0&&w.options.ignoreUndefined||A===w.to)continue;const N=w.from.exec(A);N&&C.push({from:A,to:w.to,match:N})}else!Object.prototype.hasOwnProperty.call(y,w.from)||y[w.from]===void 0&&w.options.ignoreUndefined||C.push(w);for(const A of C){const N=A.from;let D=A.to;if(D instanceof b&&(D=D.render(y,_,k,A.match)),N!==D){if(!w.options.multiple&&S[D]&&(x.push(v.$_createError("object.rename.multiple",y,{from:N,to:D,pattern:E},_,k)),k.abortEarly)||Object.prototype.hasOwnProperty.call(y,D)&&!w.options.override&&!S[D]&&(x.push(v.$_createError("object.rename.override",y,{from:N,to:D,pattern:E},_,k)),k.abortEarly))return!1;y[N]===void 0?delete y[D]:y[D]=y[N],S[D]=!0,w.options.alias||delete y[N]}}}return!0},m.unknown=function(v,y,_,k,x,S){if(v.$_terms.patterns){let w=!1;const C=v.$_terms.patterns.map(A=>{if(A.matches)return w=!0,[]}),E=[y,...x.ancestors];for(const A of _){const N=y[A],D=[...x.path,A];for(let X=0;X{const a=s(375),c=s(8068),p=s(8160),g=s(3292),l=s(6354),d={};i.exports=c.extend({type:"link",properties:{schemaChain:!0},terms:{link:{init:null,manifest:"single",register:!1}},args:(h,u)=>h.ref(u),validate(h,u){let{schema:f,state:b,prefs:m}=u;a(f.$_terms.link,"Uninitialized link schema");const v=d.generate(f,h,b,m),y=f.$_terms.link[0].ref;return v.$_validate(h,b.nest(v,`link:${y.display}:${v.type}`),m)},generate:(h,u,f,b)=>d.generate(h,u,f,b),rules:{ref:{method(h){a(!this.$_terms.link,"Cannot reinitialize schema"),h=g.ref(h),a(h.type==="value"||h.type==="local","Invalid reference type:",h.type),a(h.type==="local"||h.ancestor==="root"||h.ancestor>0,"Link cannot reference itself");const u=this.clone();return u.$_terms.link=[{ref:h}],u}},relative:{method(){let h=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return this.$_setFlag("relative",h)}}},overrides:{concat(h){a(this.$_terms.link,"Uninitialized link schema"),a(p.isSchema(h),"Invalid schema object"),a(h.type!=="link","Cannot merge type link with another link");const u=this.clone();return u.$_terms.whens||(u.$_terms.whens=[]),u.$_terms.whens.push({concat:h}),u.$_mutateRebuild()}},manifest:{build:(h,u)=>(a(u.link,"Invalid link description missing link"),h.ref(u.link))}}),d.generate=function(h,u,f,b){let m=f.mainstay.links.get(h);if(m)return m._generate(u,f,b).schema;const v=h.$_terms.link[0].ref,{perspective:y,path:_}=d.perspective(v,f);d.assert(y,"which is outside of schema boundaries",v,h,f,b);try{m=_.length?y.$_reach(_):y}catch{d.assert(!1,"to non-existing schema",v,h,f,b)}return d.assert(m.type!=="link","which is another link",v,h,f,b),h._flags.relative||f.mainstay.links.set(h,m),m._generate(u,f,b).schema},d.perspective=function(h,u){if(h.type==="local"){for(const{schema:f,key:b}of u.schemas){if((f._flags.id||b)===h.path[0])return{perspective:f,path:h.path.slice(1)};if(f.$_terms.shared){for(const m of f.$_terms.shared)if(m._flags.id===h.path[0])return{perspective:m,path:h.path.slice(1)}}}return{perspective:null,path:null}}return h.ancestor==="root"?{perspective:u.schemas[u.schemas.length-1].schema,path:h.path}:{perspective:u.schemas[h.ancestor]&&u.schemas[h.ancestor].schema,path:h.path}},d.assert=function(h,u,f,b,m,v){h||a(!1,`"${l.label(b._flags,m,v)}" contains link reference "${f.display}" ${u}`)}},3832:(i,o,s)=>{const a=s(375),c=s(8068),p=s(8160),g={numberRx:/^\s*[+-]?(?:(?:\d+(?:\.\d*)?)|(?:\.\d+))(?:e([+-]?\d+))?\s*$/i,precisionRx:/(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/,exponentialPartRegex:/[eE][+-]?\d+$/,leadingSignAndZerosRegex:/^[+-]?(0*)?/,dotRegex:/\./,trailingZerosRegex:/0+$/};i.exports=c.extend({type:"number",flags:{unsafe:{default:!1}},coerce:{from:"string",method(l,d){let{schema:h,error:u}=d;if(!l.match(g.numberRx))return;l=l.trim();const f={value:parseFloat(l)};if(f.value===0&&(f.value=0),!h._flags.unsafe)if(l.match(/e/i)){if(g.extractSignificantDigits(l)!==g.extractSignificantDigits(String(f.value)))return f.errors=u("number.unsafe"),f}else{const b=f.value.toString();if(b.match(/e/i))return f;if(b!==g.normalizeDecimal(l))return f.errors=u("number.unsafe"),f}return f}},validate(l,d){let{schema:h,error:u,prefs:f}=d;if(l===1/0||l===-1/0)return{value:l,errors:u("number.infinity")};if(!p.isNumber(l))return{value:l,errors:u("number.base")};const b={value:l};if(f.convert){const m=h.$_getRule("precision");if(m){const v=Math.pow(10,m.args.limit);b.value=Math.round(b.value*v)/v}}return b.value===0&&(b.value=0),!h._flags.unsafe&&(l>Number.MAX_SAFE_INTEGER||l"})}},integer:{method(){return this.$_addRule("integer")},validate:(l,d)=>Math.trunc(l)-l==0?l:d.error("number.integer")},less:{method(l){return this.$_addRule({name:"less",method:"compare",args:{limit:l},operator:"<"})}},max:{method(l){return this.$_addRule({name:"max",method:"compare",args:{limit:l},operator:"<="})}},min:{method(l){return this.$_addRule({name:"min",method:"compare",args:{limit:l},operator:">="})}},multiple:{method(l){return this.$_addRule({name:"multiple",args:{base:l}})},validate(l,d,h,u){let{base:f}=h;return l*(1/f)%1==0?l:d.error("number.multiple",{multiple:u.args.base,value:l})},args:[{name:"base",ref:!0,assert:l=>typeof l=="number"&&isFinite(l)&&l>0,message:"must be a positive number"}],multi:!0},negative:{method(){return this.sign("negative")}},port:{method(){return this.$_addRule("port")},validate:(l,d)=>Number.isSafeInteger(l)&&l>=0&&l<=65535?l:d.error("number.port")},positive:{method(){return this.sign("positive")}},precision:{method(l){return a(Number.isSafeInteger(l),"limit must be an integer"),this.$_addRule({name:"precision",args:{limit:l}})},validate(l,d,h){let{limit:u}=h;const f=l.toString().match(g.precisionRx);return Math.max((f[1]?f[1].length:0)-(f[2]?parseInt(f[2],10):0),0)<=u?l:d.error("number.precision",{limit:u,value:l})},convert:!0},sign:{method(l){return a(["negative","positive"].includes(l),"Invalid sign",l),this.$_addRule({name:"sign",args:{sign:l}})},validate(l,d,h){let{sign:u}=h;return u==="negative"&&l<0||u==="positive"&&l>0?l:d.error(`number.${u}`)}},unsafe:{method(){let l=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return a(typeof l=="boolean","enabled must be a boolean"),this.$_setFlag("unsafe",l)}}},cast:{string:{from:l=>typeof l=="number",to:(l,d)=>l.toString()}},messages:{"number.base":"{{#label}} must be a number","number.greater":"{{#label}} must be greater than {{#limit}}","number.infinity":"{{#label}} cannot be infinity","number.integer":"{{#label}} must be an integer","number.less":"{{#label}} must be less than {{#limit}}","number.max":"{{#label}} must be less than or equal to {{#limit}}","number.min":"{{#label}} must be greater than or equal to {{#limit}}","number.multiple":"{{#label}} must be a multiple of {{#multiple}}","number.negative":"{{#label}} must be a negative number","number.port":"{{#label}} must be a valid port","number.positive":"{{#label}} must be a positive number","number.precision":"{{#label}} must have no more than {{#limit}} decimal places","number.unsafe":"{{#label}} must be a safe number"}}),g.extractSignificantDigits=function(l){return l.replace(g.exponentialPartRegex,"").replace(g.dotRegex,"").replace(g.trailingZerosRegex,"").replace(g.leadingSignAndZerosRegex,"")},g.normalizeDecimal=function(l){return(l=l.replace(/^\+/,"").replace(/\.0*$/,"").replace(/^(-?)\.([^\.]*)$/,"$10.$2").replace(/^(-?)0+([0-9])/,"$1$2")).includes(".")&&l.endsWith("0")&&(l=l.replace(/0+$/,"")),l==="-0"?"0":l}},8966:(i,o,s)=>{const a=s(7824);i.exports=a.extend({type:"object",cast:{map:{from:c=>c&&typeof c=="object",to:(c,p)=>new Map(Object.entries(c))}}})},7417:(i,o,s)=>{const a=s(375),c=s(5380),p=s(1745),g=s(9959),l=s(6064),d=s(9926),h=s(5752),u=s(8068),f=s(8160),b={tlds:d instanceof Set&&{tlds:{allow:d,deny:null}},base64Regex:{true:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}==|[\w\-]{3}=)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/},false:{true:/^(?:[\w\-]{2}[\w\-]{2})*(?:[\w\-]{2}(==)?|[\w\-]{3}=?)?$/,false:/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}(==)?|[A-Za-z0-9+\/]{3}=?)?$/}},dataUriRegex:/^data:[\w+.-]+\/[\w+.-]+;((charset=[\w-]+|base64),)?(.*)$/,hexRegex:/^[a-f0-9]+$/i,ipRegex:g.regex({cidr:"forbidden"}).regex,isoDurationRegex:/^P(?!$)(\d+Y)?(\d+M)?(\d+W)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?$/,guidBrackets:{"{":"}","[":"]","(":")","":""},guidVersions:{uuidv1:"1",uuidv2:"2",uuidv3:"3",uuidv4:"4",uuidv5:"5"},guidSeparators:new Set([void 0,!0,!1,"-",":"]),normalizationForms:["NFC","NFD","NFKC","NFKD"]};i.exports=u.extend({type:"string",flags:{insensitive:{default:!1},truncate:{default:!1}},terms:{replacements:{init:null}},coerce:{from:"string",method(m,v){let{schema:y,state:_,prefs:k}=v;const x=y.$_getRule("normalize");x&&(m=m.normalize(x.args.form));const S=y.$_getRule("case");S&&(m=S.args.direction==="upper"?m.toLocaleUpperCase():m.toLocaleLowerCase());const w=y.$_getRule("trim");if(w&&w.args.enabled&&(m=m.trim()),y.$_terms.replacements)for(const E of y.$_terms.replacements)m=m.replace(E.pattern,E.replacement);const C=y.$_getRule("hex");if(C&&C.args.options.byteAligned&&m.length%2!=0&&(m=`0${m}`),y.$_getRule("isoDate")){const E=b.isoDate(m);E&&(m=E)}if(y._flags.truncate){const E=y.$_getRule("max");if(E){let A=E.args.limit;if(f.isResolvable(A)&&(A=A.resolve(m,_,k),!f.limit(A)))return{value:m,errors:y.$_createError("any.ref",A,{ref:E.args.limit,arg:"limit",reason:"must be a positive integer"},_,k)};m=m.slice(0,A)}}return{value:m}}},validate(m,v){let{schema:y,error:_}=v;if(typeof m!="string")return{value:m,errors:_("string.base")};if(m===""){const k=y.$_getRule("min");return k&&k.args.limit===0?void 0:{value:m,errors:_("string.empty")}}},rules:{alphanum:{method(){return this.$_addRule("alphanum")},validate:(m,v)=>/^[a-zA-Z0-9]+$/.test(m)?m:v.error("string.alphanum")},base64:{method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return f.assertOptions(m,["paddingRequired","urlSafe"]),m={urlSafe:!1,paddingRequired:!0,...m},a(typeof m.paddingRequired=="boolean","paddingRequired must be boolean"),a(typeof m.urlSafe=="boolean","urlSafe must be boolean"),this.$_addRule({name:"base64",args:{options:m}})},validate(m,v,y){let{options:_}=y;return b.base64Regex[_.paddingRequired][_.urlSafe].test(m)?m:v.error("string.base64")}},case:{method(m){return a(["lower","upper"].includes(m),"Invalid case:",m),this.$_addRule({name:"case",args:{direction:m}})},validate(m,v,y){let{direction:_}=y;return _==="lower"&&m===m.toLocaleLowerCase()||_==="upper"&&m===m.toLocaleUpperCase()?m:v.error(`string.${_}case`)},convert:!0},creditCard:{method(){return this.$_addRule("creditCard")},validate(m,v){let y=m.length,_=0,k=1;for(;y--;){const x=m.charAt(y)*k;_+=x-9*(x>9),k^=3}return _>0&&_%10==0?m:v.error("string.creditCard")}},dataUri:{method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return f.assertOptions(m,["paddingRequired"]),m={paddingRequired:!0,...m},a(typeof m.paddingRequired=="boolean","paddingRequired must be boolean"),this.$_addRule({name:"dataUri",args:{options:m}})},validate(m,v,y){let{options:_}=y;const k=m.match(b.dataUriRegex);return k&&(!k[2]||k[2]!=="base64"||b.base64Regex[_.paddingRequired].false.test(k[3]))?m:v.error("string.dataUri")}},domain:{method(m){m&&f.assertOptions(m,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);const v=b.addressOptions(m);return this.$_addRule({name:"domain",args:{options:m},address:v})},validate(m,v,y,_){let{address:k}=_;return c.isValid(m,k)?m:v.error("string.domain")}},email:{method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};f.assertOptions(m,["allowFullyQualified","allowUnicode","ignoreLength","maxDomainSegments","minDomainSegments","multiple","separator","tlds"]),a(m.multiple===void 0||typeof m.multiple=="boolean","multiple option must be an boolean");const v=b.addressOptions(m),y=new RegExp(`\\s*[${m.separator?l(m.separator):","}]\\s*`);return this.$_addRule({name:"email",args:{options:m},regex:y,address:v})},validate(m,v,y,_){let{options:k}=y,{regex:x,address:S}=_;const w=k.multiple?m.split(x):[m],C=[];for(const E of w)p.isValid(E,S)||C.push(E);return C.length?v.error("string.email",{value:m,invalids:C}):m}},guid:{alias:"uuid",method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};f.assertOptions(m,["version","separator"]);let v="";if(m.version){const k=[].concat(m.version);a(k.length>=1,"version must have at least 1 valid version specified");const x=new Set;for(let S=0;S0&&arguments[0]!==void 0?arguments[0]:{};return f.assertOptions(m,["byteAligned"]),m={byteAligned:!1,...m},a(typeof m.byteAligned=="boolean","byteAligned must be boolean"),this.$_addRule({name:"hex",args:{options:m}})},validate(m,v,y){let{options:_}=y;return b.hexRegex.test(m)?_.byteAligned&&m.length%2!=0?v.error("string.hexAlign"):m:v.error("string.hex")}},hostname:{method(){return this.$_addRule("hostname")},validate:(m,v)=>c.isValid(m,{minDomainSegments:1})||b.ipRegex.test(m)?m:v.error("string.hostname")},insensitive:{method(){return this.$_setFlag("insensitive",!0)}},ip:{method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};f.assertOptions(m,["cidr","version"]);const{cidr:v,versions:y,regex:_}=g.regex(m),k=m.version?y:void 0;return this.$_addRule({name:"ip",args:{options:{cidr:v,version:k}},regex:_})},validate(m,v,y,_){let{options:k}=y,{regex:x}=_;return x.test(m)?m:k.version?v.error("string.ipVersion",{value:m,cidr:k.cidr,version:k.version}):v.error("string.ip",{value:m,cidr:k.cidr})}},isoDate:{method(){return this.$_addRule("isoDate")},validate(m,v){let{error:y}=v;return b.isoDate(m)?m:y("string.isoDate")}},isoDuration:{method(){return this.$_addRule("isoDuration")},validate:(m,v)=>b.isoDurationRegex.test(m)?m:v.error("string.isoDuration")},length:{method(m,v){return b.length(this,"length",m,"=",v)},validate(m,v,y,_){let{limit:k,encoding:x}=y,{name:S,operator:w,args:C}=_;const E=!x&&m.length;return f.compare(E,k,w)?m:v.error("string."+S,{limit:C.limit,value:m,encoding:x})},args:[{name:"limit",ref:!0,assert:f.limit,message:"must be a positive integer"},"encoding"]},lowercase:{method(){return this.case("lower")}},max:{method(m,v){return b.length(this,"max",m,"<=",v)},args:["limit","encoding"]},min:{method(m,v){return b.length(this,"min",m,">=",v)},args:["limit","encoding"]},normalize:{method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"NFC";return a(b.normalizationForms.includes(m),"normalization form must be one of "+b.normalizationForms.join(", ")),this.$_addRule({name:"normalize",args:{form:m}})},validate(m,v,y){let{error:_}=v,{form:k}=y;return m===m.normalize(k)?m:_("string.normalize",{value:m,form:k})},convert:!0},pattern:{alias:"regex",method(m){let v=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};a(m instanceof RegExp,"regex must be a RegExp"),a(!m.flags.includes("g")&&!m.flags.includes("y"),"regex should not use global or sticky mode"),typeof v=="string"&&(v={name:v}),f.assertOptions(v,["invert","name"]);const y=["string.pattern",v.invert?".invert":"",v.name?".name":".base"].join("");return this.$_addRule({name:"pattern",args:{regex:m,options:v},errorCode:y})},validate(m,v,y,_){let{regex:k,options:x}=y,{errorCode:S}=_;return k.test(m)^x.invert?m:v.error(S,{name:x.name,regex:k,value:m})},args:["regex","options"],multi:!0},replace:{method(m,v){typeof m=="string"&&(m=new RegExp(l(m),"g")),a(m instanceof RegExp,"pattern must be a RegExp"),a(typeof v=="string","replacement must be a String");const y=this.clone();return y.$_terms.replacements||(y.$_terms.replacements=[]),y.$_terms.replacements.push({pattern:m,replacement:v}),y}},token:{method(){return this.$_addRule("token")},validate:(m,v)=>/^\w+$/.test(m)?m:v.error("string.token")},trim:{method(){let m=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return a(typeof m=="boolean","enabled must be a boolean"),this.$_addRule({name:"trim",args:{enabled:m}})},validate(m,v,y){let{enabled:_}=y;return _&&m!==m.trim()?v.error("string.trim"):m},convert:!0},truncate:{method(){let m=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];return a(typeof m=="boolean","enabled must be a boolean"),this.$_setFlag("truncate",m)}},uppercase:{method(){return this.case("upper")}},uri:{method(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};f.assertOptions(m,["allowRelative","allowQuerySquareBrackets","domain","relativeOnly","scheme"]),m.domain&&f.assertOptions(m.domain,["allowFullyQualified","allowUnicode","maxDomainSegments","minDomainSegments","tlds"]);const{regex:v,scheme:y}=h.regex(m),_=m.domain?b.addressOptions(m.domain):null;return this.$_addRule({name:"uri",args:{options:m},regex:v,domain:_,scheme:y})},validate(m,v,y,_){let{options:k}=y,{regex:x,domain:S,scheme:w}=_;if(["http:/","https:/"].includes(m))return v.error("string.uri");const C=x.exec(m);if(C){const E=C[1]||C[2];return!S||k.allowRelative&&!E||c.isValid(E,S)?m:v.error("string.domain",{value:E})}return k.relativeOnly?v.error("string.uriRelativeOnly"):k.scheme?v.error("string.uriCustomScheme",{scheme:w,value:m}):v.error("string.uri")}}},manifest:{build(m,v){if(v.replacements)for(const{pattern:y,replacement:_}of v.replacements)m=m.replace(y,_);return m}},messages:{"string.alphanum":"{{#label}} must only contain alpha-numeric characters","string.base":"{{#label}} must be a string","string.base64":"{{#label}} must be a valid base64 string","string.creditCard":"{{#label}} must be a credit card","string.dataUri":"{{#label}} must be a valid dataUri string","string.domain":"{{#label}} must contain a valid domain name","string.email":"{{#label}} must be a valid email","string.empty":"{{#label}} is not allowed to be empty","string.guid":"{{#label}} must be a valid GUID","string.hex":"{{#label}} must only contain hexadecimal characters","string.hexAlign":"{{#label}} hex decoded representation must be byte aligned","string.hostname":"{{#label}} must be a valid hostname","string.ip":"{{#label}} must be a valid ip address with a {{#cidr}} CIDR","string.ipVersion":"{{#label}} must be a valid ip address of one of the following versions {{#version}} with a {{#cidr}} CIDR","string.isoDate":"{{#label}} must be in iso format","string.isoDuration":"{{#label}} must be a valid ISO 8601 duration","string.length":"{{#label}} length must be {{#limit}} characters long","string.lowercase":"{{#label}} must only contain lowercase characters","string.max":"{{#label}} length must be less than or equal to {{#limit}} characters long","string.min":"{{#label}} length must be at least {{#limit}} characters long","string.normalize":"{{#label}} must be unicode normalized in the {{#form}} form","string.token":"{{#label}} must only contain alpha-numeric and underscore characters","string.pattern.base":"{{#label}} with value {:[.]} fails to match the required pattern: {{#regex}}","string.pattern.name":"{{#label}} with value {:[.]} fails to match the {{#name}} pattern","string.pattern.invert.base":"{{#label}} with value {:[.]} matches the inverted pattern: {{#regex}}","string.pattern.invert.name":"{{#label}} with value {:[.]} matches the inverted {{#name}} pattern","string.trim":"{{#label}} must not have leading or trailing whitespace","string.uri":"{{#label}} must be a valid uri","string.uriCustomScheme":"{{#label}} must be a valid uri with a scheme matching the {{#scheme}} pattern","string.uriRelativeOnly":"{{#label}} must be a valid relative uri","string.uppercase":"{{#label}} must only contain uppercase characters"}}),b.addressOptions=function(m){if(!m||(a(m.minDomainSegments===void 0||Number.isSafeInteger(m.minDomainSegments)&&m.minDomainSegments>0,"minDomainSegments must be a positive integer"),a(m.maxDomainSegments===void 0||Number.isSafeInteger(m.maxDomainSegments)&&m.maxDomainSegments>0,"maxDomainSegments must be a positive integer"),m.tlds===!1))return m;if(m.tlds===!0||m.tlds===void 0)return a(b.tlds,"Built-in TLD list disabled"),Object.assign({},m,b.tlds);a(typeof m.tlds=="object","tlds must be true, false, or an object");const v=m.tlds.deny;if(v)return Array.isArray(v)&&(m=Object.assign({},m,{tlds:{deny:new Set(v)}})),a(m.tlds.deny instanceof Set,"tlds.deny must be an array, Set, or boolean"),a(!m.tlds.allow,"Cannot specify both tlds.allow and tlds.deny lists"),b.validateTlds(m.tlds.deny,"tlds.deny"),m;const y=m.tlds.allow;return y?y===!0?(a(b.tlds,"Built-in TLD list disabled"),Object.assign({},m,b.tlds)):(Array.isArray(y)&&(m=Object.assign({},m,{tlds:{allow:new Set(y)}})),a(m.tlds.allow instanceof Set,"tlds.allow must be an array, Set, or boolean"),b.validateTlds(m.tlds.allow,"tlds.allow"),m):m},b.validateTlds=function(m,v){for(const y of m)a(c.isValid(y,{minDomainSegments:1,maxDomainSegments:1}),`${v} must contain valid top level domain names`)},b.isoDate=function(m){if(!f.isIsoDate(m))return null;/.*T.*[+-]\d\d$/.test(m)&&(m+="00");const v=new Date(m);return isNaN(v.getTime())?null:v.toISOString()},b.length=function(m,v,y,_,k){return a(!k||!1,"Invalid encoding:",k),m.$_addRule({name:v,method:"length",args:{limit:y,encoding:k},operator:_})}},8826:(i,o,s)=>{const a=s(375),c=s(8068),p={};p.Map=class extends Map{slice(){return new p.Map(this)}},i.exports=c.extend({type:"symbol",terms:{map:{init:new p.Map}},coerce:{method(g,l){let{schema:d,error:h}=l;const u=d.$_terms.map.get(g);return u&&(g=u),d._flags.only&&typeof g!="symbol"?{value:g,errors:h("symbol.map",{map:d.$_terms.map})}:{value:g}}},validate(g,l){let{error:d}=l;if(typeof g!="symbol")return{value:g,errors:d("symbol.base")}},rules:{map:{method(g){g&&!g[Symbol.iterator]&&typeof g=="object"&&(g=Object.entries(g)),a(g&&g[Symbol.iterator],"Iterable must be an iterable or object");const l=this.clone(),d=[];for(const h of g){a(h&&h[Symbol.iterator],"Entry must be an iterable");const[u,f]=h;a(typeof u!="object"&&typeof u!="function"&&typeof u!="symbol","Key must not be of type object, function, or Symbol"),a(typeof f=="symbol","Value must be a Symbol"),l.$_terms.map.set(u,f),d.push(f)}return l.valid(...d)}}},manifest:{build:(g,l)=>(l.map&&(g=g.map(l.map)),g)},messages:{"symbol.base":"{{#label}} must be a symbol","symbol.map":"{{#label}} must be one of {{#map}}"}})},8863:(i,o,s)=>{const a=s(375),c=s(8571),p=s(738),g=s(9621),l=s(8160),d=s(6354),h=s(493),u={result:Symbol("result")};o.entry=function(f,b,m){let v=l.defaults;m&&(a(m.warnings===void 0,"Cannot override warnings preference in synchronous validation"),a(m.artifacts===void 0,"Cannot override artifacts preference in synchronous validation"),v=l.preferences(l.defaults,m));const y=u.entry(f,b,v);a(!y.mainstay.externals.length,"Schema with external rules must use validateAsync()");const _={value:y.value};return y.error&&(_.error=y.error),y.mainstay.warnings.length&&(_.warning=d.details(y.mainstay.warnings)),y.mainstay.debug&&(_.debug=y.mainstay.debug),y.mainstay.artifacts&&(_.artifacts=y.mainstay.artifacts),_},o.entryAsync=async function(f,b,m){let v=l.defaults;m&&(v=l.preferences(l.defaults,m));const y=u.entry(f,b,v),_=y.mainstay;if(y.error)throw _.debug&&(y.error.debug=_.debug),y.error;if(_.externals.length){let x=y.value;const S=[];for(const w of _.externals){const C=w.state.path,E=w.schema.type==="link"?_.links.get(w.schema):null;let A,N,D=x;const X=C.length?[x]:[],Y=C.length?g(f,C):f;if(C.length){A=C[C.length-1];let re=x;for(const ue of C.slice(0,-1))re=re[ue],X.unshift(re);N=X[0],D=N[A]}try{const re=(W,K)=>(E||w.schema).$_createError(W,D,K,w.state,v),ue=await w.method(D,{schema:w.schema,linked:E,state:w.state,prefs:m,original:Y,error:re,errorsArray:u.errorsArray,warn:(W,K)=>_.warnings.push((E||w.schema).$_createError(W,D,K,w.state,v)),message:(W,K)=>(E||w.schema).$_createError("external",D,K,w.state,v,{messages:W})});if(ue===void 0||ue===D)continue;if(ue instanceof d.Report){if(_.tracer.log(w.schema,w.state,"rule","external","error"),S.push(ue),v.abortEarly)break;continue}if(Array.isArray(ue)&&ue[l.symbols.errors]){if(_.tracer.log(w.schema,w.state,"rule","external","error"),S.push(...ue),v.abortEarly)break;continue}N?(_.tracer.value(w.state,"rule",D,ue,"external"),N[A]=ue):(_.tracer.value(w.state,"rule",x,ue,"external"),x=ue)}catch(re){throw v.errors.label&&(re.message+=` (${w.label})`),re}}if(y.value=x,S.length)throw y.error=d.process(S,f,v),_.debug&&(y.error.debug=_.debug),y.error}if(!v.warnings&&!v.debug&&!v.artifacts)return y.value;const k={value:y.value};return _.warnings.length&&(k.warning=d.details(_.warnings)),_.debug&&(k.debug=_.debug),_.artifacts&&(k.artifacts=_.artifacts),k},u.Mainstay=class{constructor(f,b,m){this.externals=[],this.warnings=[],this.tracer=f,this.debug=b,this.links=m,this.shadow=null,this.artifacts=null,this._snapshots=[]}snapshot(){this._snapshots.push({externals:this.externals.slice(),warnings:this.warnings.slice()})}restore(){const f=this._snapshots.pop();this.externals=f.externals,this.warnings=f.warnings}},u.entry=function(f,b,m){const{tracer:v,cleanup:y}=u.tracer(b,m),_=m.debug?[]:null,k=b._ids._schemaChain?new Map:null,x=new u.Mainstay(v,_,k),S=b._ids._schemaChain?[{schema:b}]:null,w=new h([],[],{mainstay:x,schemas:S}),C=o.validate(f,b,w,m);y&&b.$_root.untrace();const E=d.process(C.errors,f,m);return{value:C.value,error:E,mainstay:x}},u.tracer=function(f,b){return f.$_root._tracer?{tracer:f.$_root._tracer._register(f)}:b.debug?(a(f.$_root.trace,"Debug mode not supported"),{tracer:f.$_root.trace()._register(f),cleanup:!0}):{tracer:u.ignore}},o.validate=function(f,b,m,v){let y=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{};if(b.$_terms.whens&&(b=b._generate(f,m,v).schema),b._preferences&&(v=u.prefs(b,v)),b._cache&&v.cache){const E=b._cache.get(f);if(m.mainstay.tracer.debug(m,"validate","cached",!!E),E)return E}const _=(E,A,N)=>b.$_createError(E,f,A,N||m,v),k={original:f,prefs:v,schema:b,state:m,error:_,errorsArray:u.errorsArray,warn:(E,A,N)=>m.mainstay.warnings.push(_(E,A,N)),message:(E,A)=>b.$_createError("custom",f,A,m,v,{messages:E})};m.mainstay.tracer.entry(b,m);const x=b._definition;if(x.prepare&&f!==void 0&&v.convert){const E=x.prepare(f,k);if(E){if(m.mainstay.tracer.value(m,"prepare",f,E.value),E.errors)return u.finalize(E.value,[].concat(E.errors),k);f=E.value}}if(x.coerce&&f!==void 0&&v.convert&&(!x.coerce.from||x.coerce.from.includes(typeof f))){const E=x.coerce.method(f,k);if(E){if(m.mainstay.tracer.value(m,"coerced",f,E.value),E.errors)return u.finalize(E.value,[].concat(E.errors),k);f=E.value}}const S=b._flags.empty;S&&S.$_match(u.trim(f,b),m.nest(S),l.defaults)&&(m.mainstay.tracer.value(m,"empty",f,void 0),f=void 0);const w=y.presence||b._flags.presence||(b._flags._endedSwitch?null:v.presence);if(f===void 0){if(w==="forbidden")return u.finalize(f,null,k);if(w==="required")return u.finalize(f,[b.$_createError("any.required",f,null,m,v)],k);if(w==="optional"){if(b._flags.default!==l.symbols.deepDefault)return u.finalize(f,null,k);m.mainstay.tracer.value(m,"default",f,{}),f={}}}else if(w==="forbidden")return u.finalize(f,[b.$_createError("any.unknown",f,null,m,v)],k);const C=[];if(b._valids){const E=b._valids.get(f,m,v,b._flags.insensitive);if(E)return v.convert&&(m.mainstay.tracer.value(m,"valids",f,E.value),f=E.value),m.mainstay.tracer.filter(b,m,"valid",E),u.finalize(f,null,k);if(b._flags.only){const A=b.$_createError("any.only",f,{valids:b._valids.values({display:!0})},m,v);if(v.abortEarly)return u.finalize(f,[A],k);C.push(A)}}if(b._invalids){const E=b._invalids.get(f,m,v,b._flags.insensitive);if(E){m.mainstay.tracer.filter(b,m,"invalid",E);const A=b.$_createError("any.invalid",f,{invalids:b._invalids.values({display:!0})},m,v);if(v.abortEarly)return u.finalize(f,[A],k);C.push(A)}}if(x.validate){const E=x.validate(f,k);if(E&&(m.mainstay.tracer.value(m,"base",f,E.value),f=E.value,E.errors)){if(!Array.isArray(E.errors))return C.push(E.errors),u.finalize(f,C,k);if(E.errors.length)return C.push(...E.errors),u.finalize(f,C,k)}}return b._rules.length?u.rules(f,C,k):u.finalize(f,C,k)},u.rules=function(f,b,m){const{schema:v,state:y,prefs:_}=m;for(const k of v._rules){const x=v._definition.rules[k.method];if(x.convert&&_.convert){y.mainstay.tracer.log(v,y,"rule",k.name,"full");continue}let S,w=k.args;if(k._resolve.length){w=Object.assign({},w);for(const E of k._resolve){const A=x.argsByName.get(E),N=w[E].resolve(f,y,_),D=A.normalize?A.normalize(N):N,X=l.validateArg(D,null,A);if(X){S=v.$_createError("any.ref",N,{arg:E,ref:w[E],reason:X},y,_);break}w[E]=D}}S=S||x.validate(f,m,w,k);const C=u.rule(S,k);if(C.errors){if(y.mainstay.tracer.log(v,y,"rule",k.name,"error"),k.warn){y.mainstay.warnings.push(...C.errors);continue}if(_.abortEarly)return u.finalize(f,C.errors,m);b.push(...C.errors)}else y.mainstay.tracer.log(v,y,"rule",k.name,"pass"),y.mainstay.tracer.value(y,"rule",f,C.value,k.name),f=C.value}return u.finalize(f,b,m)},u.rule=function(f,b){return f instanceof d.Report?(u.error(f,b),{errors:[f],value:null}):Array.isArray(f)&&f[l.symbols.errors]?(f.forEach(m=>u.error(m,b)),{errors:f,value:null}):{errors:null,value:f}},u.error=function(f,b){return b.message&&f._setTemplate(b.message),f},u.finalize=function(f,b,m){b=b||[];const{schema:v,state:y,prefs:_}=m;if(b.length){const x=u.default("failover",void 0,b,m);x!==void 0&&(y.mainstay.tracer.value(y,"failover",f,x),f=x,b=[])}if(b.length&&v._flags.error)if(typeof v._flags.error=="function"){b=v._flags.error(b),Array.isArray(b)||(b=[b]);for(const x of b)a(x instanceof Error||x instanceof d.Report,"error() must return an Error object")}else b=[v._flags.error];if(f===void 0){const x=u.default("default",f,b,m);y.mainstay.tracer.value(y,"default",f,x),f=x}if(v._flags.cast&&f!==void 0){const x=v._definition.cast[v._flags.cast];if(x.from(f)){const S=x.to(f,m);y.mainstay.tracer.value(y,"cast",f,S,v._flags.cast),f=S}}if(v.$_terms.externals&&_.externals&&_._externals!==!1)for(const{method:x}of v.$_terms.externals)y.mainstay.externals.push({method:x,schema:v,state:y,label:d.label(v._flags,y,_)});const k={value:f,errors:b.length?b:null};return v._flags.result&&(k.value=v._flags.result==="strip"?void 0:m.original,y.mainstay.tracer.value(y,v._flags.result,f,k.value),y.shadow(f,v._flags.result)),v._cache&&_.cache!==!1&&!v._refs.length&&v._cache.set(m.original,k),f===void 0||k.errors||v._flags.artifact===void 0||(y.mainstay.artifacts=y.mainstay.artifacts||new Map,y.mainstay.artifacts.has(v._flags.artifact)||y.mainstay.artifacts.set(v._flags.artifact,[]),y.mainstay.artifacts.get(v._flags.artifact).push(y.path)),k},u.prefs=function(f,b){const m=b===l.defaults;return m&&f._preferences[l.symbols.prefs]?f._preferences[l.symbols.prefs]:(b=l.preferences(b,f._preferences),m&&(f._preferences[l.symbols.prefs]=b),b)},u.default=function(f,b,m,v){const{schema:y,state:_,prefs:k}=v,x=y._flags[f];if(k.noDefaults||x===void 0)return b;if(_.mainstay.tracer.log(y,_,"rule",f,"full"),!x)return x;if(typeof x=="function"){const S=x.length?[c(_.ancestors[0]),v]:[];try{return x(...S)}catch(w){return void m.push(y.$_createError(`any.${f}`,null,{error:w},_,k))}}return typeof x!="object"?x:x[l.symbols.literal]?x.literal:l.isResolvable(x)?x.resolve(b,_,k):c(x)},u.trim=function(f,b){if(typeof f!="string")return f;const m=b.$_getRule("trim");return m&&m.args.enabled?f.trim():f},u.ignore={active:!1,debug:p,entry:p,filter:p,log:p,resolve:p,value:p},u.errorsArray=function(){const f=[];return f[l.symbols.errors]=!0,f}},2036:(i,o,s)=>{const a=s(375),c=s(9474),p=s(8160),g={};i.exports=g.Values=class{constructor(l,d){this._values=new Set(l),this._refs=new Set(d),this._lowercase=g.lowercases(l),this._override=!1}get length(){return this._values.size+this._refs.size}add(l,d){p.isResolvable(l)?this._refs.has(l)||(this._refs.add(l),d&&d.register(l)):this.has(l,null,null,!1)||(this._values.add(l),typeof l=="string"&&this._lowercase.set(l.toLowerCase(),l))}static merge(l,d,h){if(l=l||new g.Values,d){if(d._override)return d.clone();for(const u of[...d._values,...d._refs])l.add(u)}if(h)for(const u of[...h._values,...h._refs])l.remove(u);return l.length?l:null}remove(l){p.isResolvable(l)?this._refs.delete(l):(this._values.delete(l),typeof l=="string"&&this._lowercase.delete(l.toLowerCase()))}has(l,d,h,u){return!!this.get(l,d,h,u)}get(l,d,h,u){if(!this.length)return!1;if(this._values.has(l))return{value:l};if(typeof l=="string"&&l&&u){const f=this._lowercase.get(l.toLowerCase());if(f)return{value:f}}if(!this._refs.size&&typeof l!="object")return!1;if(typeof l=="object"){for(const f of this._values)if(c(f,l))return{value:f}}if(d)for(const f of this._refs){const b=f.resolve(l,d,h,null,{in:!0});if(b===void 0)continue;const m=f.in&&typeof b=="object"?Array.isArray(b)?b:Object.keys(b):[b];for(const v of m)if(typeof v==typeof l){if(u&&l&&typeof l=="string"){if(v.toLowerCase()===l.toLowerCase())return{value:v,ref:f}}else if(c(v,l))return{value:v,ref:f}}}return!1}override(){this._override=!0}values(l){if(l&&l.display){const d=[];for(const h of[...this._values,...this._refs])h!==void 0&&d.push(h);return d}return Array.from([...this._values,...this._refs])}clone(){const l=new g.Values(this._values,this._refs);return l._override=this._override,l}concat(l){a(!l._override,"Cannot concat override set of values");const d=new g.Values([...this._values,...l._values],[...this._refs,...l._refs]);return d._override=this._override,d}describe(){const l=[];this._override&&l.push({override:!0});for(const d of this._values.values())l.push(d&&typeof d=="object"?{value:d}:d);for(const d of this._refs.values())l.push(d.describe());return l}},g.Values.prototype[p.symbols.values]=!0,g.Values.prototype.slice=g.Values.prototype.clone,g.lowercases=function(l){const d=new Map;if(l)for(const h of l)typeof h=="string"&&d.set(h.toLowerCase(),h);return d}},978:(i,o,s)=>{const a=s(375),c=s(8571),p=s(1687),g=s(9621),l={};i.exports=function(d,h){let u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(a(d&&typeof d=="object","Invalid defaults value: must be an object"),a(!h||h===!0||typeof h=="object","Invalid source value: must be true, falsy or an object"),a(typeof u=="object","Invalid options: must be an object"),!h)return null;if(u.shallow)return l.applyToDefaultsWithShallow(d,h,u);const f=c(d);if(h===!0)return f;const b=u.nullOverride!==void 0&&u.nullOverride;return p(f,h,{nullOverride:b,mergeArrays:!1})},l.applyToDefaultsWithShallow=function(d,h,u){const f=u.shallow;a(Array.isArray(f),"Invalid keys");const b=new Map,m=h===!0?null:new Set;for(let _ of f){_=Array.isArray(_)?_:_.split(".");const k=g(d,_);k&&typeof k=="object"?b.set(k,m&&g(h,_)||k):m&&m.add(_)}const v=c(d,{},b);if(!m)return v;for(const _ of m)l.reachCopy(v,h,_);const y=u.nullOverride!==void 0&&u.nullOverride;return p(v,h,{nullOverride:y,mergeArrays:!1})},l.reachCopy=function(d,h,u){for(const m of u){if(!(m in h))return;const v=h[m];if(typeof v!="object"||v===null)return;h=v}const f=h;let b=d;for(let m=0;m{const a=s(7916);i.exports=function(c){if(!c){for(var p=arguments.length,g=new Array(p>1?p-1:0),l=1;l{const a=s(9621),c=s(4277),p=s(7043),g={needsProtoHack:new Set([c.set,c.map,c.weakSet,c.weakMap])};i.exports=g.clone=function(l){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;if(typeof l!="object"||l===null)return l;let u=g.clone,f=h;if(d.shallow){if(d.shallow!==!0)return g.cloneWithShallow(l,d);u=y=>y}else if(f){const y=f.get(l);if(y)return y}else f=new Map;const b=c.getInternalProto(l);if(b===c.buffer)return!1;if(b===c.date)return new Date(l.getTime());if(b===c.regex)return new RegExp(l);const m=g.base(l,b,d);if(m===l)return l;if(f&&f.set(l,m),b===c.set)for(const y of l)m.add(u(y,d,f));else if(b===c.map)for(const[y,_]of l)m.set(y,u(_,d,f));const v=p.keys(l,d);for(const y of v){if(y==="__proto__")continue;if(b===c.array&&y==="length"){m.length=l.length;continue}const _=Object.getOwnPropertyDescriptor(l,y);_?_.get||_.set?Object.defineProperty(m,y,_):_.enumerable?m[y]=u(l[y],d,f):Object.defineProperty(m,y,{enumerable:!1,writable:!0,configurable:!0,value:u(l[y],d,f)}):Object.defineProperty(m,y,{enumerable:!0,writable:!0,configurable:!0,value:u(l[y],d,f)})}return m},g.cloneWithShallow=function(l,d){const h=d.shallow;(d=Object.assign({},d)).shallow=!1;const u=new Map;for(const f of h){const b=a(l,f);typeof b!="object"&&typeof b!="function"||u.set(b,b)}return g.clone(l,d,u)},g.base=function(l,d,h){if(h.prototype===!1)return g.needsProtoHack.has(d)?new d.constructor:d===c.array?[]:{};const u=Object.getPrototypeOf(l);if(u&&u.isImmutable)return l;if(d===c.array){const f=[];return u!==d&&Object.setPrototypeOf(f,u),f}if(g.needsProtoHack.has(d)){const f=new u.constructor;return u!==d&&Object.setPrototypeOf(f,u),f}return Object.create(u)}},9474:(i,o,s)=>{const a=s(4277),c={mismatched:null};i.exports=function(p,g,l){return l=Object.assign({prototype:!0},l),!!c.isDeepEqual(p,g,l,[])},c.isDeepEqual=function(p,g,l,d){if(p===g)return p!==0||1/p==1/g;const h=typeof p;if(h!==typeof g||p===null||g===null)return!1;if(h==="function"){if(!l.deepFunction||p.toString()!==g.toString())return!1}else if(h!=="object")return p!=p&&g!=g;const u=c.getSharedType(p,g,!!l.prototype);switch(u){case a.buffer:return!1;case a.promise:return p===g;case a.regex:return p.toString()===g.toString();case c.mismatched:return!1}for(let f=d.length-1;f>=0;--f)if(d[f].isSame(p,g))return!0;d.push(new c.SeenEntry(p,g));try{return!!c.isDeepEqualObj(u,p,g,l,d)}finally{d.pop()}},c.getSharedType=function(p,g,l){if(l)return Object.getPrototypeOf(p)!==Object.getPrototypeOf(g)?c.mismatched:a.getInternalProto(p);const d=a.getInternalProto(p);return d!==a.getInternalProto(g)?c.mismatched:d},c.valueOf=function(p){const g=p.valueOf;if(g===void 0)return p;try{return g.call(p)}catch(l){return l}},c.hasOwnEnumerableProperty=function(p,g){return Object.prototype.propertyIsEnumerable.call(p,g)},c.isSetSimpleEqual=function(p,g){for(const l of Set.prototype.values.call(p))if(!Set.prototype.has.call(g,l))return!1;return!0},c.isDeepEqualObj=function(p,g,l,d,h){const{isDeepEqual:u,valueOf:f,hasOwnEnumerableProperty:b}=c,{keys:m,getOwnPropertySymbols:v}=Object;if(p===a.array){if(!d.part){if(g.length!==l.length)return!1;for(let S=0;S{const a=s(8761);i.exports=class extends Error{constructor(c){super(c.filter(p=>p!=="").map(p=>typeof p=="string"?p:p instanceof Error?p.message:a(p)).join(" ")||"Unknown error"),typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,o.assert)}}},5277:i=>{const o={};i.exports=function(s){if(!s)return"";let a="";for(let c=0;c=256?"&#"+s+";":`&#x${s.toString(16).padStart(2,"0")};`)},o.isSafe=function(s){return o.safeCharCodes.has(s)},o.namedHtml=new Map([[38,"&"],[60,"<"],[62,">"],[34,"""],[160," "],[162,"¢"],[163,"£"],[164,"¤"],[169,"©"],[174,"®"]]),o.safeCharCodes=function(){const s=new Set;for(let a=32;a<123;++a)(a>=97||a>=65&&a<=90||a>=48&&a<=57||a===32||a===46||a===44||a===45||a===58||a===95)&&s.add(a);return s}()},6064:i=>{i.exports=function(o){return o.replace(/[\^\$\.\*\+\-\?\=\!\:\|\\\/\(\)\[\]\{\}\,]/g,"\\$&")}},738:i=>{i.exports=function(){}},1687:(i,o,s)=>{const a=s(375),c=s(8571),p=s(7043),g={};i.exports=g.merge=function(l,d,h){if(a(l&&typeof l=="object","Invalid target value: must be an object"),a(d==null||typeof d=="object","Invalid source value: must be null, undefined, or an object"),!d)return l;if(h=Object.assign({nullOverride:!0,mergeArrays:!0},h),Array.isArray(d)){a(Array.isArray(l),"Cannot merge array onto an object"),h.mergeArrays||(l.length=0);for(let f=0;f{const a=s(375),c={};i.exports=function(p,g,l){if(g===!1||g==null)return p;typeof(l=l||{})=="string"&&(l={separator:l});const d=Array.isArray(g);a(!d||!l.separator,"Separator option is not valid for array-based chain");const h=d?g:g.split(l.separator||".");let u=p;for(let f=0;f{i.exports=function(){try{return JSON.stringify(...arguments)}catch(o){return"[Cannot display object: "+o.message+"]"}}},4277:(i,o)=>{const s={};o=i.exports={array:Array.prototype,buffer:!1,date:Date.prototype,error:Error.prototype,generic:Object.prototype,map:Map.prototype,promise:Promise.prototype,regex:RegExp.prototype,set:Set.prototype,weakMap:WeakMap.prototype,weakSet:WeakSet.prototype},s.typeMap=new Map([["[object Error]",o.error],["[object Map]",o.map],["[object Promise]",o.promise],["[object Set]",o.set],["[object WeakMap]",o.weakMap],["[object WeakSet]",o.weakSet]]),o.getInternalProto=function(a){if(Array.isArray(a))return o.array;if(a instanceof Date)return o.date;if(a instanceof RegExp)return o.regex;if(a instanceof Error)return o.error;const c=Object.prototype.toString.call(a);return s.typeMap.get(c)||o.generic}},7043:(i,o)=>{o.keys=function(s){return(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).symbols!==!1?Reflect.ownKeys(s):Object.getOwnPropertyNames(s)}},3652:(i,o,s)=>{const a=s(375),c={};o.Sorter=class{constructor(){this._items=[],this.nodes=[]}add(p,g){const l=[].concat((g=g||{}).before||[]),d=[].concat(g.after||[]),h=g.group||"?",u=g.sort||0;a(!l.includes(h),`Item cannot come before itself: ${h}`),a(!l.includes("?"),"Item cannot come before unassociated items"),a(!d.includes(h),`Item cannot come after itself: ${h}`),a(!d.includes("?"),"Item cannot come after unassociated items"),Array.isArray(p)||(p=[p]);for(const f of p){const b={seq:this._items.length,sort:u,before:l,after:d,group:h,node:f};this._items.push(b)}if(!g.manual){const f=this._sort();a(f,"item",h!=="?"?`added into group ${h}`:"","created a dependencies error")}return this.nodes}merge(p){Array.isArray(p)||(p=[p]);for(const l of p)if(l)for(const d of l._items)this._items.push(Object.assign({},d));this._items.sort(c.mergeSort);for(let l=0;lp.sort===g.sort?0:p.sort{const a=s(443),c=s(2178),p={minDomainSegments:2,nonAsciiRx:/[^\x00-\x7f]/,domainControlRx:/[\x00-\x20@\:\/\\#!\$&\'\(\)\*\+,;=\?]/,tldSegmentRx:/^[a-zA-Z](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,domainSegmentRx:/^[a-zA-Z0-9](?:[a-zA-Z0-9\-]*[a-zA-Z0-9])?$/,URL:a.URL||URL};o.analyze=function(g){let l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!g)return c.code("DOMAIN_NON_EMPTY_STRING");if(typeof g!="string")throw new Error("Invalid input: domain must be a string");if(g.length>256)return c.code("DOMAIN_TOO_LONG");if(p.nonAsciiRx.test(g)){if(l.allowUnicode===!1)return c.code("DOMAIN_INVALID_UNICODE_CHARS");g=g.normalize("NFC")}if(p.domainControlRx.test(g))return c.code("DOMAIN_INVALID_CHARS");g=p.punycode(g),l.allowFullyQualified&&g[g.length-1]==="."&&(g=g.slice(0,-1));const d=l.minDomainSegments||p.minDomainSegments,h=g.split(".");if(h.lengthl.maxDomainSegments)return c.code("DOMAIN_SEGMENTS_COUNT_MAX");const u=l.tlds;if(u){const f=h[h.length-1].toLowerCase();if(u.deny&&u.deny.has(f)||u.allow&&!u.allow.has(f))return c.code("DOMAIN_FORBIDDEN_TLDS")}for(let f=0;f63)return c.code("DOMAIN_LONG_SEGMENT");if(f{const a=s(9848),c=s(5380),p=s(2178),g={nonAsciiRx:/[^\x00-\x7f]/,encoder:new(a.TextEncoder||TextEncoder)};o.analyze=function(l,d){return g.email(l,d)},o.isValid=function(l,d){return!g.email(l,d)},g.email=function(l){let d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(typeof l!="string")throw new Error("Invalid input: email must be a string");if(!l)return p.code("EMPTY_STRING");const h=!g.nonAsciiRx.test(l);if(!h){if(d.allowUnicode===!1)return p.code("FORBIDDEN_UNICODE");l=l.normalize("NFC")}const u=l.split("@");if(u.length!==2)return u.length>2?p.code("MULTIPLE_AT_CHAR"):p.code("MISSING_AT_CHAR");const[f,b]=u;if(!f)return p.code("EMPTY_LOCAL");if(!d.ignoreLength){if(l.length>254)return p.code("ADDRESS_TOO_LONG");if(g.encoder.encode(f).length>64)return p.code("LOCAL_TOO_LONG")}return g.local(f,h)||c.analyze(b,d)},g.local=function(l,d){const h=l.split(".");for(const u of h){if(!u.length)return p.code("EMPTY_LOCAL_SEGMENT");if(d){if(!g.atextRx.test(u))return p.code("INVALID_LOCAL_CHARS")}else for(const f of u){if(g.atextRx.test(f))continue;const b=g.binary(f);if(!g.atomRx.test(b))return p.code("INVALID_LOCAL_CHARS")}}},g.binary=function(l){return Array.from(g.encoder.encode(l)).map(d=>String.fromCharCode(d)).join("")},g.atextRx=/^[\w!#\$%&'\*\+\-/=\?\^`\{\|\}~]+$/,g.atomRx=new RegExp(["(?:[\\xc2-\\xdf][\\x80-\\xbf])","(?:\\xe0[\\xa0-\\xbf][\\x80-\\xbf])|(?:[\\xe1-\\xec][\\x80-\\xbf]{2})|(?:\\xed[\\x80-\\x9f][\\x80-\\xbf])|(?:[\\xee-\\xef][\\x80-\\xbf]{2})","(?:\\xf0[\\x90-\\xbf][\\x80-\\xbf]{2})|(?:[\\xf1-\\xf3][\\x80-\\xbf]{3})|(?:\\xf4[\\x80-\\x8f][\\x80-\\xbf]{2})"].join("|"))},2178:(i,o)=>{o.codes={EMPTY_STRING:"Address must be a non-empty string",FORBIDDEN_UNICODE:"Address contains forbidden Unicode characters",MULTIPLE_AT_CHAR:"Address cannot contain more than one @ character",MISSING_AT_CHAR:"Address must contain one @ character",EMPTY_LOCAL:"Address local part cannot be empty",ADDRESS_TOO_LONG:"Address too long",LOCAL_TOO_LONG:"Address local part too long",EMPTY_LOCAL_SEGMENT:"Address local part contains empty dot-separated segment",INVALID_LOCAL_CHARS:"Address local part contains invalid character",DOMAIN_NON_EMPTY_STRING:"Domain must be a non-empty string",DOMAIN_TOO_LONG:"Domain too long",DOMAIN_INVALID_UNICODE_CHARS:"Domain contains forbidden Unicode characters",DOMAIN_INVALID_CHARS:"Domain contains invalid character",DOMAIN_INVALID_TLDS_CHARS:"Domain contains invalid tld character",DOMAIN_SEGMENTS_COUNT:"Domain lacks the minimum required number of segments",DOMAIN_SEGMENTS_COUNT_MAX:"Domain contains too many segments",DOMAIN_FORBIDDEN_TLDS:"Domain uses forbidden TLD",DOMAIN_EMPTY_SEGMENT:"Domain contains empty dot-separated segment",DOMAIN_LONG_SEGMENT:"Domain contains dot-separated segment that is too long"},o.code=function(s){return{code:s,error:o.codes[s]}}},9959:(i,o,s)=>{const a=s(375),c=s(5752);o.regex=function(){let p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};a(p.cidr===void 0||typeof p.cidr=="string","options.cidr must be a string");const g=p.cidr?p.cidr.toLowerCase():"optional";a(["required","optional","forbidden"].includes(g),"options.cidr must be one of required, optional, forbidden"),a(p.version===void 0||typeof p.version=="string"||Array.isArray(p.version),"options.version must be a string or an array of string");let l=p.version||["ipv4","ipv6","ipvfuture"];Array.isArray(l)||(l=[l]),a(l.length>=1,"options.version must have at least 1 version specified");for(let u=0;u{if(g==="forbidden")return c.ip[u];const f=`\\/${u==="ipv4"?c.ip.v4Cidr:c.ip.v6Cidr}`;return g==="required"?`${c.ip[u]}${f}`:`${c.ip[u]}(?:${f})?`}).join("|")})`,h=new RegExp(`^${d}$`);return{cidr:g,versions:l,regex:h,raw:d}}},5752:(i,o,s)=>{const a=s(375),c=s(6064),p={generate:function(){const g={},l="\\dA-Fa-f",d="["+l+"]",h="\\w-\\.~",u="!\\$&'\\(\\)\\*\\+,;=",f="%"+l,b=h+f+u+":@",m="["+b+"]",v="(?:0{0,2}\\d|0?[1-9]\\d|1\\d\\d|2[0-4]\\d|25[0-5])";g.ipv4address="(?:"+v+"\\.){3}"+v;const y=d+"{1,4}",_="(?:"+y+":"+y+"|"+g.ipv4address+")",k="(?:"+y+":){6}"+_,x="::(?:"+y+":){5}"+_,S="(?:"+y+")?::(?:"+y+":){4}"+_,w="(?:(?:"+y+":){0,1}"+y+")?::(?:"+y+":){3}"+_,C="(?:(?:"+y+":){0,2}"+y+")?::(?:"+y+":){2}"+_,E="(?:(?:"+y+":){0,3}"+y+")?::"+y+":"+_,A="(?:(?:"+y+":){0,4}"+y+")?::"+_,N="(?:(?:"+y+":){0,5}"+y+")?::"+y,D="(?:(?:"+y+":){0,6}"+y+")?::";g.ipv4Cidr="(?:\\d|[1-2]\\d|3[0-2])",g.ipv6Cidr="(?:0{0,2}\\d|0?[1-9]\\d|1[01]\\d|12[0-8])",g.ipv6address="(?:"+k+"|"+x+"|"+S+"|"+w+"|"+C+"|"+E+"|"+A+"|"+N+"|"+D+")",g.ipvFuture="v"+d+"+\\.["+h+u+":]+",g.scheme="[a-zA-Z][a-zA-Z\\d+-\\.]*",g.schemeRegex=new RegExp(g.scheme);const X="["+h+f+u+":]*",Y="["+h+f+u+"]{1,255}",re="(?:\\[(?:"+g.ipv6address+"|"+g.ipvFuture+")\\]|"+g.ipv4address+"|"+Y+")",ue="(?:"+X+"@)?"+re+"(?::\\d*)?",W="(?:"+X+"@)?("+re+")(?::\\d*)?",K=m+"*",se=m+"+",oe="(?:\\/"+K+")*",le="\\/(?:"+se+oe+")?",Q=se+oe,fe="["+h+f+u+"@]+"+oe,Le="(?:\\/\\/\\/"+K+oe+")";return g.hierPart="(?:(?:\\/\\/"+ue+oe+")|"+le+"|"+Q+"|"+Le+")",g.hierPartCapture="(?:(?:\\/\\/"+W+oe+")|"+le+"|"+Q+")",g.relativeRef="(?:(?:\\/\\/"+ue+oe+")|"+le+"|"+fe+"|)",g.relativeRefCapture="(?:(?:\\/\\/"+W+oe+")|"+le+"|"+fe+"|)",g.query="["+b+"\\/\\?]*(?=#|$)",g.queryWithSquareBrackets="["+b+"\\[\\]\\/\\?]*(?=#|$)",g.fragment="["+b+"\\/\\?]*",g}};p.rfc3986=p.generate(),o.ip={v4Cidr:p.rfc3986.ipv4Cidr,v6Cidr:p.rfc3986.ipv6Cidr,ipv4:p.rfc3986.ipv4address,ipv6:p.rfc3986.ipv6address,ipvfuture:p.rfc3986.ipvFuture},p.createRegex=function(g){const l=p.rfc3986,d="(?:\\?"+(g.allowQuerySquareBrackets?l.queryWithSquareBrackets:l.query)+")?(?:#"+l.fragment+")?",h=g.domain?l.relativeRefCapture:l.relativeRef;if(g.relativeOnly)return p.wrap(h+d);let u="";if(g.scheme){a(g.scheme instanceof RegExp||typeof g.scheme=="string"||Array.isArray(g.scheme),"scheme must be a RegExp, String, or Array");const m=[].concat(g.scheme);a(m.length>=1,"scheme must have at least 1 scheme specified");const v=[];for(let y=0;y0&&arguments[0]!==void 0?arguments[0]:{};return g.scheme||g.allowRelative||g.relativeOnly||g.allowQuerySquareBrackets||g.domain?p.createRegex(g):p.uriRegex}},1447:(i,o)=>{const s={operators:["!","^","*","/","%","+","-","<","<=",">",">=","==","!=","&&","||","??"],operatorCharacters:["!","^","*","/","%","+","-","<","=",">","&","|","?"],operatorsOrder:[["^"],["*","/","%"],["+","-"],["<","<=",">",">="],["==","!="],["&&"],["||","??"]],operatorsPrefix:["!","n"],literals:{'"':'"',"`":"`","'":"'","[":"]"},numberRx:/^(?:[0-9]*(\.[0-9]*)?){1}$/,tokenRx:/^[\w\$\#\.\@\:\{\}]+$/,symbol:Symbol("formula"),settings:Symbol("settings")};o.Parser=class{constructor(a){let c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!c[s.settings]&&c.constants)for(const p in c.constants){const g=c.constants[p];if(g!==null&&!["boolean","number","string"].includes(typeof g))throw new Error(`Formula constant ${p} contains invalid ${typeof g} value type`)}this.settings=c[s.settings]?c:Object.assign({[s.settings]:!0,constants:{},functions:{}},c),this.single=null,this._parts=null,this._parse(a)}_parse(a){let c=[],p="",g=0,l=!1;const d=u=>{if(g)throw new Error("Formula missing closing parenthesis");const f=c.length?c[c.length-1]:null;if(l||p||u){if(f&&f.type==="reference"&&u===")")return f.type="function",f.value=this._subFormula(p,f.value),void(p="");if(u===")"){const b=new o.Parser(p,this.settings);c.push({type:"segment",value:b})}else if(l){if(l==="]")return c.push({type:"reference",value:p}),void(p="");c.push({type:"literal",value:p})}else if(s.operatorCharacters.includes(p))f&&f.type==="operator"&&s.operators.includes(f.value+p)?f.value+=p:c.push({type:"operator",value:p});else if(p.match(s.numberRx))c.push({type:"constant",value:parseFloat(p)});else if(this.settings.constants[p]!==void 0)c.push({type:"constant",value:this.settings.constants[p]});else{if(!p.match(s.tokenRx))throw new Error(`Formula contains invalid token: ${p}`);c.push({type:"reference",value:p})}p=""}};for(const u of a)l?u===l?(d(),l=!1):p+=u:g?u==="("?(p+=u,++g):u===")"?(--g,g?p+=u:d(u)):p+=u:u in s.literals?l=s.literals[u]:u==="("?(d(),++g):s.operatorCharacters.includes(u)?(d(),p=u,d()):u!==" "?p+=u:d();d(),c=c.map((u,f)=>u.type!=="operator"||u.value!=="-"||f&&c[f-1].type!=="operator"?u:{type:"operator",value:"n"});let h=!1;for(const u of c){if(u.type==="operator"){if(s.operatorsPrefix.includes(u.value))continue;if(!h)throw new Error("Formula contains an operator in invalid position");if(!s.operators.includes(u.value))throw new Error(`Formula contains an unknown operator ${u.value}`)}else if(h)throw new Error("Formula missing expected operator");h=!h}if(!h)throw new Error("Formula contains invalid trailing operator");c.length===1&&["reference","literal","constant"].includes(c[0].type)&&(this.single={type:c[0].type==="reference"?"reference":"value",value:c[0].value}),this._parts=c.map(u=>{if(u.type==="operator")return s.operatorsPrefix.includes(u.value)?u:u.value;if(u.type!=="reference")return u.value;if(this.settings.tokenRx&&!this.settings.tokenRx.test(u.value))throw new Error(`Formula contains invalid reference ${u.value}`);return this.settings.reference?this.settings.reference(u.value):s.reference(u.value)})}_subFormula(a,c){const p=this.settings.functions[c];if(typeof p!="function")throw new Error(`Formula contains unknown function ${c}`);let g=[];if(a){let l="",d=0,h=!1;const u=()=>{if(!l)throw new Error(`Formula contains function ${c} with invalid arguments ${a}`);g.push(l),l=""};for(let f=0;fnew o.Parser(l,this.settings)),function(l){const d=[];for(const h of g)d.push(h.evaluate(l));return p.call(l,...d)}}evaluate(a){const c=this._parts.slice();for(let p=c.length-2;p>=0;--p){const g=c[p];if(g&&g.type==="operator"){const l=c[p+1];c.splice(p+1,1);const d=s.evaluate(l,a);c[p]=s.single(g.value,d)}}return s.operatorsOrder.forEach(p=>{for(let g=1;g":return c>p;case">=":return c>=p;case"==":return c===p;case"!=":return c!==p;case"&&":return c&&p;case"||":return c||p}return null},s.exists=function(a){return a!=null}},9926:()=>{},5688:()=>{},9708:()=>{},1152:()=>{},443:()=>{},9848:()=>{},5934:i=>{i.exports={version:"17.9.1"}}},r={},function i(o){var s=r[o];if(s!==void 0)return s.exports;var a=r[o]={exports:{}};return n[o](a,a.exports,i),a.exports}(5107);var n,r})})(_v);var e4=_v.exports;const T=bo(e4);function Nl(e,{strict:t=!0}={}){return!e||typeof e!="string"?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x")}function wm(e){return Nl(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}const t4="2.12.0",$9=e=>e,O9=e=>e,n4=()=>`viem@${t4}`;class cn extends Error{constructor(t,n={}){var o;super(),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ViemError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:n4()});const r=n.cause instanceof cn?n.cause.details:(o=n.cause)!=null&&o.message?n.cause.message:n.details,i=n.cause instanceof cn&&n.cause.docsPath||n.docsPath;this.message=[t||"An error occurred.","",...n.metaMessages?[...n.metaMessages,""]:[],...i?[`Docs: https://viem.sh${i}${n.docsSlug?`#${n.docsSlug}`:""}`]:[],...r?[`Details: ${r}`]:[],`Version: ${this.version}`].join(` +`),n.cause&&(this.cause=n.cause),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.shortMessage=t}walk(t){return wv(this,t)}}function wv(e,t){return t!=null&&t(e)?e:e&&typeof e=="object"&&"cause"in e?wv(e.cause,t):t?null:e}class A9 extends cn{constructor({offset:t,position:n,size:r}){super(`Slice ${n==="start"?"starting":"ending"} at offset "${t}" is out-of-bounds (size: ${r}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SliceOffsetOutOfBoundsError"})}}class Cv extends cn{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${t}) exceeds padding size (${n}).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"SizeExceedsPaddingSizeError"})}}class L9 extends cn{constructor({size:t,targetSize:n,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} is expected to be ${n} ${r} long, but is ${t} ${r} long.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidBytesLengthError"})}}function Eo(e,{dir:t,size:n=32}={}){return typeof e=="string"?r4(e,{dir:t,size:n}):i4(e,{dir:t,size:n})}function r4(e,{dir:t,size:n=32}={}){if(n===null)return e;const r=e.replace("0x","");if(r.length>n*2)throw new Cv({size:Math.ceil(r.length/2),targetSize:n,type:"hex"});return`0x${r[t==="right"?"padEnd":"padStart"](n*2,"0")}`}function i4(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new Cv({size:e.length,targetSize:n,type:"bytes"});const r=new Uint8Array(n);for(let i=0;it)throw new a4({givenSize:wm(e),maxSize:t})}function od(e,t){const n=typeof t=="string"?{to:t}:t,r=n.to;return r==="number"?u4(e,n):r==="bigint"?bp(e,n):r==="string"?c4(e,n):r==="boolean"?l4(e,n):yu(e,n)}function bp(e,t={}){const{signed:n}=t;t.size&&zr(e,{size:t.size});const r=BigInt(e);if(!n)return r;const i=(e.length-2)/2,o=(1n<t.toString(16).padStart(2,"0"));function Cm(e,t={}){return typeof e=="number"||typeof e=="bigint"?_p(e,t):typeof e=="string"?h4(e,t):typeof e=="boolean"?d4(e,t):kv(e,t)}function d4(e,t={}){const n=`0x${Number(e)}`;return typeof t.size=="number"?(zr(n,{size:t.size}),Eo(n,{size:t.size})):n}function kv(e,t={}){let n="";for(let i=0;io||i=Yn.zero&&e<=Yn.nine)return e-Yn.zero;if(e>=Yn.A&&e<=Yn.F)return e-(Yn.A-10);if(e>=Yn.a&&e<=Yn.f)return e-(Yn.a-10)}function yu(e,t={}){let n=e;t.size&&(zr(n,{size:t.size}),n=Eo(n,{dir:"right",size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);const i=r.length/2,o=new Uint8Array(i);for(let s=0,a=0;st){const[o,s,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],c=Math.round(+`${s}.${a}`);c>9?r=`${BigInt(o)+BigInt(1)}0`.padStart(o.length+1,"0"):r=`${o}${c}`,r.length>t&&(r=r.slice(1),n=`${BigInt(n)+1n}`),r=r.slice(0,t)}else r=r.padEnd(t,"0");return BigInt(`${i?"-":""}${n}${r}`)}function w4(e,t="wei"){return _4(e,Sv[t])}const xv=e=>xv(),C4=e=>{const t=bp(e);return Ev(t)},k4=e=>{if(!e)return e;const t=od(e,"bigint");return Ev(t)},I9=e=>{if(typeof e!="string"&&typeof e!="number")throw new Error("eth must be a string or number value");const t=typeof e=="number"?e.toString():e;return w4(t)},N9=e=>_p(e),D9=(e,t)=>t?typeof t=="function"?`Please install or enable to ${e} to continue`:`Please install or enable to ${e} to continue`:`Please switch to ${e} to continue`,S4=async e=>{const t=await Xt(()=>import("./index-f80054c0.js"),["./index-f80054c0.js","./number-84aafe0c.js"],import.meta.url),{id:n,label:r,token:i,publicRpcUrl:o,blockExplorerUrl:s,rpcUrl:a}=e;switch(n){case"0x89":{const{polygon:c}=t;return c}case"0xa":{const{optimism:c}=t;return c}case"0xa4b1":{const{arbitrum:c}=t;return c}case"0x144":{const{zkSync:c}=t;return c}case"0x38":{const{bsc:c}=t;return c}case"0x1":{const{mainnet:c}=t;return c}case"0xaa36a7":{const{sepolia:c}=t;return c}case"0xfa":{const{fantom:c}=t;return c}case"0xa86a":{const{avalanche:c}=t;return c}case"0xa4ec":{const{celo:c}=t;return c}case"0x2105":{const{base:c}=t;return c}case"0x14a33":{const{baseGoerli:c}=t;return c}case"0x64":{const{gnosis:c}=t;return c}case"0x63564C40":{const{harmonyOne:c}=t;return c}case"0x27bc86aa":{const{degen:c}=t;return c}default:{const{extractChain:c,defineChain:p}=await Xt(()=>import("./index-4327b2d3.js"),["./index-4327b2d3.js","./number-84aafe0c.js"],import.meta.url),g=c({chains:Object.values(t),id:od(n,"number")});return g||p({id:od(n,"number"),name:r??"",nativeCurrency:{decimals:18,name:i??"",symbol:i??""},rpcUrls:{default:{http:[a??"",o??""]}},blockExplorers:{default:{name:"Explorer",url:s??""}}})}}};var Rr;(function(e){e[e.ACCOUNT_ACCESS_REJECTED=4001]="ACCOUNT_ACCESS_REJECTED",e[e.ACCOUNT_ACCESS_ALREADY_REQUESTED=-32002]="ACCOUNT_ACCESS_ALREADY_REQUESTED",e[e.UNAUTHORIZED=4100]="UNAUTHORIZED",e[e.INVALID_PARAMS=-32602]="INVALID_PARAMS",e[e.UNSUPPORTED_METHOD=4200]="UNSUPPORTED_METHOD",e[e.DISCONNECTED=4900]="DISCONNECTED",e[e.CHAIN_DISCONNECTED=4901]="CHAIN_DISCONNECTED",e[e.CHAIN_NOT_ADDED=4902]="CHAIN_NOT_ADDED",e[e.DOES_NOT_EXIST=-32601]="DOES_NOT_EXIST",e[e.UNRECOGNIZED_CHAIN_ID=-32603]="UNRECOGNIZED_CHAIN_ID"})(Rr||(Rr={}));function bt(e,t){const n=e.validate(t);return n.error?n:null}const wp=T.alternatives().try(T.string().pattern(/^0x[0-9a-fA-F]+$/),T.number().positive()),Cp=T.string().valid("evm"),E4=T.object({address:T.string().required(),icon:T.string().optional()}),x4=T.object({namespace:Cp,id:wp.required(),rpcUrl:T.string(),label:T.string(),token:T.string(),secondaryTokens:T.array().max(5).items(E4).optional(),icon:T.string(),color:T.string(),publicRpcUrl:T.string(),protectedRpcUrl:T.string(),blockExplorerUrl:T.string()});var Dl={exports:{}};Dl.exports;(function(e,t){var n=200,r="Expected a function",i="__lodash_hash_undefined__",o=1,s=2,a=1/0,c=9007199254740991,p="[object Arguments]",g="[object Array]",l="[object Boolean]",d="[object Date]",h="[object Error]",u="[object Function]",f="[object GeneratorFunction]",b="[object Map]",m="[object Number]",v="[object Object]",y="[object Promise]",_="[object RegExp]",k="[object Set]",x="[object String]",S="[object Symbol]",w="[object WeakMap]",C="[object ArrayBuffer]",E="[object DataView]",A="[object Float32Array]",N="[object Float64Array]",D="[object Int8Array]",X="[object Int16Array]",Y="[object Int32Array]",re="[object Uint8Array]",ue="[object Uint8ClampedArray]",W="[object Uint16Array]",K="[object Uint32Array]",se=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,oe=/^\w*$/,le=/^\./,Q=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,fe=/[\\^$.*+?()[\]{}|]/g,Le=/\\(\\)?/g,pe=/^\[object .+?Constructor\]$/,Ee=/^(?:0|[1-9]\d*)$/,de={};de[A]=de[N]=de[D]=de[X]=de[Y]=de[re]=de[ue]=de[W]=de[K]=!0,de[p]=de[g]=de[C]=de[l]=de[E]=de[d]=de[h]=de[u]=de[b]=de[m]=de[v]=de[_]=de[k]=de[x]=de[w]=!1;var Ue=typeof Cr=="object"&&Cr&&Cr.Object===Object&&Cr,ut=typeof self=="object"&&self&&self.Object===Object&&self,et=Ue||ut||Function("return this")(),Tn=t&&!t.nodeType&&t,ct=Tn&&!0&&e&&!e.nodeType&&e,pn=ct&&ct.exports===Tn,Ks=pn&&Ue.process,Js=function(){try{return Ks&&Ks.binding("util")}catch{}}(),ea=Js&&Js.isTypedArray;function xu($,L,I,q){for(var ae=-1,te=$?$.length:0;++ae-1}function Wu($,L){var I=this.__data__,q=_i(I,$);return q<0?I.push([$,L]):I[q][1]=L,this}wt.prototype.clear=Hu,wt.prototype.delete=Fu,wt.prototype.get=zu,wt.prototype.has=Uu,wt.prototype.set=Wu;function yn($){var L=-1,I=$?$.length:0;for(this.clear();++LNe))return!1;var dt=te.get($);if(dt&&te.get(L))return dt==L;var $t=-1,Dt=!0,pt=ae&o?new Zn:void 0;for(te.set($,L),te.set(L,$);++$t-1&&$%1==0&&$-1&&$%1==0&&$<=c}function ft($){var L=typeof $;return!!$&&(L=="object"||L=="function")}function Pn($){return!!$&&typeof $=="object"}function Zr($){return typeof $=="symbol"||Pn($)&&dr.call($)==S}var Fo=ea?hi(ea):oc;function ba($){return $==null?"":Do($)}function Oy($,L,I){var q=$==null?void 0:ua($,L);return q===void 0?I:q}function Ay($,L){return $!=null&&Qn($,L,Io)}function _a($){return Me($)?Ku($):fa($)}function Ly($){return $}function Ty($){return Ei($)?pi(xi($)):uc($)}e.exports=M})(Dl,Dl.exports);var $4=Dl.exports;const O4=bo($4);var Bl={exports:{}};Bl.exports;(function(e,t){var n=200,r="__lodash_hash_undefined__",i=800,o=16,s=9007199254740991,a="[object Arguments]",c="[object Array]",p="[object AsyncFunction]",g="[object Boolean]",l="[object Date]",d="[object Error]",h="[object Function]",u="[object GeneratorFunction]",f="[object Map]",b="[object Number]",m="[object Null]",v="[object Object]",y="[object Proxy]",_="[object RegExp]",k="[object Set]",x="[object String]",S="[object Undefined]",w="[object WeakMap]",C="[object ArrayBuffer]",E="[object DataView]",A="[object Float32Array]",N="[object Float64Array]",D="[object Int8Array]",X="[object Int16Array]",Y="[object Int32Array]",re="[object Uint8Array]",ue="[object Uint8ClampedArray]",W="[object Uint16Array]",K="[object Uint32Array]",se=/[\\^$.*+?()[\]{}|]/g,oe=/^\[object .+?Constructor\]$/,le=/^(?:0|[1-9]\d*)$/,Q={};Q[A]=Q[N]=Q[D]=Q[X]=Q[Y]=Q[re]=Q[ue]=Q[W]=Q[K]=!0,Q[a]=Q[c]=Q[C]=Q[g]=Q[E]=Q[l]=Q[d]=Q[h]=Q[f]=Q[b]=Q[v]=Q[_]=Q[k]=Q[x]=Q[w]=!1;var fe=typeof Cr=="object"&&Cr&&Cr.Object===Object&&Cr,Le=typeof self=="object"&&self&&self.Object===Object&&self,pe=fe||Le||Function("return this")(),Ee=t&&!t.nodeType&&t,de=Ee&&!0&&e&&!e.nodeType&&e,Ue=de&&de.exports===Ee,ut=Ue&&fe.process,et=function(){try{var O=de&&de.require&&de.require("util").types;return O||ut&&ut.binding&&ut.binding("util")}catch{}}(),Tn=et&&et.isTypedArray;function ct(O,M,R){switch(R.length){case 0:return O.call(M);case 1:return O.call(M,R[0]);case 2:return O.call(M,R[0],R[1]);case 3:return O.call(M,R[0],R[1],R[2])}return O.apply(M,R)}function pn(O,M){for(var R=-1,J=Array(O);++R-1}function sa(O,M){var R=this.__data__,J=bi(R,O);return J<0?(++this.size,R.push([O,M])):R[J][1]=M,this}vn.prototype.clear=Pu,vn.prototype.delete=ju,vn.prototype.get=yi,vn.prototype.has=Po,vn.prototype.set=sa;function Nt(O){var M=-1,R=O==null?0:O.length;for(this.clear();++M1?R[_e-1]:void 0,Me=_e>2?R[2]:void 0;for(Ce=O.length>3&&typeof Ce=="function"?(_e--,Ce):void 0,Me&&ic(R[0],R[1],Me)&&(Ce=_e<3?void 0:Ce,_e=1),M=Object(M);++J<_e;){var we=R[J];we&&O(M,we,J,Ce)}return M})}function ua(O){return function(M,R,J){for(var _e=-1,Ce=Object(M),Me=J(M),we=Me.length;we--;){var Re=Me[O?we:++_e];if(R(Ce[Re],Re,Ce)===!1)break}return M}}function wi(O,M){var R=O.__data__;return oc(M)?R[typeof M=="string"?"string":"hash"]:R.map}function Io(O,M){var R=Js(O,M);return qu(R)?R:void 0}function No(O){var M=hn.call(O,Gn),R=O[Gn];try{O[Gn]=void 0;var J=!0}catch{}var _e=ta.call(O);return J&&(M?O[Gn]=R:delete O[Gn]),_e}function rc(O){return typeof O.constructor=="function"&&!fa(O)?Gr(Ao(O)):{}}function ca(O,M){var R=typeof O;return M=M??s,!!M&&(R=="number"||R!="symbol"&&le.test(O))&&O>-1&&O%1==0&&O0){if(++M>=i)return arguments[0]}else M=0;return O.apply(void 0,arguments)}}function fc(O){if(O!=null){try{return hi.call(O)}catch{}try{return O+""}catch{}}return""}function Ci(O,M){return O===M||O!==O&&M!==M}var ki=aa(function(){return arguments}())?aa:function(O){return pr(O)&&hn.call(O,"callee")&&!mn.call(O,"callee")},Bo=Array.isArray;function Ho(O){return O!=null&&_n(O.length)&&!Mn(O)}function Si(O){return pr(O)&&Ho(O)}var pa=ra||xi;function Mn(O){if(!Qn(O))return!1;var M=Zn(O);return M==h||M==u||M==p||M==y}function _n(O){return typeof O=="number"&&O>-1&&O%1==0&&O<=s}function Qn(O){var M=typeof O;return O!=null&&(M=="object"||M=="function")}function pr(O){return O!=null&&typeof O=="object"}function Ei(O){if(!pr(O)||Zn(O)!=v)return!1;var M=Ao(O);if(M===null)return!0;var R=hn.call(M,"constructor")&&M.constructor;return typeof R=="function"&&R instanceof R&&hi.call(R)==Ou}var ha=Tn?Ks(Tn):bn;function dc(O){return tc(O,ma(O))}function ma(O){return Ho(O)?yn(O,!0):Zu(O)}var ga=nc(function(O,M,R){la(O,M,R)});function va(O){return function(){return O}}function ya(O){return O}function xi(){return!1}e.exports=ga})(Bl,Bl.exports);var A4=Bl.exports;const L4=bo(A4);var $v={exports:{}};(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(c,p,g){this.fn=c,this.context=p,this.once=g||!1}function o(c,p,g,l,d){if(typeof g!="function")throw new TypeError("The listener must be a function");var h=new i(g,l||c,d),u=n?n+p:p;return c._events[u]?c._events[u].fn?c._events[u]=[c._events[u],h]:c._events[u].push(h):(c._events[u]=h,c._eventsCount++),c}function s(c,p){--c._eventsCount===0?c._events=new r:delete c._events[p]}function a(){this._events=new r,this._eventsCount=0}a.prototype.eventNames=function(){var p=[],g,l;if(this._eventsCount===0)return p;for(l in g=this._events)t.call(g,l)&&p.push(n?l.slice(1):l);return Object.getOwnPropertySymbols?p.concat(Object.getOwnPropertySymbols(g)):p},a.prototype.listeners=function(p){var g=n?n+p:p,l=this._events[g];if(!l)return[];if(l.fn)return[l.fn];for(var d=0,h=l.length,u=new Array(h);d + + + + + + + + + + + + + + + + + + + + + + + +`,P4=` + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +`,Sm=` + + + + + + + + +`,Em=` + + + +`,j4=` + + + +`,R4=` + + + +`,xm=` + + + + +`,I4=` + + + +`,N4=` + + + + + + +`,D4=` + + + + + + + +`,B4=` + + + + + + + + + +`,$m=` + + + + + + + + +`,Om=` + + + + + + + + + + + + + + + + +`,H4=` + + + +`,Ns=` + + + +`,F4=` + + + +`,z4=` + + +`,bu=` + + + +`,Av=` + + + +`,U4=` + + + +`,W4=` + + + + + + + + + + +`,V4=` + + + + +`;function G4(){if(typeof window<"u"){const e=ow.getParser(window.navigator.userAgent),t=e.getOS(),n=e.getBrowser(),{type:r}=e.getPlatform();return{type:r,os:t,browser:n}}else return{type:null,os:null,browser:null}}const q4=e=>e!=null;function kp(e){return e.includes("11?`${e.slice(0,4)}…${e.slice(-6)}`:e}async function F9(e){try{return await navigator.clipboard.writeText(e)}catch(t){console.error("Failed to copy: ",t)}}const Lv=e=>typeof e=="number"?`0x${e.toString(16)}`:e;function Z4(e){return e.map(t=>{var{id:n}=t,r=Hl(t,["id"]);const i=Lv(n);return Object.assign({id:i},r)})}function z9(e){return`0x${(e*1e9).toString(16)}`}const U9={"0x1":"Ethereum","0xaa36a7":"Sepolia","0x38":"Binance","0x89":"Polygon","0xfa":"Fantom","0xa":"OP Mainnet","0x45":"OP Kovan","0xa86a":"Avalanche","0xa4ec":"Celo","0x2105":"Base","0x14a33":"Base Goerli","0x64":"Gnosis","0x63564C40":"Harmony One","0xa4b1":"Arbitrum One","0xa4ba":"Arbitrum Nova","0x27bc86aa":"Degen","0x890":"SNAX"};function Fl(e){switch(e){case"0x1":case"0x89":case"0xa":case"0xa4b1":case"0x144":return"0x1";case"0x5":return e;case"0xaa36a7":return e;default:return null}}const Q4=async e=>{switch(e){case"0x89":case"0xa":case"0xa4b1":case"0x144":case"0x1":{const{mainnet:t}=await Xt(()=>import("./index-40a497ea-56233768.js"),["./index-40a497ea-56233768.js","./transactionRequest-be6a8ea9-6f2aa5fb.js"],import.meta.url);return t}case"0xaa36a7":{const{sepolia:t}=await Xt(()=>import("./index-40a497ea-56233768.js"),["./index-40a497ea-56233768.js","./transactionRequest-be6a8ea9-6f2aa5fb.js"],import.meta.url);return t}default:return null}},W9={main:"0x1",sepolia:"0xaa36a7",xdai:"0x64","bsc-main":"0x38","matic-main":"0x89","fantom-main":"0xfa","matic-mumbai":"0x80001",degen:"0x27bc86aa",SNAX:"0x890"},X4={"0x1":{icon:Sm,color:"#627EEA"},"0xaa36a7":{icon:Sm,color:"#627EEA"},"0x38":{icon:j4,color:"#F3BA2F"},"0x89":{icon:Em,color:"#8247E5"},"0xfa":{icon:R4,color:"#1969FF"},"0xa":{icon:xm,color:"#FF0420"},"0x45":{icon:xm,color:"#FF0420"},"0xa86a":{icon:I4,color:"#E84142"},"0xa4ec":{icon:N4,color:"#FBCC5C"},"0x64":{icon:D4,color:"#04795B"},"0x63564C40":{icon:B4,color:"#ffffff"},"0xa4b1":{icon:$m,color:"#33394B"},"0xa4ba":{icon:$m,color:"#33394B"},"0x2105":{icon:Om,color:"#0259F9"},"0x14a33":{icon:Om,color:"#0259F9"},"0x80001":{icon:Em,color:"#8247E5"},"0x27bc86aa":{icon:W4,color:"#a36dfe"},"0x890":{icon:V4,color:"#00D1FF"}},V9={icon:Ns,color:"#33394B"};function G9(e){return e?X4[e.toLowerCase()]:void 0}function q9(e,t){return!!t.find(({id:n,namespace:r})=>n===e.id&&r===e.namespace)}const Z9={pending:{backgroundColor:"var(--onboard-primary-700, var(--primary-700))",borderColor:"#6370E5",eventIcon:H4},success:{backgroundColor:"#052E17",borderColor:"var(--onboard-success-300, var(--success-300))",eventIcon:F4},error:{backgroundColor:"#FDB1B11A",borderColor:"var(--onboard-danger-300, var(--danger-300))",eventIcon:z4},hint:{backgroundColor:"var(--onboard-gray-500, var(--gray-500))",borderColor:"var(--onboard-gray-500, var(--gray-500))",iconColor:"var(--onboard-gray-100, var(--gray-100))",eventIcon:bu}},Y4=e=>new Promise(t=>setTimeout(t,e));function _u(e){try{return localStorage.getItem(e)}catch{return null}}function wu(e,t){try{localStorage.setItem(e,t)}catch{return}}function Tv(e){try{localStorage.removeItem(e)}catch{return}}let Tt={svelteInstance:null,device:G4(),initialWalletInit:[],gas:void 0,containerElements:{accountCenter:void 0,connectModal:void 0},unstoppableResolution:void 0,wagmi:void 0};function Am(e){Tt=Object.assign(Object.assign({},Tt),e)}const br={wallets:[],walletModules:[],chains:[],accountCenter:{enabled:!0,position:"bottomRight",expanded:!1,minimal:!0},notify:{enabled:!0,position:"topRight",replacement:{gasPriceProbability:{speedup:80,cancel:95}}},notifications:[],locale:"",connect:{showSidebar:!0,disableClose:!1},appMetadata:null,wagmiConfig:null},zn={TERMS_AGREEMENT:"onboard.js:agreement",LAST_CONNECTED_WALLET:"onboard.js:last_connected_wallet"},tt=768,Q9="https://rpc.blocknative.com/boost",X9="https://docs.blocknative.com/blocknative-mev-protection/transaction-boost",Mv="add_chains",Pv="update_chains",jv="reset_store",Rv="add_wallet",Iv="update_wallet",Nv="remove_wallet",Dv="update_account",Bv="update_account_center",Hv="update_connect_modal",Fv="set_wallet_modules",zv="set_locale",Uv="update_notify",Wv="add_notification",Vv="remove_notification",Gv="update_balance",qv="update_app_metadata",Zv="update_wagmi_config";function K4(e,t){const{type:n,payload:r}=t;switch(n){case Mv:return Object.assign(Object.assign({},e),{chains:[...e.chains,...r]});case Pv:{const i=r,o=e.chains,s=o.findIndex(a=>a.id===i.id);return o[s]=i,Object.assign(Object.assign({},e),{chains:o})}case Rv:{const i=r,o=e.wallets.find(({label:s})=>s===i.label);return Object.assign(Object.assign({},e),{wallets:[o||r,...e.wallets.filter(({label:s})=>s!==i.label)]})}case Iv:{const i=r,{id:o}=i,s=Hl(i,["id"]),a=e.wallets.map(c=>c.label===o?Object.assign(Object.assign({},c),s):c);return Object.assign(Object.assign({},e),{wallets:a})}case Nv:{const i=r;return Object.assign(Object.assign({},e),{wallets:e.wallets.filter(({label:o})=>o!==i.id)})}case Dv:{const i=r,{id:o,address:s}=i,a=Hl(i,["id","address"]),c=e.wallets.map(p=>(p.label===o&&(p.accounts=p.accounts.map(g=>g.address===s?Object.assign(Object.assign({},g),a):g)),p));return Object.assign(Object.assign({},e),{wallets:c})}case Gv:{const i=r;return Object.assign(Object.assign({},e),{wallets:i})}case Hv:{const i=r;return Object.assign(Object.assign({},e),{connect:Object.assign(Object.assign({},e.connect),i)})}case Bv:{const i=r;return Object.assign(Object.assign({},e),{accountCenter:Object.assign(Object.assign({},e.accountCenter),i)})}case Uv:{const i=r;return Object.assign(Object.assign({},e),{notify:Object.assign(Object.assign({},e.notify),i)})}case Wv:{const i=r,o=[...e.notifications],s=o.findIndex(({id:a})=>a===i.id);return s!==-1?o[s]=i:o.unshift(i),Object.assign(Object.assign({},e),{notifications:o})}case Vv:{const i=r;return Object.assign(Object.assign({},e),{notifications:e.notifications.filter(o=>o.id!==i)})}case Fv:return Object.assign(Object.assign({},e),{walletModules:r});case zv:return di.set(r),Object.assign(Object.assign({},e),{locale:r});case qv:{const i=r;return Object.assign(Object.assign({},e),{appMetadata:Object.assign(Object.assign(Object.assign({},e.appMetadata),i),{name:i.name||""})})}case Zv:{const i=r;return Object.assign(Object.assign({},e),{wagmiConfig:i})}case jv:return br;default:throw new Error(`Unknown type: ${n} in appStore reducer`)}}const Cu=new qs(br),zl=new cr;zl.subscribe(Cu);function _t(e){const t=Cu.getValue();zl.next(K4(t,e))}function J4(e){if(!e)return zl.asObservable();if(!Object.keys(Cu.getValue()).includes(String(e)))throw new Error(`key: ${e} does not exist on this store`);return zl.asObservable().pipe(J_(e),hp(e),co(q4))}function e6(){return Cu.getValue()}const ce={select:J4,get:e6};function z(){}const Ys=e=>e;function t6(e,t){for(const n in t)e[n]=t[n];return e}function n6(e){return!!e&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function Qv(e){return e()}function Lm(){return Object.create(null)}function Vn(e){e.forEach(Qv)}function Ur(e){return typeof e=="function"}function ot(e,t){return e!=e?t==t:e!==t||e&&typeof e=="object"||typeof e=="function"}let za;function go(e,t){return za||(za=document.createElement("a")),za.href=t,e===za.href}function r6(e){return Object.keys(e).length===0}function i6(e,...t){if(e==null)return z;const n=e.subscribe(...t);return n.unsubscribe?()=>n.unsubscribe():n}function Ge(e,t,n){e.$$.on_destroy.push(i6(t,n))}function Sp(e,t,n,r){if(e){const i=Xv(e,t,n,r);return e[0](i)}}function Xv(e,t,n,r){return e[1]&&r?t6(n.ctx.slice(),e[1](r(t))):n.ctx}function Ep(e,t,n,r){if(e[2]&&r){const i=e[2](r(n));if(t.dirty===void 0)return i;if(typeof i=="object"){const o=[],s=Math.max(t.dirty.length,i.length);for(let a=0;a32){const t=[],n=e.ctx.length/32;for(let r=0;rwindow.performance.now():()=>Date.now(),Op=Yv?e=>requestAnimationFrame(e):z;const Ji=new Set;function Kv(e){Ji.forEach(t=>{t.c(e)||(Ji.delete(t),t.f())}),Ji.size!==0&&Op(Kv)}function Su(e){let t;return Ji.size===0&&Op(Kv),{promise:new Promise(n=>{Ji.add(t={c:e,f:n})}),abort(){Ji.delete(t)}}}function j(e,t){e.appendChild(t)}function st(e,t,n){const r=Ap(e);if(!r.getElementById(t)){const i=B("style");i.id=t,i.textContent=n,Jv(r,i)}}function Ap(e){if(!e)return document;const t=e.getRootNode?e.getRootNode():e.ownerDocument;return t&&t.host?t:e.ownerDocument}function o6(e){const t=B("style");return Jv(Ap(e),t),t.sheet}function Jv(e,t){return j(e.head||e,t),t.sheet}function G(e,t,n){e.insertBefore(t,n||null)}function U(e){e.parentNode&&e.parentNode.removeChild(e)}function ey(e,t){for(let n=0;ne.removeEventListener(t,n,r)}function a6(e){return function(t){return t.stopPropagation(),e.call(this,t)}}function P(e,t,n){n==null?e.removeAttribute(t):e.getAttribute(t)!==n&&e.setAttribute(t,n)}function l6(e){return Array.from(e.childNodes)}function Oe(e,t){t=""+t,e.data!==t&&(e.data=t)}function Li(e,t,n,r){n==null?e.style.removeProperty(t):e.style.setProperty(t,n,r?"important":"")}function Y9(e,t,n){for(let r=0;r>>0}function f6(e,t){const n={stylesheet:o6(t),rules:{}};return Ul.set(e,n),n}function Ds(e,t,n,r,i,o,s,a=0){const c=16.666/r;let p=`{ +`;for(let b=0;b<=1;b+=c){const m=t+(n-t)*o(b);p+=b*100+`%{${s(m,1-m)}} +`}const g=p+`100% {${s(n,1-n)}} +}`,l=`__svelte_${c6(g)}_${a}`,d=Ap(e),{stylesheet:h,rules:u}=Ul.get(d)||f6(d,e);u[l]||(u[l]=!0,h.insertRule(`@keyframes ${l} ${g}`,h.cssRules.length));const f=e.style.animation||"";return e.style.animation=`${f?`${f}, `:""}${l} ${r}ms linear ${i}ms 1 both`,Wl+=1,l}function Bs(e,t){const n=(e.style.animation||"").split(", "),r=n.filter(t?o=>o.indexOf(t)<0:o=>o.indexOf("__svelte")===-1),i=n.length-r.length;i&&(e.style.animation=r.join(", "),Wl-=i,Wl||d6())}function d6(){Op(()=>{Wl||(Ul.forEach(e=>{const{ownerNode:t}=e.stylesheet;t&&U(t)}),Ul.clear())})}function K9(e,t,n,r){if(!t)return z;const i=e.getBoundingClientRect();if(t.left===i.left&&t.right===i.right&&t.top===i.top&&t.bottom===i.bottom)return z;const{delay:o=0,duration:s=300,easing:a=Ys,start:c=ku()+o,end:p=c+s,tick:g=z,css:l}=n(e,{from:t,to:i},r);let d=!0,h=!1,u;function f(){l&&(u=Ds(e,0,1,s,o,a,l)),o||(h=!0)}function b(){l&&Bs(e,u),d=!1}return Su(m=>{if(!h&&m>=c&&(h=!0),h&&m>=p&&(g(1,0),b()),!d)return!1;if(h){const v=m-c,y=0+1*a(v/s);g(y,1-y)}return!0}),f(),g(0,1),b}function J9(e){const t=getComputedStyle(e);if(t.position!=="absolute"&&t.position!=="fixed"){const{width:n,height:r}=t,i=e.getBoundingClientRect();e.style.position="absolute",e.style.width=n,e.style.height=r,p6(e,i)}}function p6(e,t){const n=e.getBoundingClientRect();if(t.left!==n.left||t.top!==n.top){const r=getComputedStyle(e),i=r.transform==="none"?"":r.transform;e.style.transform=`${i} translate(${t.left-n.left}px, ${t.top-n.top}px)`}}let Hs;function nr(e){Hs=e}function Lp(){if(!Hs)throw new Error("Function called outside component initialization");return Hs}function h6(e){Lp().$$.on_mount.push(e)}function ty(e){Lp().$$.on_destroy.push(e)}function m6(e,t){const n=e.$$.callbacks[t.type];n&&n.slice().forEach(r=>r.call(this,t))}const Ti=[],Vl=[];let eo=[];const sd=[],g6=Promise.resolve();let ad=!1;function v6(){ad||(ad=!0,g6.then(Tp))}function jt(e){eo.push(e)}function y6(e){sd.push(e)}const Zc=new Set;let Ai=0;function Tp(){if(Ai!==0)return;const e=Hs;do{try{for(;Aie.indexOf(r)===-1?t.push(r):n.push(r)),n.forEach(r=>r()),eo=t}let Yo;function Mp(){return Yo||(Yo=Promise.resolve(),Yo.then(()=>{Yo=null})),Yo}function ri(e,t,n){e.dispatchEvent(u6(`${t?"intro":"outro"}${n}`))}const sl=new Set;let Nn;function He(){Nn={r:0,c:[],p:Nn}}function Fe(){Nn.r||Vn(Nn.c),Nn=Nn.p}function H(e,t){e&&e.i&&(sl.delete(e),e.i(t))}function V(e,t,n,r){if(e&&e.o){if(sl.has(e))return;sl.add(e),Nn.c.push(()=>{sl.delete(e),r&&(n&&e.d(1),r())}),e.o(t)}else r&&r()}const Pp={duration:0};function jp(e,t,n){const r={direction:"in"};let i=t(e,n,r),o=!1,s,a,c=0;function p(){s&&Bs(e,s)}function g(){const{delay:d=0,duration:h=300,easing:u=Ys,tick:f=z,css:b}=i||Pp;b&&(s=Ds(e,0,1,h,d,u,b,c++)),f(0,1);const m=ku()+d,v=m+h;a&&a.abort(),o=!0,jt(()=>ri(e,!0,"start")),a=Su(y=>{if(o){if(y>=v)return f(1,0),ri(e,!0,"end"),p(),o=!1;if(y>=m){const _=u((y-m)/h);f(_,1-_)}}return o})}let l=!1;return{start(){l||(l=!0,Bs(e),Ur(i)?(i=i(r),Mp().then(g)):g())},invalidate(){l=!1},end(){o&&(p(),o=!1)}}}function eC(e,t,n){const r={direction:"out"};let i=t(e,n,r),o=!0,s;const a=Nn;a.r+=1;function c(){const{delay:p=0,duration:g=300,easing:l=Ys,tick:d=z,css:h}=i||Pp;h&&(s=Ds(e,1,0,g,p,l,h));const u=ku()+p,f=u+g;jt(()=>ri(e,!1,"start")),Su(b=>{if(o){if(b>=f)return d(0,1),ri(e,!1,"end"),--a.r||Vn(a.c),!1;if(b>=u){const m=l((b-u)/g);d(1-m,m)}}return o})}return Ur(i)?Mp().then(()=>{i=i(r),c()}):c(),{end(p){p&&i.tick&&i.tick(1,0),o&&(s&&Bs(e,s),o=!1)}}}function Pm(e,t,n,r){const i={direction:"both"};let o=t(e,n,i),s=r?0:1,a=null,c=null,p=null;function g(){p&&Bs(e,p)}function l(h,u){const f=h.b-s;return u*=Math.abs(f),{a:s,b:h.b,d:f,duration:u,start:h.start,end:h.start+u,group:h.group}}function d(h){const{delay:u=0,duration:f=300,easing:b=Ys,tick:m=z,css:v}=o||Pp,y={start:ku()+u,b:h};h||(y.group=Nn,Nn.r+=1),a||c?c=y:(v&&(g(),p=Ds(e,s,h,f,u,b,v)),h&&m(0,1),a=l(y,f),jt(()=>ri(e,h,"start")),Su(_=>{if(c&&_>c.start&&(a=l(c,f),c=null,ri(e,a.b,"start"),v&&(g(),p=Ds(e,s,a.b,a.duration,0,b,o.css))),a){if(_>=a.end)m(s=a.b,1-s),ri(e,a.b,"end"),c||(a.b?g():--a.group.r||Vn(a.group.c)),a=null;else if(_>=a.start){const k=_-a.start;s=a.a+a.d*b(k/a.duration),m(s,1-s)}}return!!(a||c)}))}return{run(h){Ur(o)?Mp().then(()=>{o=o(i),d(h)}):d(h)},end(){g(),a=c=null}}}function ui(e,t){const n=t.token={};function r(i,o,s,a){if(t.token!==n)return;t.resolved=a;let c=t.ctx;s!==void 0&&(c=c.slice(),c[s]=a);const p=i&&(t.current=i)(c);let g=!1;t.block&&(t.blocks?t.blocks.forEach((l,d)=>{d!==o&&l&&(He(),V(l,1,1,()=>{t.blocks[d]===l&&(t.blocks[d]=null)}),Fe())}):t.block.d(1),p.c(),H(p,1),p.m(t.mount(),t.anchor),g=!0),t.block=p,t.blocks&&(t.blocks[o]=p),g&&Tp()}if(n6(e)){const i=Lp();if(e.then(o=>{nr(i),r(t.then,1,t.value,o),nr(null)},o=>{if(nr(i),r(t.catch,2,t.error,o),nr(null),!t.hasCatch)throw o}),t.current!==t.pending)return r(t.pending,0),!0}else{if(t.current!==t.then)return r(t.then,1,t.value,e),!0;t.resolved=e}}function $o(e,t,n){const r=t.slice(),{resolved:i}=e;e.current===e.then&&(r[e.value]=i),e.current===e.catch&&(r[e.error]=i),e.block.p(r,n)}function tC(e,t){e.d(1),t.delete(e.key)}function w6(e,t){V(e,1,1,()=>{t.delete(e.key)})}function nC(e,t){e.f(),w6(e,t)}function rC(e,t,n,r,i,o,s,a,c,p,g,l){let d=e.length,h=o.length,u=d;const f={};for(;u--;)f[e[u].key]=u;const b=[],m=new Map,v=new Map,y=[];for(u=h;u--;){const S=l(i,o,u),w=n(S);let C=s.get(w);C?r&&y.push(()=>C.p(S,t)):(C=p(w,S),C.c()),m.set(w,b[u]=C),w in f&&v.set(w,Math.abs(u-f[w]))}const _=new Set,k=new Set;function x(S){H(S,1),S.m(a,g),s.set(S.key,S),g=S.first,h--}for(;d&&h;){const S=b[h-1],w=e[d-1],C=S.key,E=w.key;S===w?(g=S.first,d--,h--):m.has(E)?!s.has(C)||_.has(C)?x(S):k.has(E)?d--:v.get(C)>v.get(E)?(k.add(C),x(S)):(_.add(E),d--):(c(w,s),d--)}for(;d--;){const S=e[d];m.has(S.key)||c(S,s)}for(;h;)x(b[h-1]);return Vn(y),b}function C6(e,t,n){const r=e.$$.props[t];r!==void 0&&(e.$$.bound[r]=n,n(e.$$.ctx[r]))}function be(e){e&&e.c()}function me(e,t,n,r){const{fragment:i,after_update:o}=e.$$;i&&i.m(t,n),r||jt(()=>{const s=e.$$.on_mount.map(Qv).filter(Ur);e.$$.on_destroy?e.$$.on_destroy.push(...s):Vn(s),e.$$.on_mount=[]}),o.forEach(jt)}function ge(e,t){const n=e.$$;n.fragment!==null&&(_6(n.after_update),Vn(n.on_destroy),n.fragment&&n.fragment.d(t),n.on_destroy=n.fragment=null,n.ctx=[])}function k6(e,t){e.$$.dirty[0]===-1&&(Ti.push(e),v6(),e.$$.dirty.fill(0)),e.$$.dirty[t/31|0]|=1<{const u=h.length?h[0]:d;return p.ctx&&i(p.ctx[l],p.ctx[l]=u)&&(!p.skip_bound&&p.bound[l]&&p.bound[l](u),g&&k6(e,l)),d}):[],p.update(),g=!0,Vn(p.before_update),p.fragment=r?r(p.ctx):!1,t.target){if(t.hydrate){const l=l6(t.target);p.fragment&&p.fragment.l(l),l.forEach(U)}else p.fragment&&p.fragment.c();t.intro&&H(e.$$.fragment),me(e,t.target,t.anchor,t.customElement),Tp()}nr(c)}class lt{$destroy(){ge(this,1),this.$destroy=z}$on(t,n){if(!Ur(n))return z;const r=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return r.push(n),()=>{const i=r.indexOf(n);i!==-1&&r.splice(i,1)}}$set(t){this.$$set&&!r6(t)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const Rp=new cr,Ip=new cr,Sn=new qs({inProgress:!1,actionRequired:""}),vo=new qs(null),Np=ce.select("wallets").pipe(Un(1));Rp.pipe(Zg(Np),hp("1")).subscribe(e=>{e.forEach(({label:t})=>{Ip.next(t)}),h5()});const jm=new qs([]);function iC(e){const t=jm.getValue();jm.next(t.filter(n=>n.hash!==e))}const Rm=V_(()=>{const e=new cr;return ty(()=>{e.next()}),e.asObservable().pipe(pp(1))}),Wi={default:{"--w3o-background-color":"unset","--w3o-foreground-color":"unset","--w3o-text-color":"unset","--w3o-border-color":"unset","--w3o-action-color":"unset","--w3o-border-radius":"unset","--w3o-font-family":"inherit"},light:{"--w3o-background-color":"#ffffff","--w3o-foreground-color":"#EFF1FC","--w3o-text-color":"#1a1d26","--w3o-border-color":"#d0d4f7","--w3o-action-color":"#6370E5","--w3o-border-radius":"16px","--w3o-font-family":"inherit"},dark:{"--w3o-background-color":"#1A1D26","--w3o-foreground-color":"#242835","--w3o-text-color":"#EFF1FC","--w3o-border-color":"#33394B","--w3o-action-color":"#929bed","--w3o-border-radius":"16px","--w3o-font-family":"inherit"}},S6=e=>typeof e=="string"&&e==="system"?x6():E6(e),E6=e=>{if(typeof e=="string"&&e in Wi)return Wi[e];if(typeof e=="object")return e},rs=e=>{Object.keys(e).forEach(t=>{document.documentElement.style.setProperty(t,e[t]||null)})},x6=()=>{const e=window.matchMedia("(prefers-color-scheme: dark)");e.matches?rs(Wi.dark):rs(Wi.light),Xf(e,"change").pipe(js(Rp)).subscribe(t=>{t.matches?rs(Wi.dark):rs(Wi.light)})},Qc=T.object().unknown(),$6=T.object({namespace:Cp.required(),id:wp.required()}),O6=T.any().allow(T.object({name:T.string().required(),avatar:T.string(),contentHash:T.any().allow(T.string(),null),getText:T.function().arity(1).required()}),null),A6=T.any().allow(T.object({name:T.string().required()}),null),L6=T.any().allow(T.object({eth:T.number()}).unknown(),null),T6=T.any().allow(T.object({balance:T.string().required(),icon:T.string()}),null),M6=T.object({address:T.string().required(),ens:O6,uns:A6,balance:L6,secondaryTokens:T6}),P6=T.array().items(x4).unique((e,t)=>e.id===t.id).error(e=>e[0].code==="array.unique"?new Error(`There is a duplicate Chain ID in your Onboard Chains array: ${e}`):new Error(`${e}`)),j6=T.array().items(M6),ny=T.object({label:T.string(),icon:T.string(),provider:Qc,instance:Qc,accounts:j6,chains:T.array().items($6),wagmiConnector:Qc}).required().error(new Error("wallet must be defined")),R6=T.array().items(ny),ry=T.object({name:T.string().required(),url:T.string().uri().required()}),iy=T.object({version:T.string().required(),termsUrl:T.string().uri(),privacyUrl:T.string().uri()}),I6=T.object({name:T.string().required(),description:T.string().required(),icon:T.string(),logo:T.string(),gettingStartedGuide:T.string(),email:T.string(),appUrl:T.string(),explore:T.string(),recommendedInjectedWallets:T.array().items(ry),agreement:iy}),N6=T.object({name:T.string(),description:T.string(),icon:T.string(),logo:T.string(),gettingStartedGuide:T.string(),email:T.string(),appUrl:T.string(),explore:T.string(),recommendedInjectedWallets:T.array().items(ry),agreement:iy});T.object({label:T.string().required(),getInfo:T.function().arity(1).required(),getInterface:T.function().arity(1).required()});const oy=T.array().items(T.function()).required(),D6=T.string(),Dp=T.string().valid("topRight","bottomRight","bottomLeft","topLeft"),Im=[70,80,90,95,99],Gl=T.object({transactionHandler:T.function().optional(),enabled:T.boolean(),position:Dp,replacement:T.object({gasPriceProbability:T.object({speedup:T.number().valid(...Im),cancel:T.number().valid(...Im)})})}),sy=T.object({desktop:Gl,mobile:Gl}),Nm=T.object({enabled:T.boolean(),position:Dp,minimal:T.boolean(),containerElement:T.string(),hideTransactionProtectionBtn:T.boolean(),transactionProtectionInfoLink:T.string()}),B6=T.object({enabled:T.boolean(),position:Dp,expanded:T.boolean(),minimal:T.boolean(),hideTransactionProtectionBtn:T.boolean(),transactionProtectionInfoLink:T.string(),containerElement:T.string()}),ay=T.object({showSidebar:T.boolean(),disableClose:T.boolean(),autoConnectLastWallet:T.boolean(),autoConnectAllPreviousWallet:T.boolean(),iDontHaveAWalletLink:T.string(),wheresMyWalletLink:T.string(),removeWhereIsMyWalletWarning:T.boolean(),removeIDontHaveAWalletInfoLink:T.boolean(),disableUDResolution:T.boolean()}),H6=T.object({accountCenter:T.string(),connectModal:T.string()}),F6=T.object({"--w3o-background-color":T.string(),"--w3o-font-family":T.string(),"--w3o-foreground-color":T.string(),"--w3o-text-color":T.string(),"--w3o-border-color":T.string(),"--w3o-action-color":T.string(),"--w3o-border-radius":T.string()}),z6=T.string().valid("default","dark","light","system"),ly=T.alternatives().try(F6,z6),U6=T.object({wallets:oy,chains:P6.required(),appMetadata:I6,i18n:T.object().unknown(),apiKey:T.string(),accountCenter:T.object({desktop:Nm,mobile:Nm,hideTransactionProtectionBtn:T.boolean(),transactionProtectionInfoLink:T.string()}),notify:[sy,Gl],gas:T.object({get:T.function().required(),stream:T.function().required()}),wagmi:T.function(),connect:ay,containerElements:H6,transactionPreview:T.any(),theme:ly,disableFontDownload:T.boolean(),unstoppableResolution:T.function()}),W6=T.object({autoSelect:T.alternatives().try(T.object({label:T.string().required(),disableModals:T.boolean()}),T.string())}),V6=T.object({label:T.string().required()}).required(),G6=T.object({address:T.string().required(),icon:T.string().optional()}),q6=T.object({chainId:wp.required(),chainNamespace:Cp,wallet:T.string(),rpcUrl:T.string(),label:T.string(),token:T.string(),protectedRpcUrl:T.string(),secondaryTokens:T.array().max(5).items(G6).optional()}),Z6=T.object({key:T.string().required(),type:T.string().allow("pending","error","success","hint"),eventCode:T.string(),message:T.string().required(),id:T.string().required(),autoDismiss:T.number(),onClick:T.function(),link:T.string()});T.object({sendTransaction:T.function(),estimateGas:T.function(),gasPrice:T.function(),balance:T.alternatives(T.string(),T.number()),txDetails:T.object({value:T.alternatives(T.string(),T.number()),to:T.string(),from:T.string()}),txApproveReminderTimeout:T.number()});const Q6=T.object({key:T.string(),type:T.string().allow("pending","error","success","hint"),eventCode:T.string(),message:T.string(),id:T.string(),autoDismiss:T.number(),onClick:T.function(),link:T.string()});T.object({id:T.string().required(),key:T.string().required(),type:T.string().allow("pending","error","success","hint").required(),eventCode:T.string().required(),message:T.string().required(),autoDismiss:T.number().required(),network:T.string().required(),startTime:T.number(),onClick:T.function(),link:T.string()});function Bp(e){return bt(ny,e)}function X6(e){return bt(U6,e)}function Y6(e){return bt(W6,e)}function K6(e){return bt(V6,e)}function uy(e,t){return bt(T.string().required().label(t||"value"),e)}function cy(e){return bt(q6,e)}function J6(e){return bt(B6,e)}function e5(e){return bt(ay,e)}function t5(e){return bt(oy,e)}function n5(e){return bt(D6,e)}function fy(e){return bt(Gl,e)}function r5(e){return bt(sy,e)}function i5(e){return bt(Z6,e)}function Dm(e){return bt(Q6,e)}function o5(e){return bt(R6,e)}function s5(e){return bt(ly,e)}function a5(e){return bt(N6,e)}function l5(e){const t={type:Mv,payload:e.map(n=>{var{namespace:r="evm",id:i,rpcUrl:o}=n,s=Hl(n,["namespace","id","rpcUrl"]);return Object.assign(Object.assign({},s),{namespace:r,id:i.toLowerCase(),rpcUrl:o?o.trim():null})})};_t(t)}function dy(e){const{label:t,token:n,rpcUrl:r,id:i,namespace:o}=e,s=cy({label:t,token:n,rpcUrl:r,chainId:i,chainNamespace:o});if(s)throw s;_t({type:Pv,payload:e})}function ld(e){const t=Bp(e);if(t)throw console.error(t),t;_t({type:Rv,payload:e})}function hs(e,t){const n=Bp(t);if(n)throw console.error(n),n;const r={type:Iv,payload:Object.assign({id:e},t)};_t(r)}function u5(e){const t=uy(e,"wallet id");if(t)throw t;_t({type:Nv,payload:{id:e}})}function c5(e,t){const n=Bp(e)||t&&uy(t,"address");if(n)throw n;if(t){const r=e.accounts.find(i=>i.address===t);r&&(e.accounts=[r,...e.accounts.filter(({address:i})=>i!==r.address)])}b5(e),ld(e)}function is(e,t,n){const r={type:Dv,payload:Object.assign({id:e,address:t},n)};_t(r)}function py(e){const t=J6(e);if(t)throw t;_t({type:Bv,payload:e})}function f5(e){const t=e5(e);if(t)throw t;_t({type:Hv,payload:e})}function al(e){const t=fy(e);if(t)throw t;_t({type:Uv,payload:e})}function Xc(e){const t=i5(e);if(t)throw t;_t({type:Wv,payload:e})}function d5(e){const t=Dm(e);if(t)throw t;const n=`customNotification-${J3()}`,r=Object.assign(Object.assign({},e),{id:n,key:n});Xc(r);const i=()=>{r.id&&p5(r.id)},o=s=>{const a=Dm(e);if(a)throw a;const c=Object.assign(Object.assign({},s),{id:r.id,key:r.key});return Xc(c),{dismiss:i,update:o}};return Xc(r),{dismiss:i,update:o}}function p5(e){if(typeof e!="string")throw new Error("Notification id must be of type string");_t({type:Vv,payload:e})}function h5(){_t({type:jv})}function hy(e){const t=t5(e);if(t)throw t;const n=v5(e),r=y5(n);_t({type:Fv,payload:r})}function m5(e){const t=n5(e);if(t)throw t;_t({type:zv,payload:e})}function g5(e){const t=o5(e);if(t)throw t;_t({type:Gv,payload:e})}function v5(e){const{device:t}=Tt;return t?e.reduce((n,r)=>{const i=r({device:t});return i&&n.push(...Array.isArray(i)?i:[i]),n},[]):[]}function y5(e){return e.filter((t,n)=>t&&e.findIndex(r=>r&&r.label===t.label)===n)}function my(e){const t=s5(e);if(t)throw t;const n=S6(e);n&&rs(n)}function gy(e){const t=a5(e);if(t)throw t;_t({type:qv,payload:e})}function vy(e){_t({type:Zv,payload:e})}function b5(e){const{wagmi:t}=Tt;if(t)try{const{label:n}=e,{wagmiConnect:r,getWagmiConnector:i}=t,o=ce.get().wagmiConfig,s=i(n);r(o,{connector:s}).then(()=>{hs(n,{wagmiConnector:s})})}catch(n){console.error(`Error updating Wagmi connector on primary wallet switch ${n}`)}}async function _5(e){if(e){const i=Y6(e);if(i)throw i}const{chains:t}=ce.get();if(!t.length)throw new Error("At least one chain must be set before attempting to connect a wallet");let{autoSelect:n}=e||{};n||(n={label:"",disableModals:!1}),n&&(typeof n=="string"||n.label)&&await Y4(50),ce.get().walletModules.length||hy(Tt.initialWalletInit),Sn.next({autoSelect:typeof n=="string"?{label:n,disableModals:!1}:n,inProgress:!0});const r=Sn.pipe(co(({inProgress:i,actionRequired:o})=>i===!1&&!o),Zg(Np),hp(1));return Ps(r)}async function Hp(e){const t=K6(e);if(t)throw t;const{label:n}=e,{wagmi:r}=Tt;if(r){const o=await r.wagmiDisconnectWallet(n);o&&vy(o)}Ip.next(n),u5(n);const i=_u(zn.LAST_CONNECTED_WALLET);if(i)try{const o=JSON.parse(i);Array.isArray(o)&&o.indexOf(n)>=0&&wu(zn.LAST_CONNECTED_WALLET,JSON.stringify(o.filter(s=>s!==n))),typeof o=="string"&&o===n&&Tv(zn.LAST_CONNECTED_WALLET)}catch(o){console.error(`There was an error disconnecting the last connected wallet from localStorage - Error: ${o}`)}return ce.get().wallets}async function w5(e){const{wallets:t,chains:n}=ce.get(),r=await Promise.all(t.map(async i=>{const o=n.find(({id:a})=>a===i.chains[0].id);if(!o)return;const s=await Promise.all(i.accounts.map(async a=>{const c=await ql(a.address,o);if(!e||e.some(p=>p.toLowerCase()===a.address.toLowerCase())){const p=await Zl(a.address,o);return Object.assign(Object.assign({},a),{balance:p,secondaryTokens:c})}return Object.assign(Object.assign({},a),{secondaryTokens:c})}));return Object.assign(Object.assign({},i),{accounts:s})}));g5(r)}const ql=async(e,t)=>{if(!t)return[];const n=t.rpcUrl;return!t.secondaryTokens||!t.secondaryTokens.length||!n?[]:await Promise.all(t.secondaryTokens.map(async i=>{try{const{createPublicClient:o,http:s}=await Xt(()=>import("./index-4327b2d3.js"),["./index-4327b2d3.js","./number-84aafe0c.js"],import.meta.url),a=await S4(t),c=o({chain:a,transport:s(t.providerConnectionInfo&&t.providerConnectionInfo.url?t.providerConnectionInfo.url:n)}),p={abi:[{inputs:[{name:"owner",type:"address"}],name:"balanceOf",outputs:[{name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],stateMutability:"view",type:"function"}],address:i.address},g=c.readContract(Object.assign(Object.assign({},p),{functionName:"balanceOf",args:[e]}))||"",l=c.readContract(Object.assign(Object.assign({},p),{functionName:"symbol",args:[]}))||"",[d,h]=await Promise.all([g,l]);return{name:h,balance:k4(d.toString()),icon:i.icon}}catch(o){console.error(`There was an error fetching balance and/or symbol + for token contract: ${i.address} - ${o}`)}}))},Yc={};async function C5(e){if(!e)return null;if(!Yc[e.rpcUrl]){const t=await Q4(e.id);if(!t)return null;const{createPublicClient:n,http:r}=await Xt(()=>import("./index-4327b2d3.js"),["./index-4327b2d3.js","./number-84aafe0c.js"],import.meta.url),i=n({chain:t,transport:r()});Yc[e.rpcUrl]=i}return Yc[e.rpcUrl]}function yy(e){const t={method:"eth_requestAccounts"};return e.request(t)}function oC(e){const t={method:"eth_selectAccounts"};return e.request(t)}function by(e){return e.request({method:"eth_chainId"})}function _y(e){const{provider:t,disconnected$:n}=e;return dp(o=>{t.on("accountsChanged",o)},o=>{t.removeListener("accountsChanged",o)}).pipe(js(n))}function k5(e){const{provider:t,disconnected$:n}=e;return dp(o=>{t.on("chainChanged",o)},o=>{t.removeListener("chainChanged",o)}).pipe(js(n))}function S5(e,t){const n=Ip.pipe(co(o=>o===t),pp(1)),r=_y({provider:e,disconnected$:n}).pipe(Yf());r.subscribe(async([o])=>{try{await x5(t)}catch(l){console.warn("Web3Onboard: Error whilst trying to sync connected accounts:",l)}if(!o){Hp({label:t});return}const{wallets:s}=ce.get(),a=s.find(l=>l.label===t),c=a?a.accounts:[],[[p],g]=O4(c,l=>l.address===o);hs(t,{accounts:[p||{address:o,ens:null,uns:null,balance:null},...g]})}),r.pipe(om(async([o])=>{if(!o)return;const{wallets:s,chains:a}=ce.get(),c=s.find(y=>y.label===t);if(!c)return;const{chains:p,accounts:g}=c,[l]=p,d=a.find(({namespace:y,id:_})=>y==="evm"&&_===l.id);if(!d)return;const h=Zl(o,d),u=ql(o,d),f=g.find(y=>y.address===o),b=a.find(({id:y})=>y===Fl(l.id)),m=f&&f.ens?Promise.resolve(f.ens):b?ud(o,b):Promise.resolve(null),v=f&&f.uns?Promise.resolve(f.uns):b?cd(o,b):Promise.resolve(null);return Promise.all([Promise.resolve(o),h,m,v,u])})).subscribe(o=>{if(!o)return;const[s,a,c,p,g]=o;is(t,s,{balance:a,ens:c,uns:p,secondaryTokens:g})});const i=k5({provider:e,disconnected$:n}).pipe(Yf());i.subscribe(async o=>{const{wallets:s}=ce.get(),a=s.find(d=>d.label===t);if(!a)return;const{chains:c,accounts:p}=a,[g]=c;if(Nl(o)||(o=Cm(o)),o===g.id)return;const l=p.map(({address:d})=>({address:d,ens:null,uns:null,balance:null}));hs(t,{chains:[{namespace:"evm",id:o}],accounts:l})}),i.pipe(om(async o=>{const{wallets:s,chains:a}=ce.get(),c=s.find(l=>l.label===t),p=(c==null?void 0:c.accounts)||[];Nl(o)||(o=Cm(o));const g=a.find(({namespace:l,id:d})=>l==="evm"&&d===o);return g?Promise.all(p.map(async({address:l})=>{const d=Zl(l,g),h=ql(l,g),u=a.find(({id:k})=>k===Fl(o)),f=u?ud(l,u):Promise.resolve(null),b=u?cd(l,u):Promise.resolve(null),[m,v,y,_]=await Promise.all([d,f,b,h]);return{address:l,balance:m,ens:v,uns:y,secondaryTokens:_}})):Promise.resolve(null)})).subscribe(o=>{o&&hs(t,{accounts:o})}),n.subscribe(()=>{e.disconnect&&e.disconnect()})}async function ud(e,t){if(!t)return null;const n=await C5(t);if(!n)return null;try{const r=await n.getEnsName({address:e});let i=null;if(r){const{labelhash:o,normalize:s}=await Xt(()=>import("./index-021f6a62-ddbac087.js"),["./index-021f6a62-ddbac087.js","./transactionRequest-be6a8ea9-6f2aa5fb.js"],import.meta.url).then(function(d){return d.i}),a=s(r),c=await n.getEnsResolver({name:a}),p=await n.getEnsAvatar({name:a}),g=o(a);i={name:r,avatar:p,contentHash:g,ensResolver:c,getText:async d=>await n.getEnsText({name:r,key:d})}}return i}catch(r){return console.error(r),null}}async function cd(e,t){const{unstoppableResolution:n}=Tt;if(!n||!xv()||!t)return null;try{return await n(e)}catch(r){return console.error(r),null}}async function Zl(e,t){if(!t)return null;const{wallets:n}=ce.get();try{const r=n.find(s=>!!s.provider);if(!r)return null;const o=await r.provider.request({method:"eth_getBalance",params:[e,"latest"]});return o?{[t.token||"eth"]:C4(o)}:null}catch(r){return console.error(r),null}}function Eu(e,t){return e.request({method:"wallet_switchEthereumChain",params:[{chainId:t}]})}function wy(e,t){return e.request({method:"wallet_addEthereumChain",params:[{chainId:t.id,chainName:t.label,nativeCurrency:{name:t.label,symbol:t.token,decimals:18},rpcUrls:[t.publicRpcUrl||t.rpcUrl],blockExplorerUrls:t.blockExplorerUrl?[t.blockExplorerUrl]:null}]})}function sC(e,t,n){return e.request({method:"wallet_addEthereumChain",params:[{chainId:t.id,chainName:t.label,nativeCurrency:{name:t.label,symbol:t.token,decimals:18},rpcUrls:[n],blockExplorerUrls:t.blockExplorerUrl?[t.blockExplorerUrl]:void 0}]})}async function E5(e){try{const t=await e.request({method:"wallet_getPermissions"});return Array.isArray(t)?t:[]}catch{return[]}}async function x5(e){const t=ce.get().wallets.find(i=>i.label===e);if(!t)return;const r=(await E5(t.provider)).find(({parentCapability:i})=>i==="eth_accounts");if(r){const{value:i}=r.caveats.find(({type:o})=>o==="restrictReturnedAccounts")||{value:null};if(i){const o=t.accounts.filter(({address:s})=>i.includes(s));hs(t.label,Object.assign(Object.assign({},t),{accounts:o}))}}}const $5=async(e,t)=>{try{const{id:n}=t;return await wy(e,t),await Eu(e,n),n}catch{return}},O5=()=>({addOrSwitchChain:$5,getChainId:by,requestAccounts:yy,switchChain:Eu});async function A5(e){const t=cy(e);if(t)throw t;const{wallets:n,chains:r}=ce.get(),{chainId:i,chainNamespace:o="evm",wallet:s,rpcUrl:a,label:c,token:p}=e,g=Lv(i),l=r.find(({namespace:u,id:f})=>u===o&&f.toLowerCase()===g.toLowerCase());if(!l)throw new Error(`Chain with chainId: ${i} and chainNamespace: ${o} has not been set and must be added when Onboard is initialized.`);const d=s?n.find(({label:u})=>u===s):n[0];if(!d)throw new Error(s?`Wallet with label ${s} is not connected`:"A wallet must be connected before a chain can be set");const[h]=d.chains;if(h.namespace===o&&h.id===g)return!0;try{return await Eu(d.provider,g),!0}catch(u){const{code:f}=u,b=vo.pipe(co(m=>m===null),Zs(()=>!1));if(f===Rr.CHAIN_NOT_ADDED||f===Rr.UNRECOGNIZED_CHAIN_ID)return(a||c||p)&&(a&&(l.rpcUrl=a),c&&(l.label=c),p&&(l.token=p),dy(l)),L5(d,l,b,g);if(f===Rr.UNSUPPORTED_METHOD)return vo.next({chain:l}),Ps(b)}return!1}const L5=async(e,t,n,r)=>{try{return await wy(e.provider,t),await Eu(e.provider,r),!0}catch(i){const{code:o}=i;return o===Rr.ACCOUNT_ACCESS_REJECTED?!1:(vo.next({chain:t}),Ps(n))}};var T5={selectingWallet:{header:"Available Wallets",sidebar:{heading:"",subheading:"Connect your wallet",paragraph:"Connecting your wallet is like “logging in” to Web3. Select your wallet from the options to get started.",IDontHaveAWallet:"I don't have a wallet"},recommendedWalletsPart1:"{app} only supports",recommendedWalletsPart2:"on this platform. Please use or install one of the supported wallets to continue",installWallet:"You do not have any wallets installed that {app} supports, please use a supported wallet",agreement:{agree:"I agree to the",terms:"Terms & Conditions",and:"and",privacy:"Privacy Policy"},whyDontISeeMyWallet:"Why don't I see my wallet?",learnMore:"Click here to learn more"},connectingWallet:{header:"{connectionRejected, select, false {Connecting to {wallet}...} other {Connection Rejected}}",sidebar:{subheading:"Approve Connection",paragraph:"Please approve the connection in your wallet and authorize access to continue."},mainText:"Connecting...",paragraph:"Make sure to select all accounts that you want to grant access to.",previousConnection:"{wallet} already has a pending connection request, please open the {wallet} app to login and connect.",rejectedText:"Connection Rejected!",rejectedCTA:"Click here to try again",primaryButton:"Back to wallets"},connectedWallet:{header:"Connection Successful",sidebar:{subheading:"Connection Successful!",paragraph:"Your wallet is now connected to {app}"},mainText:"Connected"}},M5={actionRequired:{heading:"Action required in {wallet}",paragraph:"Please switch the active account in your wallet.",linkText:"Learn more.",buttonText:"Okay"},switchChain:{heading:"Switch Chain",paragraph1:"{app} requires that you switch your wallet to the {nextNetworkName} network to continue.",paragraph2:"*Some wallets may not support changing networks. If you can not change networks in your wallet you may consider switching to a different wallet."},confirmDisconnectAll:{heading:"Disconnect all Wallets",description:"Are you sure that you would like to disconnect all your wallets?",confirm:"Confirm",cancel:"Cancel"},confirmTransactionProtection:{heading:"Enable Transaction Protection",description:"Protect RPC endpoints hide your transaction from front-running and sandwich bots.",link:"Learn more",enable:"Enable",dismiss:"Dismiss"}},P5={connectAnotherWallet:"Connect another Wallet",disconnectAllWallets:"Disconnect all Wallets",currentNetwork:"Current Network",enableTransactionProtection:"Enable Transaction Protection",appInfo:"App Info",learnMore:"Learn More",gettingStartedGuide:"Getting Started Guide",smartContracts:"Smart Contract(s)",explore:"Explore",poweredBy:"powered by",addAccount:"Add Account",setPrimaryAccount:"Set Primary Account",disconnectWallet:"Disconnect Wallet",copyAddress:"Copy Wallet address"},j5={transaction:{txRequest:"Your transaction is waiting for you to confirm",nsfFail:"You have insufficient funds for this transaction",txUnderpriced:"The gas price for your transaction is too low, try a higher gas price",txRepeat:"This could be a repeat transaction",txAwaitingApproval:"You have a previous transaction waiting for you to confirm",txConfirmReminder:"Please confirm your transaction to continue",txSendFail:"You rejected the transaction",txSent:"Your transaction has been sent to the network",txStallPending:"Your transaction has stalled before it was sent, please try again",txStuck:"Your transaction is stuck due to a nonce gap",txPool:"Your transaction has started",txStallConfirmed:"Your transaction has stalled and hasn't been confirmed",txSpeedUp:"Your transaction has been sped up",txCancel:"Your transaction is being canceled",txFailed:"Your transaction has failed",txConfirmed:"Your transaction has succeeded",txError:"Oops something went wrong, please try again",txReplaceError:"There was an error replacing your transaction, please try again"},watched:{txPool:"Your account is {verb} {formattedValue} {asset} {preposition} {counterpartyShortened}",txSpeedUp:"Transaction for {formattedValue} {asset} {preposition} {counterpartyShortened} has been sped up",txCancel:"Transaction for {formattedValue} {asset} {preposition} {counterpartyShortened} has been canceled",txConfirmed:"Your account successfully {verb} {formattedValue} {asset} {preposition} {counterpartyShortened}",txFailed:"Your account failed to {verb} {formattedValue} {asset} {preposition} {counterpartyShortened}",txStuck:"Your transaction is stuck due to a nonce gap"},time:{minutes:"min",seconds:"sec"}},he={connect:T5,modals:M5,accountCenter:P5,notify:j5};function R5(e){if(e){const{en:t}=e,n=L4(he,t||{});rl("en",n),Object.keys(e).filter(i=>i!=="en").forEach(i=>{const o=e[i];o&&rl(i,o)})}else rl("en",he);L3({fallbackLocale:"en",initialLocale:B3()})}var I5=` + + + +`;function N5(e){st(e,"svelte-1ubf722",".close-button.svelte-1ubf722.svelte-1ubf722{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;height:2rem;width:2rem;border-radius:2rem;cursor:pointer;color:var(--onboard-close-button-color, inherit)}.close-button.svelte-1ubf722.svelte-1ubf722:hover::before{opacity:0.2}.close-button.svelte-1ubf722:hover .svg-box.svelte-1ubf722{opacity:1}.close-button.svelte-1ubf722.svelte-1ubf722::before{content:'';position:absolute;height:inherit;width:inherit;opacity:0.1;background:currentColor;transition:300ms ease-in-out opacity}.svg-box.svelte-1ubf722.svelte-1ubf722{position:absolute;height:1.5rem;width:1.5rem;opacity:0.6;transition:300ms ease-in-out opacity}")}function D5(e){let t,n;return{c(){t=B("div"),n=B("div"),P(n,"class","svg-box svelte-1ubf722"),P(t,"class","close-button svelte-1ubf722")},m(r,i){G(r,t,i),j(t,n),n.innerHTML=I5},p:z,i:z,o:z,d(r){r&&U(t)}}}class Cy extends lt{constructor(t){super(),at(this,t,null,D5,ot,{},N5)}}function ky(e){const t=e-1;return t*t*t+1}function aC(e){return Math.pow(e-1,3)*(1-e)+1}function Ql(e,{delay:t=0,duration:n=400,easing:r=Ys}={}){const i=+getComputedStyle(e).opacity;return{delay:t,duration:n,easing:r,css:o=>`opacity: ${o*i}`}}function lC(e,{delay:t=0,duration:n=400,easing:r=ky,x:i=0,y:o=0,opacity:s=0}={}){const a=getComputedStyle(e),c=+a.opacity,p=a.transform==="none"?"":a.transform,g=c*(1-s),[l,d]=Mm(i),[h,u]=Mm(o);return{delay:t,duration:n,easing:r,css:(f,b)=>` + transform: ${p} translate(${(1-f)*l}${d}, ${(1-f)*h}${u}); + opacity: ${c-g*b}`}}function B5(e,{delay:t=0,duration:n=400,easing:r=ky,axis:i="y"}={}){const o=getComputedStyle(e),s=+o.opacity,a=i==="y"?"height":"width",c=parseFloat(o[a]),p=i==="y"?["top","bottom"]:["left","right"],g=p.map(m=>`${m[0].toUpperCase()}${m.slice(1)}`),l=parseFloat(o[`padding${g[0]}`]),d=parseFloat(o[`padding${g[1]}`]),h=parseFloat(o[`margin${g[0]}`]),u=parseFloat(o[`margin${g[1]}`]),f=parseFloat(o[`border${g[0]}Width`]),b=parseFloat(o[`border${g[1]}Width`]);return{delay:t,duration:n,easing:r,css:m=>`overflow: hidden;opacity: ${Math.min(m*20,1)*s};${a}: ${m*c}px;padding-${p[0]}: ${m*l}px;padding-${p[1]}: ${m*d}px;margin-${p[0]}: ${m*h}px;margin-${p[1]}: ${m*u}px;border-${p[0]}-width: ${m*f}px;border-${p[1]}-width: ${m*b}px;`}}function H5(e){st(e,"svelte-7ee2g7",`section.svelte-7ee2g7{top:0;left:0;pointer-events:none;z-index:var(--onboard-modal-z-index, var(--modal-z-index))}.background.svelte-7ee2g7{background:var(--onboard-modal-backdrop, var(--modal-backdrop));pointer-events:all}.full-screen-background.svelte-7ee2g7{width:100vw;height:100vh;height:100dvh}.max-height.svelte-7ee2g7{max-height:calc(100vh - 2rem)}.modal-position.svelte-7ee2g7{top:var(--onboard-modal-top, var(--modal-top));bottom:var(--onboard-modal-bottom, var(--modal-bottom));left:var(--onboard-modal-left, var(--modal-left));right:var(--onboard-modal-right, var(--modal-right))}.modal-overflow.svelte-7ee2g7{overflow:hidden}.modal-styling.svelte-7ee2g7{--border-radius:var( + --onboard-modal-border-radius, + var(--w3o-border-radius, 1rem) + );border-radius:var(--border-radius) var(--border-radius) 0 0;box-shadow:var(--onboard-modal-box-shadow, var(--box-shadow-0));max-width:100vw}.modal.svelte-7ee2g7{overflow-y:auto;background:var(--onboard-modal-background, white);color:var(--onboard-modal-color, initial)}.width-100.svelte-7ee2g7{width:100%}.modal-container-mobile.svelte-7ee2g7{bottom:0}@media all and (min-width: 768px){.modal-styling.svelte-7ee2g7{border-radius:var(--border-radius)}.modal-container-mobile.svelte-7ee2g7{bottom:unset;margin:1rem}.width-100.svelte-7ee2g7{width:unset}}`)}function F5(e){let t,n,r,i,o,s,a,c,p,g;const l=e[3].default,d=Sp(l,e,e[2],null);return{c(){t=B("section"),n=B("div"),r=B("div"),i=B("div"),o=B("div"),s=B("div"),d&&d.c(),P(s,"class","modal relative svelte-7ee2g7"),P(o,"class","modal-overflow modal-styling relative flex justify-center svelte-7ee2g7"),P(o,"style",`${e[1]?"max-width: 100%;":""}`),P(i,"class","flex relative max-height svelte-7ee2g7"),ee(i,"width-100",e[1]),P(r,"class","modal-container-mobile modal-position flex svelte-7ee2g7"),ee(r,"absolute",!e[1]),ee(r,"width-100",e[1]),P(n,"class","background flex items-center justify-center relative svelte-7ee2g7"),ee(n,"full-screen-background",!e[1]),P(t,"class","svelte-7ee2g7"),ee(t,"fixed",!e[1])},m(h,u){G(h,t,u),j(t,n),j(n,r),j(r,i),j(i,o),j(o,s),d&&d.m(s,null),c=!0,p||(g=[Wt(i,"click",a6(e[4])),Wt(n,"click",function(){Ur(e[0])&&e[0].apply(this,arguments)})],p=!0)},p(h,[u]){e=h,d&&d.p&&(!c||u&4)&&xp(d,l,e,e[2],c?Ep(l,e[2],u,null):$p(e[2]),null)},i(h){c||(H(d,h),jt(()=>{c&&(a||(a=Pm(t,Ql,{},!0)),a.run(1))}),c=!0)},o(h){V(d,h),a||(a=Pm(t,Ql,{},!1)),a.run(0),c=!1},d(h){h&&U(t),d&&d.d(h),h&&a&&a.end(),p=!1,Vn(g)}}}function z5(e,t,n){let{$$slots:r={},$$scope:i}=t;const o=!!Tt.containerElements.connectModal,s=document.documentElement;h6(()=>{o||(s.style.position="sticky",s.style.overflow="hidden")}),ty(()=>{o||(s.style.position="",s.style.removeProperty("overflow"))});let{close:a}=t;function c(p){m6.call(this,e,p)}return e.$$set=p=>{"close"in p&&n(0,a=p.close),"$$scope"in p&&n(2,i=p.$$scope)},[a,o,i,r,c]}class Fp extends lt{constructor(t){super(),at(this,t,z5,F5,ot,{close:0},H5)}}function U5(e){st(e,"svelte-tz7ru1",".container.svelte-tz7ru1{padding:var(--onboard-spacing-4, var(--spacing-4));font-size:var(--onboard-font-size-6, var(--font-size-6));line-height:24px}input.svelte-tz7ru1{height:1rem;width:1rem;margin-right:0.5rem}")}function W5(e){let t,n,r,i,o,s=e[1]("connect.selectingWallet.agreement.agree")+"",a,c,p=" ",g,l,d,h,u,f=e[3]&&V5(e),b=e[4]&&G5(e);return{c(){t=B("div"),n=B("label"),r=B("input"),i=ie(),o=B("span"),a=ye(s),c=ie(),g=ye(p),l=ie(),f&&f.c(),d=ie(),b&&b.c(),P(r,"class"," svelte-tz7ru1"),P(r,"type","checkbox"),P(n,"class","flex"),P(t,"class","container flex items-center svelte-tz7ru1")},m(m,v){G(m,t,v),j(t,n),j(n,r),r.checked=e[0],j(n,i),j(n,o),j(o,a),j(o,c),j(o,g),j(o,l),f&&f.m(o,null),j(o,d),b&&b.m(o,null),h||(u=Wt(r,"change",e[6]),h=!0)},p(m,v){v&1&&(r.checked=m[0]),v&2&&s!==(s=m[1]("connect.selectingWallet.agreement.agree")+"")&&Oe(a,s),m[3]&&f.p(m,v),m[4]&&b.p(m,v)},d(m){m&&U(t),f&&f.d(),b&&b.d(),h=!1,u()}}}function V5(e){let t,n=e[1]("connect.selectingWallet.agreement.terms")+"",r,i=e[4]?" "+e[1]("connect.selectingWallet.agreement.and")+" ":".",o;return{c(){t=B("a"),r=ye(n),o=ye(i),P(t,"href",e[3]),P(t,"target","_blank")},m(s,a){G(s,t,a),j(t,r),G(s,o,a)},p(s,a){a&2&&n!==(n=s[1]("connect.selectingWallet.agreement.terms")+"")&&Oe(r,n),a&2&&i!==(i=s[4]?" "+s[1]("connect.selectingWallet.agreement.and")+" ":".")&&Oe(o,i)},d(s){s&&U(t),s&&U(o)}}}function G5(e){let t,n=e[1]("connect.selectingWallet.agreement.privacy")+"",r,i;return{c(){t=B("a"),r=ye(n),i=ye("."),P(t,"href",e[4]),P(t,"target","_blank")},m(o,s){G(o,t,s),j(t,r),G(o,i,s)},p(o,s){s&2&&n!==(n=o[1]("connect.selectingWallet.agreement.privacy")+"")&&Oe(r,n)},d(o){o&&U(t),o&&U(i)}}}function q5(e){let t,n=e[5]&&W5(e);return{c(){n&&n.c(),t=je()},m(r,i){n&&n.m(r,i),G(r,t,i)},p(r,[i]){r[5]&&n.p(r,i)},i:z,o:z,d(r){n&&n.d(r),r&&U(t)}}}function Z5(e,t,n){let r,i;Ge(e,fr,b=>n(1,i=b));let{agreed:o}=t;const{terms:s,privacy:a,version:c}=JSON.parse(_u(zn.TERMS_AGREEMENT)||"{}"),p={termsUrl:"",privacyUrl:"",version:""},g=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));Ge(e,g,b=>n(7,r=b));const{termsUrl:l,privacyUrl:d,version:h}=r&&r.agreement||p,u=!!(l&&!s||d&&!a||h&&h!==c);o=!u;function f(){o=this.checked,n(0,o)}return e.$$set=b=>{"agreed"in b&&n(0,o=b.agreed)},e.$$.update=()=>{e.$$.dirty&1&&(o?wu(zn.TERMS_AGREEMENT,JSON.stringify({version:h,terms:!!l,privacy:!!d})):o===!1&&Tv(zn.TERMS_AGREEMENT))},[o,i,g,l,d,u,f]}class Q5 extends lt{constructor(t){super(),at(this,t,Z5,q5,ot,{agreed:0},U5)}}function X5(e){st(e,"svelte-2btye1",".icon.svelte-2btye1{color:var(--onboard-white, var(--white));border-radius:50px;bottom:-0.25rem;right:-0.25rem}.yellow.svelte-2btye1{background:var(--onboard-warning-500, var(--warning-500))}")}function Y5(e){let t,n,r;return{c(){t=B("div"),P(t,"class",n=Tm(`${e[2]} icon flex absolute`)+" svelte-2btye1"),P(t,"style",r=`width: ${e[0]}px; height: ${e[0]}px; padding: ${e[0]/6}px;`),ee(t,"yellow",e[1]==="yellow")},m(i,o){G(i,t,o),t.innerHTML=U4},p(i,[o]){o&4&&n!==(n=Tm(`${i[2]} icon flex absolute`)+" svelte-2btye1")&&P(t,"class",n),o&1&&r!==(r=`width: ${i[0]}px; height: ${i[0]}px; padding: ${i[0]/6}px;`)&&P(t,"style",r),o&6&&ee(t,"yellow",i[1]==="yellow")},i:z,o:z,d(i){i&&U(t)}}}function K5(e,t,n){let{size:r}=t,{color:i="yellow"}=t,{class:o="test"}=t;return e.$$set=s=>{"size"in s&&n(0,r=s.size),"color"in s&&n(1,i=s.color),"class"in s&&n(2,o=s.class)},[r,i,o]}class J5 extends lt{constructor(t){super(),at(this,t,K5,Y5,ot,{size:0,color:1,class:2},X5)}}function e7(e){st(e,"svelte-1bikw7k",".icon.svelte-1bikw7k{color:var(--onboard-white, var(--white));border-radius:50px}.green.svelte-1bikw7k{background:var(--onboard-success-600, var(--success-600))}.blue.svelte-1bikw7k{background:var(--onboard-primary-1, var(--primary-1))}")}function t7(e){let t,n;return{c(){t=B("div"),P(t,"class","icon flex svelte-1bikw7k"),P(t,"style",n=`width: ${e[0]}px; height: ${e[0]}px; padding: ${e[0]/5}px;`),ee(t,"green",e[1]==="green"),ee(t,"blue",e[1]==="blue")},m(r,i){G(r,t,i),t.innerHTML=Av},p(r,[i]){i&1&&n!==(n=`width: ${r[0]}px; height: ${r[0]}px; padding: ${r[0]/5}px;`)&&P(t,"style",n),i&2&&ee(t,"green",r[1]==="green"),i&2&&ee(t,"blue",r[1]==="blue")},i:z,o:z,d(r){r&&U(t)}}}function n7(e,t,n){let{size:r}=t,{color:i="green"}=t;return e.$$set=o=>{"size"in o&&n(0,r=o.size),"color"in o&&n(1,i=o.color)},[r,i]}class Sy extends lt{constructor(t){super(),at(this,t,n7,t7,ot,{size:0,color:1},e7)}}function r7(e){st(e,"svelte-1le5672",".loading-container.svelte-1le5672.svelte-1le5672{font-family:inherit;font-size:inherit;color:inherit}span.svelte-1le5672.svelte-1le5672{font-family:inherit;font-size:0.889em;margin-top:1rem}.loading.svelte-1le5672.svelte-1le5672{display:inline-block}.loading.svelte-1le5672 div.svelte-1le5672{font-size:inherit;display:block;position:absolute;border:3px solid;border-radius:50%;animation:svelte-1le5672-bn-loading 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;border-color:currentColor transparent transparent transparent}.loading.svelte-1le5672 .loading-first.svelte-1le5672{animation-delay:-0.45s}.loading.svelte-1le5672 .loading-second.svelte-1le5672{animation-delay:-0.3s}.loading.svelte-1le5672 .loading-third.svelte-1le5672{animation-delay:-0.15s}@keyframes svelte-1le5672-bn-loading{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}")}function Bm(e){let t,n;return{c(){t=B("span"),n=ye(e[0]),P(t,"class","svelte-1le5672")},m(r,i){G(r,t,i),j(t,n)},p(r,i){i&1&&Oe(n,r[0])},d(r){r&&U(t)}}}function i7(e){let t,n,r,i,o,s,a,c,p,g,l,d,h=e[0]&&Bm(e);return{c(){t=B("div"),n=B("div"),r=B("div"),o=ie(),s=B("div"),c=ie(),p=B("div"),d=ie(),h&&h.c(),P(r,"class","loading-first svelte-1le5672"),P(r,"style",i=`height: ${e[1]}; width: ${e[1]};`),P(s,"class","loading-second svelte-1le5672"),P(s,"style",a=`height: ${e[1]}; width: ${e[1]};`),P(p,"class","loading-third svelte-1le5672"),P(p,"style",g=`height: ${e[1]}; width: ${e[1]};`),P(n,"class","loading relative svelte-1le5672"),P(n,"style",l=`height: ${e[1]}; width: ${e[1]};`),P(t,"class","loading-container flex flex-column justify-center items-center absolute svelte-1le5672")},m(u,f){G(u,t,f),j(t,n),j(n,r),j(n,o),j(n,s),j(n,c),j(n,p),j(t,d),h&&h.m(t,null)},p(u,[f]){f&2&&i!==(i=`height: ${u[1]}; width: ${u[1]};`)&&P(r,"style",i),f&2&&a!==(a=`height: ${u[1]}; width: ${u[1]};`)&&P(s,"style",a),f&2&&g!==(g=`height: ${u[1]}; width: ${u[1]};`)&&P(p,"style",g),f&2&&l!==(l=`height: ${u[1]}; width: ${u[1]};`)&&P(n,"style",l),u[0]?h?h.p(u,f):(h=Bm(u),h.c(),h.m(t,null)):h&&(h.d(1),h=null)},i:z,o:z,d(u){u&&U(t),h&&h.d()}}}function o7(e,t,n){let{description:r=""}=t,{size:i="2rem"}=t;return e.$$set=o=>{"description"in o&&n(0,r=o.description),"size"in o&&n(1,i=o.size)},[r,i]}class s7 extends lt{constructor(t){super(),at(this,t,o7,i7,ot,{description:0,size:1},r7)}}function a7(e){st(e,"svelte-i129jl",`.icon.svelte-i129jl{height:100%}.border-custom.svelte-i129jl{border:1px solid var(--border-color)}.border-yellow.svelte-i129jl{border:1px solid var(--onboard-warning-500, var(--warning-500))}.border-gray.svelte-i129jl{border:1px solid var(--onboard-gray-400, var(--gray-400))}.border-green.svelte-i129jl{border:1px solid var(--onboard-success-500, var(--success-500))}.border-dark-green.svelte-i129jl{border:1px solid var(--onboard-success-700, var(--success-700))}.border-blue.svelte-i129jl{border:1px solid + var( + --onboard-wallet-app-icon-border-color, + var(--onboard-primary-300, var(--primary-300)) + )}.border-dark-blue.svelte-i129jl{border:1px solid + var( + --onboard-wallet-app-icon-border-color, + var(--onboard-primary-600, var(--primary-600)) + )}.border-transparent.svelte-i129jl{border:1px solid transparent}.border-black.svelte-i129jl{border:1px solid var(--onboard-gray-600, var(--gray-600))}.background-gray.svelte-i129jl{background:var( + --onboard-wallet-app-icon-background-gray, + var(--onboard-gray-500, var(--gray-500)) + )}.background-light-gray.svelte-i129jl{background:var( + --onboard-wallet-app-icon-background-light-gray, + var(--onboard-gray-100, var(--gray-100)) + )}.background-light-blue.svelte-i129jl{background:var( + --onboard-wallet-app-icon-background-light-blue, + var(--onboard-primary-100, var(--primary-100)) + )}.background-green.svelte-i129jl{background:var( + --onboard-wallet-app-icon-background-green, + var(--onboard-success-100, var(--success-100)) + )}.background-white.svelte-i129jl{background:var( + --onboard-wallet-app-icon-background-white, + var(--onboard-white, var(--white)) + )}.background-transparent.svelte-i129jl{background:var( + --onboard-wallet-app-icon-background-transparent, + transparent + )}@keyframes svelte-i129jl-pulse{from{opacity:0}to{opacity:1}}.placeholder-icon.svelte-i129jl{width:100%;height:100%;background:var(--onboard-gray-100, var(--gray-100));border-radius:32px;animation:svelte-i129jl-pulse infinite 750ms alternate ease-in-out}.spinner-container.svelte-i129jl{color:var(--onboard-primary-300, var(--primary-300))}img.svelte-i129jl{max-width:100%;height:auto}.pending-status-icon{z-index:1;fill:white;box-shadow:0px 2px 12px 0px rgba(0, 0, 0, 0.1)}.status-icon-container.svelte-i129jl{right:-0.25rem;bottom:-0.25rem;position:absolute}`)}const l7=e=>({}),Hm=e=>({});function u7(e){let t,n,r,i={ctx:e,current:null,token:null,hasCatch:!1,pending:m7,then:d7,catch:f7,value:13,blocks:[,,,]};return ui(n=e[1],i),{c(){t=je(),i.block.c()},m(o,s){G(o,t,s),i.block.m(o,i.anchor=s),i.mount=()=>t.parentNode,i.anchor=t,r=!0},p(o,s){e=o,i.ctx=e,s&2&&n!==(n=e[1])&&ui(n,i)||$o(i,e,s)},i(o){r||(H(i.block),r=!0)},o(o){for(let s=0;s<3;s+=1){const a=i.blocks[s];V(a)}r=!1},d(o){o&&U(t),i.block.d(o),i.token=null,i=null}}}function c7(e){let t,n,r;return n=new s7({props:{size:"2rem"}}),{c(){t=B("div"),be(n.$$.fragment),P(t,"class","spinner-container svelte-i129jl")},m(i,o){G(i,t,o),me(n,t,null),r=!0},p:z,i(i){r||(H(n.$$.fragment,i),r=!0)},o(i){V(n.$$.fragment,i),r=!1},d(i){i&&U(t),ge(n)}}}function f7(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function d7(e){let t,n,r,i,o,s;function a(l,d){return d&2&&(n=null),n==null&&(n=!!kp(l[13])),n?h7:p7}let c=a(e,-1),p=c(e),g=e[2]&&e[9]<=tt&&Fm();return{c(){t=B("div"),p.c(),i=ie(),g&&g.c(),o=je(),P(t,"class","icon flex justify-center items-center svelte-i129jl")},m(l,d){G(l,t,d),p.m(t,null),G(l,i,d),g&&g.m(l,d),G(l,o,d),s=!0},p(l,d){c===(c=a(l,d))&&p?p.p(l,d):(p.d(1),p=c(l),p&&(p.c(),p.m(t,null))),l[2]&&l[9]<=tt?g?d&516&&H(g,1):(g=Fm(),g.c(),H(g,1),g.m(o.parentNode,o)):g&&(He(),V(g,1,1,()=>{g=null}),Fe())},i(l){s||(l&&(r||jt(()=>{r=jp(t,Ql,{}),r.start()})),H(g),s=!0)},o(l){V(g),s=!1},d(l){l&&U(t),p.d(),l&&U(i),g&&g.d(l),l&&U(o)}}}function p7(e){let t,n;return{c(){t=B("img"),go(t.src,n=e[13])||P(t,"src",n),P(t,"alt","logo"),P(t,"class","svelte-i129jl")},m(r,i){G(r,t,i)},p(r,i){i&2&&!go(t.src,n=r[13])&&P(t,"src",n)},d(r){r&&U(t)}}}function h7(e){let t,n=e[13]+"",r;return{c(){t=new xo(!1),r=je(),t.a=r},m(i,o){t.m(n,i,o),G(i,r,o)},p(i,o){o&2&&n!==(n=i[13]+"")&&t.p(n)},d(i){i&&U(r),i&&t.d()}}}function Fm(e){let t,n,r;return n=new J5({props:{class:"pending-status-icon",size:20}}),{c(){t=B("div"),be(n.$$.fragment),P(t,"class","status-icon-container svelte-i129jl")},m(i,o){G(i,t,o),me(n,t,null),r=!0},i(i){r||(H(n.$$.fragment,i),r=!0)},o(i){V(n.$$.fragment,i),r=!1},d(i){i&&U(t),ge(n)}}}function m7(e){let t;return{c(){t=B("div"),P(t,"class","placeholder-icon svelte-i129jl")},m(n,r){G(n,t,r)},p:z,i:z,o:z,d(n){n&&U(t)}}}function g7(e){let t,n,r,i,o,s,a,c;jt(e[12]);const p=[c7,u7],g=[];function l(u,f){return u[2]&&u[9]>=tt?0:1}n=l(e),r=g[n]=p[n](e);const d=e[11].status,h=Sp(d,e,e[10],Hm);return{c(){t=B("div"),r.c(),i=ie(),h&&h.c(),P(t,"class","relative svelte-i129jl"),P(t,"style",o=`${e[6]==="custom"?`background-color: ${e[7]}`:""}; padding: ${e[3]-1}px; width: ${e[0]}px; height: ${e[0]}px; border-radius: ${e[8]}px; color: ${e[4]};`),ee(t,"border-custom",e[5]==="custom"),ee(t,"border-yellow",e[5]==="yellow"),ee(t,"border-gray",e[5]==="gray"),ee(t,"border-green",e[5]==="green"),ee(t,"border-dark-green",e[5]==="darkGreen"),ee(t,"border-blue",e[5]==="blue"),ee(t,"border-dark-blue",e[5]==="darkBlue"),ee(t,"border-transparent",e[5]==="transparent"),ee(t,"border-black",e[5]==="black"),ee(t,"background-gray",e[6]==="gray"),ee(t,"background-light-gray",e[6]==="lightGray"),ee(t,"background-light-blue",e[6]==="lightBlue"),ee(t,"background-green",e[6]==="green"),ee(t,"background-white",e[6]==="white"),ee(t,"background-transparent",e[6]==="transparent")},m(u,f){G(u,t,f),g[n].m(t,null),j(t,i),h&&h.m(t,null),s=!0,a||(c=Wt(window,"resize",e[12]),a=!0)},p(u,[f]){let b=n;n=l(u),n===b?g[n].p(u,f):(He(),V(g[b],1,1,()=>{g[b]=null}),Fe(),r=g[n],r?r.p(u,f):(r=g[n]=p[n](u),r.c()),H(r,1),r.m(t,i)),h&&h.p&&(!s||f&1024)&&xp(h,d,u,u[10],s?Ep(d,u[10],f,l7):$p(u[10]),Hm),(!s||f&473&&o!==(o=`${u[6]==="custom"?`background-color: ${u[7]}`:""}; padding: ${u[3]-1}px; width: ${u[0]}px; height: ${u[0]}px; border-radius: ${u[8]}px; color: ${u[4]};`))&&P(t,"style",o),(!s||f&32)&&ee(t,"border-custom",u[5]==="custom"),(!s||f&32)&&ee(t,"border-yellow",u[5]==="yellow"),(!s||f&32)&&ee(t,"border-gray",u[5]==="gray"),(!s||f&32)&&ee(t,"border-green",u[5]==="green"),(!s||f&32)&&ee(t,"border-dark-green",u[5]==="darkGreen"),(!s||f&32)&&ee(t,"border-blue",u[5]==="blue"),(!s||f&32)&&ee(t,"border-dark-blue",u[5]==="darkBlue"),(!s||f&32)&&ee(t,"border-transparent",u[5]==="transparent"),(!s||f&32)&&ee(t,"border-black",u[5]==="black"),(!s||f&64)&&ee(t,"background-gray",u[6]==="gray"),(!s||f&64)&&ee(t,"background-light-gray",u[6]==="lightGray"),(!s||f&64)&&ee(t,"background-light-blue",u[6]==="lightBlue"),(!s||f&64)&&ee(t,"background-green",u[6]==="green"),(!s||f&64)&&ee(t,"background-white",u[6]==="white"),(!s||f&64)&&ee(t,"background-transparent",u[6]==="transparent")},i(u){s||(H(r),H(h,u),s=!0)},o(u){V(r),V(h,u),s=!1},d(u){u&&U(t),g[n].d(),h&&h.d(u),a=!1,c()}}}function v7(e,t,n){let{$$slots:r={},$$scope:i}=t,{size:o}=t,{icon:s}=t,{loading:a=!1}=t,{padding:c=o/6}=t,{color:p="black"}=t,{border:g="transparent"}=t,{background:l="transparent"}=t,{customBackgroundColor:d=""}=t,{radius:h=12}=t,u;function f(){n(9,u=window.innerWidth)}return e.$$set=b=>{"size"in b&&n(0,o=b.size),"icon"in b&&n(1,s=b.icon),"loading"in b&&n(2,a=b.loading),"padding"in b&&n(3,c=b.padding),"color"in b&&n(4,p=b.color),"border"in b&&n(5,g=b.border),"background"in b&&n(6,l=b.background),"customBackgroundColor"in b&&n(7,d=b.customBackgroundColor),"radius"in b&&n(8,h=b.radius),"$$scope"in b&&n(10,i=b.$$scope)},[o,s,a,c,p,g,l,d,h,u,i,r,f]}class Fs extends lt{constructor(t){super(),at(this,t,v7,g7,ot,{size:0,icon:1,loading:2,padding:3,color:4,border:5,background:6,customBackgroundColor:7,radius:8},a7)}}function y7(e){st(e,"svelte-q2gson",".container.svelte-q2gson{gap:1rem;padding:0.75rem;color:var(--onboard-warning-700, var(--warning-700));font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:16px;border:1px solid var(--onboard-warning-400, var(--warning-400));background:var(--onboard-warning-100, var(--warning-100));border-radius:12px}.icon.svelte-q2gson{color:var(--onboard-warning-700, var(--warning-700));width:1rem;height:1rem;flex:0 0 auto}")}function b7(e){let t,n,r,i,o,s;const a=e[1].default,c=Sp(a,e,e[0],null);return{c(){t=B("div"),n=B("div"),c&&c.c(),r=ie(),i=B("div"),P(i,"class","icon svelte-q2gson"),P(t,"class","container flex justify-between svelte-q2gson")},m(p,g){G(p,t,g),j(t,n),c&&c.m(n,null),j(t,r),j(t,i),i.innerHTML=bu,s=!0},p(p,[g]){c&&c.p&&(!s||g&1)&&xp(c,a,p,p[0],s?Ep(a,p[0],g,null):$p(p[0]),null)},i(p){s||(H(c,p),p&&(o||jt(()=>{o=jp(t,B5,{delay:50,duration:500}),o.start()})),s=!0)},o(p){V(c,p),s=!1},d(p){p&&U(t),c&&c.d(p)}}}function _7(e,t,n){let{$$slots:r={},$$scope:i}=t;return e.$$set=o=>{"$$scope"in o&&n(0,i=o.$$scope)},[i,r]}class zp extends lt{constructor(t){super(),at(this,t,_7,b7,ot,{},y7)}}function w7(e){st(e,"svelte-1kfgpsl",`.container.svelte-1kfgpsl{padding:var(--onboard-spacing-4, var(--spacing-4));color:var( + --onboard-connect-accent-text-color, + var(--onboard-gray-700, var(--gray-700)) + )}.connecting-container.svelte-1kfgpsl{padding:var(--onboard-spacing-4, var(--spacing-4));border-radius:var(--onboard-border-radius-1, var(--border-radius-1));background:var(--onboard-success-100, var(--success-100));border:1px solid var(--onboard-success-600, var(--success-600));width:100%}.text.svelte-1kfgpsl{right:var(--onboard-spacing-5, var(--spacing-5))}.tick.svelte-1kfgpsl{color:var(--onboard-success-700, var(--success-700))}`)}function C7(e){let t,n,r,i,o,s,a,c,p,g,l,d,h,u=e[2]("connect.connectedWallet.mainText",{default:he.connect.connectedWallet.mainText,values:{wallet:e[0].label}})+"",f,b,m,v;return o=new Fs({props:{size:40,padding:8,background:e[1]&&e[1].icon?"lightBlue":"lightGray",border:"darkGreen",icon:e[1]&&e[1].icon||Ns}}),c=new Sy({props:{size:17}}),l=new Fs({props:{size:40,padding:8,border:"darkGreen",background:"white",icon:e[0].icon}}),{c(){t=B("div"),n=B("div"),r=B("div"),i=B("div"),be(o.$$.fragment),s=ie(),a=B("div"),be(c.$$.fragment),p=ie(),g=B("div"),be(l.$$.fragment),d=ie(),h=B("div"),f=ye(u),b=ie(),m=B("div"),P(a,"class","relative"),Li(a,"right","1rem"),Li(a,"top","4px"),Li(a,"z-index","1"),P(g,"class","relative"),Li(g,"right","1.75rem"),P(i,"class","flex justify-center items-end relative"),P(h,"class","text relative svelte-1kfgpsl"),P(r,"class","flex items-center"),P(m,"class","tick flex items-center svelte-1kfgpsl"),Li(m,"width","24px"),P(n,"class","connecting-container flex justify-between items-center svelte-1kfgpsl"),P(t,"class","container svelte-1kfgpsl")},m(y,_){G(y,t,_),j(t,n),j(n,r),j(r,i),me(o,i,null),j(i,s),j(i,a),me(c,a,null),j(i,p),j(i,g),me(l,g,null),j(r,d),j(r,h),j(h,f),j(n,b),j(n,m),m.innerHTML=Av,v=!0},p(y,[_]){const k={};_&2&&(k.background=y[1]&&y[1].icon?"lightBlue":"lightGray"),_&2&&(k.icon=y[1]&&y[1].icon||Ns),o.$set(k);const x={};_&1&&(x.icon=y[0].icon),l.$set(x),(!v||_&5)&&u!==(u=y[2]("connect.connectedWallet.mainText",{default:he.connect.connectedWallet.mainText,values:{wallet:y[0].label}})+"")&&Oe(f,u)},i(y){v||(H(o.$$.fragment,y),H(c.$$.fragment,y),H(l.$$.fragment,y),v=!0)},o(y){V(o.$$.fragment,y),V(c.$$.fragment,y),V(l.$$.fragment,y),v=!1},d(y){y&&U(t),ge(o),ge(c),ge(l)}}}function k7(e,t,n){let r,i;Ge(e,fr,a=>n(2,i=a));let{selectedWallet:o}=t;const s=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));return Ge(e,s,a=>n(1,r=a)),e.$$set=a=>{"selectedWallet"in a&&n(0,o=a.selectedWallet)},[o,r,i,s]}class S7 extends lt{constructor(t){super(),at(this,t,k7,C7,ot,{selectedWallet:0},w7)}}function E7(e){st(e,"svelte-j1ywa3",`.container.svelte-j1ywa3{padding:var(--onboard-spacing-4, var(--spacing-4))}.connecting-container.svelte-j1ywa3{width:100%;padding:var(--onboard-spacing-4, var(--spacing-4));transition:background-color 100ms ease-in-out, + border-color 100ms ease-in-out;border-radius:24px;background:var(--onboard-primary-100, var(--primary-100));border:1px solid;border-color:var(--onboard-primary-300, var(--primary-300));color:var(--onboard-gray-600, var(--gray-600))}.connecting-container.warning.svelte-j1ywa3{background:var(--onboard-warning-100, var(--warning-100));border-color:var(--onboard-warning-400, var(--warning-400))}.text.svelte-j1ywa3{line-height:16px;margin-bottom:var(--onboard-spacing-5, var(--spacing-5))}.text.text-rejected.svelte-j1ywa3{line-height:24px;margin-bottom:0}.subtext.svelte-j1ywa3{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:16px}.rejected-cta.svelte-j1ywa3{color:var(--onboard-primary-500, var(--primary-500))}.onboard-button-primary.svelte-j1ywa3{bottom:var(--onboard-spacing-3, var(--spacing-3))}.ml.svelte-j1ywa3{margin-left:var(--onboard-spacing-4, var(--spacing-4))}@media all and (max-width: 520px){.connecting-container.svelte-j1ywa3{border-radius:var(--onboard-border-radius-4, var(--border-radius-4))}.container.svelte-j1ywa3{padding-bottom:0}.wallet-badges.svelte-j1ywa3{display:none}.connecting-wallet-info.svelte-j1ywa3{margin:0}.onboard-button-primary.svelte-j1ywa3{display:none}}`)}function x7(e){let t,n=e[7](`connect.connectingWallet.${e[5]?"previousConnection":"paragraph"}`,{default:he.connect.connectingWallet.paragraph,values:{wallet:e[1].label}})+"",r;return{c(){t=B("div"),r=ye(n),P(t,"class","subtext svelte-j1ywa3")},m(i,o){G(i,t,o),j(t,r)},p(i,o){o&162&&n!==(n=i[7](`connect.connectingWallet.${i[5]?"previousConnection":"paragraph"}`,{default:he.connect.connectingWallet.paragraph,values:{wallet:i[1].label}})+"")&&Oe(r,n)},d(i){i&&U(t)}}}function $7(e){let t,n=e[7]("connect.connectingWallet.rejectedCTA",{default:he.connect.connectingWallet.rejectedCTA,values:{wallet:e[1].label}})+"",r,i,o;return{c(){t=B("div"),r=ye(n),P(t,"class","rejected-cta pointer subtext svelte-j1ywa3")},m(s,a){G(s,t,a),j(t,r),i||(o=Wt(t,"click",function(){Ur(e[0])&&e[0].apply(this,arguments)}),i=!0)},p(s,a){e=s,a&130&&n!==(n=e[7]("connect.connectingWallet.rejectedCTA",{default:he.connect.connectingWallet.rejectedCTA,values:{wallet:e[1].label}})+"")&&Oe(r,n)},d(s){s&&U(t),i=!1,o()}}}function O7(e){let t,n,r,i,o,s,a,c,p,g,l,d=e[7](`connect.connectingWallet.${e[4]?"rejectedText":"mainText"}`,{default:e[4]?he.connect.connectingWallet.rejectedText:he.connect.connectingWallet.mainText,values:{wallet:e[1].label}})+"",h,u,f,b,m=e[7]("connect.connectingWallet.primaryButton",{default:he.connect.connectingWallet.primaryButton})+"",v,y,_,k;o=new Fs({props:{size:40,padding:8,icon:e[6]&&e[6].icon||Ns,border:e[4]||e[5]?"yellow":"blue",background:"lightGray"}}),c=new Fs({props:{size:40,padding:8,border:e[4]||e[5]?"yellow":"blue",background:"white",icon:e[1].icon}});function x(C,E){return C[4]?$7:x7}let S=x(e),w=S(e);return{c(){t=B("div"),n=B("div"),r=B("div"),i=B("div"),be(o.$$.fragment),s=ie(),a=B("div"),be(c.$$.fragment),p=ie(),g=B("div"),l=B("div"),h=ye(d),u=ie(),w.c(),f=ie(),b=B("button"),v=ye(m),P(a,"class","relative"),Li(a,"right","0.5rem"),P(i,"class","flex justify-center relative wallet-badges svelte-j1ywa3"),P(l,"class","text svelte-j1ywa3"),ee(l,"text-rejected",e[4]),P(g,"class","flex flex-column justify-center ml connecting-wallet-info svelte-j1ywa3"),P(r,"class","flex"),P(n,"class","connecting-container flex justify-between items-center svelte-j1ywa3"),ee(n,"warning",e[4]||e[5]),P(b,"class","onboard-button-primary absolute svelte-j1ywa3"),P(t,"class","container flex flex-column items-center svelte-j1ywa3")},m(C,E){G(C,t,E),j(t,n),j(n,r),j(r,i),me(o,i,null),j(i,s),j(i,a),me(c,a,null),j(r,p),j(r,g),j(g,l),j(l,h),j(g,u),w.m(g,null),j(t,f),j(t,b),j(b,v),y=!0,_||(k=Wt(b,"click",e[9]),_=!0)},p(C,[E]){const A={};E&64&&(A.icon=C[6]&&C[6].icon||Ns),E&48&&(A.border=C[4]||C[5]?"yellow":"blue"),o.$set(A);const N={};E&48&&(N.border=C[4]||C[5]?"yellow":"blue"),E&2&&(N.icon=C[1].icon),c.$set(N),(!y||E&146)&&d!==(d=C[7](`connect.connectingWallet.${C[4]?"rejectedText":"mainText"}`,{default:C[4]?he.connect.connectingWallet.rejectedText:he.connect.connectingWallet.mainText,values:{wallet:C[1].label}})+"")&&Oe(h,d),(!y||E&16)&&ee(l,"text-rejected",C[4]),S===(S=x(C))&&w?w.p(C,E):(w.d(1),w=S(C),w&&(w.c(),w.m(g,null))),(!y||E&48)&&ee(n,"warning",C[4]||C[5]),(!y||E&128)&&m!==(m=C[7]("connect.connectingWallet.primaryButton",{default:he.connect.connectingWallet.primaryButton})+"")&&Oe(v,m)},i(C){y||(H(o.$$.fragment,C),H(c.$$.fragment,C),y=!0)},o(C){V(o.$$.fragment,C),V(c.$$.fragment,C),y=!1},d(C){C&&U(t),ge(o),ge(c),w.d(),_=!1,k()}}}function A7(e,t,n){let r,i;Ge(e,fr,h=>n(7,i=h));let{connectWallet:o}=t,{selectedWallet:s}=t,{deselectWallet:a}=t,{setStep:c}=t,{connectionRejected:p}=t,{previousConnectionRequest:g}=t;const l=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));Ge(e,l,h=>n(6,r=h));const d=()=>{a(s.label),c("selectingWallet")};return e.$$set=h=>{"connectWallet"in h&&n(0,o=h.connectWallet),"selectedWallet"in h&&n(1,s=h.selectedWallet),"deselectWallet"in h&&n(2,a=h.deselectWallet),"setStep"in h&&n(3,c=h.setStep),"connectionRejected"in h&&n(4,p=h.connectionRejected),"previousConnectionRequest"in h&&n(5,g=h.previousConnectionRequest)},[o,s,a,c,p,g,r,i,l,d]}class L7 extends lt{constructor(t){super(),at(this,t,A7,O7,ot,{connectWallet:0,selectedWallet:1,deselectWallet:2,setStep:3,connectionRejected:4,previousConnectionRequest:5},E7)}}function T7(e){st(e,"svelte-1uy2ffh",".outer-container.svelte-1uy2ffh{padding:var(--onboard-spacing-4, var(--spacing-4))}.link.svelte-1uy2ffh{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:16px;color:var(--onboard-primary-500, var(--primary-500));text-decoration:none}")}function zm(e,t,n){const r=e.slice();return r[3]=t[n].name,r[4]=t[n].url,r[6]=n,r}function M7(e){let t=e[1]("connect.selectingWallet.installWallet",{default:he.connect.selectingWallet.installWallet,values:{app:e[0].name||"this app"}})+"",n;return{c(){n=ye(t)},m(r,i){G(r,n,i)},p(r,i){i&3&&t!==(t=r[1]("connect.selectingWallet.installWallet",{default:he.connect.selectingWallet.installWallet,values:{app:r[0].name||"this app"}})+"")&&Oe(n,t)},d(r){r&&U(n)}}}function P7(e){let t=e[1]("connect.selectingWallet.recommendedWalletsPart1",{default:he.connect.selectingWallet.recommendedWalletsPart1,values:{app:e[0].name||"This app"}})+"",n,r,i,o=e[1]("connect.selectingWallet.recommendedWalletsPart2",{default:he.connect.selectingWallet.recommendedWalletsPart2})+"",s,a=e[0].recommendedInjectedWallets,c=[];for(let p=0;pn(1,i=s));const o=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));return Ge(e,o,s=>n(0,r=s)),[r,i,o]}class N7 extends lt{constructor(t){super(),at(this,t,I7,R7,ot,{},T7)}}function D7(e){st(e,"svelte-1ct6vh0","button.svelte-1ct6vh0:disabled{opacity:0.5}button.wallet-button-styling.svelte-1ct6vh0{position:relative;align-items:flex-start;flex:1;padding:0;background:none;color:var(--onboard-wallet-button-color, inherit)}.wallet-button-container.svelte-1ct6vh0{display:flex}.wallet-button-container-inner.svelte-1ct6vh0{position:relative;display:flex;flex-flow:column;align-items:center;gap:0.5rem;padding:0.75rem;width:5rem}.name.svelte-1ct6vh0{font-size:var(--onboard-font-size-7, var(--font-size-7));line-height:1rem;text-overflow:ellipsis;max-width:5rem;max-height:2rem;overflow:hidden}.status-icon.svelte-1ct6vh0{position:absolute;top:3.5rem;left:3.5rem}@media screen and (min-width: 768px){button.wallet-button-styling.svelte-1ct6vh0{transition:background-color 250ms ease-in-out;background:var(--onboard-wallet-button-background, none);border:1px solid transparent;border-color:var(--onboard-wallet-button-border-color, var(--border-color));border-radius:var(--onboard-wallet-button-border-radius, var(--border-radius-1))}button.wallet-button-styling.svelte-1ct6vh0:hover{background:var(--onboard-wallet-button-background-hover, var(--foreground-color));color:var(--onboard-wallet-button-color-hover)}.wallet-button-container-inner.svelte-1ct6vh0{flex:1;flex-flow:row nowrap;gap:1rem;padding:1rem}button.connected.svelte-1ct6vh0{border-color:var(--onboard-success-500, var(--success-500))}.name.svelte-1ct6vh0{font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:1.25rem;text-align:initial;max-width:inherit;max-height:3rem}.status-icon.svelte-1ct6vh0{top:0;bottom:0;left:auto;right:1rem;margin:auto;height:20px}}")}function Wm(e){let t,n,r;return n=new Sy({props:{size:20}}),{c(){t=B("div"),be(n.$$.fragment),P(t,"class","status-icon svelte-1ct6vh0")},m(i,o){G(i,t,o),me(n,t,null),r=!0},i(i){r||(H(n.$$.fragment,i),r=!0)},o(i){V(n.$$.fragment,i),r=!1},d(i){i&&U(t),ge(n)}}}function B7(e){let t,n,r,i,o,s,a,c,p,g,l,d;jt(e[7]),i=new Fs({props:{size:e[6]>=tt?48:56,icon:e[0],loading:e[4],border:e[3]?"green":"custom",background:"transparent"}});let h=e[3]&&Wm();return{c(){t=B("div"),n=B("button"),r=B("div"),be(i.$$.fragment),o=ie(),s=B("div"),a=ye(e[1]),c=ie(),h&&h.c(),P(s,"class","name svelte-1ct6vh0"),P(r,"class","wallet-button-container-inner svelte-1ct6vh0"),P(n,"class","wallet-button-styling svelte-1ct6vh0"),n.disabled=e[5],ee(n,"connected",e[3]),P(t,"class","wallet-button-container svelte-1ct6vh0")},m(u,f){G(u,t,f),j(t,n),j(n,r),me(i,r,null),j(r,o),j(r,s),j(s,a),j(r,c),h&&h.m(r,null),g=!0,l||(d=[Wt(window,"resize",e[7]),Wt(n,"click",function(){Ur(e[2])&&e[2].apply(this,arguments)})],l=!0)},p(u,[f]){e=u;const b={};f&64&&(b.size=e[6]>=tt?48:56),f&1&&(b.icon=e[0]),f&16&&(b.loading=e[4]),f&8&&(b.border=e[3]?"green":"custom"),i.$set(b),(!g||f&2)&&Oe(a,e[1]),e[3]?h?f&8&&H(h,1):(h=Wm(),h.c(),H(h,1),h.m(r,null)):h&&(He(),V(h,1,1,()=>{h=null}),Fe()),(!g||f&32)&&(n.disabled=e[5]),(!g||f&8)&&ee(n,"connected",e[3])},i(u){g||(H(i.$$.fragment,u),H(h),u&&(p||jt(()=>{p=jp(n,Ql,{}),p.start()})),g=!0)},o(u){V(i.$$.fragment,u),V(h),g=!1},d(u){u&&U(t),ge(i),h&&h.d(),l=!1,Vn(d)}}}function H7(e,t,n){let{icon:r}=t,{label:i}=t,{onClick:o}=t,{connected:s}=t,{connecting:a}=t,{disabled:c}=t,p;function g(){n(6,p=window.innerWidth)}return e.$$set=l=>{"icon"in l&&n(0,r=l.icon),"label"in l&&n(1,i=l.label),"onClick"in l&&n(2,o=l.onClick),"connected"in l&&n(3,s=l.connected),"connecting"in l&&n(4,a=l.connecting),"disabled"in l&&n(5,c=l.disabled)},[r,i,o,s,a,c,p,g]}class F7 extends lt{constructor(t){super(),at(this,t,H7,B7,ot,{icon:0,label:1,onClick:2,connected:3,connecting:4,disabled:5},D7)}}function z7(e){st(e,"svelte-kpc6js",".wallets-container.svelte-kpc6js{display:flex;gap:0.5rem;overflow-x:scroll;overflow-y:hidden;padding:0.75rem 0.5rem;border-bottom:1px solid var(--border-color);-ms-overflow-style:none;scrollbar-width:none}.wallets-container.svelte-kpc6js::-webkit-scrollbar{display:none}.warning-container.svelte-kpc6js{margin:1rem 1rem 0}.notice-container.svelte-kpc6js{flex:0 0 100%;margin-top:0.75rem}@media all and (min-width: 768px){.wallets-container.svelte-kpc6js{display:grid;grid-template-columns:repeat(var(--onboard-wallet-columns, 2), 1fr);padding:1rem;border:none}.notice-container.svelte-kpc6js{grid-column:span 2;margin:0}}")}function Vm(e,t,n){const r=e.slice();return r[10]=t[n],r}function Gm(e){let t,n,r;return n=new zp({props:{$$slots:{default:[U7]},$$scope:{ctx:e}}}),{c(){t=B("div"),be(n.$$.fragment),P(t,"class","warning-container svelte-kpc6js")},m(i,o){G(i,t,o),me(n,t,null),r=!0},p(i,o){const s={};o&8200&&(s.$$scope={dirty:o,ctx:i}),n.$set(s)},i(i){r||(H(n.$$.fragment,i),r=!0)},o(i){V(n.$$.fragment,i),r=!1},d(i){i&&U(t),ge(n)}}}function U7(e){let t,n;return{c(){t=new xo(!1),n=je(),t.a=n},m(r,i){t.m(e[3],r,i),G(r,n,i)},p(r,i){i&8&&t.p(r[3])},d(r){r&&U(n),r&&t.d()}}}function qm(e){let t,n;function r(){return e[9](e[10])}return t=new F7({props:{connected:e[7](e[10].label),connecting:e[2]===e[10].label,label:e[10].label,icon:e[10].icon,onClick:r,disabled:e[4]<=tt&&e[2]&&e[2]!==e[10].label}}),{c(){be(t.$$.fragment)},m(i,o){me(t,i,o),n=!0},p(i,o){e=i;const s={};o&1&&(s.connected=e[7](e[10].label)),o&5&&(s.connecting=e[2]===e[10].label),o&1&&(s.label=e[10].label),o&1&&(s.icon=e[10].icon),o&3&&(s.onClick=r),o&21&&(s.disabled=e[4]<=tt&&e[2]&&e[2]!==e[10].label),t.$set(s)},i(i){n||(H(t.$$.fragment,i),n=!0)},o(i){V(t.$$.fragment,i),n=!1},d(i){ge(t,i)}}}function W7(e){let t,n,r;return n=new zp({props:{$$slots:{default:[V7]},$$scope:{ctx:e}}}),{c(){t=B("div"),be(n.$$.fragment),P(t,"class","notice-container svelte-kpc6js")},m(i,o){G(i,t,o),me(n,t,null),r=!0},p(i,o){const s={};o&8224&&(s.$$scope={dirty:o,ctx:i}),n.$set(s)},i(i){r||(H(n.$$.fragment,i),r=!0)},o(i){V(n.$$.fragment,i),r=!1},d(i){i&&U(t),ge(n)}}}function V7(e){let t,n=e[5]("connect.selectingWallet.whyDontISeeMyWallet",{default:he.connect.selectingWallet.whyDontISeeMyWallet})+"",r,i,o,s=e[5]("connect.selectingWallet.learnMore",{default:he.connect.selectingWallet.learnMore})+"",a;return{c(){t=B("div"),r=ye(n),i=ie(),o=B("a"),a=ye(s),P(o,"class","link pointer"),P(o,"href",e[6].wheresMyWalletLink||q7),P(o,"target","_blank"),P(o,"rel","noreferrer noopener")},m(c,p){G(c,t,p),j(t,r),G(c,i,p),G(c,o,p),j(o,a)},p(c,p){p&32&&n!==(n=c[5]("connect.selectingWallet.whyDontISeeMyWallet",{default:he.connect.selectingWallet.whyDontISeeMyWallet})+"")&&Oe(r,n),p&32&&s!==(s=c[5]("connect.selectingWallet.learnMore",{default:he.connect.selectingWallet.learnMore})+"")&&Oe(a,s)},d(c){c&&U(t),c&&U(i),c&&U(o)}}}function G7(e){let t,n,r,i,o,s,a;jt(e[8]);let c=e[3]&&Gm(e),p=e[0],g=[];for(let h=0;hV(g[h],1,1,()=>{g[h]=null});let d=!e[6].removeWhereIsMyWalletWarning&&W7(e);return{c(){t=B("div"),c&&c.c(),n=ie(),r=B("div");for(let h=0;h{c=null}),Fe()),u&151){p=h[0];let f;for(f=0;fn(5,r=h));let{wallets:i}=t,{selectWallet:o}=t,{connectingWalletLabel:s}=t,{connectingErrorMessage:a}=t,c;const{connect:p}=ce.get();function g(h){const{wallets:u}=ce.get();return!!u.find(f=>f.label===h)}function l(){n(4,c=window.innerWidth)}const d=h=>o(h);return e.$$set=h=>{"wallets"in h&&n(0,i=h.wallets),"selectWallet"in h&&n(1,o=h.selectWallet),"connectingWalletLabel"in h&&n(2,s=h.connectingWalletLabel),"connectingErrorMessage"in h&&n(3,a=h.connectingErrorMessage)},[i,o,s,a,c,r,p,g,l,d]}class Q7 extends lt{constructor(t){super(),at(this,t,Z7,G7,ot,{wallets:0,selectWallet:1,connectingWalletLabel:2,connectingErrorMessage:3},z7)}}function X7(e){st(e,"svelte-obaru3",`.sidebar.svelte-obaru3{--background-color:var( + --onboard-connect-sidebar-background, + var(--w3o-foreground-color, none) + );--text-color:var(--onboard-connect-sidebar-color, inherit);--border-color:var(--onboard-connect-sidebar-border-color, inherit);display:flex;flex-flow:column;gap:1rem;padding:1rem;align-items:center}.inner-container.svelte-obaru3{display:flex;flex-flow:column;align-items:center;align-self:stretch;gap:0.5rem;padding:1.5rem;text-align:center;border:1px solid transparent;border-radius:12px;border-color:var(--border-color);background:var(--background-color);color:var(--text-color)}.icon-container.svelte-obaru3{display:flex;height:3.5rem;width:auto;min-width:3.5rem;max-width:100%}.heading.svelte-obaru3{font-size:var(--onboard-font-size-3, var(--font-size-3));margin:0 0 var(--onboard-spacing-5, var(--spacing-5)) 0}.subheading.svelte-obaru3{line-height:1rem}.description.svelte-obaru3{line-height:1.25rem;font-size:var(--onboard-font-size-6, var(--font-size-6))}img.svelte-obaru3{max-width:100%;height:auto}.indicators.svelte-obaru3{margin-top:auto}.indicator.svelte-obaru3{box-sizing:content-box;width:8px;height:8px;border-radius:8px;background:var( + --onboard-connect-sidebar-progress-background, + var(--onboard-gray-700, var(--gray-700)) + );transition:background 250ms ease-in-out}.indicator.on.svelte-obaru3{background:var( + --onboard-connect-sidebar-progress-color, + var(--action-color) + );border:2px solid + var( + --onboard-connect-sidebar-progress-background, + var(--onboard-gray-700, var(--gray-700)) + )}.join.svelte-obaru3{box-sizing:content-box;z-index:1;right:4px;height:2px;background:var( + --onboard-connect-sidebar-progress-background, + var(--onboard-gray-700, var(--gray-700)) + );transition:background 250ms ease-in-out}.join.active.svelte-obaru3{background:var( + --onboard-connect-sidebar-progress-color, + var(--action-color) + )}.no-link.svelte-obaru3{display:flex;flex-direction:row;align-items:center;padding:0.25rem 0.5rem 0.25rem 0.75rem;gap:0.25rem;font-size:var(--onboard-font-size-6, var(--font-size-6))}.info-icon.svelte-obaru3{width:1.25rem;display:flex;align-items:center}@media all and (min-width: 768px){.sidebar.svelte-obaru3{max-width:280px;border-right:1px solid;border-color:var(--border-color);background:var(--background-color)}.inner-container.svelte-obaru3{border:none;text-align:initial;flex:1;align-items:flex-start;gap:1rem}.indicators.svelte-obaru3{margin-bottom:0.25rem}}`)}function Zm(e){let t,n,r=e[3](`connect.${e[0]}.sidebar.header`,{default:""}),i;function o(p,g){return p[2]&&(p[2].logo||p[2].icon)?K7:Y7}let s=o(e),a=s(e),c=r&&Qm(e);return{c(){t=B("div"),a.c(),n=ie(),c&&c.c(),i=je(),P(t,"class","icon-container svelte-obaru3")},m(p,g){G(p,t,g),a.m(t,null),G(p,n,g),c&&c.m(p,g),G(p,i,g)},p(p,g){s===(s=o(p))&&a?a.p(p,g):(a.d(1),a=s(p),a&&(a.c(),a.m(t,null))),g&9&&(r=p[3](`connect.${p[0]}.sidebar.header`,{default:""})),r?c?c.p(p,g):(c=Qm(p),c.c(),c.m(i.parentNode,i)):c&&(c.d(1),c=null)},d(p){p&&U(t),a.d(),p&&U(n),c&&c.d(p),p&&U(i)}}}function Y7(e){let t,n;return{c(){t=new xo(!1),n=je(),t.a=n},m(r,i){t.m(Ov,r,i),G(r,n,i)},p:z,d(r){r&&U(n),r&&t.d()}}}function K7(e){let t,n;function r(s,a){return a&4&&(t=null),t==null&&(t=!!kp(s[2].logo||s[2].icon)),t?e8:J7}let i=r(e,-1),o=i(e);return{c(){o.c(),n=je()},m(s,a){o.m(s,a),G(s,n,a)},p(s,a){i===(i=r(s,a))&&o?o.p(s,a):(o.d(1),o=i(s),o&&(o.c(),o.m(n.parentNode,n)))},d(s){o.d(s),s&&U(n)}}}function J7(e){let t,n;return{c(){t=B("img"),go(t.src,n=e[2].logo||e[2].icon)||P(t,"src",n),P(t,"alt","logo"),P(t,"class","svelte-obaru3")},m(r,i){G(r,t,i)},p(r,i){i&4&&!go(t.src,n=r[2].logo||r[2].icon)&&P(t,"src",n)},d(r){r&&U(t)}}}function e8(e){let t,n=(e[2].logo||e[2].icon)+"",r;return{c(){t=new xo(!1),r=ye("​"),t.a=r},m(i,o){t.m(n,i,o),G(i,r,o)},p(i,o){o&4&&n!==(n=(i[2].logo||i[2].icon)+"")&&t.p(n)},d(i){i&&t.d(),i&&U(r)}}}function Qm(e){let t,n=e[3](`connect.${e[0]}.sidebar.header`,{default:e[7]})+"",r;return{c(){t=B("div"),r=ye(n),P(t,"class","heading svelte-obaru3")},m(i,o){G(i,t,o),j(t,r)},p(i,o){o&9&&n!==(n=i[3](`connect.${i[0]}.sidebar.header`,{default:i[7]})+"")&&Oe(r,n)},d(i){i&&U(t)}}}function t8(e){let t,n=e[3]("connect.selectingWallet.sidebar.IDontHaveAWallet",{default:he.connect.selectingWallet.sidebar.IDontHaveAWallet})+"",r,i,o;return{c(){t=B("a"),r=ye(n),i=ie(),o=B("div"),P(o,"class","info-icon svelte-obaru3"),P(t,"href",e[4].iDontHaveAWalletLink||"https://ethereum.org/en/wallets/find-wallet/#main-content"),P(t,"target","_blank"),P(t,"rel","noreferrer noopener"),P(t,"class","no-link svelte-obaru3")},m(s,a){G(s,t,a),j(t,r),j(t,i),j(t,o),o.innerHTML=bu},p(s,a){a&8&&n!==(n=s[3]("connect.selectingWallet.sidebar.IDontHaveAWallet",{default:he.connect.selectingWallet.sidebar.IDontHaveAWallet})+"")&&Oe(r,n)},d(s){s&&U(t)}}}function Xm(e){let t,n,r,i,o,s,a,c,p,g,l,d;return{c(){t=B("div"),n=B("div"),r=ie(),i=B("div"),s=ie(),a=B("div"),c=ie(),p=B("div"),l=ie(),d=B("div"),P(n,"class","indicator relative svelte-obaru3"),ee(n,"on",!0),P(i,"class","join relative svelte-obaru3"),P(i,"style",o=`${e[0]!=="selectingWallet"?"right: 4px; width: 52px;":"right: 2px; width: 54px;"}`),ee(i,"active",e[0]!=="selectingWallet"),P(a,"class","indicator relative svelte-obaru3"),P(a,"style","right: 8px;"),ee(a,"on",e[0]!=="selectingWallet"),P(p,"class","join relative svelte-obaru3"),P(p,"style",g=`${e[0]==="connectedWallet"?"right: 12px; width: 52px;":"right: 10px; width: 54px;"}`),ee(p,"active",e[0]==="connectedWallet"),P(d,"style","right: 16px;"),P(d,"class","indicator relative svelte-obaru3"),ee(d,"on",e[0]==="connectedWallet"),P(t,"class","indicators flex items-center svelte-obaru3")},m(h,u){G(h,t,u),j(t,n),j(t,r),j(t,i),j(t,s),j(t,a),j(t,c),j(t,p),j(t,l),j(t,d)},p(h,u){u&1&&o!==(o=`${h[0]!=="selectingWallet"?"right: 4px; width: 52px;":"right: 2px; width: 54px;"}`)&&P(i,"style",o),u&1&&ee(i,"active",h[0]!=="selectingWallet"),u&1&&ee(a,"on",h[0]!=="selectingWallet"),u&1&&g!==(g=`${h[0]==="connectedWallet"?"right: 12px; width: 52px;":"right: 10px; width: 54px;"}`)&&P(p,"style",g),u&1&&ee(p,"active",h[0]==="connectedWallet"),u&1&&ee(d,"on",h[0]==="connectedWallet")},d(h){h&&U(t)}}}function Ym(e){let t,n,r,i,o,s,a,c,p,g,l,d;return{c(){t=B("div"),n=B("div"),r=ie(),i=B("div"),s=ie(),a=B("div"),c=ie(),p=B("div"),l=ie(),d=B("div"),P(n,"class","indicator relative svelte-obaru3"),ee(n,"on",!0),P(i,"class","join relative svelte-obaru3"),P(i,"style",o=`right: 2px; ${e[0]!=="selectingWallet"?"width: 78px;":"width: 82px;"}`),ee(i,"active",e[0]!=="selectingWallet"),P(a,"class","indicator relative svelte-obaru3"),P(a,"style","right: 4px;"),ee(a,"on",e[0]!=="selectingWallet"),P(p,"class","join relative svelte-obaru3"),P(p,"style",g=`right: 6px; ${e[0]==="connectedWallet"?"width: 74px;":"width: 81px;"}`),ee(p,"active",e[0]==="connectedWallet"),P(d,"style","right: 8px;"),P(d,"class","indicator relative svelte-obaru3"),ee(d,"on",e[0]==="connectedWallet"),P(t,"class","indicators flex items-center svelte-obaru3")},m(h,u){G(h,t,u),j(t,n),j(t,r),j(t,i),j(t,s),j(t,a),j(t,c),j(t,p),j(t,l),j(t,d)},p(h,u){u&1&&o!==(o=`right: 2px; ${h[0]!=="selectingWallet"?"width: 78px;":"width: 82px;"}`)&&P(i,"style",o),u&1&&ee(i,"active",h[0]!=="selectingWallet"),u&1&&ee(a,"on",h[0]!=="selectingWallet"),u&1&&g!==(g=`right: 6px; ${h[0]==="connectedWallet"?"width: 74px;":"width: 81px;"}`)&&P(p,"style",g),u&1&&ee(p,"active",h[0]==="connectedWallet"),u&1&&ee(d,"on",h[0]==="connectedWallet")},d(h){h&&U(t)}}}function n8(e){let t,n,r,i,o=e[3](`connect.${e[0]}.sidebar.subheading`,{default:e[5]})+"",s,a,c,p=e[3](`connect.${e[0]}.sidebar.paragraph`,{values:{app:e[2]&&e[2].name||"This App"},default:e[6]})+"",g,l,d,h,u,f,b,m;jt(e[9]);let v=e[1]>=tt&&Zm(e),y=!e[4].removeIDontHaveAWalletInfoLink&&t8(e),_=e[1]=tt&&Ym(e);return{c(){t=B("div"),n=B("div"),v&&v.c(),r=ie(),i=B("div"),s=ye(o),a=ie(),c=B("div"),g=ye(p),l=ie(),y&&y.c(),d=ie(),_&&_.c(),h=ie(),k&&k.c(),u=ie(),f=B("div"),P(i,"class","subheading svelte-obaru3"),P(c,"class","description svelte-obaru3"),P(n,"class","inner-container svelte-obaru3"),P(t,"class","sidebar svelte-obaru3")},m(x,S){G(x,t,S),j(t,n),v&&v.m(n,null),j(n,r),j(n,i),j(i,s),j(n,a),j(n,c),j(c,g),j(n,l),y&&y.m(n,null),j(n,d),_&&_.m(n,null),j(t,h),k&&k.m(t,null),j(t,u),j(t,f),f.innerHTML=P4,b||(m=Wt(window,"resize",e[9]),b=!0)},p(x,[S]){x[1]>=tt?v?v.p(x,S):(v=Zm(x),v.c(),v.m(n,r)):v&&(v.d(1),v=null),S&9&&o!==(o=x[3](`connect.${x[0]}.sidebar.subheading`,{default:x[5]})+"")&&Oe(s,o),S&13&&p!==(p=x[3](`connect.${x[0]}.sidebar.paragraph`,{values:{app:x[2]&&x[2].name||"This App"},default:x[6]})+"")&&Oe(g,p),x[4].removeIDontHaveAWalletInfoLink||y.p(x,S),x[1]=tt?k?k.p(x,S):(k=Ym(x),k.c(),k.m(t,u)):k&&(k.d(1),k=null)},i:z,o:z,d(x){x&&U(t),v&&v.d(),y&&y.d(),_&&_.d(),k&&k.d(),b=!1,m()}}}function r8(e,t,n){let r,i;Ge(e,fr,u=>n(3,i=u));let{step:o}=t;const{connect:s}=ce.get(),a=he.connect[o].sidebar,{subheading:c,paragraph:p}=a,{heading:g}=a;let l;const d=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));Ge(e,d,u=>n(2,r=u));function h(){n(1,l=window.innerWidth)}return e.$$set=u=>{"step"in u&&n(0,o=u.step)},[o,l,r,i,s,c,p,g,d,h]}class i8 extends lt{constructor(t){super(),at(this,t,r8,n8,ot,{step:0},X7)}}function o8(e){st(e,"svelte-1qwmck3",`.container.svelte-1qwmck3{--background-color:var( + --onboard-main-scroll-container-background, + var(--w3o-background-color) + );--foreground-color:var(--w3o-foreground-color);--text-color:var(--onboard-connect-text-color, var(--w3o-text-color));--border-color:var(--w3o-border-color, var(--gray-200));--action-color:var(--w3o-action-color, var(--primary-500));font-family:var(--onboard-font-family-normal, var(--font-family-normal));font-size:var(--onboard-font-size-5, 1rem);background:var(--background-color);color:var(--text-color);border-color:var(--border-color);line-height:24px;overflow:hidden;position:relative;display:flex;height:min-content;flex-flow:column-reverse}.content.svelte-1qwmck3{width:var(--onboard-connect-content-width, 100%)}.header.svelte-1qwmck3{display:flex;padding:1rem;border-bottom:1px solid transparent;background:var(--onboard-connect-header-background);color:var(--onboard-connect-header-color);border-color:var(--border-color)}.header-heading.svelte-1qwmck3{line-height:1rem}.button-container.svelte-1qwmck3{right:0.5rem;top:0.5rem}.mobile-header.svelte-1qwmck3{display:flex;gap:0.5rem;height:4.5rem;padding:1rem;border-bottom:1px solid;border-color:var(--border-color)}.mobile-subheader.svelte-1qwmck3{opacity:0.6;font-size:0.875rem;font-weight:400;line-height:1rem;margin-top:0.25rem}.icon-container.svelte-1qwmck3{display:flex;flex:0 0 auto;height:2.5rem;width:2.5rem;min-width:2.5rem;justify-content:center;align-items:center}.disabled.svelte-1qwmck3{opacity:0.2;pointer-events:none;overflow:hidden}.icon-container svg{display:block;height:100%;width:auto}.w-full.svelte-1qwmck3{width:100%}.scroll-container.svelte-1qwmck3{overflow-y:auto;transition:opacity 250ms ease-in-out;scrollbar-width:none}.scroll-container.svelte-1qwmck3::-webkit-scrollbar{display:none}@media all and (min-width: 768px){.container.svelte-1qwmck3{margin:0;flex-flow:row;height:var(--onboard-connect-content-height, 440px)}.content.svelte-1qwmck3{width:var(--onboard-connect-content-width, 488px)}.mobile-subheader.svelte-1qwmck3{display:none}.icon-container.svelte-1qwmck3{display:none}}`)}function Km(e){let t,n;return t=new Fp({props:{close:!e[16].disableClose&&e[20],$$slots:{default:[g8]},$$scope:{ctx:e}}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,i){const o={};i[0]&32766|i[1]&32&&(o.$$scope={dirty:i,ctx:r}),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function s8(e){let t,n;return t=new i8({props:{step:e[5]}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,i){const o={};i[0]&32&&(o.step=r[5]),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function a8(e){let t,n,r=e[14](`connect.${e[5]}.header`,{default:he.connect[e[5]].header,values:{connectionRejected:e[1],wallet:e[3]&&e[3].label}})+"",i,o,s=e[5]==="selectingWallet"?`(${e[12]})`:"",a;return{c(){t=B("div"),n=B("div"),i=ye(r),o=ie(),a=ye(s),P(n,"class","header-heading svelte-1qwmck3"),P(t,"class","header relative flex items-center svelte-1qwmck3")},m(c,p){G(c,t,p),j(t,n),j(n,i),j(n,o),j(n,a)},p(c,p){p[0]&16426&&r!==(r=c[14](`connect.${c[5]}.header`,{default:he.connect[c[5]].header,values:{connectionRejected:c[1],wallet:c[3]&&c[3].label}})+"")&&Oe(i,r),p[0]&4128&&s!==(s=c[5]==="selectingWallet"?`(${c[12]})`:"")&&Oe(a,s)},d(c){c&&U(t)}}}function l8(e){let t,n,r,i,o,s=e[14](e[5]==="connectingWallet"&&e[3]?`connect.${e[5]}.header`:`connect.${e[5]}.sidebar.subheading`,{default:e[5]==="connectingWallet"&&e[3]?he.connect[e[5]].header:he.connect[e[5]].sidebar.subheading,values:{connectionRejected:e[1],wallet:e[3]&&e[3].label}})+"",a,c,p,g=e[5]==="selectingWallet"?`${e[12]} available wallets`:"1 account selected",l;function d(f,b){return f[13]&&f[13].icon?c8:u8}let h=d(e),u=h(e);return{c(){t=B("div"),n=B("div"),u.c(),r=ie(),i=B("div"),o=B("div"),a=ye(s),c=ie(),p=B("div"),l=ye(g),P(n,"class","icon-container svelte-1qwmck3"),P(o,"class","header-heading svelte-1qwmck3"),P(p,"class","mobile-subheader svelte-1qwmck3"),P(i,"class","flex flex-column justify-center w-full svelte-1qwmck3"),P(t,"class","mobile-header svelte-1qwmck3")},m(f,b){G(f,t,b),j(t,n),u.m(n,null),j(t,r),j(t,i),j(i,o),j(o,a),j(i,c),j(i,p),j(p,l)},p(f,b){h===(h=d(f))&&u?u.p(f,b):(u.d(1),u=h(f),u&&(u.c(),u.m(n,null))),b[0]&16426&&s!==(s=f[14](f[5]==="connectingWallet"&&f[3]?`connect.${f[5]}.header`:`connect.${f[5]}.sidebar.subheading`,{default:f[5]==="connectingWallet"&&f[3]?he.connect[f[5]].header:he.connect[f[5]].sidebar.subheading,values:{connectionRejected:f[1],wallet:f[3]&&f[3].label}})+"")&&Oe(a,s),b[0]&4128&&g!==(g=f[5]==="selectingWallet"?`${f[12]} available wallets`:"1 account selected")&&Oe(l,g)},d(f){f&&U(t),u.d()}}}function u8(e){let t,n;return{c(){t=new xo(!1),n=je(),t.a=n},m(r,i){t.m(Ov,r,i),G(r,n,i)},p:z,d(r){r&&U(n),r&&t.d()}}}function c8(e){let t,n;function r(s,a){return a[0]&8192&&(t=null),t==null&&(t=!!kp(s[13].icon)),t?d8:f8}let i=r(e,[-1,-1]),o=i(e);return{c(){o.c(),n=je()},m(s,a){o.m(s,a),G(s,n,a)},p(s,a){i===(i=r(s,a))&&o?o.p(s,a):(o.d(1),o=i(s),o&&(o.c(),o.m(n.parentNode,n)))},d(s){o.d(s),s&&U(n)}}}function f8(e){let t,n;return{c(){t=B("img"),go(t.src,n=e[13].icon)||P(t,"src",n),P(t,"alt","logo")},m(r,i){G(r,t,i)},p(r,i){i[0]&8192&&!go(t.src,n=r[13].icon)&&P(t,"src",n)},d(r){r&&U(t)}}}function d8(e){let t,n=e[13].icon+"",r;return{c(){t=new xo(!1),r=je(),t.a=r},m(i,o){t.m(n,i,o),G(i,r,o)},p(i,o){o[0]&8192&&n!==(n=i[13].icon+"")&&t.p(n)},d(i){i&&U(r),i&&t.d()}}}function p8(e){let t,n,r,i,o;return n=new Cy({}),{c(){t=B("div"),be(n.$$.fragment),P(t,"class","button-container absolute svelte-1qwmck3")},m(s,a){G(s,t,a),me(n,t,null),r=!0,i||(o=Wt(t,"click",e[20]),i=!0)},p:z,i(s){r||(H(n.$$.fragment,s),r=!0)},o(s){V(n.$$.fragment,s),r=!1},d(s){s&&U(t),ge(n),i=!1,o()}}}function Jm(e){let t,n,r,i;const o=[m8,h8],s=[];function a(c,p){return c[2].length?0:1}return t=a(e),n=s[t]=o[t](e),{c(){n.c(),r=je()},m(c,p){s[t].m(c,p),G(c,r,p),i=!0},p(c,p){let g=t;t=a(c),t===g?s[t].p(c,p):(He(),V(s[g],1,1,()=>{s[g]=null}),Fe(),n=s[t],n?n.p(c,p):(n=s[t]=o[t](c),n.c()),H(n,1),n.m(r.parentNode,r))},i(c){i||(H(n),i=!0)},o(c){V(n),i=!1},d(c){s[t].d(c),c&&U(r)}}}function h8(e){let t,n;return t=new N7({}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p:z,i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function m8(e){let t,n,r,i,o,s;function a(p){e[24](p)}let c={};return e[7]!==void 0&&(c.agreed=e[7]),t=new Q5({props:c}),Vl.push(()=>C6(t,"agreed",a)),o=new Q7({props:{selectWallet:e[18],wallets:e[2],connectingWalletLabel:e[8],connectingErrorMessage:e[9]}}),{c(){be(t.$$.fragment),r=ie(),i=B("div"),be(o.$$.fragment),P(i,"class","svelte-1qwmck3"),ee(i,"disabled",!e[7])},m(p,g){me(t,p,g),G(p,r,g),G(p,i,g),me(o,i,null),s=!0},p(p,g){const l={};!n&&g[0]&128&&(n=!0,l.agreed=p[7],y6(()=>n=!1)),t.$set(l);const d={};g[0]&4&&(d.wallets=p[2]),g[0]&256&&(d.connectingWalletLabel=p[8]),g[0]&512&&(d.connectingErrorMessage=p[9]),o.$set(d),(!s||g[0]&128)&&ee(i,"disabled",!p[7])},i(p){s||(H(t.$$.fragment,p),H(o.$$.fragment,p),s=!0)},o(p){V(t.$$.fragment,p),V(o.$$.fragment,p),s=!1},d(p){ge(t,p),p&&U(r),p&&U(i),ge(o)}}}function e1(e){let t,n;return t=new L7({props:{connectWallet:e[21],connectionRejected:e[1],previousConnectionRequest:e[6],setStep:e[22],deselectWallet:e[19],selectedWallet:e[3]}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,i){const o={};i[0]&2&&(o.connectionRejected=r[1]),i[0]&64&&(o.previousConnectionRequest=r[6]),i[0]&8&&(o.selectedWallet=r[3]),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function t1(e){let t,n;return t=new S7({props:{selectedWallet:e[3]}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,i){const o={};i[0]&8&&(o.selectedWallet=r[3]),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function g8(e){let t,n,r,i,o,s,a,c,p,g=e[16].showSidebar&&s8(e);function l(v,y){return v[4]<=tt?l8:a8}let d=l(e),h=d(e),u=!e[16].disableClose&&p8(e),f=(e[5]==="selectingWallet"||e[4]<=tt)&&Jm(e),b=e[11]&&e1(e),m=e[5]==="connectedWallet"&&e[3]&&e[4]>=tt&&t1(e);return{c(){t=B("div"),g&&g.c(),n=ie(),r=B("div"),h.c(),i=ie(),u&&u.c(),o=ie(),s=B("div"),f&&f.c(),a=ie(),b&&b.c(),c=ie(),m&&m.c(),P(s,"class","scroll-container svelte-1qwmck3"),P(r,"class","content flex flex-column svelte-1qwmck3"),P(t,"class","container svelte-1qwmck3")},m(v,y){G(v,t,y),g&&g.m(t,null),j(t,n),j(t,r),h.m(r,null),j(r,i),u&&u.m(r,null),j(r,o),j(r,s),f&&f.m(s,null),j(s,a),b&&b.m(s,null),j(s,c),m&&m.m(s,null),e[25](s),p=!0},p(v,y){v[16].showSidebar&&g.p(v,y),d===(d=l(v))&&h?h.p(v,y):(h.d(1),h=d(v),h&&(h.c(),h.m(r,i))),v[16].disableClose||u.p(v,y),v[5]==="selectingWallet"||v[4]<=tt?f?(f.p(v,y),y[0]&48&&H(f,1)):(f=Jm(v),f.c(),H(f,1),f.m(s,a)):f&&(He(),V(f,1,1,()=>{f=null}),Fe()),v[11]?b?(b.p(v,y),y[0]&2048&&H(b,1)):(b=e1(v),b.c(),H(b,1),b.m(s,c)):b&&(He(),V(b,1,1,()=>{b=null}),Fe()),v[5]==="connectedWallet"&&v[3]&&v[4]>=tt?m?(m.p(v,y),y[0]&56&&H(m,1)):(m=t1(v),m.c(),H(m,1),m.m(s,null)):m&&(He(),V(m,1,1,()=>{m=null}),Fe())},i(v){p||(H(g),H(u),H(f),H(b),H(m),p=!0)},o(v){V(g),V(u),V(f),V(b),V(m),p=!1},d(v){v&&U(t),g&&g.d(),h.d(),u&&u.d(),f&&f.d(),b&&b.d(),m&&m.d(),e[25](null)}}}function v8(e){let t,n,r,i;jt(e[23]);let o=!e[0].disableModals&&Km(e);return{c(){o&&o.c(),t=je()},m(s,a){o&&o.m(s,a),G(s,t,a),n=!0,r||(i=Wt(window,"resize",e[23]),r=!0)},p(s,a){s[0].disableModals?o&&(He(),V(o,1,1,()=>{o=null}),Fe()):o?(o.p(s,a),a[0]&1&&H(o,1)):(o=Km(s),o.c(),H(o,1),o.m(t.parentNode,t))},i(s){n||(H(o),n=!0)},o(s){V(o),n=!1},d(s){o&&o.d(s),s&&U(t),r=!1,i()}}}function y8(e,t,n){let r,i,o,s,a;Ge(e,fr,Q=>n(14,a=Q));let{autoSelect:c}=t;const p=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));Ge(e,p,Q=>n(13,o=Q));const{walletModules:g,connect:l,chains:d}=ce.get(),h=new cr,{unstoppableResolution:u,wagmi:f}=Tt;let b=!1,m=!1,v=[],y,_,k,x,S,w;const C=new qs("selectingWallet");Ge(e,C,Q=>n(5,s=Q)),Sn.pipe(qg((Q,fe)=>Q.autoSelect&&fe.autoSelect&&Q.autoSelect.disableModals===fe.autoSelect.disableModals),co(({autoSelect:Q})=>Q&&Q.disableModals===!1),js(Rm)).subscribe(()=>{y&&re()});async function E({label:Q,icon:fe,getInterface:Le}){n(8,k=Q);try{const pe=ce.get().wallets.find(et=>et.label===Q);if(pe){ld(pe),setTimeout(()=>W("connectedWallet"),1),n(3,y=pe);return}const{chains:Ee}=ce.get(),{provider:de,instance:Ue}=await Le({chains:Ee,EventEmitter:M4,appMetadata:o}),ut=await fe;n(3,y={label:Q,icon:ut,provider:de,instance:Ue,accounts:[],chains:[{namespace:"evm",id:"0x1"}]}),n(9,x=""),K(),setTimeout(()=>W("connectingWallet"),1)}catch(pe){const{message:Ee}=pe;n(9,x=Ee),n(8,k=""),K()}}function A(){n(3,y=null)}function N(Q){n(3,y=Object.assign(Object.assign({},y),Q))}async function D(Q){const{getIcon:fe,getInterface:Le,label:pe}=Q,Ee=fe();E({label:pe,icon:Ee,getInterface:Le})}async function X(){n(2,v=g.map(({getIcon:Q,getInterface:fe,label:Le})=>({label:Le,icon:Q(),getInterface:fe})))}function Y(){Sn.next({inProgress:!1})}async function re(){n(1,b=!1);const{provider:Q,label:fe}=y;h.next();try{let Le,pe;if(f){const{buildWagmiConfig:Ue,wagmiConnect:ut,getWagmiConnector:et}=f,Tn=await Ue(d,{label:fe,provider:Q});vy(Tn),pe=et(fe);const ct=await Promise.race([ut(Tn,{connector:pe}),Ps(h.pipe(Fc([])))]);if(!ct||!("accounts"in ct))return;const[pn]=ct.accounts;Le=pn}else{const[Ue]=await Promise.race([yy(Q),Ps(h.pipe(Fc([])))]);if(!Ue)return;Le=Ue}if(ce.get().connect.autoConnectLastWallet||ce.get().connect.autoConnectAllPreviousWallet){let Ue=_u(zn.LAST_CONNECTED_WALLET);try{let ut=JSON.parse(Ue);if(ut&&Array.isArray(ut)){const et=ut;Ue=[...new Set([fe,...et])]}}catch(ut){if(ut instanceof SyntaxError&&Ue&&typeof Ue=="string")Ue=[Ue];else throw new Error(ut)}Ue||(Ue=[fe]),wu(zn.LAST_CONNECTED_WALLET,JSON.stringify(Ue))}const Ee=await by(Q),de={accounts:[{address:Le,ens:null,uns:null,balance:null}],chains:[{namespace:"evm",id:Ee}],wagmiConnector:pe};ld(Object.assign(Object.assign({},y),de)),S5(Q,fe),N(de),W("connectedWallet"),K()}catch(Le){const{code:pe}=Le;if(K(),pe===Rr.ACCOUNT_ACCESS_REJECTED){n(1,b=!0),c.disableModals?Sn.next({inProgress:!1}):c.label&&n(0,c.label="",c);return}if(pe===Rr.ACCOUNT_ACCESS_ALREADY_REQUESTED){if(n(6,m=!0),c.disableModals){Sn.next({inProgress:!1});return}_y({provider:y.provider,disconnected$:Sn.pipe(co(({inProgress:Ee})=>!Ee),Fc(""))}).pipe(pp(1)).subscribe(([Ee])=>{Ee&&re()});return}}}async function ue(){const{accounts:Q,chains:fe}=y,Le=ce.get().chains,[pe]=fe,Ee=Le.find(({namespace:ct,id:pn})=>ct===pe.namespace&&pn===pe.id),{address:de}=Q[0];let{balance:Ue,ens:ut,uns:et,secondaryTokens:Tn}=Q[0];if(Ue===null&&Zl(de,Ee).then(ct=>{is(y.label,de,{balance:ct})}),Ee&&!Tn&&Array.isArray(Ee.secondaryTokens)&&Ee.secondaryTokens.length&&ql(de,Ee).then(ct=>{is(y.label,de,{secondaryTokens:ct})}),ut===null&&Fl(pe.id)){const ct=d.find(({id:pn})=>pn===Fl(pe.id));ud(de,ct).then(pn=>{is(y.label,de,{ens:pn})})}et===null&&u&&cd(de,Ee).then(ct=>{is(y.label,de,{uns:ct})}),setTimeout(()=>Sn.next({inProgress:!1}),1500)}C.pipe(js(Rm)).subscribe(Q=>{switch(Q){case"selectingWallet":{if(c.label){const fe=g.find(({label:Le})=>Le.toLowerCase()===c.label.toLowerCase());fe?D(fe):c.disableModals&&Sn.next({inProgress:!1})}else n(8,k=""),X();break}case"connectingWallet":{re();break}case"connectedWallet":{n(8,k=""),ue();break}}});function W(Q){h.next(),C.next(Q)}function K(){w&&w.scrollTo(0,0)}function se(){n(4,S=window.innerWidth)}function oe(Q){_=Q,n(7,_)}function le(Q){Vl[Q?"unshift":"push"](()=>{w=Q,n(10,w)})}return e.$$set=Q=>{"autoSelect"in Q&&n(0,c=Q.autoSelect)},e.$$.update=()=>{e.$$.dirty[0]&4&&n(12,r=v.length-ce.get().wallets.length),e.$$.dirty[0]&58&&n(11,i=s==="connectingWallet"&&y&&S>=tt||S<=tt&&b&&s==="connectingWallet"&&y)},[c,b,v,y,S,s,m,_,k,x,w,i,r,o,a,p,l,C,E,A,Y,re,W,se,oe,le]}class b8 extends lt{constructor(t){super(),at(this,t,y8,v8,ot,{autoSelect:0},o8,[-1,-1])}}function _8(e){st(e,"svelte-12yam41",".container.svelte-12yam41{padding:var(--onboard-spacing-4, var(--spacing-4));font-family:var(--onboard-font-family-normal, var(--font-family-normal));line-height:16px;font-size:var(--onboard-font-size-5, var(--font-size-5))}.close.svelte-12yam41{top:var(--onboard-spacing-5, var(--spacing-5));right:var(--onboard-spacing-5, var(--spacing-5));padding:0.5rem}h4.svelte-12yam41{font-size:var(--onboard-font-size-3, var(--font-size-3));margin:var(--onboard-spacing-4, var(--spacing-4)) 0}p.svelte-12yam41{margin:0 0 var(--onboard-spacing-4, var(--spacing-4)) 0;max-width:488px}")}function w8(e){let t,n,r=e[0]("modals.switchChain.heading",{default:he.modals.switchChain.heading})+"",i,o,s,a=e[0]("modals.switchChain.paragraph1",{default:he.modals.switchChain.paragraph1,values:{app:e[1]&&e[1].name||"This app",nextNetworkName:e[2]}})+"",c,p,g,l=e[0]("modals.switchChain.paragraph2",{default:he.modals.switchChain.paragraph2})+"",d,h,u,f,b,m,v;return f=new Cy({}),{c(){t=B("div"),n=B("h4"),i=ye(r),o=ie(),s=B("p"),c=ye(a),p=ie(),g=B("p"),d=ye(l),h=ie(),u=B("div"),be(f.$$.fragment),P(n,"class","svelte-12yam41"),P(s,"class","svelte-12yam41"),P(g,"class","svelte-12yam41"),P(u,"class","close absolute svelte-12yam41"),P(t,"class","container relative svelte-12yam41")},m(y,_){G(y,t,_),j(t,n),j(n,i),j(t,o),j(t,s),j(s,c),j(t,p),j(t,g),j(g,d),j(t,h),j(t,u),me(f,u,null),b=!0,m||(v=Wt(u,"click",e[3]),m=!0)},p(y,_){(!b||_&1)&&r!==(r=y[0]("modals.switchChain.heading",{default:he.modals.switchChain.heading})+"")&&Oe(i,r),(!b||_&3)&&a!==(a=y[0]("modals.switchChain.paragraph1",{default:he.modals.switchChain.paragraph1,values:{app:y[1]&&y[1].name||"This app",nextNetworkName:y[2]}})+"")&&Oe(c,a),(!b||_&1)&&l!==(l=y[0]("modals.switchChain.paragraph2",{default:he.modals.switchChain.paragraph2})+"")&&Oe(d,l)},i(y){b||(H(f.$$.fragment,y),b=!0)},o(y){V(f.$$.fragment,y),b=!1},d(y){y&&U(t),ge(f),m=!1,v()}}}function C8(e){let t,n;return t=new Fp({props:{close:e[3],$$slots:{default:[w8]},$$scope:{ctx:e}}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,[i]){const o={};i&67&&(o.$$scope={dirty:i,ctx:r}),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function k8(e,t,n){let r,i,o;Ge(e,vo,p=>n(5,r=p)),Ge(e,fr,p=>n(0,i=p));const s=r.chain.label;function a(){vo.next(null)}const c=ce.select("appMetadata").pipe(Fn(ce.get().appMetadata),Un(1));return Ge(e,c,p=>n(1,o=p)),[i,o,s,a,c]}class S8 extends lt{constructor(t){super(),at(this,t,k8,C8,ot,{},_8)}}function E8(e){st(e,"svelte-z54y2j",".icon.svelte-z54y2j{border-radius:50px;color:var(--onboard-primary-500, var(--primary-500))}")}function x8(e){let t,n;return{c(){t=B("div"),P(t,"class","icon flex svelte-z54y2j"),P(t,"style",n=`width: ${e[0]}px; height: ${e[0]}px;`)},m(r,i){G(r,t,i),t.innerHTML=bu},p(r,[i]){i&1&&n!==(n=`width: ${r[0]}px; height: ${r[0]}px;`)&&P(t,"style",n)},i:z,o:z,d(r){r&&U(t)}}}function $8(e,t,n){let{size:r=20}=t;return e.$$set=i=>{"size"in i&&n(0,r=i.size)},[r]}class O8 extends lt{constructor(t){super(),at(this,t,$8,x8,ot,{size:0},E8)}}function A8(e){st(e,"svelte-20hjq1",`.content.svelte-20hjq1{padding:1rem;width:300px;font-family:var(--onboard-font-family-normal, var(--font-family-normal));font-size:var(--onboard-font-size-5, var(--font-size-5));line-height:24px;background:var( + --onboard-action-required-modal-background, + var(--onboard-white, var(--white)) + )}.icon-container.svelte-20hjq1{width:3rem;height:3rem;background:var(--onboard-primary-100, var(--primary-100));border-radius:24px}h4.svelte-20hjq1{margin:1.5rem 0 0.5rem 0;font-weight:600}.action-required-heading.svelte-20hjq1,.action-required-info.svelte-20hjq1{color:var( + --onboard-action-required-text-color, + var(--onboard-black, inherit) + )}.action-required-btn.svelte-20hjq1{color:var( + --onboard-action-required-btn-text-color, + var(--onboard-black, inherit) + )}p.svelte-20hjq1{margin:0;font-weight:400}a.svelte-20hjq1{font-weight:600}button.svelte-20hjq1{margin-top:1.5rem;font-weight:600}`)}function n1(e){let t,n=e[1]("modals.actionRequired.linkText",{values:{wallet:e[0]}})+"",r;return{c(){t=B("a"),r=ye(n),P(t,"href","https://metamask.zendesk.com/hc/en-us/articles/360061346311-Switching-accounts-in-MetaMask"),P(t,"target","_blank"),P(t,"rel","noreferrer noopener"),P(t,"class","svelte-20hjq1")},m(i,o){G(i,t,o),j(t,r)},p(i,o){o&3&&n!==(n=i[1]("modals.actionRequired.linkText",{values:{wallet:i[0]}})+"")&&Oe(r,n)},d(i){i&&U(t)}}}function L8(e){let t,n,r,i,o,s=e[1]("modals.actionRequired.heading",{values:{wallet:e[0]}})+"",a,c,p,g=e[1]("modals.actionRequired.paragraph",{values:{wallet:e[0]}})+"",l,d,h,u,f=e[1]("modals.actionRequired.buttonText")+"",b,m,v,y;r=new O8({});let _=e[0]==="MetaMask"&&n1(e);return{c(){t=B("div"),n=B("div"),be(r.$$.fragment),i=ie(),o=B("h4"),a=ye(s),c=ie(),p=B("p"),l=ye(g),d=ie(),_&&_.c(),h=ie(),u=B("button"),b=ye(f),P(n,"class","icon-container flex justify-center items-center svelte-20hjq1"),P(o,"class","action-required-heading svelte-20hjq1"),P(p,"class","action-required-info svelte-20hjq1"),P(u,"class","button-neutral-solid rounded action-required-btn svelte-20hjq1"),P(t,"class","content svelte-20hjq1")},m(k,x){G(k,t,x),j(t,n),me(r,n,null),j(t,i),j(t,o),j(o,a),j(t,c),j(t,p),j(p,l),j(p,d),_&&_.m(p,null),j(t,h),j(t,u),j(u,b),m=!0,v||(y=Wt(u,"click",e[2]),v=!0)},p(k,x){(!m||x&3)&&s!==(s=k[1]("modals.actionRequired.heading",{values:{wallet:k[0]}})+"")&&Oe(a,s),(!m||x&3)&&g!==(g=k[1]("modals.actionRequired.paragraph",{values:{wallet:k[0]}})+"")&&Oe(l,g),k[0]==="MetaMask"?_?_.p(k,x):(_=n1(k),_.c(),_.m(p,null)):_&&(_.d(1),_=null),(!m||x&2)&&f!==(f=k[1]("modals.actionRequired.buttonText")+"")&&Oe(b,f)},i(k){m||(H(r.$$.fragment,k),m=!0)},o(k){V(r.$$.fragment,k),m=!1},d(k){k&&U(t),ge(r),_&&_.d(),v=!1,y()}}}function T8(e){let t,n;return t=new Fp({props:{close:e[2],$$slots:{default:[L8]},$$scope:{ctx:e}}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,[i]){const o={};i&11&&(o.$$scope={dirty:i,ctx:r}),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function M8(e,t,n){let r;Ge(e,fr,s=>n(1,r=s));let{wallet:i}=t;function o(){Sn.next({inProgress:!1,actionRequired:""})}return e.$$set=s=>{"wallet"in s&&n(0,i=s.wallet)},[i,r,o]}class P8 extends lt{constructor(t){super(),at(this,t,M8,T8,ot,{wallet:0},A8)}}function j8(e){st(e,"svelte-w5zexe",`.flex{display:flex}.inline-flex{display:inline-flex}.flex-column{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-around{justify-content:space-around}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.pointer{cursor:pointer}.shadow-1{box-shadow:var(--onboard-shadow-1, var(--shadow-1))}.w-100{width:100%}*{box-sizing:border-box}input{background:var(--onboard-white, var(--white))}input{width:100%;padding:0.5rem 1rem;outline:2px solid var(--onboard-gray-200, var(--gray-200));border:none;border-radius:8px;font-size:1rem;line-height:1.5;color:var(--onboard-gray-600, var(--gray-600));transition:all 200ms ease-in-out}input[type='checkbox']{-webkit-appearance:none;appearance:none;width:auto;background:var(--onboard-white, var(--white));outline:1px solid var(--onboard-gray-300, var(--gray-300));border:none;padding:0.5em;border-radius:3px;display:flex;justify-content:center;align-items:center;position:relative;cursor:pointer}input[type='checkbox']:hover{border-color:var( + --onboard-checkbox-background, + var(--onboard-primary-500, var(--primary-500)) + )}input[type='checkbox']:checked{background:var( + --onboard-checkbox-background, + var(--onboard-primary-500, var(--primary-500)) + );border-color:var( + --onboard-checkbox-background, + var(--onboard-primary-500, var(--primary-500)) + );color:var(--onboard-checkbox-color, var(--onboard-white, var(--white)))}input[type='checkbox']:checked:after{content:url("data:image/svg+xml,%3Csvg width='0.885em' height='0.6em' viewBox='0 0 14 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 6L5 11L14 2L12.59 0.58L5 8.17L1.41 4.59L0 6Z' fill='white'/%3E%3C/svg%3E");font-size:12px;position:absolute;color:var(--onboard-checkbox-color, var(--onboard-white, var(--white)))}input:hover{border-color:var( + --onboard-checkbox-color, + var(--onboard-white, var(--white)) + )}input:focus{border-color:var(--onboard-primary-500, var(--primary-500));box-shadow:0 0 1px 1px + var( + --onboard-checkbox-background, + var(--onboard-primary-500, var(--primary-500)) + );box-shadow:0 0 0 1px -moz-mac-focusring}input:disabled, textarea:disabled, select:disabled{background:var(--gray-100)}input::-moz-focus-inner{outline:0;padding:0;margin-top:-2px;margin-bottom:-2px}a{color:var( + --onboard-link-color, + var(--onboard-primary-500, var(--primary-500)) + );text-decoration:none}a:hover{text-decoration:underline}button{display:flex;align-items:center;justify-content:center;padding:calc(var(--onboard-spacing-4, var(--spacing-4)) - 1px);border-radius:24px;cursor:pointer;font:inherit;border:none;transition:background-color 150ms ease-in-out, color 150ms ease-in-out}.onboard-button-primary{background:var(--onboard-white, var(--white));padding:calc(var(--onboard-spacing-5, var(--spacing-5)) - 1px) + calc(var(--onboard-spacing-4, var(--spacing-4)) - 1px);color:var(--onboard-gray-500, var(--gray-500));font-size:var(--onboard-font-size-6, var(--font-size-6));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3));border:1px solid var(--onboard-gray-500, var(--gray-500));font-weight:600}.button-neutral-solid{width:100%;border-radius:8px;background:var(--onboard-gray-500, var(--gray-500));color:var(--onboard-white, var(--white));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3))}.button-neutral-solid-b{width:100%;background:var(--onboard-gray-100, var(--gray-100));color:var(--onboard-gray-500, var(--gray-500));line-height:var(--onboard-font-line-height-3, var(--font-line-height-3))}button.rounded{border-radius:24px}.button-neutral-solid:hover{background:var(--onboard-gray-700, var(--gray-700))}.button-neutral-solid-b:hover{background:var(--onboard-gray-200, var(--gray-200))}.button-neutral-solid:active{color:var(--onboard-gray-300, var(--gray-300))}.button-neutral-solid-b:active{color:var(--onboard-gray-600, var(--gray-600));background:var(--onboard-gray-300, var(--gray-300))}.container.svelte-w5zexe{padding:16px;font-family:var(--onboard-font-family-normal, var(--font-family-normal));pointer-events:none;touch-action:none;width:100%}.z-indexed.svelte-w5zexe{z-index:var(--account-center-z-index)}@media all and (min-width: 428px){.container.svelte-w5zexe{max-width:348px}}`)}function r1(e){let t,n;return t=new b8({props:{autoSelect:e[8].autoSelect}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,i){const o={};i&256&&(o.autoSelect=r[8].autoSelect),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function i1(e){let t,n;return t=new P8({props:{wallet:e[8].actionRequired}}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},p(r,i){const o={};i&256&&(o.wallet=r[8].actionRequired),t.$set(o)},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function o1(e){let t,n;return t=new S8({}),{c(){be(t.$$.fragment)},m(r,i){me(t,r,i),n=!0},i(r){n||(H(t.$$.fragment,r),n=!0)},o(r){V(t.$$.fragment,r),n=!1},d(r){ge(t,r)}}}function s1(e){let t,n=e[3].position.includes("bottom")&&e[1].position.includes("bottom")&&e[7],r,i,o,s=e[3].position.includes("top")&&e[1].position.includes("top")&&e[7],a,c,p=n&&a1(e),g={ctx:e,current:null,token:null,hasCatch:!1,pending:z8,then:H8,catch:B8,value:23,blocks:[,,,]};ui(e[16],g);let l=s&&l1(e);return{c(){t=B("div"),p&&p.c(),r=ie(),i=B("div"),g.block.c(),o=ie(),l&&l.c(),P(i,"id","account-center-with-notify"),P(t,"class","container flex flex-column fixed z-indexed svelte-w5zexe"),P(t,"style",a=e[15](Xl)[e[1].position]+"; "+(e[11].type==="mobile"&&e[1].position.includes("top")?"padding-bottom: 0;":e[11].type==="mobile"&&e[1].position.includes("bottom")?"padding-top:0;":""))},m(d,h){G(d,t,h),p&&p.m(t,null),j(t,r),j(t,i),g.block.m(i,g.anchor=null),g.mount=()=>i,g.anchor=null,j(t,o),l&&l.m(t,null),c=!0},p(d,h){e=d,h&138&&(n=e[3].position.includes("bottom")&&e[1].position.includes("bottom")&&e[7]),n?p?(p.p(e,h),h&138&&H(p,1)):(p=a1(e),p.c(),H(p,1),p.m(t,r)):p&&(He(),V(p,1,1,()=>{p=null}),Fe()),$o(g,e,h),h&138&&(s=e[3].position.includes("top")&&e[1].position.includes("top")&&e[7]),s?l?(l.p(e,h),h&138&&H(l,1)):(l=l1(e),l.c(),H(l,1),l.m(t,null)):l&&(He(),V(l,1,1,()=>{l=null}),Fe()),(!c||h&2&&a!==(a=e[15](Xl)[e[1].position]+"; "+(e[11].type==="mobile"&&e[1].position.includes("top")?"padding-bottom: 0;":e[11].type==="mobile"&&e[1].position.includes("bottom")?"padding-top:0;":"")))&&P(t,"style",a)},i(d){c||(H(p),H(g.block),H(l),c=!0)},o(d){V(p);for(let h=0;h<3;h+=1){const u=g.blocks[h];V(u)}V(l),c=!1},d(d){d&&U(t),p&&p.d(),g.block.d(),g.token=null,g=null,l&&l.d()}}}function a1(e){let t,n,r={ctx:e,current:null,token:null,hasCatch:!1,pending:D8,then:I8,catch:R8,value:22,blocks:[,,,]};return ui(e[17],r),{c(){t=je(),r.block.c()},m(i,o){G(i,t,o),r.block.m(i,r.anchor=o),r.mount=()=>t.parentNode,r.anchor=t,n=!0},p(i,o){e=i,$o(r,e,o)},i(i){n||(H(r.block),n=!0)},o(i){for(let o=0;o<3;o+=1){const s=r.blocks[o];V(s)}n=!1},d(i){i&&U(t),r.block.d(i),r.token=null,r=null}}}function R8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function I8(e){let t,n,r=e[22]&&N8(e);return{c(){r&&r.c(),t=je()},m(i,o){r&&r.m(i,o),G(i,t,o),n=!0},p(i,o){i[22]&&r.p(i,o)},i(i){n||(H(r),n=!0)},o(i){V(r),n=!1},d(i){r&&r.d(i),i&&U(t)}}}function N8(e){let t,n,r;var i=e[22];function o(s){return{props:{notifications:s[10],position:s[3].position,sharedContainer:s[0]}}}return i&&(t=Wn(i,o(e))),{c(){t&&be(t.$$.fragment),n=je()},m(s,a){t&&me(t,s,a),G(s,n,a),r=!0},p(s,a){const c={};if(a&1024&&(c.notifications=s[10]),a&8&&(c.position=s[3].position),a&1&&(c.sharedContainer=s[0]),i!==(i=s[22])){if(t){He();const p=t;V(p.$$.fragment,1,0,()=>{ge(p,1)}),Fe()}i?(t=Wn(i,o(s)),be(t.$$.fragment),H(t.$$.fragment,1),me(t,n.parentNode,n)):t=null}else i&&t.$set(c)},i(s){r||(t&&H(t.$$.fragment,s),r=!0)},o(s){t&&V(t.$$.fragment,s),r=!1},d(s){s&&U(n),t&&ge(t,s)}}}function D8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function B8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function H8(e){let t,n,r=e[23]&&F8(e);return{c(){r&&r.c(),t=je()},m(i,o){r&&r.m(i,o),G(i,t,o),n=!0},p(i,o){i[23]&&r.p(i,o)},i(i){n||(H(r),n=!0)},o(i){V(r),n=!1},d(i){r&&r.d(i),i&&U(t)}}}function F8(e){let t,n,r;var i=e[23];function o(s){return{}}return i&&(t=Wn(i,o())),{c(){t&&be(t.$$.fragment),n=je()},m(s,a){t&&me(t,s,a),G(s,n,a),r=!0},p(s,a){if(i!==(i=s[23])){if(t){He();const c=t;V(c.$$.fragment,1,0,()=>{ge(c,1)}),Fe()}i?(t=Wn(i,o()),be(t.$$.fragment),H(t.$$.fragment,1),me(t,n.parentNode,n)):t=null}},i(s){r||(t&&H(t.$$.fragment,s),r=!0)},o(s){t&&V(t.$$.fragment,s),r=!1},d(s){s&&U(n),t&&ge(t,s)}}}function z8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function l1(e){let t,n,r={ctx:e,current:null,token:null,hasCatch:!1,pending:G8,then:W8,catch:U8,value:22,blocks:[,,,]};return ui(e[17],r),{c(){t=je(),r.block.c()},m(i,o){G(i,t,o),r.block.m(i,r.anchor=o),r.mount=()=>t.parentNode,r.anchor=t,n=!0},p(i,o){e=i,$o(r,e,o)},i(i){n||(H(r.block),n=!0)},o(i){for(let o=0;o<3;o+=1){const s=r.blocks[o];V(s)}n=!1},d(i){i&&U(t),r.block.d(i),r.token=null,r=null}}}function U8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function W8(e){let t,n,r=e[22]&&V8(e);return{c(){r&&r.c(),t=je()},m(i,o){r&&r.m(i,o),G(i,t,o),n=!0},p(i,o){i[22]&&r.p(i,o)},i(i){n||(H(r),n=!0)},o(i){V(r),n=!1},d(i){r&&r.d(i),i&&U(t)}}}function V8(e){let t,n,r;var i=e[22];function o(s){return{props:{notifications:s[10],position:s[3].position,sharedContainer:s[0]}}}return i&&(t=Wn(i,o(e))),{c(){t&&be(t.$$.fragment),n=je()},m(s,a){t&&me(t,s,a),G(s,n,a),r=!0},p(s,a){const c={};if(a&1024&&(c.notifications=s[10]),a&8&&(c.position=s[3].position),a&1&&(c.sharedContainer=s[0]),i!==(i=s[22])){if(t){He();const p=t;V(p.$$.fragment,1,0,()=>{ge(p,1)}),Fe()}i?(t=Wn(i,o(s)),be(t.$$.fragment),H(t.$$.fragment,1),me(t,n.parentNode,n)):t=null}else i&&t.$set(c)},i(s){r||(t&&H(t.$$.fragment,s),r=!0)},o(s){t&&V(t.$$.fragment,s),r=!1},d(s){s&&U(n),t&&ge(t,s)}}}function G8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function u1(e){let t,n,r,i,o=e[1].enabled&&e[2].length&&c1(e);return{c(){t=B("div"),n=B("div"),o&&o.c(),P(t,"class","container flex flex-column fixed z-indexed svelte-w5zexe"),P(t,"style",r=e[15](Xl)[e[1].position]+"; "+(e[11].type==="mobile"&&e[1].position.includes("top")?"padding-bottom: 0;":e[11].type==="mobile"&&e[1].position.includes("bottom")?"padding-top:0;":""))},m(s,a){G(s,t,a),j(t,n),o&&o.m(n,null),i=!0},p(s,a){s[1].enabled&&s[2].length?o?(o.p(s,a),a&6&&H(o,1)):(o=c1(s),o.c(),H(o,1),o.m(n,null)):o&&(He(),V(o,1,1,()=>{o=null}),Fe()),(!i||a&2&&r!==(r=s[15](Xl)[s[1].position]+"; "+(s[11].type==="mobile"&&s[1].position.includes("top")?"padding-bottom: 0;":s[11].type==="mobile"&&s[1].position.includes("bottom")?"padding-top:0;":"")))&&P(t,"style",r)},i(s){i||(H(o),i=!0)},o(s){V(o),i=!1},d(s){s&&U(t),o&&o.d()}}}function c1(e){let t,n,r={ctx:e,current:null,token:null,hasCatch:!1,pending:X8,then:Z8,catch:q8,value:23,blocks:[,,,]};return ui(e[16],r),{c(){t=je(),r.block.c()},m(i,o){G(i,t,o),r.block.m(i,r.anchor=o),r.mount=()=>t.parentNode,r.anchor=t,n=!0},p(i,o){e=i,$o(r,e,o)},i(i){n||(H(r.block),n=!0)},o(i){for(let o=0;o<3;o+=1){const s=r.blocks[o];V(s)}n=!1},d(i){i&&U(t),r.block.d(i),r.token=null,r=null}}}function q8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function Z8(e){let t,n,r=e[23]&&Q8(e);return{c(){r&&r.c(),t=je()},m(i,o){r&&r.m(i,o),G(i,t,o),n=!0},p(i,o){i[23]&&r.p(i,o)},i(i){n||(H(r),n=!0)},o(i){V(r),n=!1},d(i){r&&r.d(i),i&&U(t)}}}function Q8(e){let t,n,r;var i=e[23];function o(s){return{}}return i&&(t=Wn(i,o())),{c(){t&&be(t.$$.fragment),n=je()},m(s,a){t&&me(t,s,a),G(s,n,a),r=!0},p(s,a){if(i!==(i=s[23])){if(t){He();const c=t;V(c.$$.fragment,1,0,()=>{ge(c,1)}),Fe()}i?(t=Wn(i,o()),be(t.$$.fragment),H(t.$$.fragment,1),me(t,n.parentNode,n)):t=null}},i(s){r||(t&&H(t.$$.fragment,s),r=!0)},o(s){t&&V(t.$$.fragment,s),r=!1},d(s){s&&U(n),t&&ge(t,s)}}}function X8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function f1(e){let t,n,r,i={ctx:e,current:null,token:null,hasCatch:!1,pending:e9,then:K8,catch:Y8,value:22,blocks:[,,,]};return ui(e[17],i),{c(){t=B("div"),i.block.c(),P(t,"class","container flex flex-column fixed z-indexed svelte-w5zexe"),P(t,"style",n=e[15](d1)[e[3].position]+"; "+(e[11].type==="mobile"&&e[3].position.includes("top")?"padding-bottom: 0;":e[11].type==="mobile"&&e[3].position.includes("bottom")?"padding-top:0;":""))},m(o,s){G(o,t,s),i.block.m(t,i.anchor=null),i.mount=()=>t,i.anchor=null,r=!0},p(o,s){e=o,$o(i,e,s),(!r||s&8&&n!==(n=e[15](d1)[e[3].position]+"; "+(e[11].type==="mobile"&&e[3].position.includes("top")?"padding-bottom: 0;":e[11].type==="mobile"&&e[3].position.includes("bottom")?"padding-top:0;":"")))&&P(t,"style",n)},i(o){r||(H(i.block),r=!0)},o(o){for(let s=0;s<3;s+=1){const a=i.blocks[s];V(a)}r=!1},d(o){o&&U(t),i.block.d(),i.token=null,i=null}}}function Y8(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function K8(e){let t,n,r=e[22]&&J8(e);return{c(){r&&r.c(),t=je()},m(i,o){r&&r.m(i,o),G(i,t,o),n=!0},p(i,o){i[22]&&r.p(i,o)},i(i){n||(H(r),n=!0)},o(i){V(r),n=!1},d(i){r&&r.d(i),i&&U(t)}}}function J8(e){let t,n,r;var i=e[22];function o(s){return{props:{notifications:s[10],position:s[3].position,sharedContainer:s[0]}}}return i&&(t=Wn(i,o(e))),{c(){t&&be(t.$$.fragment),n=je()},m(s,a){t&&me(t,s,a),G(s,n,a),r=!0},p(s,a){const c={};if(a&1024&&(c.notifications=s[10]),a&8&&(c.position=s[3].position),a&1&&(c.sharedContainer=s[0]),i!==(i=s[22])){if(t){He();const p=t;V(p.$$.fragment,1,0,()=>{ge(p,1)}),Fe()}i?(t=Wn(i,o(s)),be(t.$$.fragment),H(t.$$.fragment,1),me(t,n.parentNode,n)):t=null}else i&&t.$set(c)},i(s){r||(t&&H(t.$$.fragment,s),r=!0)},o(s){t&&V(t.$$.fragment,s),r=!1},d(s){s&&U(n),t&&ge(t,s)}}}function e9(e){return{c:z,m:z,p:z,i:z,o:z,d:z}}function t9(e){let t,n,r,i,o,s,a,c=e[8].inProgress&&r1(e),p=e[8].actionRequired&&i1(e),g=e[9]&&o1(),l=e[4]&&s1(e),d=e[5]&&u1(e),h=e[6]&&f1(e);return{c(){c&&c.c(),t=ie(),p&&p.c(),n=ie(),g&&g.c(),r=ie(),l&&l.c(),i=ie(),d&&d.c(),o=ie(),h&&h.c(),s=je()},m(u,f){c&&c.m(u,f),G(u,t,f),p&&p.m(u,f),G(u,n,f),g&&g.m(u,f),G(u,r,f),l&&l.m(u,f),G(u,i,f),d&&d.m(u,f),G(u,o,f),h&&h.m(u,f),G(u,s,f),a=!0},p(u,[f]){u[8].inProgress?c?(c.p(u,f),f&256&&H(c,1)):(c=r1(u),c.c(),H(c,1),c.m(t.parentNode,t)):c&&(He(),V(c,1,1,()=>{c=null}),Fe()),u[8].actionRequired?p?(p.p(u,f),f&256&&H(p,1)):(p=i1(u),p.c(),H(p,1),p.m(n.parentNode,n)):p&&(He(),V(p,1,1,()=>{p=null}),Fe()),u[9]?g?f&512&&H(g,1):(g=o1(),g.c(),H(g,1),g.m(r.parentNode,r)):g&&(He(),V(g,1,1,()=>{g=null}),Fe()),u[4]?l?(l.p(u,f),f&16&&H(l,1)):(l=s1(u),l.c(),H(l,1),l.m(i.parentNode,i)):l&&(He(),V(l,1,1,()=>{l=null}),Fe()),u[5]?d?(d.p(u,f),f&32&&H(d,1)):(d=u1(u),d.c(),H(d,1),d.m(o.parentNode,o)):d&&(He(),V(d,1,1,()=>{d=null}),Fe()),u[6]?h?(h.p(u,f),f&64&&H(h,1)):(h=f1(u),h.c(),H(h,1),h.m(s.parentNode,s)):h&&(He(),V(h,1,1,()=>{h=null}),Fe())},i(u){a||(H(c),H(p),H(g),H(l),H(d),H(h),a=!0)},o(u){V(c),V(p),V(g),V(l),V(d),V(h),a=!1},d(u){c&&c.d(u),u&&U(t),p&&p.d(u),u&&U(n),g&&g.d(u),u&&U(r),l&&l.d(u),u&&U(i),d&&d.d(u),u&&U(o),h&&h.d(u),u&&U(s)}}}const Xl="account-center",d1="notify-onboard-container";function n9(e,t,n){let r,i,o,s,a,c,p,g,l,d,h,u;Ge(e,Np,C=>n(2,g=C)),Ge(e,Sn,C=>n(8,d=C)),Ge(e,vo,C=>n(9,h=C));const{device:f,containerElements:b}=Tt,m=ce.select("accountCenter").pipe(Fn(ce.get().accountCenter),Un(1));Ge(e,m,C=>n(1,p=C));const v=ce.select("notify").pipe(Fn(ce.get().notify),Un(1));Ge(e,v,C=>n(3,l=C));const y=ce.select("notifications").pipe(Fn(ce.get().notifications));Ge(e,y,C=>n(10,u=C));const _=C=>({topLeft:` + top: var(--${C}-position-top, 0); + left: var(--${C}-position-left, 0);`,topRight:` + top: var(--${C}-position-top, 0); + right: var(--${C}-position-right, 0);`,bottomRight:` + bottom: var(--${C}-position-bottom, 0); + right: var(--${C}-position-right, 0);`,bottomLeft:` + bottom: var(--${C}-position-bottom, 0); + left: var(--${C}-position-left, 0);`}),k=p.enabled?Xt(()=>import("./Index-6c094240-aac10a74.js"),[],import.meta.url).then(C=>C.default):Promise.resolve(null),x=l.enabled?Xt(()=>import("./Index-64ac63ff-5fb65f27.js"),[],import.meta.url).then(C=>C.default):Promise.resolve(null),S=p.enabled&&b&&b.accountCenter,w=(C,E,A,N)=>{const D=C.attachShadow({mode:"open"});let Y=document.querySelector("onboard-v2").shadowRoot.styleSheets;const re=new CSSStyleSheet;Object.values(Y).forEach(K=>{Object.values(K.cssRules).forEach(oe=>re.insertRule(oe.cssText))}),D.adoptedStyleSheets=[re];const ue=document.querySelector(E);if(ue.appendChild(C),!ue)throw new Error(`Element with query ${E} does not exist.`);(async()=>{let K=await A;K&&new K({target:D,props:{settings:N,mountInContainer:!0}})})()};if(S){const C=document.createElement("onboard-account-center");w(C,S,k,p)}return e.$$.update=()=>{e.$$.dirty&10&&n(0,r=!S&&p.enabled&&l.enabled&&l.position===p.position),e.$$.dirty&10&&n(7,i=f.type==="mobile"||p.position===l.position),e.$$.dirty&10&&n(18,o=l.position.includes("bottom")&&p.position.includes("bottom")||l.position.includes("top")&&p.position.includes("top")),e.$$.dirty&262158&&n(6,s=l.enabled&&(!p.enabled||S||l.position!==p.position&&f.type!=="mobile"||f.type==="mobile"&&!o||!g.length)),e.$$.dirty&262158&&n(5,a=p.enabled&&(!l.enabled||l.position!==p.position&&f.type!=="mobile"||f.type==="mobile"&&!o)&&g.length),e.$$.dirty&262159&&n(4,c=l.enabled&&p.enabled&&(r||f.type==="mobile"&&o)&&g.length)},[r,p,g,l,c,a,s,i,d,h,u,f,m,v,y,_,k,x,o]}class r9 extends lt{constructor(t){super(),at(this,t,n9,t9,ot,{},j8)}}const ms={connectWallet:_5,disconnectWallet:Hp,setChain:A5,state:{get:ce.get,select:ce.select,actions:{setWalletModules:hy,setLocale:m5,updateNotify:al,customNotification:d5,updateBalances:w5,updateAccountCenter:py,setPrimaryWallet:c5,updateTheme:my,updateAppMetadata:gy}}};function i9(e){if(typeof window>"u")return ms;if(e){const y=X6(e);if(y)throw y}const{wallets:t,chains:n,appMetadata:r,i18n:i,accountCenter:o,notify:s,gas:a,connect:c,containerElements:p,transactionPreview:g,theme:l,disableFontDownload:d,unstoppableResolution:h,wagmi:u}=e;p&&Am({containerElements:p});const{device:f,svelteInstance:b}=Tt;if(b&&(console.warn("Re-initializing Onboard and resetting back to initial state"),Rp.next()),R5(i),l5(Z4(n)),typeof c<"u"&&f5(c),typeof o<"u"){let y;const{hideTransactionProtectionBtn:_,transactionProtectionInfoLink:k}=o;f.type==="mobile"?y=Object.assign(Object.assign(Object.assign({},br.accountCenter),{hideTransactionProtectionBtn:_,transactionProtectionInfoLink:k}),o.mobile?o.mobile:{}):o.desktop&&(y=Object.assign(Object.assign(Object.assign({},br.accountCenter),{hideTransactionProtectionBtn:_,transactionProtectionInfoLink:k}),o.desktop)),typeof y<"u"&&py(y)}let m;if(typeof u<"u"&&(m=u(Object.assign({disconnect:Hp,updateChain:dy},O5()))),typeof s<"u")if(console.warn("Support for notifications on transaction state changes have been deprecated. Custom notifications can still be sent ot the user."),"desktop"in s||"mobile"in s){const y=r5(s);if(y)throw y;s&&s.desktop&&s.desktop.position&&o&&o.desktop&&o.desktop.position&&(s.desktop.position=o.desktop.position),s&&s.mobile&&s.mobile.position&&o&&o.mobile&&o.mobile.position&&(s.mobile.position=o.mobile.position);let _={};f.type==="mobile"&&s.mobile?_=Object.assign(Object.assign({},br.notify),s.mobile):s.desktop&&(_=Object.assign(Object.assign({},br.notify),s.desktop)),al(_)}else{const y=fy(s);if(y)throw y;const _=Object.assign(Object.assign({},br.notify),s);al(_)}else{const y=br.notify;al(y)}const v=b||a9(l||{},d||!1);if(Am({svelteInstance:v,initialWalletInit:t,gas:a,unstoppableResolution:h,wagmi:m}),r&&gy(r),g&&console.error("Transaction Preview support has been removed and is no longer supported within Web3-Onboard"),l&&my(l),c&&(c.autoConnectLastWallet||c.autoConnectAllPreviousWallet)){const y=_u(zn.LAST_CONNECTED_WALLET);try{const _=JSON.parse(y);_&&Array.isArray(_)&&_.length&&p1(_,c),_&&typeof _=="string"&&p1([_],c)}catch(_){_ instanceof SyntaxError&&y&&ms.connectWallet({autoSelect:{label:y,disableModals:!0}})}}return ms}const o9=(e,t)=>t||document.body&&(getComputedStyle(document.body).getPropertyValue("--onboard-font-family-normal")||getComputedStyle(document.body).getPropertyValue("--w3o-font-family"))?!0:e?!!(typeof e=="object"&&e["--w3o-font-family"]):!1,s9=async()=>{const{InterVar:e}=await Xt(()=>import("./index-da2ed2d6.js"),[],import.meta.url),t=document.createElement("style");t.innerHTML=` + ${e} + `,document.body.appendChild(t)},p1=async(e,t)=>{const n=[],r=e;if(!t.autoConnectAllPreviousWallet)ms.connectWallet({autoSelect:{label:r[0],disableModals:!0}}),n.push(r[0]);else for(let i=r.length;i--;)(await ms.connectWallet({autoSelect:{label:r[i],disableModals:!0}})).some(s=>s.label===r[i])&&n.unshift(r[i]);wu(zn.LAST_CONNECTED_WALLET,JSON.stringify(n))};function a9(e,t){class n extends HTMLElement{constructor(){super()}}customElements.get("onboard-v2")||customElements.define("onboard-v2",n),o9(e,t)||s9();const r=document.createElement("onboard-v2"),i=r.attachShadow({mode:"open"});r.style.all="initial",i.innerHTML=` + + + `;let o;Tt&&Tt.containerElements&&Tt.containerElements.connectModal&&(o=Tt.containerElements.connectModal);const s=o||ce.get().accountCenter.containerElement||"body",a=document.querySelector(s);if(!a)throw new Error(`Element with query ${s} does not exist.`);return a.appendChild(r),new r9({target:i})}const l9="Must call the provided initialization method`init` method before using hooks.";let fd;const u9=e=>(fd=i9(e),fd);Dn.createContext(void 0);function Ey(){const e=fd;if(!e)throw new Error(l9);return e}var xy={exports:{}},$y={};/** + * @license React + * use-sync-external-store-shim.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var yo=Dn;function c9(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var f9=typeof Object.is=="function"?Object.is:c9,d9=yo.useState,p9=yo.useEffect,h9=yo.useLayoutEffect,m9=yo.useDebugValue;function g9(e,t){var n=t(),r=d9({inst:{value:n,getSnapshot:t}}),i=r[0].inst,o=r[1];return h9(function(){i.value=n,i.getSnapshot=t,Kc(i)&&o({inst:i})},[e,n,t]),p9(function(){return Kc(i)&&o({inst:i}),e(function(){Kc(i)&&o({inst:i})})},[e]),m9(n),n}function Kc(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!f9(e,n)}catch{return!0}}function v9(e,t){return t()}var y9=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?v9:g9;$y.useSyncExternalStore=yo.useSyncExternalStore!==void 0?yo.useSyncExternalStore:y9;xy.exports=$y;var b9=xy.exports;const _9=(e=void 0)=>{const t=Ey(),{select:n,get:r}=t.state,i=Dn.useCallback(a=>{const{unsubscribe:c}=e?n(e).subscribe(a):n().subscribe(a);return()=>c},[e]),o=Dn.useCallback(()=>{const a=r();return e?a[e]:a},[e]),s=()=>o();return b9.useSyncExternalStore(i,o,s)},w9=()=>{const e=Ey(),{connectWallet:t,disconnectWallet:n}=e,i=_9("wallets")[0]||null,[o,s]=Dn.useState(!1),a=Dn.useCallback(async d=>{s(!0);const h=await t(d);return s(!1),h},[]),c=Dn.useCallback(async({label:d})=>{s(!0);const h=await n({label:d});return s(!1),h},[]),p=e.state.actions.updateBalances,g=e.state.actions.setWalletModules,l=e.state.actions.setPrimaryWallet;return[{wallet:i,connecting:o},a,c,p,g,l]};const C9=[{id:"0x1",token:"ETH",label:"Ethereum Mainnet",rpcUrl:"https://rpc.ankr.com/eth"},{id:"0xa",token:"ETH",label:"Optimism",rpcUrl:"https://rpc.ankr.com/optimism"},{id:"0x2105",token:"ETH",label:"Base",rpcUrl:"https://mainnet.base.org"},{id:"0xa4b1",token:"ETH",label:"Arbitrum One",rpcUrl:"https://arb1.arbitrum.io/rpc"},{id:"0xfa",token:"FTM",label:"Fantom",rpcUrl:"https://rpc.fantom.network"},{id:"0x38",token:"BNB",label:"Binance Smart Chain",rpcUrl:"https://bsc-dataseed.binance.org"},{id:"0x89",token:"MATIC",label:"Matic Mainnet",rpcUrl:"https://matic-mainnet.chainstacklabs.com"},{id:"0xa86a",token:"AVAX",label:"Avalanche Mainnet",rpcUrl:"https://api.avax.network/ext/bc/C/rpc"},{id:"0xa4ec",token:"CELO",label:"Celo Mainnet",rpcUrl:"https://rpc.ankr.com/celo"},{id:"0x64",token:"XDAI",label:"Gnosis Chain",rpcUrl:"https://rpc.gnosischain.com/"},{id:"0x44d",token:"ETH",label:"Polygon zkEVM",rpcUrl:"https://zkevm-rpc.com"},{id:"0xe708",token:"ETH",label:"Linea",rpcUrl:"https://linea.drpc.org"},{id:"0x1388",token:"MNT",label:"Mantle",rpcUrl:"https://rpc.mantle.xyz"}],k9=a_({options:{extensionOnly:!1,logging:{developerMode:!0},dappMetadata:{name:"Demo Web3Onboard"}}});u9({wallets:[k9],chains:C9});function S9(){const[{wallet:e,connecting:t},n,r]=w9(),i=async()=>{var a;if(console.log("TODO: test sign"),!e){console.error("ethersProvider is undefined");return}try{const c=await e.provider.request({method:"personal_sign",params:["hello world",(a=e.accounts)==null?void 0:a[0].address]});console.log("result: ",c)}catch(c){console.error("error: ",c)}},o=async()=>{e==null||e.provider.request({method:"wallet_addEthereumChain",params:[{chainId:"0x89",chainName:"Polygon",blockExplorerUrls:["https://polygonscan.com"],nativeCurrency:{symbol:"MATIC",decimals:18},rpcUrls:["https://polygon-rpc.com/"]}]}).then(()=>{const a=document.getElementById("confirmation");a.style.display="block",a.innerText="Polygon has been added to MetaMask."}).catch(a=>{console.log("error: ",a)})},s=async a=>{try{const c=await(e==null?void 0:e.provider.request({method:"wallet_switchEthereumChain",params:[{chainId:a}]}));console.log("result: ",c)}catch(c){const p=c;if(console.log(typeof p),console.log(p),p.code===-32603||p.code===4902){const g=document.getElementById("confirmation");g.style.display="block"}}};return Vt.jsxs(Vt.Fragment,{children:[Vt.jsxs("div",{children:["accounts: ",JSON.stringify(e==null?void 0:e.accounts)]}),Vt.jsxs("div",{children:["chains: ",JSON.stringify(e==null?void 0:e.chains)]}),Vt.jsx("button",{disabled:t,onClick:()=>e?r(e):n(),children:t?"connecting":e?"disconnect":"connect"}),Vt.jsx("button",{title:"test sign",onClick:i,children:"Test Sign"}),Vt.jsxs("div",{children:[Vt.jsx("button",{title:"Add Polygon",id:"addPolygonButton",onClick:()=>s("0x89"),children:"Switch to Polygon"}),Vt.jsxs("div",{id:"confirmation",children:[Vt.jsx("p",{children:"MetaMask doesn't have Polygon, do you want to add it?"}),Vt.jsx("button",{title:"Add Polygon",id:"addPolygonButtonConfirmation",onClick:o,children:"Add Polygon"})]})]})]})}Jc.createRoot(document.getElementById("root")).render(Vt.jsx(qy.StrictMode,{children:Vt.jsx(S9,{})}));export{c4 as $,ol as A,cn as B,u4 as C,yu as D,Ev as E,$9 as F,O9 as G,L9 as H,T9 as I,y4 as J,Eo as K,M9 as L,_4 as M,j9 as N,Sv as O,Rr as P,R9 as Q,o4 as R,s4 as S,a4 as T,Cv as U,A9 as V,g4 as W,v4 as X,b4 as Y,l4 as Z,Xt as _,k4 as a,Vl as a$,i4 as a0,Ln as a1,pu as a2,On as a3,lr as a4,Zf as a5,Mg as a6,Pg as a7,E9 as a8,C_ as a9,be as aA,me as aB,ge as aC,py as aD,z as aE,je as aF,Np as aG,fr as aH,G9 as aI,X9 as aJ,he as aK,Fs as aL,V9 as aM,ye as aN,Li as aO,ee as aP,P4 as aQ,a6 as aR,Ur as aS,rC as aT,w6 as aU,Oe as aV,jt as aW,Pm as aX,aC as aY,lC as aZ,Vn as a_,dn as aa,U_ as ab,D_ as ac,fn as ad,un as ae,co as af,lt as ag,at as ah,ot as ai,st as aj,B as ak,ie as al,P as am,G as an,j as ao,Wt as ap,H as aq,He as ar,V as as,Fe as at,U as au,ce as av,Fn as aw,Un as ax,Ge as ay,ty as az,N9 as b,C6 as b0,y6 as b1,Sy as b2,Ns as b3,Hp as b4,Tt as b5,sC as b6,Q9 as b7,m6 as b8,_5 as b9,K9 as bA,nC as bB,ky as bC,X4 as bD,W9 as bE,jm as bF,p5 as bG,iC as bH,Xc as bI,z9 as bJ,Lv as bK,Z9 as bL,di as bM,H9 as ba,jp as bb,Ql as bc,eC as bd,B9 as be,qs as bf,qg as bg,ey as bh,Fp as bi,A5 as bj,oC as bk,Sn as bl,c5 as bm,F9 as bn,q9 as bo,Tm as bp,Y9 as bq,tC as br,U9 as bs,ui as bt,$o as bu,kp as bv,go as bw,xo as bx,J9 as by,p6 as bz,D9 as c,S4 as d,I9 as e,Nl as f,od as g,wp as h,xv as i,Cp as j,x4 as k,Cr as l,bo as m,P9 as n,_p as o,w4 as p,r4 as q,d4 as r,wm as s,Cm as t,h4 as u,bt as v,C4 as w,kv as x,zr as y,bp as z}; diff --git a/main/packages/examples/with-web3onboard/build/assets/index-da2ed2d6.js b/main/packages/examples/with-web3onboard/build/assets/index-da2ed2d6.js new file mode 100644 index 000000000..fd1496759 --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/index-da2ed2d6.js @@ -0,0 +1,9 @@ +import{P as m,b as u,d as w,h as p,j as g,k as I,c as x,e as y,g as E,i as T,f as V,p as b,t as H,v as q,w as P,a as R}from"./index-c9f1dfa0.js";class r extends Error{constructor(e){super(e.message),this.message=e.message,this.code=e.code,this.data=e.data}}const c=(s,e)=>{let t;s.request?t=s.request.bind(s):s.sendAsync&&(t=d(s));const i=async({method:a,params:o})=>{const n=a;if(e&&e[n]===null)throw new r({code:4200,message:`The Provider does not support the requested method: ${a}`});if(e&&e[n])return e[n]({baseRequest:t,params:o});if(t)return t({method:a,params:o});throw new r({code:4200,message:`The Provider does not support the requested method: ${a}`})};return s.request=i,s},d=s=>({method:e,params:t})=>new Promise((i,a)=>{s.sendAsync({id:0,jsonrpc:"2.0",method:e,params:t},(o,{result:n})=>{o?a(JSON.parse(o)):i(n??null)})}),f=` +@font-face { + font-family: 'Inter'; + font-style: normal; + font-weight: 300 600; + font-display: swap; + src: url("https://rsms.me/inter/font-files/InterVariable.woff2") format("woff2-variations"); +} +`;export{f as InterVar,r as ProviderRpcError,m as ProviderRpcErrorCode,u as bigIntToHex,w as chainIdToViemImport,p as chainIdValidation,g as chainNamespaceValidation,I as chainValidation,x as createDownloadMessage,c as createEIP1193Provider,y as ethToWeiBigInt,E as fromHex,T as isAddress,V as isHex,b as parseEther,H as toHex,q as validate,P as weiHexToEth,R as weiToEth}; diff --git a/main/packages/examples/with-web3onboard/build/assets/index-f80054c0.js b/main/packages/examples/with-web3onboard/build/assets/index-f80054c0.js new file mode 100644 index 000000000..3a9941488 --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/index-f80054c0.js @@ -0,0 +1,2 @@ +import{bU as e,bK as G,Z as J,bL as V,bN as ee,a9 as X,a as q,J as Z,i as k,I as E,bO as te,bW as de,bX as me,bH as ae,F as ue,o as be,aI as he,z as ke,bV as xe}from"./number-84aafe0c.js";import{z as i,t as o,A as W,B as u,C as fe,D as R,n as K,K as ye}from"./index-c9f1dfa0.js";const et=e({id:787,name:"Acala",network:"acala",nativeCurrency:{name:"Acala",symbol:"ACA",decimals:18},rpcUrls:{public:{http:["https://eth-rpc-acala.aca-api.network"],webSocket:["wss://eth-rpc-acala.aca-api.network"]},default:{http:["https://eth-rpc-acala.aca-api.network"],webSocket:["wss://eth-rpc-acala.aca-api.network"]}},blockExplorers:{default:{name:"Acala Blockscout",url:"https://blockscout.acala.network",apiUrl:"https://blockscout.acala.network/api"}},testnet:!1}),Ee={gasPriceOracle:{address:"0x420000000000000000000000000000000000000F"},l1Block:{address:"0x4200000000000000000000000000000000000015"},l2CrossDomainMessenger:{address:"0x4200000000000000000000000000000000000007"},l2Erc721Bridge:{address:"0x4200000000000000000000000000000000000014"},l2StandardBridge:{address:"0x4200000000000000000000000000000000000010"},l2ToL1MessagePasser:{address:"0x4200000000000000000000000000000000000016"}},j={block:G({format(t){var s;return{transactions:(s=t.transactions)==null?void 0:s.map(r=>{if(typeof r=="string")return r;const n=J(r);return n.typeHex==="0x7e"&&(n.isSystemTx=r.isSystemTx,n.mint=r.mint?i(r.mint):void 0,n.sourceHash=r.sourceHash,n.type="deposit"),n}),stateRoot:t.stateRoot}}}),transaction:V({format(t){const a={};return t.type==="0x7e"&&(a.isSystemTx=t.isSystemTx,a.mint=t.mint?i(t.mint):void 0,a.sourceHash=t.sourceHash,a.type="deposit"),a}}),transactionReceipt:ee({format(t){return{l1GasPrice:t.l1GasPrice?i(t.l1GasPrice):null,l1GasUsed:t.l1GasUsed?i(t.l1GasUsed):null,l1Fee:t.l1Fee?i(t.l1Fee):null,l1FeeScalar:t.l1FeeScalar?Number(t.l1FeeScalar):null}}})};function Ce(t,a){return Te(t)?ve(t):X(t,a)}const we={transaction:Ce};function ve(t){Ue(t);const{sourceHash:a,data:s,from:r,gas:n,isSystemTx:c,mint:p,to:m,value:d}=t,b=[a,r,m??"0x",p?o(p):"0x",d?o(d):"0x",n?o(n):"0x",c?"0x1":"0x",s??"0x"];return q(["0x7e",Z(b)])}function Te(t){return t.type==="deposit"||typeof t.sourceHash<"u"}function Ue(t){const{from:a,to:s}=t;if(a&&!k(a))throw new E({address:a});if(s&&!k(s))throw new E({address:s})}const l={contracts:Ee,formatters:j,serializers:we},T=1,tt=e({...l,id:888888888,name:"Ancient8",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.ancient8.gg"]}},blockExplorers:{default:{name:"Ancient8 explorer",url:"https://scan.ancient8.gg",apiUrl:"https://scan.ancient8.gg/api"}},contracts:{...l.contracts,l2OutputOracle:{[T]:{address:"0xB09DC08428C8b4EFB4ff9C0827386CDF34277996"}},portal:{[T]:{address:"0x639F2AECE398Aa76b07e59eF6abe2cFe32bacb68",blockCreated:19070571}},l1StandardBridge:{[T]:{address:"0xd5e3eDf5b68135D559D572E26bF863FBC1950033",blockCreated:19070571}}},sourceId:T}),U=11155111,at=e({...l,id:28122024,name:"Ancient8 Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpcv2-testnet.ancient8.gg"]}},blockExplorers:{default:{name:"Ancient8 Celestia Testnet explorer",url:"https://scanv2-testnet.ancient8.gg",apiUrl:"https://scanv2-testnet.ancient8.gg/api"}},contracts:{...l.contracts,l2OutputOracle:{[U]:{address:"0x942fD5017c0F60575930D8574Eaca13BEcD6e1bB"}},portal:{[U]:{address:"0xfa1d9E26A6aCD7b22115D27572c1221B9803c960",blockCreated:4972908}},l1StandardBridge:{[U]:{address:"0xF6Bc0146d3c74D48306e79Ae134A260E418C9335",blockCreated:4972908}}},sourceId:U}),rt=e({id:31337,name:"Anvil",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["http://127.0.0.1:8545"],webSocket:["ws://127.0.0.1:8545"]}}}),st=e({id:3993,name:"APEX Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc-testnet.apexlayer.xyz"]}},blockExplorers:{default:{name:"Blockscout",url:"https://exp-testnet.apexlayer.xyz",apiUrl:"https://exp-testnet.apexlayer.xyz/api"}},contracts:{multicall3:{address:"0xf7642be33a6b18D16a995657adb5a68CD0438aE2",blockCreated:283775}},testnet:!0}),nt=e({id:42161,name:"Arbitrum One",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://arb1.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://arbiscan.io",apiUrl:"https://api.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7654707}}}),lt=e({id:421613,name:"Arbitrum Goerli",nativeCurrency:{name:"Arbitrum Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://goerli.arbiscan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:88114}},testnet:!0}),ot=e({id:42170,name:"Arbitrum Nova",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://nova.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://nova.arbiscan.io",apiUrl:"https://api-nova.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1746963}}}),ct=e({id:592,name:"Astar",network:"astar-mainnet",nativeCurrency:{name:"Astar",symbol:"ASTR",decimals:18},rpcUrls:{default:{http:["https://astar.api.onfinality.io/public"]}},blockExplorers:{default:{name:"Astar Subscan",url:"https://astar.subscan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:761794}},testnet:!1}),it=e({id:3776,name:"Astar zkEVM",network:"AstarZkEVM",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.startale.com/astar-zkevm"]}},blockExplorers:{default:{name:"Astar zkEVM Explorer",url:"https://astar-zkevm.explorer.startale.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:93528}},testnet:!1}),pt=e({id:6038361,name:"Astar zkEVM Testnet zKyoto",network:"zKyoto",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.startale.com/zkyoto"]}},blockExplorers:{default:{name:"zKyoto Explorer",url:"https://zkyoto.explorer.startale.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:196153}},testnet:!0}),dt=e({id:421614,name:"Arbitrum Sepolia",nativeCurrency:{name:"Arbitrum Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia-rollup.arbitrum.io/rpc"]}},blockExplorers:{default:{name:"Arbiscan",url:"https://sepolia.arbiscan.io",apiUrl:"https://api-sepolia.arbiscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:81930}},testnet:!0}),mt=e({id:463,name:"Areon Network",nativeCurrency:{decimals:18,name:"AREA",symbol:"AREA"},rpcUrls:{default:{http:["https://mainnet-rpc.areon.network"],webSocket:["wss://mainnet-ws.areon.network"]}},blockExplorers:{default:{name:"Areonscan",url:"https://areonscan.com"}},testnet:!1}),ut=e({id:462,name:"Areon Network Testnet",nativeCurrency:{decimals:18,name:"TAREA",symbol:"TAREA"},rpcUrls:{default:{http:["https://testnet-rpc.areon.network"],webSocket:["wss://testnet-ws.areon.network"]}},blockExplorers:{default:{name:"Areonscan",url:"https://areonscan.com"}},testnet:!0}),bt=e({id:1313161554,name:"Aurora",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://mainnet.aurora.dev"]}},blockExplorers:{default:{name:"Aurorascan",url:"https://aurorascan.dev",apiUrl:"https://aurorascan.dev/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:62907816}}}),ht=e({id:1313161555,name:"Aurora Testnet",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://testnet.aurora.dev"]}},blockExplorers:{default:{name:"Aurorascan",url:"https://testnet.aurorascan.dev",apiUrl:"https://testnet.aurorascan.dev/api"}},testnet:!0}),kt=e({id:205205,name:"Auroria Testnet",network:"auroria",nativeCurrency:{name:"Auroria Stratis",symbol:"tSTRAX",decimals:18},rpcUrls:{default:{http:["https://auroria.rpc.stratisevm.com"]}},blockExplorers:{default:{name:"Auroria Testnet Explorer",url:"https://auroria.explorer.stratisevm.com"}},testnet:!0}),xt=e({id:43114,name:"Avalanche",nativeCurrency:{decimals:18,name:"Avalanche",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax.network/ext/bc/C/rpc"]}},blockExplorers:{default:{name:"SnowScan",url:"https://snowscan.xyz",apiUrl:"https://api.snowscan.xyz/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:11907934}}}),ft=e({id:43113,name:"Avalanche Fuji",nativeCurrency:{decimals:18,name:"Avalanche Fuji",symbol:"AVAX"},rpcUrls:{default:{http:["https://api.avax-test.network/ext/bc/C/rpc"]}},blockExplorers:{default:{name:"SnowScan",url:"https://testnet.snowscan.xyz",apiUrl:"https://api-testnet.snowscan.xyz"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7096959}},testnet:!0}),yt=e({id:5165,network:"bahamut",name:"Bahamut",nativeCurrency:{name:"Fasttoken",symbol:"FTN",decimals:18},rpcUrls:{default:{http:["https://rpc1.bahamut.io","https://bahamut-rpc.publicnode.com","https://rpc2.bahamut.io"],webSocket:["wss://ws1.sahara.bahamutchain.com","wss://bahamut-rpc.publicnode.com","wss://ws2.sahara.bahamutchain.com"]},public:{http:["https://rpc1.bahamut.io","https://bahamut-rpc.publicnode.com","https://rpc2.bahamut.io"],webSocket:["wss://ws1.sahara.bahamutchain.com","wss://bahamut-rpc.publicnode.com","wss://ws2.sahara.bahamutchain.com"]}},blockExplorers:{default:{name:"Ftnscan",url:"https://www.ftnscan.com",apiUrl:"https://www.ftnscan.com/api"}}}),g=1,Et=e({...l,id:8453,name:"Base",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://basescan.org",apiUrl:"https://api.basescan.org/api"}},contracts:{...l.contracts,l2OutputOracle:{[g]:{address:"0x56315b90c40730925ec5485cf004d835058518A0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:5022},portal:{[g]:{address:"0x49048044D57e1C92A77f79988d21Fa8fAF74E97e",blockCreated:17482143}},l1StandardBridge:{[g]:{address:"0x3154Cf16ccdb4C6d922629664174b904d80F2C35",blockCreated:17482143}}},sourceId:g}),S=5,Ct=e({...l,id:84531,name:"Base Goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://goerli.basescan.org",apiUrl:"https://goerli.basescan.org/api"}},contracts:{...l.contracts,l2OutputOracle:{[S]:{address:"0x2A35891ff30313CcFa6CE88dcf3858bb075A2298"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1376988},portal:{[S]:{address:"0xe93c8cD0D409341205A592f8c4Ac1A5fe5585cfA"}},l1StandardBridge:{[S]:{address:"0xfA6D8Ee5BE770F84FC001D098C4bD604Fe01284a"}}},testnet:!0,sourceId:S}),A=11155111,wt=e({...l,id:84532,network:"base-sepolia",name:"Base Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.base.org"]}},blockExplorers:{default:{name:"Basescan",url:"https://sepolia.basescan.org",apiUrl:"https://api-sepolia.basescan.org/api"}},contracts:{...l.contracts,l2OutputOracle:{[A]:{address:"0x84457ca9D0163FbC4bbfe4Dfbb20ba46e48DF254"}},portal:{[A]:{address:"0x49f53e41452c74589e85ca1677426ba426459e85",blockCreated:4446677}},l1StandardBridge:{[A]:{address:"0xfd0Bf71F60660E2f608ed56e1659C450eB113120",blockCreated:4446677}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1059647}},testnet:!0,sourceId:A}),vt=e({id:4337,name:"Beam",network:"beam",nativeCurrency:{decimals:18,name:"Beam",symbol:"BEAM"},rpcUrls:{public:{http:["https://build.onbeam.com/rpc"],webSocket:["wss://build.onbeam.com/ws"]},default:{http:["https://build.onbeam.com/rpc"],webSocket:["wss://build.onbeam.com/ws"]}},blockExplorers:{default:{name:"Beam Explorer",url:"https://subnets.avax.network/beam"}},contracts:{multicall3:{address:"0x4956f15efdc3dc16645e90cc356eafa65ffc65ec",blockCreated:1}}}),Tt=e({id:13337,name:"Beam Testnet",network:"beam",nativeCurrency:{decimals:18,name:"Beam",symbol:"BEAM"},rpcUrls:{public:{http:["https://build.onbeam.com/rpc/testnet"],webSocket:["wss://build.onbeam.com/ws/testnet"]},default:{http:["https://build.onbeam.com/rpc/testnet"],webSocket:["wss://build.onbeam.com/ws/testnet"]}},blockExplorers:{default:{name:"Beam Explorer",url:"https://subnets-test.avax.network/beam"}},contracts:{multicall3:{address:"0x9bf49b704ee2a095b95c1f2d4eb9010510c41c9e",blockCreated:3}},testnet:!0}),Ut=e({id:641230,name:"Bear Network Chain Mainnet",nativeCurrency:{decimals:18,name:"BearNetworkChain",symbol:"BRNKC"},rpcUrls:{default:{http:["https://brnkc-mainnet.bearnetwork.net"]}},blockExplorers:{default:{name:"BrnkScan",url:"https://brnkscan.bearnetwork.net",apiUrl:"https://brnkscan.bearnetwork.net/api"}}}),gt=e({id:751230,name:"Bear Network Chain Testnet",nativeCurrency:{decimals:18,name:"tBRNKC",symbol:"tBRNKC"},rpcUrls:{default:{http:["https://brnkc-test.bearnetwork.net"]}},blockExplorers:{default:{name:"BrnkTestScan",url:"https://brnktest-scan.bearnetwork.net",apiUrl:"https://brnktest-scan.bearnetwork.net/api"}},testnet:!0}),St=e({id:80085,name:"Berachain Artio",nativeCurrency:{decimals:18,name:"BERA Token",symbol:"BERA"},rpcUrls:{default:{http:["https://artio.rpc.berachain.com"]}},blockExplorers:{default:{name:"Berachain",url:"https://artio.beratrail.io"}},testnet:!0}),At=e({id:11501,name:"BEVM Mainnet",nativeCurrency:{name:"Bitcoin",symbol:"BTC",decimals:18},rpcUrls:{default:{http:["https://rpc-mainnet-1.bevm.io"]}},blockExplorers:{default:{name:"Bevmscan",url:"https://scan-mainnet.bevm.io",apiUrl:"https://scan-mainnet-api.bevm.io/api"}}}),Bt=e({id:199,name:"BitTorrent",network:"bittorrent-chain-mainnet",nativeCurrency:{name:"BitTorrent",symbol:"BTT",decimals:18},rpcUrls:{default:{http:["https://rpc.bittorrentchain.io"]},public:{http:["https://rpc.bittorrentchain.io"]}},blockExplorers:{default:{name:"Bttcscan",url:"https://bttcscan.com",apiUrl:"https://api.bttcscan.com/api"}}}),Ft=e({id:1028,name:"BitTorrent Chain Testnet",network:"bittorrent-chain-testnet",nativeCurrency:{name:"BitTorrent",symbol:"BTT",decimals:18},rpcUrls:{default:{http:["https://testrpc.bittorrentchain.io"]},public:{http:["https://testrpc.bittorrentchain.io"]}},blockExplorers:{default:{name:"Bttcscan",url:"https://testnet.bttcscan.com",apiUrl:"https://testnet.bttcscan.com/api"}},testnet:!0}),ge=1,Mt=e({id:81457,name:"Blast",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.blast.io"]}},blockExplorers:{default:{name:"Blastscan",url:"https://blastscan.io",apiUrl:"https://api.blastscan.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:212929}},sourceId:ge}),Se=11155111,zt=e({id:168587773,name:"Blast Sepolia",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.blast.io"]}},blockExplorers:{default:{name:"Blastscan",url:"https://sepolia.blastscan.io",apiUrl:"https://api-sepolia.blastscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:756690}},testnet:!0,sourceId:Se}),Dt=e({id:60808,name:"BOB",nativeCurrency:{decimals:18,name:"ETH",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.gobob.xyz"],webSocket:["wss://rpc.gobob.xyz"]}},blockExplorers:{default:{name:"Blockscout",url:"https://explorer.gobob.xyz"}},contracts:{multicall3:{address:"0x63f8279bccDb75c0F38e0CD6B6A0c72a0a760FF9",blockCreated:457045}},testnet:!1}),It=e({id:288,name:"Boba Network",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://mainnet.boba.network"]}},blockExplorers:{default:{name:"BOBAScan",url:"https://bobascan.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:446859}}}),_t=e({id:1039,name:"Bronos",nativeCurrency:{decimals:18,name:"BRO",symbol:"BRO"},rpcUrls:{default:{http:["https://evm.bronos.org"]}},blockExplorers:{default:{name:"BronoScan",url:"https://broscan.bronos.org"}}}),Ht=e({id:1038,name:"Bronos Testnet",nativeCurrency:{decimals:18,name:"Bronos Coin",symbol:"tBRO"},rpcUrls:{default:{http:["https://evm-testnet.bronos.org"]}},blockExplorers:{default:{name:"BronoScan",url:"https://tbroscan.bronos.org"}},testnet:!0}),Pt=e({id:56,name:"BNB Smart Chain",nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://rpc.ankr.com/bsc"]}},blockExplorers:{default:{name:"BscScan",url:"https://bscscan.com",apiUrl:"https://api.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15921452}}}),Ot=e({id:97,name:"Binance Smart Chain Testnet",nativeCurrency:{decimals:18,name:"BNB",symbol:"tBNB"},rpcUrls:{default:{http:["https://data-seed-prebsc-1-s1.bnbchain.org:8545"]}},blockExplorers:{default:{name:"BscScan",url:"https://testnet.bscscan.com",apiUrl:"https://testnet.bscscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:17422483}},testnet:!0}),Lt=e({id:1017,name:"BNB Greenfield Chain",nativeCurrency:{decimals:18,name:"BNB",symbol:"BNB"},rpcUrls:{default:{http:["https://greenfield-chain.bnbchain.org"]}},blockExplorers:{default:{name:"BNB Greenfield Mainnet Scan",url:"https://greenfieldscan.com"}},testnet:!1}),Nt=e({id:200901,name:"Bitlayer",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.bitlayer.org","https://rpc.bitlayer-rpc.com","https://rpc.ankr.com/bitlayer"],webSocket:["wss://ws.bitlayer.org","wss://ws.bitlayer-rpc.com"]}},blockExplorers:{default:{name:"btrscan",url:"https://www.btrscan.com",apiUrl:"https://www.btrscan.com/apis"}}}),Rt=e({id:200810,name:"Bitlayer Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://testnet-rpc.bitlayer.org"],webSocket:["wss://testnet-ws.bitlayer.org","wss://testnet-ws.bitlayer-rpc.com"]}},blockExplorers:{default:{name:"btrscan",url:"https://testnet-scan.bitlayer.org",apiUrl:"https://testnet-scan.bitlayer.org/apis"}}}),Kt=e({id:4999,name:"BlackFort Exchange Network",nativeCurrency:{name:"BlackFort Token",symbol:"BXN",decimals:18},rpcUrls:{default:{http:["https://mainnet.blackfort.network/rpc"]}},blockExplorers:{default:{name:"Blockscout",url:"https://explorer.blackfort.network",apiUrl:"https://explorer.blackfort.network/api"}}}),Gt=e({id:4777,name:"BlackFort Exchange Network Testnet",nativeCurrency:{name:"BlackFort Testnet Token",symbol:"TBXN",decimals:18},rpcUrls:{default:{http:["https://testnet.blackfort.network/rpc"]}},blockExplorers:{default:{name:"Blockscout",url:"https://testnet-explorer.blackfort.network",apiUrl:"https://testnet-explorer.blackfort.network/api"}},testnet:!0}),Vt=e({id:7700,name:"Canto",nativeCurrency:{decimals:18,name:"Canto",symbol:"CANTO"},rpcUrls:{default:{http:["https://canto.gravitychain.io"]}},blockExplorers:{default:{name:"Tuber.Build (Blockscout)",url:"https://tuber.build"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:2905789}}}),Ae={estimateFeesPerGas:async t=>{var r;if(!((r=t.request)!=null&&r.feeCurrency))return null;const[a,s]=await Promise.all([Be(t.client,t.request.feeCurrency),Fe(t.client,t.request.feeCurrency)]);return{maxFeePerGas:a,maxPriorityFeePerGas:s}}};async function Be(t,a){const s=await t.request({method:"eth_gasPrice",params:[a]});return BigInt(s)}async function Fe(t,a){const s=await t.request({method:"eth_maxPriorityFeePerGas",params:[a]});return BigInt(s)}function re(t){return t===0||t===0n||t===void 0||t===null||t==="0"||t===""||typeof t=="string"&&(W(t).toLowerCase()==="0x"||W(t).toLowerCase()==="0x00")}function w(t){return!re(t)}function Me(t){return typeof t.maxFeePerGas<"u"&&typeof t.maxPriorityFeePerGas<"u"}function se(t){return t.type==="cip64"?!0:Me(t)&&w(t.feeCurrency)}const ze={block:G({exclude:["difficulty","gasLimit","mixHash","nonce","uncles"],format(t){var s;const a=(s=t.transactions)==null?void 0:s.map(r=>typeof r=="string"?r:{...J(r),feeCurrency:r.feeCurrency,...r.type!=="0x7b"?{gatewayFee:r.gatewayFee?i(r.gatewayFee):null,gatewayFeeRecipient:r.gatewayFeeRecipient||null}:{}});return{randomness:t.randomness,transactions:a}}}),transaction:V({format(t){const a={feeCurrency:t.feeCurrency};return t.type==="0x7b"?a.type="cip64":(t.type==="0x7c"&&(a.type="cip42"),a.gatewayFee=t.gatewayFee?i(t.gatewayFee):null,a.gatewayFeeRecipient=t.gatewayFeeRecipient),a}}),transactionRequest:te({format(t){const a={feeCurrency:t.feeCurrency};return se(t)&&(a.type="0x7b"),a}})};function De(t,a){return se(t)?_e(t,a):X(t,a)}const Ie={transaction:De};function _e(t,a){Pe(t);const{chainId:s,gas:r,nonce:n,to:c,value:p,maxFeePerGas:m,maxPriorityFeePerGas:d,accessList:b,feeCurrency:f,data:y}=t,h=[o(s),n?o(n):"0x",d?o(d):"0x",m?o(m):"0x",r?o(r):"0x",c??"0x",p?o(p):"0x",y??"0x",de(b),f,...me(t,a)];return q(["0x7b",Z(h)])}const He=2n**256n-1n;function Pe(t){const{chainId:a,maxPriorityFeePerGas:s,gasPrice:r,maxFeePerGas:n,to:c,feeCurrency:p}=t;if(a<=0)throw new ae({chainId:a});if(c&&!k(c))throw new E({address:c});if(r)throw new u("`gasPrice` is not a valid CIP-64 Transaction attribute.");if(w(n)&&n>He)throw new ue({maxFeePerGas:n});if(w(s)&&w(n)&&s>n)throw new be({maxFeePerGas:n,maxPriorityFeePerGas:s});if(w(p)&&!k(p))throw new u("`feeCurrency` MUST be a token address for CIP-64 transactions.");if(re(p))throw new u("`feeCurrency` must be provided for CIP-64 transactions.")}const ne={formatters:ze,serializers:Ie,fees:Ae},Xt=e({...ne,id:42220,name:"Celo",nativeCurrency:{decimals:18,name:"CELO",symbol:"CELO"},rpcUrls:{default:{http:["https://forno.celo.org"]}},blockExplorers:{default:{name:"Celo Explorer",url:"https://celoscan.io",apiUrl:"https://api.celoscan.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:13112599}},testnet:!1}),qt=e({...ne,id:44787,name:"Alfajores",nativeCurrency:{decimals:18,name:"CELO",symbol:"A-CELO"},rpcUrls:{default:{http:["https://alfajores-forno.celo-testnet.org"]}},blockExplorers:{default:{name:"Celo Explorer",url:"https://explorer.celo.org/alfajores",apiUrl:"https://explorer.celo.org/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:14569001}},testnet:!0}),Zt=e({id:88888,name:"Chiliz Chain",network:"chiliz-chain",nativeCurrency:{decimals:18,name:"CHZ",symbol:"CHZ"},rpcUrls:{default:{http:["https://rpc.ankr.com/chiliz","https://chiliz-rpc.publicnode.com"]}},blockExplorers:{default:{name:"Chiliz Explorer",url:"https://scan.chiliz.com",apiUrl:"https://scan.chiliz.com/api"}}}),jt=e({id:61,name:"Ethereum Classic",nativeCurrency:{decimals:18,name:"ETC",symbol:"ETC"},rpcUrls:{default:{http:["https://etc.rivet.link"]}},blockExplorers:{default:{name:"Blockscout",url:"https://blockscout.com/etc/mainnet"}}}),$t=e({id:1030,name:"Conflux eSpace",nativeCurrency:{name:"Conflux",symbol:"CFX",decimals:18},rpcUrls:{default:{http:["https://evm.confluxrpc.org"],webSocket:["wss://evm.confluxrpc.org/ws"]}},blockExplorers:{default:{name:"ConfluxScan",url:"https://evm.confluxscan.io"}},contracts:{multicall3:{address:"0xEFf0078910f638cd81996cc117bccD3eDf2B072F",blockCreated:68602935}}}),Wt=e({id:71,name:"Conflux eSpace Testnet",network:"cfx-espace-testnet",testnet:!0,nativeCurrency:{name:"Conflux",symbol:"CFX",decimals:18},rpcUrls:{default:{http:["https://evmtestnet.confluxrpc.org"],webSocket:["wss://evmtestnet.confluxrpc.org/ws"]}},blockExplorers:{default:{name:"ConfluxScan",url:"https://evmtestnet.confluxscan.io"}},contracts:{multicall3:{address:"0xEFf0078910f638cd81996cc117bccD3eDf2B072F",blockCreated:117499050}}}),Qt=e({id:1116,name:"Core Dao",nativeCurrency:{decimals:18,name:"Core",symbol:"CORE"},rpcUrls:{default:{http:["https://rpc.coredao.org"]}},blockExplorers:{default:{name:"CoreDao",url:"https://scan.coredao.org"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:11907934}},testnet:!1}),Yt=e({id:25,name:"Cronos Mainnet",nativeCurrency:{decimals:18,name:"Cronos",symbol:"CRO"},rpcUrls:{default:{http:["https://evm.cronos.org"]}},blockExplorers:{default:{name:"Cronos Explorer",url:"https://explorer.cronos.org",apiUrl:"https://explorer-api.cronos.org/mainnet/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1963112}}}),Jt=e({id:338,name:"Cronos Testnet",nativeCurrency:{decimals:18,name:"CRO",symbol:"tCRO"},rpcUrls:{default:{http:["https://evm-t3.cronos.org"]}},blockExplorers:{default:{name:"Cronos Explorer",url:"https://cronos.org/explorer/testnet3"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:10191251}},testnet:!0}),ea=e({id:3737,name:"Crossbell",nativeCurrency:{decimals:18,name:"CSB",symbol:"CSB"},rpcUrls:{default:{http:["https://rpc.crossbell.io"]}},blockExplorers:{default:{name:"CrossScan",url:"https://scan.crossbell.io",apiUrl:"https://scan.crossbell.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:38246031}}}),ta=e({id:7560,name:"Cyber",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://cyber.alt.technology"]}},blockExplorers:{default:{name:"Blockscout",url:"https://cyberscan.co",apiUrl:"https://cyberscan.co/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:0}}}),aa=e({id:111557560,name:"Cyber Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://cyber-testnet.alt.technology"]}},blockExplorers:{default:{name:"Blockscout",url:"https://testnet.cyberscan.co",apiUrl:"https://testnet.cyberscan.co/api"}},contracts:{multicall3:{address:"0xffc391F0018269d4758AEA1a144772E8FB99545E",blockCreated:304545}},testnet:!0}),ra=e({id:46,name:"Darwinia Network",nativeCurrency:{decimals:18,name:"RING",symbol:"RING"},rpcUrls:{default:{http:["https://rpc.darwinia.network"],webSocket:["wss://rpc.darwinia.network"]}},blockExplorers:{default:{name:"Explorer",url:"https://darwinia.subscan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:69420}}}),sa=e({id:1130,network:"defichain-evm",name:"DeFiChain EVM Mainnet",nativeCurrency:{name:"DeFiChain",symbol:"DFI",decimals:8},rpcUrls:{default:{http:["https://eth.mainnet.ocean.jellyfishsdk.com"]},public:{http:["https://eth.mainnet.ocean.jellyfishsdk.com"]}},blockExplorers:{default:{name:"DeFiScan",url:"https://meta.defiscan.live"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:137852}}}),na=e({id:1131,network:"defichain-evm-testnet",name:"DeFiChain EVM Testnet",nativeCurrency:{name:"DeFiChain",symbol:"DFI",decimals:8},rpcUrls:{default:{http:["https://eth.testnet.ocean.jellyfishsdk.com"]},public:{http:["https://eth.testnet.ocean.jellyfishsdk.com"]}},blockExplorers:{default:{name:"DeFiScan",url:"https://meta.defiscan.live/?network=TestNet"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:156462}},testnet:!0}),la=e({id:666666666,name:"Degen",nativeCurrency:{decimals:18,name:"Degen",symbol:"DEGEN"},rpcUrls:{default:{http:["https://rpc.degen.tips"],webSocket:["wss://rpc.degen.tips"]}},blockExplorers:{default:{name:"Degen Chain Explorer",url:"https://explorer.degen.tips",apiUrl:"https://explorer.degen.tips/api/v2"}}}),oa=e({id:53935,name:"DFK Chain",nativeCurrency:{decimals:18,name:"Jewel",symbol:"JEWEL"},rpcUrls:{default:{http:["https://subnets.avax.network/defi-kingdoms/dfk-chain/rpc"]}},blockExplorers:{default:{name:"DFKSubnetScan",url:"https://subnets.avax.network/defi-kingdoms"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14790551}}}),ca=e({id:53457,name:"DODOchain Testnet",nativeCurrency:{decimals:18,name:"DODO",symbol:"DODO"},rpcUrls:{default:{http:["https://dodochain-testnet.alt.technology"],webSocket:["wss://dodochain-testnet.alt.technology/ws"]}},blockExplorers:{default:{name:"DODOchain Testnet (Sepolia) Explorer",url:"https://testnet-scan.dodochain.com"}},testnet:!0}),ia=e({id:2e3,name:"Dogechain",nativeCurrency:{decimals:18,name:"Dogechain",symbol:"DC"},rpcUrls:{default:{http:["https://rpc.dogechain.dog"]}},blockExplorers:{default:{name:"DogeChainExplorer",url:"https://explorer.dogechain.dog",apiUrl:"https://explorer.dogechain.dog/api"}}}),pa=e({id:23451,name:"DreyerX Mainnet",nativeCurrency:{name:"DreyerX",symbol:"DRX",decimals:18},rpcUrls:{default:{http:["https://rpc.dreyerx.com"]}},blockExplorers:{default:{name:"DreyerX Scan",url:"https://scan.dreyerx.com"}}}),da=e({id:2026,name:"Edgeless Network",nativeCurrency:{name:"Edgeless Wrapped ETH",symbol:"EwETH",decimals:18},rpcUrls:{default:{http:["https://rpc.edgeless.network/http"],webSocket:["wss://rpc.edgeless.network/ws"]}},blockExplorers:{default:{name:"Edgeless Explorer",url:"https://explorer.edgeless.network"}}}),ma=e({id:202,name:"Edgeless Testnet",nativeCurrency:{name:"Edgeless Wrapped ETH",symbol:"EwETH",decimals:18},rpcUrls:{default:{http:["https://edgeless-testnet.rpc.caldera.xyz/http"],webSocket:["wss://edgeless-testnet.rpc.caldera.xyz/ws"]}},blockExplorers:{default:{name:"Edgeless Testnet Explorer",url:"https://testnet.explorer.edgeless.network"}}}),ua=e({id:2021,name:"Edgeware EdgeEVM Mainnet",nativeCurrency:{decimals:18,name:"Edgeware",symbol:"EDG"},rpcUrls:{default:{http:["https://edgeware-evm.jelliedowl.net"]}},blockExplorers:{default:{name:"Edgscan by Bharathcoorg",url:"https://edgscan.live",apiUrl:"https://edgscan.live/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:18117872}}}),ba=e({id:2022,name:"Beresheet BereEVM Testnet",nativeCurrency:{decimals:18,name:"Testnet EDG",symbol:"tEDG"},rpcUrls:{default:{http:["https://beresheet-evm.jelliedowl.net"]}},blockExplorers:{default:{name:"Edgscan by Bharathcoorg",url:"https://testnet.edgscan.live",apiUrl:"https://testnet.edgscan.live/api"}}}),ha=e({id:7332,name:"Horizen EON",nativeCurrency:{decimals:18,name:"ZEN",symbol:"ZEN"},rpcUrls:{default:{http:["https://eon-rpc.horizenlabs.io/ethv1"]}},blockExplorers:{default:{name:"EON Explorer",url:"https://eon-explorer.horizenlabs.io"}},contracts:{}}),ka=e({id:17777,name:"EOS EVM",nativeCurrency:{decimals:18,name:"EOS",symbol:"EOS"},rpcUrls:{default:{http:["https://api.evm.eosnetwork.com"]}},blockExplorers:{default:{name:"EOS EVM Explorer",url:"https://explorer.evm.eosnetwork.com",apiUrl:"https://explorer.evm.eosnetwork.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:7943933}}}),xa=e({id:15557,name:"EOS EVM Testnet",nativeCurrency:{decimals:18,name:"EOS",symbol:"EOS"},rpcUrls:{default:{http:["https://api.testnet.evm.eosnetwork.com"]}},blockExplorers:{default:{name:"EOS EVM Testnet Explorer",url:"https://explorer.testnet.evm.eosnetwork.com",apiUrl:"https://explorer.testnet.evm.eosnetwork.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:9067940}},testnet:!0}),fa=e({id:128123,name:"Etherlink Testnet",nativeCurrency:{decimals:18,name:"Tez",symbol:"XTZ"},rpcUrls:{default:{http:["https://node.ghostnet.etherlink.com"]}},blockExplorers:{default:{name:"Etherlink Testnet",url:"https://testnet-explorer.etherlink.com"}},testnet:!0}),ya=e({id:9001,name:"Evmos",nativeCurrency:{decimals:18,name:"Evmos",symbol:"EVMOS"},rpcUrls:{default:{http:["https://eth.bd.evmos.org:8545"]}},blockExplorers:{default:{name:"Evmos Block Explorer",url:"https://escan.live"}}}),Ea=e({id:9e3,name:"Evmos Testnet",nativeCurrency:{decimals:18,name:"Evmos",symbol:"EVMOS"},rpcUrls:{default:{http:["https://eth.bd.evmos.dev:8545"]}},blockExplorers:{default:{name:"Evmos Testnet Block Explorer",url:"https://evm.evmos.dev/"}}}),Ca=e({id:1994,name:"Ekta",nativeCurrency:{decimals:18,name:"EKTA",symbol:"EKTA"},rpcUrls:{default:{http:["https://main.ekta.io"]}},blockExplorers:{default:{name:"Ektascan",url:"https://ektascan.io",apiUrl:"https://ektascan.io/api"}}}),wa=e({id:1004,name:"Ekta Testnet",nativeCurrency:{decimals:18,name:"EKTA",symbol:"EKTA"},rpcUrls:{default:{http:["https://test.ekta.io:8545"]}},blockExplorers:{default:{name:"Test Ektascan",url:"https://test.ektascan.io",apiUrl:"https://test.ektascan.io/api"}},testnet:!0}),va=e({id:250,name:"Fantom",nativeCurrency:{decimals:18,name:"Fantom",symbol:"FTM"},rpcUrls:{default:{http:["https://rpc.ankr.com/fantom"]}},blockExplorers:{default:{name:"FTMScan",url:"https://ftmscan.com",apiUrl:"https://api.ftmscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:33001987}}}),Ta=e({id:64240,name:"Fantom Sonic Open Testnet",network:"fantom-sonic-testnet",nativeCurrency:{decimals:18,name:"Fantom",symbol:"FTM"},rpcUrls:{default:{http:["https://rpcapi.sonic.fantom.network"]}},blockExplorers:{default:{name:"Fantom Sonic Open Testnet Explorer",url:"https://public-sonic.fantom.network"}},testnet:!0}),Ua=e({id:4002,name:"Fantom Testnet",nativeCurrency:{decimals:18,name:"Fantom",symbol:"FTM"},rpcUrls:{default:{http:["https://rpc.testnet.fantom.network"]}},blockExplorers:{default:{name:"FTMScan",url:"https://testnet.ftmscan.com",apiUrl:"https://testnet.ftmscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:8328688}}}),ga=e({id:12306,name:"Fibo Chain",nativeCurrency:{decimals:18,name:"fibo",symbol:"FIBO"},rpcUrls:{default:{http:["https://network.hzroc.art"]}},blockExplorers:{default:{name:"FiboScan",url:"https://scan.fibochain.org"}}}),Sa=e({id:314,name:"Filecoin Mainnet",nativeCurrency:{decimals:18,name:"filecoin",symbol:"FIL"},rpcUrls:{default:{http:["https://api.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filfox",url:"https://filfox.info/en"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3328594}}}),Aa=e({id:314159,name:"Filecoin Calibration",nativeCurrency:{decimals:18,name:"testnet filecoin",symbol:"tFIL"},rpcUrls:{default:{http:["https://api.calibration.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filscan",url:"https://calibration.filscan.io"}},testnet:!0}),Ba=e({id:3141,name:"Filecoin Hyperspace",nativeCurrency:{decimals:18,name:"testnet filecoin",symbol:"tFIL"},rpcUrls:{default:{http:["https://api.hyperspace.node.glif.io/rpc/v1"]}},blockExplorers:{default:{name:"Filfox",url:"https://hyperspace.filfox.info/en"}},testnet:!0}),Fa=e({id:14,name:"Flare Mainnet",nativeCurrency:{decimals:18,name:"flare",symbol:"FLR"},rpcUrls:{default:{http:["https://flare-api.flare.network/ext/C/rpc"]}},blockExplorers:{default:{name:"Flare Explorer",url:"https://flare-explorer.flare.network",apiUrl:"https://flare-explorer.flare.network/api"}}}),Ma=e({id:114,name:"Coston2",nativeCurrency:{decimals:18,name:"coston2flare",symbol:"C2FLR"},rpcUrls:{default:{http:["https://coston2-api.flare.network/ext/C/rpc"]}},blockExplorers:{default:{name:"Coston2 Explorer",url:"https://coston2-explorer.flare.network",apiUrl:"https://coston2-explorer.flare.network/api"}},testnet:!0}),za=e({id:646,name:"FlowEVM Previewnet",nativeCurrency:{decimals:18,name:"Flow",symbol:"FLOW"},rpcUrls:{default:{http:["https://previewnet.evm.nodes.onflow.org"]}},blockExplorers:{default:{name:"Previewnet Explorer",url:"https://previewnet.flowdiver.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:6205}}}),Da=e({id:747,name:"FlowEVM Mainnet",nativeCurrency:{decimals:18,name:"Flow",symbol:"FLOW"},rpcUrls:{default:{http:["https://mainnet.evm.nodes.onflow.org"]}},blockExplorers:{default:{name:"Mainnet Explorer",url:"https://flowdiver.io"}}}),Ia=e({id:545,name:"FlowEVM Testnet",nativeCurrency:{decimals:18,name:"Flow",symbol:"FLOW"},rpcUrls:{default:{http:["https://testnet.evm.nodes.onflow.org"]}},blockExplorers:{default:{name:"Flow Diver",url:"https://testnet.flowdiver.io"}}}),_a=e({id:31337,name:"Foundry",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["http://127.0.0.1:8545"],webSocket:["ws://127.0.0.1:8545"]}}}),B=1,Ha=e({...l,id:252,name:"Fraxtal",nativeCurrency:{name:"Frax Ether",symbol:"frxETH",decimals:18},rpcUrls:{default:{http:["https://rpc.frax.com"]}},blockExplorers:{default:{name:"fraxscan",url:"https://fraxscan.com",apiUrl:"https://api.fraxscan.com/api"}},contracts:{...l.contracts,l2OutputOracle:{[B]:{address:"0x66CC916Ed5C6C2FA97014f7D1cD141528Ae171e4"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11"},portal:{[B]:{address:"0x36cb65c1967A0Fb0EEE11569C51C2f2aA1Ca6f6D",blockCreated:19135323}},l1StandardBridge:{[B]:{address:"0x34C0bD5877A5Ee7099D0f5688D65F4bB9158BDE2",blockCreated:19135323}}},sourceId:B}),F=17e3,Pa=e({...l,id:2522,name:"Fraxtal Testnet",nativeCurrency:{name:"Frax Ether",symbol:"frxETH",decimals:18},rpcUrls:{default:{http:["https://rpc.testnet.frax.com"]}},blockExplorers:{default:{name:"fraxscan testnet",url:"https://holesky.fraxscan.com",apiUrl:"https://api-holesky.fraxscan.com/api"}},contracts:{...l.contracts,l2OutputOracle:{[F]:{address:"0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11"},portal:{[F]:{address:"0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d",blockCreated:318416}},l1StandardBridge:{[F]:{address:"0x0BaafC217162f64930909aD9f2B27125121d6332",blockCreated:318416}}},sourceId:F}),Oe=11155111,Oa=e({...l,id:3397901,network:"funkiSepolia",name:"Funki Sepolia Sandbox",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://funki-testnet.alt.technology"]}},blockExplorers:{default:{name:"Funki Sepolia Sandbox Explorer",url:"https://sepolia-sandbox.funkichain.com/"}},testnet:!0,contracts:{...l.contracts,multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1620204}},sourceId:Oe}),La=e({id:122,name:"Fuse",nativeCurrency:{name:"Fuse",symbol:"FUSE",decimals:18},rpcUrls:{default:{http:["https://rpc.fuse.io"]}},blockExplorers:{default:{name:"Fuse Explorer",url:"https://explorer.fuse.io",apiUrl:"https://explorer.fuse.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:16146628}}}),Na=e({id:123,name:"Fuse Sparknet",nativeCurrency:{name:"Spark",symbol:"SPARK",decimals:18},rpcUrls:{default:{http:["https://rpc.fusespark.io"]}},blockExplorers:{default:{name:"Sparkent Explorer",url:"https://explorer.fusespark.io",apiUrl:"https://explorer.fusespark.io/api"}}}),Ra=e({id:4689,name:"IoTeX",nativeCurrency:{decimals:18,name:"IoTeX",symbol:"IOTX"},rpcUrls:{default:{http:["https://babel-api.mainnet.iotex.io"],webSocket:["wss://babel-api.mainnet.iotex.io"]}},blockExplorers:{default:{name:"IoTeXScan",url:"https://iotexscan.io"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:22163670}}}),Ka=e({id:4690,name:"IoTeX Testnet",nativeCurrency:{decimals:18,name:"IoTeX",symbol:"IOTX"},rpcUrls:{default:{http:["https://babel-api.testnet.iotex.io"],webSocket:["wss://babel-api.testnet.iotex.io"]}},blockExplorers:{default:{name:"IoTeXScan",url:"https://testnet.iotexscan.io"}},testnet:!0}),Ga=e({id:8899,name:"JIBCHAIN L1",network:"jbc",nativeCurrency:{name:"JBC",symbol:"JBC",decimals:18},rpcUrls:{default:{http:["https://rpc-l1.jibchain.net"]},public:{http:["https://rpc-l1.jibchain.net"]}},blockExplorers:{default:{name:"Blockscout",url:"https://exp-l1.jibchain.net",apiUrl:"https://exp-l1.jibchain.net/api"}},contracts:{multicall3:{address:"0xc0C8C486D1466C57Efe13C2bf000d4c56F47CBdC",blockCreated:2299048}},testnet:!1}),Va=e({id:88991,name:"Jibchain Testnet",nativeCurrency:{name:"tJBC",symbol:"tJBC",decimals:18},rpcUrls:{default:{http:["https://rpc.testnet.jibchain.net"]}},blockExplorers:{default:{name:"Blockscout",url:"https://exp.testnet.jibchain.net",apiUrl:"https://exp.testnet.jibchain.net/api"}},contracts:{multicall3:{address:"0xa1a858ad9041B4741e620355a3F96B3c78e70ecE",blockCreated:32848}},testnet:!0}),Xa=e({id:686,name:"Karura",network:"karura",nativeCurrency:{name:"Karura",symbol:"KAR",decimals:18},rpcUrls:{public:{http:["https://eth-rpc-karura.aca-api.network"],webSocket:["wss://eth-rpc-karura.aca-api.network"]},default:{http:["https://eth-rpc-karura.aca-api.network"],webSocket:["wss://eth-rpc-karura.aca-api.network"]}},blockExplorers:{default:{name:"Karura Blockscout",url:"https://blockscout.karura.network",apiUrl:"https://blockscout.karura.network/api"}},testnet:!1}),qa=e({id:1663,name:"Horizen Gobi Testnet",nativeCurrency:{decimals:18,name:"Test ZEN",symbol:"tZEN"},rpcUrls:{default:{http:["https://gobi-testnet.horizenlabs.io/ethv1"]}},blockExplorers:{default:{name:"Gobi Explorer",url:"https://gobi-explorer.horizen.io"}},contracts:{},testnet:!0}),Za=e({id:5,name:"Goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.ankr.com/eth_goerli"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.etherscan.io",apiUrl:"https://api-goerli.etherscan.io/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xfc4AC75C46C914aF5892d6d3eFFcebD7917293F1",blockCreated:10339206},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:6507670}},testnet:!0}),ja=e({id:100,name:"Gnosis",nativeCurrency:{decimals:18,name:"Gnosis",symbol:"xDAI"},rpcUrls:{default:{http:["https://rpc.gnosischain.com"],webSocket:["wss://rpc.gnosischain.com/wss"]}},blockExplorers:{default:{name:"Gnosisscan",url:"https://gnosisscan.io",apiUrl:"https://api.gnosisscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:21022491}}}),$a=e({id:10200,name:"Gnosis Chiado",nativeCurrency:{decimals:18,name:"Gnosis",symbol:"xDAI"},rpcUrls:{default:{http:["https://rpc.chiadochain.net"],webSocket:["wss://rpc.chiadochain.net/wss"]}},blockExplorers:{default:{name:"Blockscout",url:"https://blockscout.chiadochain.net",apiUrl:"https://blockscout.chiadochain.net/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:4967313}},testnet:!0}),Wa=e({id:31337,name:"Hardhat",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["http://127.0.0.1:8545"]}}}),Qa=e({id:16666e5,name:"Harmony One",nativeCurrency:{name:"Harmony",symbol:"ONE",decimals:18},rpcUrls:{default:{http:["https://rpc.ankr.com/harmony"]}},blockExplorers:{default:{name:"Harmony Explorer",url:"https://explorer.harmony.one"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:24185753}}}),Ya=e({id:11235,name:"HAQQ Mainnet",nativeCurrency:{decimals:18,name:"Islamic Coin",symbol:"ISLM"},rpcUrls:{default:{http:["https://rpc.eth.haqq.network"]}},blockExplorers:{default:{name:"HAQQ Explorer",url:"https://explorer.haqq.network",apiUrl:"https://explorer.haqq.network/api"}}}),Ja=e({id:54211,name:"HAQQ Testedge 2",nativeCurrency:{decimals:18,name:"Islamic Coin",symbol:"ISLMT"},rpcUrls:{default:{http:["https://rpc.eth.testedge2.haqq.network"]}},blockExplorers:{default:{name:"HAQQ Explorer",url:"https://explorer.testedge2.haqq.network",apiUrl:"https://explorer.testedge2.haqq.network/api"}}}),er=e({id:295,name:"Hedera Mainnet",network:"hedera-mainnet",nativeCurrency:{symbol:"HBAR",name:"HBAR",decimals:18},rpcUrls:{default:{http:["https://mainnet.hashio.io/api"]}},blockExplorers:{default:{name:"Hashscan",url:"https://hashscan.io/mainnet"}},testnet:!1}),tr=e({id:296,name:"Hedera Testnet",network:"hedera-testnet",nativeCurrency:{symbol:"HBAR",name:"HBAR",decimals:18},rpcUrls:{default:{http:["https://testnet.hashio.io/api"]}},blockExplorers:{default:{name:"Hashscan",url:"https://hashscan.io/testnet"}},testnet:!0}),ar=e({id:297,name:"Hedera Previewnet",network:"hedera-previewnet",nativeCurrency:{symbol:"HBAR",name:"HBAR",decimals:18},rpcUrls:{default:{http:["https://previewnet.hashio.io/api"]}},blockExplorers:{default:{name:"Hashscan",url:"https://hashscan.io/previewnet"}},testnet:!0}),rr=e({id:17e3,name:"Holesky",nativeCurrency:{name:"Holesky Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://ethereum-holesky-rpc.publicnode.com"]}},blockExplorers:{default:{name:"Etherscan",url:"https://holesky.etherscan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:77},ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e",blockCreated:801613},ensUniversalResolver:{address:"0xa6AC935D4971E3CD133b950aE053bECD16fE7f3b",blockCreated:973484}},testnet:!0}),sr=e({id:13371,name:"Immutable zkEVM",nativeCurrency:{decimals:18,name:"Immutable Coin",symbol:"IMX"},rpcUrls:{default:{http:["https://rpc.immutable.com"]}},blockExplorers:{default:{name:"Immutable Explorer",url:"https://explorer.immutable.com"}},contracts:{multicall3:{address:"0x236bdA4589e44e6850f5aC6a74BfCa398a86c6c0",blockCreated:4335972}}}),nr=e({id:13473,name:"Immutable zkEVM Testnet",nativeCurrency:{decimals:18,name:"Immutable Coin",symbol:"IMX"},rpcUrls:{default:{http:["https://rpc.testnet.immutable.com"]}},blockExplorers:{default:{name:"Immutable Testnet Explorer",url:"https://explorer.testnet.immutable.com/"}},contracts:{multicall3:{address:"0x2CC787Ed364600B0222361C4188308Fa8E68bA60",blockCreated:5977391}},testnet:!0}),lr=e({id:2525,name:"inEVM Mainnet",nativeCurrency:{decimals:18,name:"Injective",symbol:"INJ"},rpcUrls:{default:{http:["https://mainnet.rpc.inevm.com/http"]}},blockExplorers:{default:{name:"inEVM Explorer",url:"https://inevm.calderaexplorer.xyz",apiUrl:"https://inevm.calderaexplorer.xyz/api/v2"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:118606}}}),or=e({id:107107114116,name:"Kakarot Sepolia",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia-rpc.kakarot.org"]}},blockExplorers:{default:{name:"Kakarot Scan",url:"https://sepolia.kakarotscan.org"}},testnet:!0}),cr=e({id:2222,name:"Kava EVM",network:"kava-mainnet",nativeCurrency:{name:"Kava",symbol:"KAVA",decimals:18},rpcUrls:{default:{http:["https://evm.kava.io"]}},blockExplorers:{default:{name:"Kava EVM Explorer",url:"https://kavascan.com",apiUrl:"https://kavascan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:3661165}},testnet:!1}),ir=e({id:2221,name:"Kava EVM Testnet",network:"kava-testnet",nativeCurrency:{name:"Kava",symbol:"KAVA",decimals:18},rpcUrls:{default:{http:["https://evm.testnet.kava.io"]}},blockExplorers:{default:{name:"Kava EVM Testnet Explorer",url:"https://testnet.kavascan.com/",apiUrl:"https://testnet.kavascan.com/api"}},contracts:{multicall3:{address:"0xDf1D724A7166261eEB015418fe8c7679BBEa7fd6",blockCreated:7242179}},testnet:!0}),pr=e({id:321,name:"KCC Mainnet",network:"KCC Mainnet",nativeCurrency:{decimals:18,name:"KCS",symbol:"KCS"},rpcUrls:{default:{http:["https://kcc-rpc.com"]},public:{http:["https://kcc-rpc.com"]}},blockExplorers:{default:{name:"KCC Explorer",url:"https://explorer.kcc.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:11760430}},testnet:!1}),dr=e({id:8217,name:"Klaytn",nativeCurrency:{decimals:18,name:"Klaytn",symbol:"KLAY"},rpcUrls:{default:{http:["https://public-en-cypress.klaytn.net"]}},blockExplorers:{default:{name:"KlaytnScope",url:"https://scope.klaytn.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:96002415}}}),mr=e({id:1001,name:"Klaytn Baobab Testnet",network:"klaytn-baobab",nativeCurrency:{decimals:18,name:"Baobab Klaytn",symbol:"KLAY"},rpcUrls:{default:{http:["https://public-en-baobab.klaytn.net"]}},blockExplorers:{default:{name:"KlaytnScope",url:"https://baobab.klaytnscope.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:123390593}},testnet:!0}),ur=e({id:255,name:"Kroma",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://api.kroma.network"]}},blockExplorers:{default:{name:"Kroma Explorer",url:"https://blockscout.kroma.network",apiUrl:"https://blockscout.kroma.network/api"}},testnet:!1}),br=e({id:2358,name:"Kroma Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://api.sepolia.kroma.network"]}},blockExplorers:{default:{name:"Kroma Sepolia Explorer",url:"https://blockscout.sepolia.kroma.network",apiUrl:"https://blockscout.sepolia.kroma.network/api"}},testnet:!0}),hr=e({id:12324,name:"L3X Protocol",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc-mainnet.l3x.com"],webSocket:["wss://rpc-mainnet.l3x.com"]}},blockExplorers:{default:{name:"L3X Mainnet Explorer",url:"https://explorer.l3x.com",apiUrl:"https://explorer.l3x.com/api/v2"}},testnet:!1}),kr=e({id:12325,name:"L3X Protocol Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc-testnet.l3x.com"],webSocket:["wss://rpc-testnet.l3x.com"]}},blockExplorers:{default:{name:"L3X Testnet Explorer",url:"https://explorer-testnet.l3x.com",apiUrl:"https://explorer-testnet.l3x.com/api/v2"}},testnet:!0}),xr=e({id:1891,name:"LightLink Pegasus Testnet",network:"lightlink-pegasus",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://replicator.pegasus.lightlink.io/rpc/v1"]}},blockExplorers:{default:{name:"LightLink Pegasus Explorer",url:"https://pegasus.lightlink.io"}},testnet:!0}),fr=e({id:1890,name:"LightLink Phoenix Mainnet",network:"lightlink-phoenix",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://replicator.phoenix.lightlink.io/rpc/v1"]}},blockExplorers:{default:{name:"LightLink Phoenix Explorer",url:"https://phoenix.lightlink.io"}},testnet:!1}),yr=e({id:59144,name:"Linea Mainnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.linea.build"],webSocket:["wss://rpc.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://lineascan.build",apiUrl:"https://api.lineascan.build/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:42}},testnet:!1}),Er=e({id:59140,name:"Linea Goerli Testnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.goerli.linea.build"],webSocket:["wss://rpc.goerli.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.lineascan.build",apiUrl:"https://api-goerli.lineascan.build/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:498623}},testnet:!0}),Cr=e({id:59141,name:"Linea Sepolia Testnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.sepolia.linea.build"],webSocket:["wss://rpc.sepolia.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://sepolia.lineascan.build",apiUrl:"https://api-sepolia.lineascan.build/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:227427}},testnet:!0}),wr=e({id:59140,name:"Linea Goerli Testnet",nativeCurrency:{name:"Linea Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.goerli.linea.build"],webSocket:["wss://rpc.goerli.linea.build"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli.lineascan.build",apiUrl:"https://goerli.lineascan.build/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:498623}},testnet:!0}),$=50000n,Q=he*32n,le={block:G({format(t){var s;const a=(s=t.transactions)==null?void 0:s.map(r=>{var c;if(typeof r=="string")return r;const n=(c=le.transaction)==null?void 0:c.format(r);return n.typeHex==="0x71"?n.type="eip712":n.typeHex==="0xff"&&(n.type="priority"),n});return{l1BatchNumber:t.l1BatchNumber?i(t.l1BatchNumber):null,l1BatchTimestamp:t.l1BatchTimestamp?i(t.l1BatchTimestamp):null,transactions:a}}}),transaction:V({format(t){const a={};return t.type==="0x71"?a.type="eip712":t.type==="0xff"&&(a.type="priority"),{...a,l1BatchNumber:t.l1BatchNumber?i(t.l1BatchNumber):null,l1BatchTxIndex:t.l1BatchTxIndex?i(t.l1BatchTxIndex):null}}}),transactionReceipt:ee({format(t){return{l1BatchNumber:t.l1BatchNumber?i(t.l1BatchNumber):null,l1BatchTxIndex:t.l1BatchTxIndex?i(t.l1BatchTxIndex):null,logs:t.logs.map(a=>({...ke(a),l1BatchNumber:a.l1BatchNumber?i(a.l1BatchNumber):null,transactionLogIndex:fe(a.transactionLogIndex),logType:a.logType})),l2ToL1Logs:t.l2ToL1Logs.map(a=>({blockNumber:i(a.blockHash),blockHash:a.blockHash,l1BatchNumber:i(a.l1BatchNumber),transactionIndex:i(a.transactionIndex),shardId:i(a.shardId),isService:a.isService,sender:a.sender,key:a.key,value:a.value,transactionHash:a.transactionHash,logIndex:i(a.logIndex)}))}}}),transactionRequest:te({exclude:["customSignature","factoryDeps","gasPerPubdata","paymaster","paymasterInput"],format(t){return t.gasPerPubdata||t.paymaster&&t.paymasterInput||t.factoryDeps||t.customSignature?{eip712Meta:{...t.gasPerPubdata?{gasPerPubdata:o(t.gasPerPubdata)}:{gasPerPubdata:o($)},...t.paymaster&&t.paymasterInput?{paymasterParams:{paymaster:t.paymaster,paymasterInput:Array.from(R(t.paymasterInput))}}:{},...t.factoryDeps?{factoryDeps:t.factoryDeps.map(a=>Array.from(R(a)))}:{},...t.customSignature?{customSignature:Array.from(R(t.customSignature))}:{}},type:"0x71"}:{}}})};class Le extends u{constructor(){super(["Transaction is not an EIP712 transaction.","","Transaction must:",' - include `type: "eip712"`'," - include one of the following: `customSignature`, `paymaster`, `paymasterInput`, `gasPerPubdata`, `factoryDeps`"].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidEip712TransactionError"})}}function oe(t){return!!(t.type==="eip712"||"customSignature"in t&&t.customSignature||"paymaster"in t&&t.paymaster||"paymasterInput"in t&&t.paymasterInput||"gasPerPubdata"in t&&typeof t.gasPerPubdata=="bigint"||"factoryDeps"in t&&t.factoryDeps)}function ce(t){const{chainId:a,to:s,from:r,paymaster:n,paymasterInput:c}=t;if(!oe(t))throw new Le;if(!a||a<=0)throw new ae({chainId:a});if(s&&!k(s))throw new E({address:s});if(r&&!k(r))throw new E({address:r});if(n&&!k(n))throw new E({address:n});if(n&&!c)throw new u("`paymasterInput` must be provided when `paymaster` is defined");if(!n&&c)throw new u("`paymaster` must be provided when `paymasterInput` is defined")}function Ne(t,a){return oe(t)?Ke(t):X(t,a)}const Re={transaction:Ne};function Ke(t){const{chainId:a,gas:s,nonce:r,to:n,from:c,value:p,maxFeePerGas:m,maxPriorityFeePerGas:d,customSignature:b,factoryDeps:f,paymaster:y,paymasterInput:h,gasPerPubdata:v,data:ie}=t;ce(t);const pe=[r?o(r):"0x",d?o(d):"0x",m?o(m):"0x",s?o(s):"0x",n??"0x",p?o(p):"0x",ie??"0x0",o(a),o(""),o(""),o(a),c??"0x",v?o(v):o($),f??[],b??"0x",y&&h?[y,h]:[]];return q(["0x71",Z(pe)])}class Ge extends u{constructor({givenLength:a,maxBytecodeSize:s}){super(`Bytecode cannot be longer than ${s} bytes. Given length: ${a}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BytecodeLengthExceedsMaxSizeError"})}}class Ve extends u{constructor({givenLengthInWords:a}){super(`Bytecode length in 32-byte words must be odd. Given length in words: ${a}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BytecodeLengthInWordsMustBeOddError"})}}class Xe extends u{constructor({givenLength:a}){super(`The bytecode length in bytes must be divisible by 32. Given length: ${a}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BytecodeLengthMustBeDivisibleBy32Error"})}}function qe(t){const a=K(t);if(a.length%32!==0)throw new Xe({givenLength:a.length});if(a.length>Q)throw new Ge({givenLength:a.length,maxBytecodeSize:Q});const s=xe(a),r=K(s),n=a.length/32;if(n%2===0)throw new Ve({givenLengthInWords:n});const c=K(n),p=ye(c,{size:2}),m=new Uint8Array([1,0]);return r.set(m,0),r.set(p,2),r}const Ze=t=>{ce(t);const a=je(t);return{domain:{name:"zkSync",version:"2",chainId:t.chainId},types:{Transaction:[{name:"txType",type:"uint256"},{name:"from",type:"uint256"},{name:"to",type:"uint256"},{name:"gasLimit",type:"uint256"},{name:"gasPerPubdataByteLimit",type:"uint256"},{name:"maxFeePerGas",type:"uint256"},{name:"maxPriorityFeePerGas",type:"uint256"},{name:"paymaster",type:"uint256"},{name:"nonce",type:"uint256"},{name:"value",type:"uint256"},{name:"data",type:"bytes"},{name:"factoryDeps",type:"bytes32[]"},{name:"paymasterInput",type:"bytes"}]},primaryType:"Transaction",message:a}};function je(t){const{gas:a,nonce:s,to:r,from:n,value:c,maxFeePerGas:p,maxPriorityFeePerGas:m,factoryDeps:d,paymaster:b,paymasterInput:f,gasPerPubdata:y,data:h}=t;return{txType:113n,from:BigInt(n),to:r?BigInt(r):0n,gasLimit:a??0n,gasPerPubdataByteLimit:y??$,maxFeePerGas:p??0n,maxPriorityFeePerGas:m??0n,paymaster:b?BigInt(b):0n,nonce:s?BigInt(s):0n,value:c??0n,data:h||"0x0",factoryDeps:(d==null?void 0:d.map(v=>o(qe(v))))??[],paymasterInput:f||"0x"}}const x={formatters:le,serializers:Re,custom:{getEip712Domain:Ze}},vr=e({...x,id:1135,name:"Lisk",network:"lisk",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.api.lisk.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://blockscout.lisk.com",apiUrl:"https://blockscout.lisk.com/api"}},contracts:{multicall3:{address:"0xA9d71E1dd7ca26F26e656E66d6AA81ed7f745bf0"}}}),M=11155111,Tr=e({...l,id:4202,network:"lisk-sepolia",name:"Lisk Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.sepolia-api.lisk.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://sepolia-blockscout.lisk.com",apiUrl:"https://sepolia-blockscout.lisk.com/api"}},contracts:{...l.contracts,l2OutputOracle:{[M]:{address:"0xA0E35F56C318DE1bD5D9ca6A94Fe7e37C5663348"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11"},portal:{[M]:{address:"0xe3d90F21490686Ec7eF37BE788E02dfC12787264"}},l1StandardBridge:{[M]:{address:"0x1Fb30e446eA791cd1f011675E5F3f5311b70faF5"}}},testnet:!0,sourceId:M}),Ur=e({id:1337,name:"Localhost",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["http://127.0.0.1:8545"]}}}),gr=e({id:42,network:"lukso",name:"LUKSO",nativeCurrency:{name:"LUKSO",symbol:"LYX",decimals:18},rpcUrls:{default:{http:["https://rpc.mainnet.lukso.network"],webSocket:["wss://ws-rpc.mainnet.lukso.network"]}},blockExplorers:{default:{name:"LUKSO Mainnet Explorer",url:"https://explorer.execution.mainnet.lukso.network",apiUrl:"https://api.explorer.execution.mainnet.lukso.network/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:468183}}}),Sr=e({id:4201,name:"LUKSO Testnet",nativeCurrency:{decimals:18,name:"LUKSO Testnet",symbol:"LYXt"},rpcUrls:{default:{http:["https://rpc.testnet.lukso.network"],webSocket:["wss://ws-rpc.testnet.lukso.network"]}},blockExplorers:{default:{name:"LUKSO Testnet Explorer",url:"https://explorer.execution.testnet.lukso.network",apiUrl:"https://api.explorer.execution.testnet.lukso.network/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:605348}},testnet:!0}),Ar=e({id:1,name:"Ethereum",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://cloudflare-eth.com"]}},blockExplorers:{default:{name:"Etherscan",url:"https://etherscan.io",apiUrl:"https://api.etherscan.io/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xce01f8eee7E479C928F8919abD53E553a36CeF67",blockCreated:19258213},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),Br=e({id:595,name:"Mandala TC9",network:"mandala",nativeCurrency:{name:"Mandala",symbol:"mACA",decimals:18},rpcUrls:{public:{http:["https://eth-rpc-tc9.aca-staging.network"],webSocket:["wss://eth-rpc-tc9.aca-staging.network"]},default:{http:["https://eth-rpc-tc9.aca-staging.network"],webSocket:["wss://eth-rpc-tc9.aca-staging.network"]}},blockExplorers:{default:{name:"Mandala Blockscout",url:"https://blockscout.mandala.aca-staging.network",apiUrl:"https://blockscout.mandala.aca-staging.network/api"}},testnet:!0}),Fr=e({id:169,name:"Manta Pacific Mainnet",network:"manta",nativeCurrency:{decimals:18,name:"ETH",symbol:"ETH"},rpcUrls:{default:{http:["https://pacific-rpc.manta.network/http"]}},blockExplorers:{default:{name:"Manta Explorer",url:"https://pacific-explorer.manta.network",apiUrl:"https://pacific-explorer.manta.network/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:332890}}}),Mr=e({id:3441006,name:"Manta Pacific Sepolia Testnet",network:"manta-sepolia",nativeCurrency:{decimals:18,name:"ETH",symbol:"ETH"},rpcUrls:{default:{http:["https://pacific-rpc.sepolia-testnet.manta.network/http"]}},blockExplorers:{default:{name:"Manta Sepolia Testnet Explorer",url:"https://pacific-explorer.sepolia-testnet.manta.network",apiUrl:"https://pacific-explorer.sepolia-testnet.manta.network/api"}},contracts:{multicall3:{address:"0xca54918f7B525C8df894668846506767412b53E3",blockCreated:479584}},testnet:!0}),zr=e({id:3441005,name:"Manta Pacific Testnet",network:"manta-testnet",nativeCurrency:{decimals:18,name:"ETH",symbol:"ETH"},rpcUrls:{default:{http:["https://manta-testnet.calderachain.xyz/http"]}},blockExplorers:{default:{name:"Manta Testnet Explorer",url:"https://pacific-explorer.testnet.manta.network",apiUrl:"https://pacific-explorer.testnet.manta.network/api"}},contracts:{multicall3:{address:"0x211B1643b95Fe76f11eD8880EE810ABD9A4cf56C",blockCreated:419915}},testnet:!0}),Dr=e({id:5e3,name:"Mantle",nativeCurrency:{decimals:18,name:"MNT",symbol:"MNT"},rpcUrls:{default:{http:["https://rpc.mantle.xyz"]}},blockExplorers:{default:{name:"Mantle Explorer",url:"https://mantlescan.xyz/",apiUrl:"https://api.mantlescan.xyz/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:304717}}}),Ir=e({id:5003,name:"Mantle Sepolia Testnet",nativeCurrency:{decimals:18,name:"MNT",symbol:"MNT"},rpcUrls:{default:{http:["https://rpc.sepolia.mantle.xyz"]}},blockExplorers:{default:{name:"Mantle Testnet Explorer",url:"https://explorer.sepolia.mantle.xyz/",apiUrl:"https://explorer.sepolia.mantle.xyz/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:4584012}},testnet:!0}),_r=e({id:5001,name:"Mantle Testnet",nativeCurrency:{decimals:18,name:"MNT",symbol:"MNT"},rpcUrls:{default:{http:["https://rpc.testnet.mantle.xyz"]}},blockExplorers:{default:{name:"Mantle Testnet Explorer",url:"https://explorer.testnet.mantle.xyz",apiUrl:"https://explorer.testnet.mantle.xyz/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:561333}},testnet:!0}),Hr=e({id:4200,name:"Merlin",nativeCurrency:{name:"BTC",symbol:"BTC",decimals:18},rpcUrls:{default:{http:["https://rpc.merlinchain.io"]}},blockExplorers:{default:{name:"blockscout",url:"https://scan.merlinchain.io",apiUrl:"https://scan.merlinchain.io/api"}}}),Pr=e({id:571,name:"MetaChain Mainnet",nativeCurrency:{name:"Metatime Coin",symbol:"MTC",decimals:18},rpcUrls:{default:{http:["https://rpc.metatime.com"]}},blockExplorers:{default:{name:"MetaExplorer",url:"https://explorer.metatime.com"}},contracts:{multicall3:{address:"0x0000000000000000000000000000000000003001",blockCreated:0}}}),Or=e({id:1453,name:"MetaChain Istanbul",nativeCurrency:{name:"Metatime Coin",symbol:"MTC",decimals:18},rpcUrls:{default:{http:["https://istanbul-rpc.metachain.dev"]}},blockExplorers:{default:{name:"MetaExplorer",url:"https://istanbul-explorer.metachain.dev"}},contracts:{multicall3:{address:"0x0000000000000000000000000000000000003001",blockCreated:0}},testnet:!0}),z=1,Lr=e({...l,id:1750,name:"Metal L2",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.metall2.com"],webSocket:["wss://rpc.metall2.com"]}},blockExplorers:{default:{name:"Explorer",url:"https://explorer.metall2.com",apiUrl:"https://explorer.metall2.com/api"}},contracts:{...l.contracts,l2OutputOracle:{[z]:{address:"0x3B1F7aDa0Fcc26B13515af752Dd07fB1CAc11426"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:0},portal:{[z]:{address:"0x3F37aBdE2C6b5B2ed6F8045787Df1ED1E3753956"}},l1StandardBridge:{[z]:{address:"0x6d0f65D59b55B0FEC5d2d15365154DcADC140BF3"}}},sourceId:z}),Nr=e({id:82,name:"Meter",nativeCurrency:{decimals:18,name:"MTR",symbol:"MTR"},rpcUrls:{default:{http:["https://rpc.meter.io"]}},blockExplorers:{default:{name:"MeterScan",url:"https://scan.meter.io"}}}),Rr=e({id:83,name:"Meter Testnet",nativeCurrency:{decimals:18,name:"MTR",symbol:"MTR"},rpcUrls:{default:{http:["https://rpctest.meter.io"]}},blockExplorers:{default:{name:"MeterTestnetScan",url:"https://scan-warringstakes.meter.io"}}}),Kr=e({id:1088,name:"Metis",nativeCurrency:{decimals:18,name:"Metis",symbol:"METIS"},rpcUrls:{default:{http:["https://andromeda.metis.io/?owner=1088"]}},blockExplorers:{default:{name:"Metis Explorer",url:"https://explorer.metis.io",apiUrl:"https://api.routescan.io/v2/network/mainnet/evm/43114/etherscan/api"},blockscout:{name:"Andromeda Explorer",url:"https://andromeda-explorer.metis.io",apiUrl:"https://andromeda-explorer.metis.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:2338552}}}),Gr=e({id:599,name:"Metis Goerli",nativeCurrency:{decimals:18,name:"Metis Goerli",symbol:"METIS"},rpcUrls:{default:{http:["https://goerli.gateway.metisdevops.link"]}},blockExplorers:{default:{name:"Metis Goerli Explorer",url:"https://goerli.explorer.metisdevops.link",apiUrl:"https://goerli.explorer.metisdevops.link/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1006207}}}),Vr=e({id:7518,name:"MEVerse Chain Mainnet",nativeCurrency:{decimals:18,name:"MEVerse",symbol:"MEV"},rpcUrls:{default:{http:["https://rpc.meversemainnet.io"]}},blockExplorers:{default:{name:"Explorer",url:"https://www.meversescan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:86881340}}}),Xr=e({id:4759,name:"MEVerse Chain Testnet",nativeCurrency:{decimals:18,name:"MEVerse",symbol:"MEV"},rpcUrls:{default:{http:["https://rpc.meversetestnet.io"]}},blockExplorers:{default:{name:"Explorer",url:"https://testnet.meversescan.io/"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:64371115}},testnet:!0}),qr=e({id:1686,name:"Mint Sepolia Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://testnet-rpc.mintchain.io"]}},blockExplorers:{default:{name:"Mintchain Testnet explorer",url:"https://testnet-explorer.mintchain.io"}},testnet:!0}),$e=1,Zr=e({id:34443,name:"Mode Mainnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.mode.network"]}},blockExplorers:{default:{name:"Modescan",url:"https://modescan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:2465882}},sourceId:$e}),We=11155111,jr=e({id:919,name:"Mode Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.mode.network"]}},blockExplorers:{default:{name:"Blockscout",url:"https://sepolia.explorer.mode.network",apiUrl:"https://sepolia.explorer.mode.network/api"}},contracts:{multicall3:{address:"0xBAba8373113Fb7a68f195deF18732e01aF8eDfCF",blockCreated:3019007}},testnet:!0,sourceId:We}),$r=e({id:1287,name:"Moonbase Alpha",nativeCurrency:{decimals:18,name:"DEV",symbol:"DEV"},rpcUrls:{default:{http:["https://rpc.api.moonbase.moonbeam.network"],webSocket:["wss://wss.api.moonbase.moonbeam.network"]}},blockExplorers:{default:{name:"Moonscan",url:"https://moonbase.moonscan.io",apiUrl:"https://moonbase.moonscan.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1850686}},testnet:!0}),Wr=e({id:1284,name:"Moonbeam",nativeCurrency:{decimals:18,name:"GLMR",symbol:"GLMR"},rpcUrls:{default:{http:["https://moonbeam.public.blastapi.io"],webSocket:["wss://moonbeam.public.blastapi.io"]}},blockExplorers:{default:{name:"Moonscan",url:"https://moonscan.io",apiUrl:"https://api-moonbeam.moonscan.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:609002}},testnet:!1}),Qr=e({id:1281,name:"Moonbeam Development Node",nativeCurrency:{decimals:18,name:"DEV",symbol:"DEV"},rpcUrls:{default:{http:["http://127.0.0.1:9944"],webSocket:["wss://127.0.0.1:9944"]}}}),Yr=e({id:1285,name:"Moonriver",nativeCurrency:{decimals:18,name:"MOVR",symbol:"MOVR"},rpcUrls:{default:{http:["https://moonriver.public.blastapi.io"],webSocket:["wss://moonriver.public.blastapi.io"]}},blockExplorers:{default:{name:"Moonscan",url:"https://moonriver.moonscan.io",apiUrl:"https://api-moonriver.moonscan.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1597904}},testnet:!1}),Jr=e({id:2710,name:"Morph Sepolia",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc-testnet.morphl2.io"]}},blockExplorers:{default:{name:"Morph Testnet Explorer",url:"https://explorer-testnet.morphl2.io",apiUrl:"https://explorer-api-testnet.morphl2.io/api"}},testnet:!0}),es=e({id:22222,name:"Nautilus Mainnet",nativeCurrency:{name:"ZBC",symbol:"ZBC",decimals:9},rpcUrls:{default:{http:["https://api.nautilus.nautchain.xyz"]}},blockExplorers:{default:{name:"NautScan",url:"https://nautscan.com"}}}),ts=e({id:245022926,name:"Neon EVM DevNet",nativeCurrency:{name:"NEON",symbol:"NEON",decimals:18},rpcUrls:{default:{http:["https://devnet.neonevm.org"]}},blockExplorers:{default:{name:"Neonscan",url:"https://devnet.neonscan.org"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:205206112}},testnet:!0}),as=e({id:245022934,network:"neonMainnet",name:"Neon EVM MainNet",nativeCurrency:{name:"NEON",symbol:"NEON",decimals:18},rpcUrls:{default:{http:["https://neon-proxy-mainnet.solana.p2p.org"]}},blockExplorers:{default:{name:"Neonscan",url:"https://neonscan.org"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:206545524}},testnet:!1}),rs=e({id:4242,name:"Nexi",nativeCurrency:{name:"Nexi",symbol:"NEXI",decimals:18},rpcUrls:{default:{http:["https://rpc.chain.nexi.technology"]}},blockExplorers:{default:{name:"NexiScan",url:"https://www.nexiscan.com",apiUrl:"https://www.nexiscan.com/api"}},contracts:{multicall3:{address:"0x0277A46Cc69A57eE3A6C8c158bA874832F718B8E",blockCreated:25770160}}}),ss=e({id:240,name:"Nexilix Smart Chain",nativeCurrency:{decimals:18,name:"Nexilix",symbol:"NEXILIX"},rpcUrls:{default:{http:["https://rpcurl.pos.nexilix.com"]}},blockExplorers:{default:{name:"NexilixScan",url:"https://scan.nexilix.com"}},contracts:{multicall3:{address:"0x58381c8e2BF9d0C2C4259cA14BdA9Afe02831244",blockCreated:74448}}}),ns=e({id:248,name:"Oasys",nativeCurrency:{name:"Oasys",symbol:"OAS",decimals:18},rpcUrls:{default:{http:["https://rpc.mainnet.oasys.games"]}},blockExplorers:{default:{name:"OasysScan",url:"https://scan.oasys.games",apiUrl:"https://scan.oasys.games/api"}}}),ls=e({id:4090,network:"oasis-testnet",name:"Oasis Testnet",nativeCurrency:{name:"Fasttoken",symbol:"FTN",decimals:18},rpcUrls:{default:{http:["https://rpc1.oasis.bahamutchain.com"]},public:{http:["https://rpc1.oasis.bahamutchain.com"]}},blockExplorers:{default:{name:"Ftnscan",url:"https://oasis.ftnscan.com",apiUrl:"https://oasis.ftnscan.com/api"}},testnet:!0}),os=e({id:66,name:"OKC",nativeCurrency:{decimals:18,name:"OKT",symbol:"OKT"},rpcUrls:{default:{http:["https://exchainrpc.okex.org"]}},blockExplorers:{default:{name:"oklink",url:"https://www.oklink.com/okc"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:10364792}}}),D=1,cs=e({...l,id:10,name:"OP Mainnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://mainnet.optimism.io"]}},blockExplorers:{default:{name:"Optimism Explorer",url:"https://optimistic.etherscan.io",apiUrl:"https://api-optimistic.etherscan.io/api"}},contracts:{...l.contracts,l2OutputOracle:{[D]:{address:"0xdfe97868233d1aa22e815a266982f2cf17685a27"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:4286263},portal:{[D]:{address:"0xbEb5Fc579115071764c7423A4f12eDde41f106Ed"}},l1StandardBridge:{[D]:{address:"0x99C9fc46f92E8a1c0deC1b1747d010903E884bE1"}}},sourceId:D}),I=5,is=e({...l,id:420,name:"Optimism Goerli",nativeCurrency:{name:"Goerli Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://goerli.optimism.io"]}},blockExplorers:{default:{name:"Etherscan",url:"https://goerli-optimism.etherscan.io",apiUrl:"https://goerli-optimism.etherscan.io/api"}},contracts:{...l.contracts,l2OutputOracle:{[I]:{address:"0xE6Dfba0953616Bacab0c9A8ecb3a9BBa77FC15c0"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:49461},portal:{[I]:{address:"0x5b47E1A08Ea6d985D6649300584e6722Ec4B1383"}},l1StandardBridge:{[I]:{address:"0x636Af16bf2f682dD3109e60102b8E1A089FedAa8"}}},testnet:!0,sourceId:I}),C=11155111,ps=e({...l,id:11155420,name:"OP Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.optimism.io"]}},blockExplorers:{default:{name:"Blockscout",url:"https://optimism-sepolia.blockscout.com",apiUrl:"https://optimism-sepolia.blockscout.com/api"}},contracts:{...l.contracts,disputeGameFactory:{[C]:{address:"0x05F9613aDB30026FFd634f38e5C4dFd30a197Fa1"}},l2OutputOracle:{[C]:{address:"0x90E9c4f8a994a250F6aEfd61CAFb4F2e895D458F"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:1620204},portal:{[C]:{address:"0x16Fc5058F25648194471939df75CF27A2fdC48BC"}},l1StandardBridge:{[C]:{address:"0xFBb0621E0B23b5478B630BD55a5f21f67730B0F1"}}},testnet:!0,sourceId:C}),ds=e({id:204,name:"opBNB",nativeCurrency:{name:"BNB",symbol:"BNB",decimals:18},rpcUrls:{default:{http:["https://opbnb-mainnet-rpc.bnbchain.org"]}},blockExplorers:{default:{name:"opbnbscan",url:"https://mainnet.opbnbscan.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:512881}}}),ms=e({id:5611,name:"opBNB Testnet",nativeCurrency:{decimals:18,name:"tBNB",symbol:"tBNB"},rpcUrls:{default:{http:["https://opbnb-testnet-rpc.bnbchain.org"]}},blockExplorers:{default:{name:"opbnbscan",url:"https://testnet.opbnbscan.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3705108}},testnet:!0}),us=e({id:9700,name:"OORT MainnetDev",nativeCurrency:{decimals:18,name:"OORT",symbol:"OORT"},rpcUrls:{default:{http:["https://dev-rpc.oortech.com"]}},blockExplorers:{oort:{name:"OORT MainnetDev Explorer",url:"https://dev-scan.oortech.com"},default:{name:"OORT MainnetDev Explorer",url:"https://dev-scan.oortech.com"}}}),bs=e({id:41144114,name:"Otim Devnet",nativeCurrency:{decimals:18,name:"ETH",symbol:"ETH"},rpcUrls:{default:{http:["http://devnet.otim.xyz"]}},contracts:{batchInvoker:{address:"0x5FbDB2315678afecb367f032d93F642f64180aa3"}}}),hs=e({id:11297108109,name:"Palm",nativeCurrency:{decimals:18,name:"PALM",symbol:"PALM"},rpcUrls:{default:{http:["https://palm-mainnet.public.blastapi.io"],webSocket:["wss://palm-mainnet.public.blastapi.io"]}},blockExplorers:{default:{name:"Chainlens",url:"https://palm.chainlens.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15429248}}}),ks=e({id:11297108099,name:"Palm Testnet",nativeCurrency:{decimals:18,name:"PALM",symbol:"PALM"},rpcUrls:{default:{http:["https://palm-mainnet.public.blastapi.io"],webSocket:["wss://palm-mainnet.public.blastapi.io"]}},blockExplorers:{default:{name:"Chainlens",url:"https://palm.chainlens.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:15429248}},testnet:!0}),xs=e({...x,id:1612127,name:"PlayFi Albireo Testnet",network:"albireo",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://albireo-rpc.playfi.ai"],webSocket:["wss://albireo-rpc-ws.playfi.ai/ws"]}},blockExplorers:{default:{name:"PlayFi Albireo Explorer",url:"https://albireo-explorer.playfi.ai"}},contracts:{multicall3:{address:"0xF9cda624FBC7e059355ce98a31693d299FACd963"}},testnet:!0}),_=1,fs=e({id:424,network:"pgn",name:"PGN",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.publicgoods.network"]}},blockExplorers:{default:{name:"PGN Explorer",url:"https://explorer.publicgoods.network",apiUrl:"https://explorer.publicgoods.network/api"},blocksout:{name:"PGN Explorer",url:"https://explorer.publicgoods.network",apiUrl:"https://explorer.publicgoods.network/api"}},contracts:{l2OutputOracle:{[_]:{address:"0x9E6204F750cD866b299594e2aC9eA824E2e5f95c"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3380209},portal:{[_]:{address:"0xb26Fd985c5959bBB382BAFdD0b879E149e48116c"}},l1StandardBridge:{[_]:{address:"0xD0204B9527C1bA7bD765Fa5CCD9355d38338272b"}}},formatters:j,sourceId:_}),H=11155111,ys=e({id:58008,network:"pgn-testnet",name:"PGN ",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.publicgoods.network"]}},blockExplorers:{default:{name:"PGN Testnet Explorer",url:"https://explorer.sepolia.publicgoods.network",apiUrl:"https://explorer.sepolia.publicgoods.network/api"},blocksout:{name:"PGN Testnet Explorer",url:"https://explorer.sepolia.publicgoods.network",apiUrl:"https://explorer.sepolia.publicgoods.network/api"}},contracts:{l2OutputOracle:{[H]:{address:"0xD5bAc3152ffC25318F848B3DD5dA6C85171BaEEe"}},portal:{[H]:{address:"0xF04BdD5353Bb0EFF6CA60CfcC78594278eBfE179"}},l1StandardBridge:{[H]:{address:"0xFaE6abCAF30D23e233AC7faF747F2fC3a5a6Bfa3"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3754925}},formatters:j,sourceId:H,testnet:!0}),Es=e({id:13381,name:"Phoenix Blockchain",nativeCurrency:{name:"Phoenix",symbol:"PHX",decimals:18},rpcUrls:{default:{http:["https://rpc.phoenixplorer.com"]}},blockExplorers:{default:{name:"Phoenixplorer",url:"https://phoenixplorer.com",apiUrl:"https://phoenixplorer.com/api"}},contracts:{multicall3:{address:"0x498cF757a575cFF2c2Ed9f532f56Efa797f86442",blockCreated:5620192}}}),Cs=e({id:242,name:"Plinga",nativeCurrency:{name:"Plinga",symbol:"PLINGA",decimals:18},rpcUrls:{default:{http:["https://rpcurl.mainnet.plgchain.com"]}},blockExplorers:{default:{name:"Plgscan",url:"https://www.plgscan.com"}},contracts:{multicall3:{address:"0x0989576160f2e7092908BB9479631b901060b6e4",blockCreated:204489}}}),Qe=11155111,ws=e({id:161221135,name:"Plume Testnet",nativeCurrency:{name:"Plume Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://testnet-rpc.plumenetwork.xyz/http"],webSocket:["wss://testnet-rpc.plumenetwork.xyz/ws"]}},blockExplorers:{default:{name:"Blockscout",url:"https://testnet-explorer.plumenetwork.xyz",apiUrl:"https://testnet-explorer.plumenetwork.xyz/api"}},testnet:!0,sourceId:Qe}),vs=e({id:137,name:"Polygon",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{default:{http:["https://polygon-rpc.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://polygonscan.com",apiUrl:"https://api.polygonscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:25770160}}}),Ts=e({id:80002,name:"Polygon Amoy",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{default:{http:["https://rpc-amoy.polygon.technology"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://amoy.polygonscan.com/",apiUrl:"https://api-amoy.polygonscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:3127388}},testnet:!0}),Us=e({id:80001,name:"Polygon Mumbai",nativeCurrency:{name:"MATIC",symbol:"MATIC",decimals:18},rpcUrls:{default:{http:["https://rpc.ankr.com/polygon_mumbai"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://mumbai.polygonscan.com",apiUrl:"https://api-testnet.polygonscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:25770160}},testnet:!0}),gs=e({id:1101,name:"Polygon zkEVM",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://zkevm-rpc.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://zkevm.polygonscan.com",apiUrl:"https://api-zkevm.polygonscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:57746}}}),Ss=e({id:2442,name:"Polygon zkEVM Cardona",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.cardona.zkevm-rpc.com"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://cardona-zkevm.polygonscan.com",apiUrl:"https://cardona-zkevm.polygonscan.com/api"}},testnet:!0,contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:114091}}}),As=e({id:1442,name:"Polygon zkEVM Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.public.zkevm-test.net"]}},blockExplorers:{default:{name:"PolygonScan",url:"https://testnet-zkevm.polygonscan.com",apiUrl:"https://testnet-zkevm.polygonscan.com/api"}},testnet:!0,contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:525686}}}),Bs=e({id:369,name:"PulseChain",nativeCurrency:{name:"Pulse",symbol:"PLS",decimals:18},testnet:!1,rpcUrls:{default:{http:["https://rpc.pulsechain.com"],webSocket:["wss://ws.pulsechain.com"]}},blockExplorers:{default:{name:"PulseScan",url:"https://scan.pulsechain.com",apiUrl:"https://api.scan.pulsechain.com/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),Fs=e({id:943,name:"PulseChain V4",testnet:!0,nativeCurrency:{name:"V4 Pulse",symbol:"v4PLS",decimals:18},rpcUrls:{default:{http:["https://rpc.v4.testnet.pulsechain.com"],webSocket:["wss://ws.v4.testnet.pulsechain.com"]}},blockExplorers:{default:{name:"PulseScan",url:"https://scan.v4.testnet.pulsechain.com",apiUrl:"https://scan.v4.testnet.pulsechain.com/api"}},contracts:{ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14353601}}}),Ms=e({id:35441,name:"Q Mainnet",nativeCurrency:{decimals:18,name:"Q",symbol:"Q"},rpcUrls:{default:{http:["https://rpc.q.org"]}},blockExplorers:{default:{name:"Q Mainnet Explorer",url:"https://explorer.q.org",apiUrl:"https://explorer.q.org/api"}}}),zs=e({id:35443,name:"Q Testnet",nativeCurrency:{decimals:18,name:"Q",symbol:"Q"},rpcUrls:{default:{http:["https://rpc.qtestnet.org"]}},blockExplorers:{default:{name:"Q Testnet Explorer",url:"https://explorer.qtestnet.org",apiUrl:"https://explorer.qtestnet.org/api"}},testnet:!0}),Ds=e({id:1729,name:"Reya Network",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.reya.network"],webSocket:["wss://ws.reya.network"]}},blockExplorers:{default:{name:"Reya Network Explorer",url:"https://explorer.reya.network"}},testnet:!1}),Is=e({id:570,name:"Rollux Mainnet",nativeCurrency:{decimals:18,name:"Syscoin",symbol:"SYS"},rpcUrls:{default:{http:["https://rpc.rollux.com"],webSocket:["wss://rpc.rollux.com/wss"]}},blockExplorers:{default:{name:"RolluxExplorer",url:"https://explorer.rollux.com",apiUrl:"https://explorer.rollux.com/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:119222}}}),_s=e({id:57e3,name:"Rollux Testnet",nativeCurrency:{decimals:18,name:"Syscoin",symbol:"SYS"},rpcUrls:{default:{http:["https://rpc-tanenbaum.rollux.com/"],webSocket:["wss://rpc-tanenbaum.rollux.com/wss"]}},blockExplorers:{default:{name:"RolluxTestnetExplorer",url:"https://rollux.tanenbaum.io",apiUrl:"https://rollux.tanenbaum.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:1813675}}}),Hs=e({id:2020,name:"Ronin",nativeCurrency:{name:"RON",symbol:"RON",decimals:18},rpcUrls:{default:{http:["https://api.roninchain.com/rpc"]}},blockExplorers:{default:{name:"Ronin Explorer",url:"https://app.roninchain.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:26023535}}}),Ps=e({id:30,name:"Rootstock Mainnet",network:"rootstock",nativeCurrency:{decimals:18,name:"Rootstock Bitcoin",symbol:"RBTC"},rpcUrls:{default:{http:["https://public-node.rsk.co"]}},blockExplorers:{default:{name:"RSK Explorer",url:"https://explorer.rsk.co"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:4249540}}}),Os=e({id:31,name:"Rootstock Testnet",network:"rootstock",nativeCurrency:{decimals:18,name:"Rootstock Bitcoin",symbol:"tRBTC"},rpcUrls:{default:{http:["https://public-node.testnet.rsk.co"]}},blockExplorers:{default:{name:"RSK Explorer",url:"https://explorer.testnet.rootstock.io"}}}),P=1,Ls=e({...l,id:12553,name:"RSS3 VSL Mainnet",nativeCurrency:{name:"RSS3",symbol:"RSS3",decimals:18},rpcUrls:{default:{http:["https://rpc.rss3.io"]}},blockExplorers:{default:{name:"RSS3 VSL Mainnet Scan",url:"https://scan.rss3.io",apiUrl:"https://scan.rss3.io/api"}},contracts:{...l.contracts,l2OutputOracle:{[P]:{address:"0xE6f24d2C32B3109B18ed33cF08eFb490b1e09C10"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14193},portal:{[P]:{address:"0x6A12432491bbbE8d3babf75F759766774C778Db4",blockCreated:19387057}},l1StandardBridge:{[P]:{address:"0x4cbab69108Aa72151EDa5A3c164eA86845f18438"}}},sourceId:P}),O=11155111,Ns=e({...l,id:2331,name:"RSS3 VSL Sepolia Testnet",nativeCurrency:{name:"RSS3",symbol:"RSS3",decimals:18},rpcUrls:{default:{http:["https://rpc.testnet.rss3.io"]}},blockExplorers:{default:{name:"RSS3 VSL Sepolia Testnet Scan",url:"https://scan.testnet.rss3.io",apiUrl:"https://scan.testnet.rss3.io/api"}},contracts:{...l.contracts,l2OutputOracle:{[O]:{address:"0xDb5c46C3Eaa6Ed6aE8b2379785DF7dd029C0dC81"}},multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:55697},portal:{[O]:{address:"0xcBD77E8E1E7F06B25baDe67142cdE82652Da7b57",blockCreated:5345035}},l1StandardBridge:{[O]:{address:"0xdDD29bb63B0839FB1cE0eE439Ff027738595D07B"}}},testnet:!0,sourceId:O}),Rs=e({id:2021,name:"Saigon Testnet",nativeCurrency:{name:"RON",symbol:"RON",decimals:18},rpcUrls:{default:{http:["https://saigon-testnet.roninchain.com/rpc"]}},blockExplorers:{default:{name:"Saigon Explorer",url:"https://saigon-app.roninchain.com"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:18736871}},testnet:!0}),Ks=e({id:23294,name:"Oasis Sapphire",network:"sapphire",nativeCurrency:{name:"Sapphire Rose",symbol:"ROSE",decimals:18},rpcUrls:{default:{http:["https://sapphire.oasis.io"],webSocket:["wss://sapphire.oasis.io/ws"]}},blockExplorers:{default:{name:"Oasis Explorer",url:"https://explorer.oasis.io/mainnet/sapphire"},blockscout:{name:"Oasis Sapphire Explorer",url:"https://old-explorer.sapphire.oasis.io",apiUrl:"https://old-explorer.sapphire.oasis.io/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:734531}}}),Gs=e({id:23295,name:"Oasis Sapphire Testnet",network:"sapphire-testnet",nativeCurrency:{name:"Sapphire Test Rose",symbol:"TEST",decimals:18},rpcUrls:{default:{http:["https://testnet.sapphire.oasis.dev"],webSocket:["wss://testnet.sapphire.oasis.dev/ws"]}},blockExplorers:{default:{name:"Oasis Explorer",url:"https://explorer.oasis.io/testnet/sapphire"},blockscout:{name:"Oasis Sapphire Testnet Explorer",url:"https://testnet.old-explorer.sapphire.oasis.dev",apiUrl:"https://testnet.old-explorer.sapphire.oasis.dev/api"}},testnet:!0}),Vs=e({id:534352,name:"Scroll",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.scroll.io"],webSocket:["wss://wss-rpc.scroll.io/ws"]}},blockExplorers:{default:{name:"Scrollscan",url:"https://scrollscan.com",apiUrl:"https://api.scrollscan.com/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:14}},testnet:!1}),Xs=e({id:534351,name:"Scroll Sepolia",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia-rpc.scroll.io"]}},blockExplorers:{default:{name:"Blockscout",url:"https://sepolia-blockscout.scroll.io",apiUrl:"https://sepolia-blockscout.scroll.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:9473}},testnet:!0}),qs=e({id:534353,name:"Scroll Testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://alpha-rpc.scroll.io/l2"],webSocket:["wss://alpha-rpc.scroll.io/l2/ws"]}},blockExplorers:{default:{name:"Blockscout",url:"https://blockscout.scroll.io",apiUrl:"https://blockscout.scroll.io/api"}},testnet:!0}),Zs=e({id:713715,name:"Sei Devnet",nativeCurrency:{name:"Sei",symbol:"SEI",decimals:18},rpcUrls:{default:{http:["https://evm-rpc-arctic-1.sei-apis.com"]}},blockExplorers:{default:{name:"Seitrace",url:"https://seitrace.com"}},testnet:!0}),js=e({id:11155111,name:"Sepolia",nativeCurrency:{name:"Sepolia Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.sepolia.org"]}},blockExplorers:{default:{name:"Etherscan",url:"https://sepolia.etherscan.io",apiUrl:"https://api-sepolia.etherscan.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:751532},ensRegistry:{address:"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},ensUniversalResolver:{address:"0xc8Af999e38273D658BE1b921b88A9Ddf005769cC",blockCreated:5317080}},testnet:!0}),$s=e({id:148,name:"Shimmer",network:"shimmer",nativeCurrency:{decimals:18,name:"Shimmer",symbol:"SMR"},rpcUrls:{default:{http:["https://json-rpc.evm.shimmer.network"]}},blockExplorers:{default:{name:"Shimmer Network Explorer",url:"https://explorer.evm.shimmer.network",apiUrl:"https://explorer.evm.shimmer.network/api"}}}),Ws=e({id:1073,name:"Shimmer Testnet",network:"shimmer-testnet",nativeCurrency:{decimals:18,name:"Shimmer",symbol:"SMR"},rpcUrls:{default:{http:["https://json-rpc.evm.testnet.shimmer.network"]}},blockExplorers:{default:{name:"Shimmer Network Explorer",url:"https://explorer.evm.testnet.shimmer.network",apiUrl:"https://explorer.evm.testnet.shimmer.network/api"}},testnet:!0}),Qs=e({id:391845894,name:"SKALE | Block Brawlers",nativeCurrency:{name:"BRAWL",symbol:"BRAWL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/frayed-decent-antares"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/frayed-decent-antares"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://frayed-decent-antares.explorer.mainnet.skalenodes.com"}},contracts:{}}),Ys=e({id:1564830818,name:"SKALE | Calypso NFT Hub",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/honorable-steel-rasalhague"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/honorable-steel-rasalhague"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://honorable-steel-rasalhague.explorer.mainnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3107626}}}),Js=e({id:974399131,name:"SKALE Calypso Testnet",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://testnet.skalenodes.com/v1/giant-half-dual-testnet"],webSocket:["wss://testnet.skalenodes.com/v1/ws/giant-half-dual-testnet"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://giant-half-dual-testnet.explorer.testnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:103220}},testnet:!0}),en=e({id:1026062157,name:"SKALE | CryptoBlades",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/affectionate-immediate-pollux"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/affectionate-immediate-pollux"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://affectionate-immediate-pollux.explorer.mainnet.skalenodes.com"}},contracts:{}}),tn=e({id:1032942172,name:"SKALE | Crypto Colosseum",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/haunting-devoted-deneb"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/haunting-devoted-deneb"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://haunting-devoted-deneb.explorer.mainnet.skalenodes.com"}},contracts:{}}),an=e({id:2046399126,name:"SKALE | Europa Liquidity Hub",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/elated-tan-skat"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/elated-tan-skat"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://elated-tan-skat.explorer.mainnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:3113495}}}),rn=e({id:1444673419,name:"SKALE Europa Testnet",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://testnet.skalenodes.com/v1/juicy-low-small-testnet"],webSocket:["wss://testnet.skalenodes.com/v1/ws/juicy-low-small-testnet"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://juicy-low-small-testnet.explorer.testnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:110858}},testnet:!0}),sn=e({id:2139927552,name:"SKALE | Exorde",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/light-vast-diphda"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/light-vast-diphda"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://light-vast-diphda.explorer.mainnet.skalenodes.com"}},contracts:{}}),nn=e({id:1273227453,name:"SKALE | Human Protocol",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/wan-red-ain"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/wan-red-ain"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://wan-red-ain.explorer.mainnet.skalenodes.com"}},contracts:{}}),ln=e({id:1482601649,name:"SKALE | Nebula Gaming Hub",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/green-giddy-denebola"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/green-giddy-denebola"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://green-giddy-denebola.explorer.mainnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:2372986}}}),on=e({id:37084624,name:"SKALE Nebula Testnet",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://testnet.skalenodes.com/v1/lanky-ill-funny-testnet"],webSocket:["wss://testnet.skalenodes.com/v1/ws/lanky-ill-funny-testnet"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://lanky-ill-funny-testnet.explorer.testnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:105141}},testnet:!0}),cn=e({id:278611351,name:"SKALE | Razor Network",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/turbulent-unique-scheat"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/turbulent-unique-scheat"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://turbulent-unique-scheat.explorer.mainnet.skalenodes.com"}},contracts:{}}),pn=e({id:1350216234,name:"SKALE | Titan Community Hub",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://mainnet.skalenodes.com/v1/parallel-stormy-spica"],webSocket:["wss://mainnet.skalenodes.com/v1/ws/parallel-stormy-spica"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://parallel-stormy-spica.explorer.mainnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:2076458}}}),dn=e({id:1020352220,name:"SKALE Titan Hub",nativeCurrency:{name:"sFUEL",symbol:"sFUEL",decimals:18},rpcUrls:{default:{http:["https://testnet.skalenodes.com/v1/aware-fake-trim-testnet"],webSocket:["wss://testnet.skalenodes.com/v1/ws/aware-fake-trim-testnet"]}},blockExplorers:{default:{name:"SKALE Explorer",url:"https://aware-fake-trim-testnet.explorer.testnet.skalenodes.com"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:104072}},testnet:!0}),mn=e({id:19,name:"Songbird Mainnet",nativeCurrency:{decimals:18,name:"songbird",symbol:"SGB"},rpcUrls:{default:{http:["https://songbird-api.flare.network/ext/C/rpc"]}},blockExplorers:{default:{name:"Songbird Explorer",url:"https://songbird-explorer.flare.network",apiUrl:"https://songbird-explorer.flare.network/api"}}}),un=e({id:16,name:"Coston",nativeCurrency:{decimals:18,name:"costonflare",symbol:"CFLR"},rpcUrls:{default:{http:["https://coston-api.flare.network/ext/C/rpc"]}},blockExplorers:{default:{name:"Coston Explorer",url:"https://coston-explorer.flare.network",apiUrl:"https://coston-explorer.flare.network/api"}},testnet:!0}),bn=e({id:88882,name:"Chiliz Spicy Testnet",network:"chiliz-spicy-Testnet",nativeCurrency:{decimals:18,name:"CHZ",symbol:"CHZ"},rpcUrls:{default:{http:["https://spicy-rpc.chiliz.com","https://chiliz-spicy-rpc.publicnode.com"],webSocket:["wss://spicy-rpc-ws.chiliz.com","wss://chiliz-spicy-rpc.publicnode.com"]}},blockExplorers:{default:{name:"Chiliz Explorer",url:"http://spicy-explorer.chiliz.com",apiUrl:"http://spicy-explorer.chiliz.com/api"}},testnet:!0}),hn=e({id:8082,name:"Shardeum Sphinx",nativeCurrency:{name:"SHARDEUM",symbol:"SHM",decimals:18},rpcUrls:{default:{http:["https://sphinx.shardeum.org"]}},blockExplorers:{default:{name:"Shardeum Explorer",url:"https://explorer-sphinx.shardeum.org"}},testnet:!0}),kn=e({id:109,name:"Shibarium",network:"shibarium",nativeCurrency:{name:"Bone",symbol:"BONE",decimals:18},rpcUrls:{default:{http:["https://rpc.shibrpc.com"]}},blockExplorers:{default:{name:"Blockscout",url:"https://shibariumscan.io"}},contracts:{multicall3:{address:"0x864Bf681ADD6052395188A89101A1B37d3B4C961",blockCreated:265900}}}),xn=e({id:105105,name:"Stratis Mainnet",network:"stratis",nativeCurrency:{name:"Stratis",symbol:"STRAX",decimals:18},rpcUrls:{default:{http:["https://rpc.stratisevm.com"]}},blockExplorers:{default:{name:"Stratis Explorer",url:"https://explorer.stratisevm.com"}}}),fn=e({id:57,name:"Syscoin Mainnet",nativeCurrency:{decimals:18,name:"Syscoin",symbol:"SYS"},rpcUrls:{default:{http:["https://rpc.syscoin.org"],webSocket:["wss://rpc.syscoin.org/wss"]}},blockExplorers:{default:{name:"SyscoinExplorer",url:"https://explorer.syscoin.org",apiUrl:"https://explorer.syscoin.org/api"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:287139}}}),yn=e({id:5700,name:"Syscoin Tanenbaum Testnet",nativeCurrency:{decimals:18,name:"Syscoin",symbol:"SYS"},rpcUrls:{default:{http:["https://rpc.tanenbaum.io"],webSocket:["wss://rpc.tanenbaum.io/wss"]}},blockExplorers:{default:{name:"SyscoinTestnetExplorer",url:"https://tanenbaum.io"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:271288}}}),En=e({id:841,name:"Taraxa Mainnet",nativeCurrency:{name:"Tara",symbol:"TARA",decimals:18},rpcUrls:{default:{http:["https://rpc.mainnet.taraxa.io"]}},blockExplorers:{default:{name:"Taraxa Explorer",url:"https://explorer.mainnet.taraxa.io"}}}),Cn=e({id:167009,name:"Taiko Hekla L2",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.hekla.taiko.xyz"]}},blockExplorers:{default:{name:"Taikoscan",url:"https://hekla.taikoscan.network"}}}),wn=e({id:167007,name:"Taiko Jolnir (Alpha-5 Testnet)",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.jolnir.taiko.xyz"]}},blockExplorers:{default:{name:"blockscout",url:"https://explorer.jolnir.taiko.xyz"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:732706}},testnet:!0}),vn=e({id:167008,name:"Taiko Katla (Alpha-6 Testnet)",network:"tko-katla",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.katla.taiko.xyz"]},public:{http:["https://rpc.katla.taiko.xyz"]}},blockExplorers:{default:{name:"blockscout",url:"https://explorer.katla.taiko.xyz"}}}),Tn=e({id:167005,name:"Taiko (Alpha-3 Testnet)",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://rpc.test.taiko.xyz"]}},blockExplorers:{default:{name:"blockscout",url:"https://explorer.test.taiko.xyz"}}}),Un=e({id:842,name:"Taraxa Testnet",nativeCurrency:{name:"Tara",symbol:"TARA",decimals:18},rpcUrls:{default:{http:["https://rpc.testnet.taraxa.io"]}},blockExplorers:{default:{name:"Taraxa Explorer",url:"https://explorer.testnet.taraxa.io"}},testnet:!0}),gn=e({id:2017,name:"Telcoin Adiri Testnet",nativeCurrency:{name:"Telcoin",symbol:"TEL",decimals:18},rpcUrls:{default:{http:["https://rpc.telcoin.network"]}},blockExplorers:{default:{name:"telscan",url:"https://telscan.io"}},testnet:!0}),Sn=e({id:40,name:"Telos",nativeCurrency:{decimals:18,name:"Telos",symbol:"TLOS"},rpcUrls:{default:{http:["https://mainnet.telos.net/evm"]}},blockExplorers:{default:{name:"Teloscan",url:"https://www.teloscan.io/"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:246530709}}}),An=e({id:41,name:"Telos",nativeCurrency:{decimals:18,name:"Telos",symbol:"TLOS"},rpcUrls:{default:{http:["https://testnet.telos.net/evm"]}},blockExplorers:{default:{name:"Teloscan (testnet)",url:"https://testnet.teloscan.io/"}},testnet:!0}),Bn=e({id:1559,name:"Tenet",network:"tenet-mainnet",nativeCurrency:{name:"TENET",symbol:"TENET",decimals:18},rpcUrls:{default:{http:["https://rpc.tenet.org"]}},blockExplorers:{default:{name:"TenetScan Mainnet",url:"https://tenetscan.io",apiUrl:"https://tenetscan.io/api"}},testnet:!1}),Fn=e({id:7,name:"ThaiChain",nativeCurrency:{name:"TCH",symbol:"TCH",decimals:18},rpcUrls:{default:{http:["hhttps://rpc.thaichain.org"]}},blockExplorers:{default:{name:"Blockscout",url:"https://exp.thaichain.org",apiUrl:"https://exp.thaichain.org/api"}},contracts:{multicall3:{address:"0x0DaD6130e832c21719C5CE3bae93454E16A84826",blockCreated:4806386}},testnet:!1}),Mn=e({id:997,name:"5ireChain Thunder Testnet",nativeCurrency:{name:"5ire Token",symbol:"5IRE",decimals:18},rpcUrls:{default:{http:["https://rpc-testnet.5ire.network"]}},blockExplorers:{default:{name:"5ireChain Explorer",url:"https://explorer.5ire.network"}},testnet:!0}),zn=e({id:100009,name:"Vechain",nativeCurrency:{name:"VeChain",symbol:"VET",decimals:18},rpcUrls:{default:{http:["https://mainnet.vechain.org"]}},blockExplorers:{default:{name:"Vechain Explorer",url:"https://explore.vechain.org"},vechainStats:{name:"Vechain Stats",url:"https://vechainstats.com"}}}),Dn=e({id:888,name:"Wanchain",nativeCurrency:{name:"WANCHAIN",symbol:"WAN",decimals:18},rpcUrls:{default:{http:["https://gwan-ssl.wandevs.org:56891","https://gwan2-ssl.wandevs.org"]}},blockExplorers:{default:{name:"WanScan",url:"https://wanscan.org"}},contracts:{multicall3:{address:"0xcDF6A1566e78EB4594c86Fe73Fcdc82429e97fbB",blockCreated:25312390}}}),In=e({id:999,name:"Wanchain Testnet",nativeCurrency:{name:"WANCHAIN",symbol:"WANt",decimals:18},rpcUrls:{default:{http:["https://gwan-ssl.wandevs.org:46891"]}},blockExplorers:{default:{name:"WanScanTest",url:"https://wanscan.org"}},contracts:{multicall3:{address:"0x11c89bF4496c39FB80535Ffb4c92715839CC5324",blockCreated:24743448}},testnet:!0}),_n=e({id:1111,name:"WEMIX",network:"wemix-mainnet",nativeCurrency:{name:"WEMIX",symbol:"WEMIX",decimals:18},rpcUrls:{default:{http:["https://api.wemix.com"]},public:{http:["https://api.wemix.com"]}},blockExplorers:{default:{name:"wemixExplorer",url:"https://explorer.wemix.com"}}}),Hn=e({id:1112,name:"WEMIX Testnet",network:"wemix-testnet",nativeCurrency:{name:"WEMIX",symbol:"tWEMIX",decimals:18},rpcUrls:{default:{http:["https://api.test.wemix.com"]},public:{http:["https://api.test.wemix.com"]}},blockExplorers:{default:{name:"wemixExplorer",url:"https://testnet.wemixscan.com",apiUrl:"https://testnet.wemixscan.com/api"}},testnet:!0}),Pn=e({id:195,name:"X1 Testnet",nativeCurrency:{decimals:18,name:"OKB",symbol:"OKB"},rpcUrls:{default:{http:["https://x1testrpc.okx.com"]}},blockExplorers:{default:{name:"OKLink",url:"https://www.oklink.com/x1-test"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:624344}},testnet:!0}),On=e({id:196,name:"X Layer Mainnet",nativeCurrency:{decimals:18,name:"OKB",symbol:"OKB"},rpcUrls:{default:{http:["https://rpc.xlayer.tech"]}},blockExplorers:{default:{name:"OKLink",url:"https://www.oklink.com/xlayer"}}}),Ln=e({id:50,name:"XinFin Network",nativeCurrency:{decimals:18,name:"XDC",symbol:"XDC"},rpcUrls:{default:{http:["https://rpc.xinfin.network"]}},blockExplorers:{xinfin:{name:"XinFin",url:"https://explorer.xinfin.network"},default:{name:"Blocksscan",url:"https://xdc.blocksscan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:71542788}}}),Nn=e({id:51,name:"Apothem Network",nativeCurrency:{decimals:18,name:"TXDC",symbol:"TXDC"},rpcUrls:{default:{http:["https://erpc.apothem.network"]}},blockExplorers:{default:{name:"Blocksscan",url:"https://apothem.blocksscan.io"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:59765389}}}),Rn=e({id:50005,name:"Yooldo Verse",nativeCurrency:{name:"OAS",symbol:"OAS",decimals:18},rpcUrls:{default:{http:["https://rpc.yooldo-verse.xyz"]}},blockExplorers:{default:{name:"Yooldo Verse Explorer",url:"https://explorer.yooldo-verse.xyz"}}}),Kn=e({id:50006,name:"Yooldo Verse Testnet",nativeCurrency:{name:"OAS",symbol:"OAS",decimals:18},rpcUrls:{default:{http:["https://rpc.testnet.yooldo-verse.xyz"]}},blockExplorers:{default:{name:"Yooldo Verse Testnet Explorer",url:"https://explorer.testnet.yooldo-verse.xyz"}},testnet:!0}),Gn=e({id:7e3,name:"ZetaChain",nativeCurrency:{decimals:18,name:"Zeta",symbol:"ZETA"},rpcUrls:{default:{http:["https://zetachain-evm.blockpi.network/v1/rpc/public"]}},blockExplorers:{default:{name:"ZetaScan",url:"https://explorer.zetachain.com"}},testnet:!1}),Vn=e({id:7001,name:"ZetaChain Athens Testnet",nativeCurrency:{decimals:18,name:"Zeta",symbol:"aZETA"},rpcUrls:{default:{http:["https://zetachain-athens-evm.blockpi.network/v1/rpc/public"]}},blockExplorers:{default:{name:"ZetaScan",url:"https://athens.explorer.zetachain.com"}},testnet:!0}),Xn=e({id:1337803,name:"Zhejiang",nativeCurrency:{name:"Zhejiang Ether",symbol:"ZhejETH",decimals:18},rpcUrls:{default:{http:["https://rpc.zhejiang.ethpandaops.io"]}},blockExplorers:{default:{name:"Beaconchain",url:"https://zhejiang.beaconcha.in"}},testnet:!0}),qn=e({id:32769,name:"Zilliqa",network:"zilliqa",nativeCurrency:{name:"Zilliqa",symbol:"ZIL",decimals:18},rpcUrls:{default:{http:["https://api.zilliqa.com"]}},blockExplorers:{default:{name:"Ethernal",url:"https://evmx.zilliqa.com"}},testnet:!1}),Zn=e({id:33101,name:"Zilliqa Testnet",network:"zilliqa-testnet",nativeCurrency:{name:"Zilliqa",symbol:"ZIL",decimals:18},rpcUrls:{default:{http:["https://dev-api.zilliqa.com"]}},blockExplorers:{default:{name:"Ethernal",url:"https://evmx.testnet.zilliqa.com"}},testnet:!0}),jn=e({id:42766,name:"ZKFair Mainnet",network:"zkfair-mainnet",nativeCurrency:{decimals:18,name:"USD Coin",symbol:"USDC"},rpcUrls:{default:{http:["https://rpc.zkfair.io"]},public:{http:["https://rpc.zkfair.io"]}},blockExplorers:{default:{name:"zkFair Explorer",url:"https://scan.zkfair.io",apiUrl:"https://scan.zkfair.io/api"}},contracts:{multicall3:{address:"0xca11bde05977b3631167028862be2a173976ca11",blockCreated:6090959}},testnet:!1}),$n=e({id:43851,name:"ZKFair Testnet",network:"zkfair-testnet",nativeCurrency:{decimals:18,name:"USD Coin",symbol:"USDC"},rpcUrls:{default:{http:["https://testnet-rpc.zkfair.io"]},public:{http:["https://testnet-rpc.zkfair.io"]}},blockExplorers:{default:{name:"zkFair Explorer",url:"https://testnet-scan.zkfair.io"}},testnet:!0}),Wn=e({...x,id:324,name:"zkSync Era",network:"zksync-era",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://mainnet.era.zksync.io"],webSocket:["wss://mainnet.era.zksync.io/ws"]}},blockExplorers:{default:{name:"Etherscan",url:"https://era.zksync.network/",apiUrl:"https://api-era.zksync.network/api"}},contracts:{multicall3:{address:"0xF9cda624FBC7e059355ce98a31693d299FACd963"}}}),Qn=e({...x,id:260,name:"zkSync InMemory Node",network:"zksync-in-memory-node",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["http://localhost:8011"]}},testnet:!0}),Yn=e({...x,id:270,name:"zkSync CLI Local Node",network:"zksync-cli-local-node",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["http://localhost:3050"]}},testnet:!0}),Jn=e({...x,id:300,name:"zkSync Sepolia Testnet",network:"zksync-sepolia-testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://sepolia.era.zksync.dev"],webSocket:["wss://sepolia.era.zksync.dev/ws"]}},blockExplorers:{default:{name:"zkExplorer",url:"https://sepolia.explorer.zksync.io/"}},contracts:{multicall3:{address:"0xF9cda624FBC7e059355ce98a31693d299FACd963"}},testnet:!0}),el=e({...x,id:280,name:"zkSync Era Testnet",network:"zksync-era-testnet",nativeCurrency:{name:"Ether",symbol:"ETH",decimals:18},rpcUrls:{default:{http:["https://testnet.era.zksync.dev"],webSocket:["wss://testnet.era.zksync.dev/ws"]}},blockExplorers:{default:{name:"zkExplorer",url:"https://goerli.explorer.zksync.io"}},contracts:{multicall3:{address:"0xF9cda624FBC7e059355ce98a31693d299FACd963"}},testnet:!0}),L=1,tl=e({...l,id:7777777,name:"Zora",nativeCurrency:{decimals:18,name:"Ether",symbol:"ETH"},rpcUrls:{default:{http:["https://rpc.zora.energy"],webSocket:["wss://rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://explorer.zora.energy",apiUrl:"https://explorer.zora.energy/api"}},contracts:{...l.contracts,l2OutputOracle:{[L]:{address:"0x9E6204F750cD866b299594e2aC9eA824E2e5f95c"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:5882},portal:{[L]:{address:"0x1a0ad011913A150f69f6A19DF447A0CfD9551054"}},l1StandardBridge:{[L]:{address:"0x3e2Ea9B92B7E48A52296fD261dc26fd995284631"}}},sourceId:L}),N=11155111,al=e({...l,id:999999999,name:"Zora Sepolia",network:"zora-sepolia",nativeCurrency:{decimals:18,name:"Zora Sepolia",symbol:"ETH"},rpcUrls:{default:{http:["https://sepolia.rpc.zora.energy"],webSocket:["wss://sepolia.rpc.zora.energy"]}},blockExplorers:{default:{name:"Zora Sepolia Explorer",url:"https://sepolia.explorer.zora.energy/",apiUrl:"https://sepolia.explorer.zora.energy/api"}},contracts:{...l.contracts,l2OutputOracle:{[N]:{address:"0x2615B481Bd3E5A1C0C7Ca3Da1bdc663E8615Ade9"}},multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:83160},portal:{[N]:{address:"0xeffE2C6cA9Ab797D418f0D91eA60807713f3536f"}},l1StandardBridge:{[N]:{address:"0x5376f1D543dcbB5BD416c56C189e4cB7399fCcCB"}}},sourceId:N,testnet:!0}),Y=5,rl=e({...l,id:999,name:"Zora Goerli Testnet",nativeCurrency:{decimals:18,name:"Zora Goerli",symbol:"ETH"},rpcUrls:{default:{http:["https://testnet.rpc.zora.energy"],webSocket:["wss://testnet.rpc.zora.energy"]}},blockExplorers:{default:{name:"Explorer",url:"https://testnet.explorer.zora.energy",apiUrl:"https://testnet.explorer.zora.energy/api"}},contracts:{...l.contracts,multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:189123},portal:{[Y]:{address:"0xDb9F51790365e7dc196e7D072728df39Be958ACe"}}},sourceId:Y,testnet:!0});export{et as acala,tt as ancient8,at as ancient8Sepolia,rt as anvil,st as apexTestnet,nt as arbitrum,lt as arbitrumGoerli,ot as arbitrumNova,dt as arbitrumSepolia,mt as areonNetwork,ut as areonNetworkTestnet,ct as astar,it as astarZkEVM,pt as astarZkyoto,bt as aurora,ht as auroraTestnet,kt as auroria,xt as avalanche,ft as avalancheFuji,yt as bahamut,Et as base,Ct as baseGoerli,wt as baseSepolia,vt as beam,Tt as beamTestnet,Ut as bearNetworkChainMainnet,gt as bearNetworkChainTestnet,St as berachainTestnet,At as bevmMainnet,Bt as bitTorrent,Ft as bitTorrentTestnet,Mt as blast,zt as blastSepolia,Dt as bob,It as boba,_t as bronos,Ht as bronosTestnet,Pt as bsc,Lt as bscGreenfield,Ot as bscTestnet,Nt as btr,Rt as btrTestnet,Kt as bxn,Gt as bxnTestnet,Vt as canto,Xt as celo,qt as celoAlfajores,Zt as chiliz,jt as classic,$t as confluxESpace,Wt as confluxESpaceTestnet,Qt as coreDao,Yt as cronos,Jt as cronosTestnet,ea as crossbell,ta as cyber,aa as cyberTestnet,ra as darwinia,sa as defichainEvm,na as defichainEvmTestnet,la as degen,oa as dfk,ca as dodochainTestnet,ia as dogechain,pa as dreyerxMainnet,da as edgeless,ma as edgelessTestnet,ua as edgeware,ba as edgewareTestnet,Ca as ekta,wa as ektaTestnet,ha as eon,ka as eos,xa as eosTestnet,fa as etherlinkTestnet,ya as evmos,Ea as evmosTestnet,va as fantom,Ta as fantomSonicTestnet,Ua as fantomTestnet,ga as fibo,Sa as filecoin,Aa as filecoinCalibration,Ba as filecoinHyperspace,Fa as flare,Ma as flareTestnet,Da as flowMainnet,za as flowPreviewnet,Ia as flowTestnet,_a as foundry,Ha as fraxtal,Pa as fraxtalTestnet,Oa as funkiSepolia,La as fuse,Na as fuseSparknet,ja as gnosis,$a as gnosisChiado,qa as gobi,Za as goerli,Ya as haqqMainnet,Ja as haqqTestedge2,Wa as hardhat,Qa as harmonyOne,er as hedera,ar as hederaPreviewnet,tr as hederaTestnet,rr as holesky,sr as immutableZkEvm,nr as immutableZkEvmTestnet,lr as inEVM,Ra as iotex,Ka as iotexTestnet,Ga as jbc,Va as jbcTestnet,or as kakarotSepolia,Xa as karura,cr as kava,ir as kavaTestnet,pr as kcc,dr as klaytn,mr as klaytnBaobab,ur as kroma,br as kromaSepolia,hr as l3x,kr as l3xTestnet,xr as lightlinkPegasus,fr as lightlinkPhoenix,yr as linea,Er as lineaGoerli,Cr as lineaSepolia,wr as lineaTestnet,vr as lisk,Tr as liskSepolia,Ur as localhost,gr as lukso,Sr as luksoTestnet,Ar as mainnet,Br as mandala,Fr as manta,Mr as mantaSepoliaTestnet,zr as mantaTestnet,Dr as mantle,Ir as mantleSepoliaTestnet,_r as mantleTestnet,Hr as merlin,Pr as metachain,Or as metachainIstanbul,Lr as metalL2,Nr as meter,Rr as meterTestnet,Kr as metis,Gr as metisGoerli,Vr as mev,Xr as mevTestnet,qr as mintSepoliaTestnet,Zr as mode,jr as modeTestnet,$r as moonbaseAlpha,Wr as moonbeam,Qr as moonbeamDev,Yr as moonriver,Jr as morphSepolia,es as nautilus,ts as neonDevnet,as as neonMainnet,rs as nexi,ss as nexilix,ls as oasisTestnet,ns as oasys,os as okc,us as oortMainnetDev,ds as opBNB,ms as opBNBTestnet,cs as optimism,is as optimismGoerli,ps as optimismSepolia,bs as otimDevnet,hs as palm,ks as palmTestnet,fs as pgn,ys as pgnTestnet,Es as phoenix,xs as playfiAlbireo,Cs as plinga,ws as plumeTestnet,vs as polygon,Ts as polygonAmoy,Us as polygonMumbai,gs as polygonZkEvm,Ss as polygonZkEvmCardona,As as polygonZkEvmTestnet,Bs as pulsechain,Fs as pulsechainV4,Ms as qMainnet,zs as qTestnet,Ds as reyaNetwork,Is as rollux,_s as rolluxTestnet,Hs as ronin,Ps as rootstock,Os as rootstockTestnet,Ls as rss3,Ns as rss3Sepolia,Rs as saigon,Ks as sapphire,Gs as sapphireTestnet,Vs as scroll,Xs as scrollSepolia,qs as scrollTestnet,Zs as seiDevnet,js as sepolia,hn as shardeumSphinx,kn as shibarium,$s as shimmer,Ws as shimmerTestnet,Qs as skaleBlockBrawlers,Ys as skaleCalypso,Js as skaleCalypsoTestnet,en as skaleCryptoBlades,tn as skaleCryptoColosseum,an as skaleEuropa,rn as skaleEuropaTestnet,sn as skaleExorde,nn as skaleHumanProtocol,ln as skaleNebula,on as skaleNebulaTestnet,cn as skaleRazor,pn as skaleTitan,dn as skaleTitanTestnet,mn as songbird,un as songbirdTestnet,bn as spicy,xn as stratis,fn as syscoin,yn as syscoinTestnet,Cn as taikoHekla,wn as taikoJolnir,vn as taikoKatla,Tn as taikoTestnetSepolia,En as taraxa,Un as taraxaTestnet,gn as telcoinTestnet,Sn as telos,An as telosTestnet,Bn as tenet,Fn as thaiChain,Mn as thunderTestnet,zn as vechain,Dn as wanchain,In as wanchainTestnet,_n as wemix,Hn as wemixTestnet,Pn as x1Testnet,On as xLayer,Pn as xLayerTestnet,Ln as xdc,Nn as xdcTestnet,Rn as yooldoVerse,Kn as yooldoVerseTestnet,Gn as zetachain,Vn as zetachainAthensTestnet,Xn as zhejiang,qn as zilliqa,Zn as zilliqaTestnet,jn as zkFair,$n as zkFairTestnet,Wn as zkSync,Qn as zkSyncInMemoryNode,Yn as zkSyncLocalNode,Jn as zkSyncSepoliaTestnet,el as zkSyncTestnet,tl as zora,al as zoraSepolia,rl as zoraTestnet}; diff --git a/main/packages/examples/with-web3onboard/build/assets/metamask-sdk-22e0238d.js b/main/packages/examples/with-web3onboard/build/assets/metamask-sdk-22e0238d.js new file mode 100644 index 000000000..a3a082805 --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/metamask-sdk-22e0238d.js @@ -0,0 +1,542 @@ +import{l as Ya,m as na,_ as Ff}from"./index-c9f1dfa0.js";var ms={exports:{}};(function(t,e){var n=typeof globalThis<"u"&&globalThis||typeof self<"u"&&self||typeof Ya<"u"&&Ya,r=function(){function o(){this.fetch=!1,this.DOMException=n.DOMException}return o.prototype=n,new o}();(function(o){(function(s){var c=typeof o<"u"&&o||typeof self<"u"&&self||typeof c<"u"&&c,a={searchParams:"URLSearchParams"in c,iterable:"Symbol"in c&&"iterator"in Symbol,blob:"FileReader"in c&&"Blob"in c&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in c,arrayBuffer:"ArrayBuffer"in c};function l(_){return _&&DataView.prototype.isPrototypeOf(_)}if(a.arrayBuffer)var u=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function(_){return _&&u.indexOf(Object.prototype.toString.call(_))>-1};function h(_){if(typeof _!="string"&&(_=String(_)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(_)||_==="")throw new TypeError('Invalid character in header field name: "'+_+'"');return _.toLowerCase()}function f(_){return typeof _!="string"&&(_=String(_)),_}function m(_){var P={next:function(){var $=_.shift();return{done:$===void 0,value:$}}};return a.iterable&&(P[Symbol.iterator]=function(){return P}),P}function g(_){this.map={},_ instanceof g?_.forEach(function(P,$){this.append($,P)},this):Array.isArray(_)?_.forEach(function(P){this.append(P[0],P[1])},this):_&&Object.getOwnPropertyNames(_).forEach(function(P){this.append(P,_[P])},this)}g.prototype.append=function(_,P){_=h(_),P=f(P);var $=this.map[_];this.map[_]=$?$+", "+P:P},g.prototype.delete=function(_){delete this.map[h(_)]},g.prototype.get=function(_){return _=h(_),this.has(_)?this.map[_]:null},g.prototype.has=function(_){return this.map.hasOwnProperty(h(_))},g.prototype.set=function(_,P){this.map[h(_)]=f(P)},g.prototype.forEach=function(_,P){for(var $ in this.map)this.map.hasOwnProperty($)&&_.call(P,this.map[$],$,this)},g.prototype.keys=function(){var _=[];return this.forEach(function(P,$){_.push($)}),m(_)},g.prototype.values=function(){var _=[];return this.forEach(function(P){_.push(P)}),m(_)},g.prototype.entries=function(){var _=[];return this.forEach(function(P,$){_.push([$,P])}),m(_)},a.iterable&&(g.prototype[Symbol.iterator]=g.prototype.entries);function w(_){if(_.bodyUsed)return Promise.reject(new TypeError("Already read"));_.bodyUsed=!0}function p(_){return new Promise(function(P,$){_.onload=function(){P(_.result)},_.onerror=function(){$(_.error)}})}function S(_){var P=new FileReader,$=p(P);return P.readAsArrayBuffer(_),$}function C(_){var P=new FileReader,$=p(P);return P.readAsText(_),$}function O(_){for(var P=new Uint8Array(_),$=new Array(P.length),y=0;y-1?P:_}function F(_,P){if(!(this instanceof F))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');P=P||{};var $=P.body;if(_ instanceof F){if(_.bodyUsed)throw new TypeError("Already read");this.url=_.url,this.credentials=_.credentials,P.headers||(this.headers=new g(_.headers)),this.method=_.method,this.mode=_.mode,this.signal=_.signal,!$&&_._bodyInit!=null&&($=_._bodyInit,_.bodyUsed=!0)}else this.url=String(_);if(this.credentials=P.credentials||this.credentials||"same-origin",(P.headers||!this.headers)&&(this.headers=new g(P.headers)),this.method=q(P.method||this.method||"GET"),this.mode=P.mode||this.mode||null,this.signal=P.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&$)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody($),(this.method==="GET"||this.method==="HEAD")&&(P.cache==="no-store"||P.cache==="no-cache")){var y=/([?&])_=[^&]*/;if(y.test(this.url))this.url=this.url.replace(y,"$1_="+new Date().getTime());else{var E=/\?/;this.url+=(E.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}F.prototype.clone=function(){return new F(this,{body:this._bodyInit})};function K(_){var P=new FormData;return _.trim().split("&").forEach(function($){if($){var y=$.split("="),E=y.shift().replace(/\+/g," "),x=y.join("=").replace(/\+/g," ");P.append(decodeURIComponent(E),decodeURIComponent(x))}}),P}function Y(_){var P=new g,$=_.replace(/\r?\n[\t ]+/g," ");return $.split("\r").map(function(y){return y.indexOf(` +`)===0?y.substr(1,y.length):y}).forEach(function(y){var E=y.split(":"),x=E.shift().trim();if(x){var M=E.join(":").trim();P.append(x,M)}}),P}U.call(F.prototype);function j(_,P){if(!(this instanceof j))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');P||(P={}),this.type="default",this.status=P.status===void 0?200:P.status,this.ok=this.status>=200&&this.status<300,this.statusText=P.statusText===void 0?"":""+P.statusText,this.headers=new g(P.headers),this.url=P.url||"",this._initBody(_)}U.call(j.prototype),j.prototype.clone=function(){return new j(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new g(this.headers),url:this.url})},j.error=function(){var _=new j(null,{status:0,statusText:""});return _.type="error",_};var B=[301,302,303,307,308];j.redirect=function(_,P){if(B.indexOf(P)===-1)throw new RangeError("Invalid status code");return new j(null,{status:P,headers:{location:_}})},s.DOMException=c.DOMException;try{new s.DOMException}catch{s.DOMException=function(P,$){this.message=P,this.name=$;var y=Error(P);this.stack=y.stack},s.DOMException.prototype=Object.create(Error.prototype),s.DOMException.prototype.constructor=s.DOMException}function R(_,P){return new Promise(function($,y){var E=new F(_,P);if(E.signal&&E.signal.aborted)return y(new s.DOMException("Aborted","AbortError"));var x=new XMLHttpRequest;function M(){x.abort()}x.onload=function(){var v={status:x.status,statusText:x.statusText,headers:Y(x.getAllResponseHeaders()||"")};v.url="responseURL"in x?x.responseURL:v.headers.get("X-Request-URL");var k="response"in x?x.response:x.responseText;setTimeout(function(){$(new j(k,v))},0)},x.onerror=function(){setTimeout(function(){y(new TypeError("Network request failed"))},0)},x.ontimeout=function(){setTimeout(function(){y(new TypeError("Network request failed"))},0)},x.onabort=function(){setTimeout(function(){y(new s.DOMException("Aborted","AbortError"))},0)};function b(v){try{return v===""&&c.location.href?c.location.href:v}catch{return v}}x.open(E.method,b(E.url),!0),E.credentials==="include"?x.withCredentials=!0:E.credentials==="omit"&&(x.withCredentials=!1),"responseType"in x&&(a.blob?x.responseType="blob":a.arrayBuffer&&E.headers.get("Content-Type")&&E.headers.get("Content-Type").indexOf("application/octet-stream")!==-1&&(x.responseType="arraybuffer")),P&&typeof P.headers=="object"&&!(P.headers instanceof g)?Object.getOwnPropertyNames(P.headers).forEach(function(v){x.setRequestHeader(v,f(P.headers[v]))}):E.headers.forEach(function(v,k){x.setRequestHeader(k,v)}),E.signal&&(E.signal.addEventListener("abort",M),x.onreadystatechange=function(){x.readyState===4&&E.signal.removeEventListener("abort",M)}),x.send(typeof E._bodyInit>"u"?null:E._bodyInit)})}return R.polyfill=!0,c.fetch||(c.fetch=R,c.Headers=g,c.Request=F,c.Response=j),s.Headers=g,s.Request=F,s.Response=j,s.fetch=R,s})({})})(r),r.fetch.ponyfill=!0,delete r.fetch.polyfill;var i=n.fetch?n:r;e=i.fetch,e.default=i.fetch,e.fetch=i.fetch,e.Headers=i.Headers,e.Request=i.Request,e.Response=i.Response,t.exports=e})(ms,ms.exports);var Hf=ms.exports;const Su=na(Hf);var ys={exports:{}},xo,Za;function zf(){if(Za)return xo;Za=1;var t=1e3,e=t*60,n=e*60,r=n*24,i=r*7,o=r*365.25;xo=function(u,d){d=d||{};var h=typeof u;if(h==="string"&&u.length>0)return s(u);if(h==="number"&&isFinite(u))return d.long?a(u):c(u);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(u))};function s(u){if(u=String(u),!(u.length>100)){var d=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(d){var h=parseFloat(d[1]),f=(d[2]||"ms").toLowerCase();switch(f){case"years":case"year":case"yrs":case"yr":case"y":return h*o;case"weeks":case"week":case"w":return h*i;case"days":case"day":case"d":return h*r;case"hours":case"hour":case"hrs":case"hr":case"h":return h*n;case"minutes":case"minute":case"mins":case"min":case"m":return h*e;case"seconds":case"second":case"secs":case"sec":case"s":return h*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return h;default:return}}}}function c(u){var d=Math.abs(u);return d>=r?Math.round(u/r)+"d":d>=n?Math.round(u/n)+"h":d>=e?Math.round(u/e)+"m":d>=t?Math.round(u/t)+"s":u+"ms"}function a(u){var d=Math.abs(u);return d>=r?l(u,d,r,"day"):d>=n?l(u,d,n,"hour"):d>=e?l(u,d,e,"minute"):d>=t?l(u,d,t,"second"):u+" ms"}function l(u,d,h,f){var m=d>=h*1.5;return Math.round(u/h)+" "+f+(m?"s":"")}return xo}function qf(t){n.debug=n,n.default=n,n.coerce=a,n.disable=o,n.enable=i,n.enabled=s,n.humanize=zf(),n.destroy=l,Object.keys(t).forEach(u=>{n[u]=t[u]}),n.names=[],n.skips=[],n.formatters={};function e(u){let d=0;for(let h=0;h{if(U==="%%")return"%";O++;const q=n.formatters[W];if(typeof q=="function"){const F=w[O];U=q.call(p,F),w.splice(O,1),O--}return U}),n.formatArgs.call(p,w),(p.log||n.log).apply(p,w)}return g.namespace=u,g.useColors=n.useColors(),g.color=n.selectColor(u),g.extend=r,g.destroy=n.destroy,Object.defineProperty(g,"enabled",{enumerable:!0,configurable:!1,get:()=>h!==null?h:(f!==n.namespaces&&(f=n.namespaces,m=n.enabled(u)),m),set:w=>{h=w}}),typeof n.init=="function"&&n.init(g),g}function r(u,d){const h=n(this.namespace+(typeof d>"u"?":":d)+u);return h.log=this.log,h}function i(u){n.save(u),n.namespaces=u,n.names=[],n.skips=[];let d;const h=(typeof u=="string"?u:"").split(/[\s,]+/),f=h.length;for(d=0;d"-"+d)].join(",");return n.enable(""),u}function s(u){if(u[u.length-1]==="*")return!0;let d,h;for(d=0,h=n.skips.length;d{let a=!1;return()=>{a||(a=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function n(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function r(a){if(a[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+a[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;const l="color: "+this.color;a.splice(1,0,l,"color: inherit");let u=0,d=0;a[0].replace(/%[a-zA-Z%]/g,h=>{h!=="%%"&&(u++,h==="%c"&&(d=u))}),a.splice(d,0,l)}e.log=console.debug||console.log||(()=>{});function i(a){try{a?e.storage.setItem("debug",a):e.storage.removeItem("debug")}catch{}}function o(){let a;try{a=e.storage.getItem("debug")}catch{}return!a&&typeof process<"u"&&"env"in process&&(a={}.DEBUG),a}function s(){try{return localStorage}catch{}}t.exports=Vf(e);const{formatters:c}=t.exports;c.j=function(a){try{return JSON.stringify(a)}catch(l){return"[UnexpectedJSONParseError]: "+l.message}}})(ys,ys.exports);var Wf=ys.exports;const Ge=na(Wf);var ku={exports:{}};/*! + * EventEmitter2 + * https://github.com/hij1nx/EventEmitter2 + * + * Copyright (c) 2013 hij1nx + * Licensed under the MIT license. + */(function(t,e){(function(n){var r=Object.hasOwnProperty,i=Array.isArray?Array.isArray:function(E){return Object.prototype.toString.call(E)==="[object Array]"},o=10,s=typeof process=="object"&&typeof process.nextTick=="function",c=typeof Symbol=="function",a=typeof Reflect=="object",l=typeof setImmediate=="function",u=l?setImmediate:setTimeout,d=c?a&&typeof Reflect.ownKeys=="function"?Reflect.ownKeys:function(y){var E=Object.getOwnPropertyNames(y);return E.push.apply(E,Object.getOwnPropertySymbols(y)),E}:Object.keys;function h(){this._events={},this._conf&&f.call(this,this._conf)}function f(y){y&&(this._conf=y,y.delimiter&&(this.delimiter=y.delimiter),y.maxListeners!==n&&(this._maxListeners=y.maxListeners),y.wildcard&&(this.wildcard=y.wildcard),y.newListener&&(this._newListener=y.newListener),y.removeListener&&(this._removeListener=y.removeListener),y.verboseMemoryLeak&&(this.verboseMemoryLeak=y.verboseMemoryLeak),y.ignoreErrors&&(this.ignoreErrors=y.ignoreErrors),this.wildcard&&(this.listenerTree={}))}function m(y,E){var x="(node) warning: possible EventEmitter memory leak detected. "+y+" listeners added. Use emitter.setMaxListeners() to increase limit.";if(this.verboseMemoryLeak&&(x+=" Event name: "+E+"."),typeof process<"u"&&process.emitWarning){var M=new Error(x);M.name="MaxListenersExceededWarning",M.emitter=this,M.count=y,process.emitWarning(M)}else console.error(x),console.trace&&console.trace()}var g=function(y,E,x){var M=arguments.length;switch(M){case 0:return[];case 1:return[y];case 2:return[y,E];case 3:return[y,E,x];default:for(var b=new Array(M);M--;)b[M]=arguments[M];return b}};function w(y,E){for(var x={},M,b=y.length,v=E?E.length:0,k=0;k0;)y=v[T],k.call(A,y,x[y]);this._listeners={},this._listenersCount=0,I()}}});function S(y,E,x,M){var b=Object.assign({},E);if(!y)return b;if(typeof y!="object")throw TypeError("options must be an object");var v=Object.keys(y),k=v.length,A,T,I;function D(z){throw Error('Invalid "'+A+'" option value'+(z?". Reason: "+z:""))}for(var H=0;H0;)if(A===y[T])return v;k(E)}}var N=O(["function"]),U=O(["object","function"]);function W(y,E,x){var M,b,v=0,k,A=new y(function(T,I,D){x=S(x,{timeout:0,overload:!1},{timeout:function(Q,ne){return Q*=1,(typeof Q!="number"||Q<0||!Number.isFinite(Q))&&ne("timeout must be a positive number"),Q}}),M=!x.overload&&typeof y.prototype.cancel=="function"&&typeof D=="function";function H(){b&&(b=null),v&&(clearTimeout(v),v=0)}var z=function(Q){H(),T(Q)},Z=function(Q){H(),I(Q)};M?E(z,Z,D):(b=[function(Q){Z(Q||Error("canceled"))}],E(z,Z,function(Q){if(k)throw Error("Unable to subscribe on cancel event asynchronously");if(typeof Q!="function")throw TypeError("onCancel callback must be a function");b.push(Q)}),k=!0),x.timeout>0&&(v=setTimeout(function(){var Q=Error("timeout");Q.code="ETIMEDOUT",v=0,A.cancel(Q),I(Q)},x.timeout))});return M||(A.cancel=function(T){if(b){for(var I=b.length,D=1;D0;)Z=ce[A],Z!=="_listeners"&&(ae=F(y,E,x[Z],M+1,b),ae&&(z?z.push.apply(z,ae):z=ae));return z}else if(re==="**"){for(le=M+1===b||M+2===b&&ie==="*",le&&x._listeners&&(z=F(y,E,x,b,b)),ce=d(x),A=ce.length;A-- >0;)Z=ce[A],Z!=="_listeners"&&(Z==="*"||Z==="**"?(x[Z]._listeners&&!le&&(ae=F(y,E,x[Z],b,b),ae&&(z?z.push.apply(z,ae):z=ae)),ae=F(y,E,x[Z],M,b)):Z===ie?ae=F(y,E,x[Z],M+2,b):ae=F(y,E,x[Z],M,b),ae&&(z?z.push.apply(z,ae):z=ae));return z}else x[re]&&(z=F(y,E,x[re],M+1,b));if(Q=x["*"],Q&&F(y,E,Q,M+1,b),ne=x["**"],ne)if(M0;)Z=ce[A],Z!=="_listeners"&&(Z===ie?F(y,E,ne[Z],M+2,b):Z===re?F(y,E,ne[Z],M+1,b):(se={},se[Z]=ne[Z],F(y,E,{"**":se},M+1,b)));else ne._listeners?F(y,E,ne,b,b):ne["*"]&&ne["*"]._listeners&&F(y,E,ne["*"],b,b);return z}function K(y,E,x){var M=0,b=0,v,k=this.delimiter,A=k.length,T;if(typeof y=="string")if((v=y.indexOf(k))!==-1){T=new Array(5);do T[M++]=y.slice(b,v),b=v+A;while((v=y.indexOf(k,b))!==-1);T[M++]=y.slice(b)}else T=[y],M=1;else T=y,M=y.length;if(M>1){for(v=0;v+10&&I._listeners.length>this._maxListeners&&(I._listeners.warned=!0,m.call(this,I._listeners.length,D))):I._listeners=E,!0;return!0}function Y(y,E,x,M){for(var b=d(y),v=b.length,k,A,T,I=y._listeners,D;v-- >0;)A=b[v],k=y[A],A==="_listeners"?T=x:T=x?x.concat(A):[A],D=M||typeof A=="symbol",I&&E.push(D?T:T.join(this.delimiter)),typeof k=="object"&&Y.call(this,k,E,T,D);return E}function j(y){for(var E=d(y),x=E.length,M,b,v;x-- >0;)b=E[x],M=y[b],M&&(v=!0,b!=="_listeners"&&!j(M)&&delete y[b]);return v}function B(y,E,x){this.emitter=y,this.event=E,this.listener=x}B.prototype.off=function(){return this.emitter.off(this.event,this.listener),this};function R(y,E,x){if(x===!0)b=!0;else if(x===!1)M=!0;else{if(!x||typeof x!="object")throw TypeError("options should be an object or true");var M=x.async,b=x.promisify,v=x.nextTick,k=x.objectify}if(M||v||b){var A=E,T=E._origin||E;if(v&&!s)throw Error("process.nextTick is not supported");b===n&&(b=E.constructor.name==="AsyncFunction"),E=function(){var I=arguments,D=this,H=this.event;return b?v?Promise.resolve():new Promise(function(z){u(z)}).then(function(){return D.event=H,A.apply(D,I)}):(v?process.nextTick:u)(function(){D.event=H,A.apply(D,I)})},E._async=!0,E._origin=T}return[E,k?new B(this,y,E):this]}function _(y){this._events={},this._newListener=!1,this._removeListener=!1,this.verboseMemoryLeak=!1,f.call(this,y)}_.EventEmitter2=_,_.prototype.listenTo=function(y,E,x){if(typeof y!="object")throw TypeError("target musts be an object");var M=this;x=S(x,{on:n,off:n,reducers:n},{on:N,off:N,reducers:U});function b(v){if(typeof v!="object")throw TypeError("events must be an object");var k=x.reducers,A=q.call(M,y),T;A===-1?T=new p(M,y,x):T=M._observers[A];for(var I=d(v),D=I.length,H,z=typeof k=="function",Z=0;Z0;)b=x[M],(!y||b._target===y)&&(b.unsubscribe(E),v=!0);return v},_.prototype.delimiter=".",_.prototype.setMaxListeners=function(y){y!==n&&(this._maxListeners=y,this._conf||(this._conf={}),this._conf.maxListeners=y)},_.prototype.getMaxListeners=function(){return this._maxListeners},_.prototype.event="",_.prototype.once=function(y,E,x){return this._once(y,E,!1,x)},_.prototype.prependOnceListener=function(y,E,x){return this._once(y,E,!0,x)},_.prototype._once=function(y,E,x,M){return this._many(y,1,E,x,M)},_.prototype.many=function(y,E,x,M){return this._many(y,E,x,!1,M)},_.prototype.prependMany=function(y,E,x,M){return this._many(y,E,x,!0,M)},_.prototype._many=function(y,E,x,M,b){var v=this;if(typeof x!="function")throw new Error("many only accepts instances of Function");function k(){return--E===0&&v.off(y,k),x.apply(this,arguments)}return k._origin=x,this._on(y,k,M,b)},_.prototype.emit=function(){if(!this._events&&!this._all)return!1;this._events||h.call(this);var y=arguments[0],E,x=this.wildcard,M,b,v,k,A;if(y==="newListener"&&!this._newListener&&!this._events.newListener)return!1;if(x&&(E=y,y!=="newListener"&&y!=="removeListener"&&typeof y=="object")){if(b=y.length,c){for(v=0;v3)for(M=new Array(T-1),k=1;k3)for(b=new Array(I-1),A=1;A0&&this._events[y].length>this._maxListeners&&(this._events[y].warned=!0,m.call(this,this._events[y].length,y))):this._events[y]=E,b)},_.prototype.off=function(y,E){if(typeof E!="function")throw new Error("removeListener only takes instances of Function");var x,M=[];if(this.wildcard){var b=typeof y=="string"?y.split(this.delimiter):y.slice();if(M=F.call(this,null,b,this.listenerTree,0),!M)return this}else{if(!this._events[y])return this;x=this._events[y],M.push({_listeners:x})}for(var v=0;v0){for(M=this._all,E=0,x=M.length;E0;)M=E[x[v]],typeof M=="function"?b.push(M):b.push.apply(b,M);return b}else{if(this.wildcard){if(k=this.listenerTree,!k)return[];var A=[],T=typeof y=="string"?y.split(this.delimiter):y.slice();return F.call(this,A,T,k,0),A}return E?(M=E[y],M?typeof M=="function"?[M]:M:[]):[]}},_.prototype.eventNames=function(y){var E=this._events;return this.wildcard?Y.call(this,this.listenerTree,[],null,y):E?d(E):[]},_.prototype.listenerCount=function(y){return this.listeners(y).length},_.prototype.hasListeners=function(y){if(this.wildcard){var E=[],x=typeof y=="string"?y.split(this.delimiter):y.slice();return F.call(this,E,x,this.listenerTree,0),E.length>0}var M=this._events,b=this._all;return!!(b&&b.length||M&&(y===n?d(M).length:M[y]))},_.prototype.listenersAny=function(){return this._all?this._all:[]},_.prototype.waitFor=function(y,E){var x=this,M=typeof E;return M==="number"?E={timeout:E}:M==="function"&&(E={filter:E}),E=S(E,{timeout:0,filter:n,handleError:!1,Promise,overload:!1},{filter:N,Promise:C}),W(E.Promise,function(b,v,k){function A(){var T=E.filter;if(!(T&&!T.apply(x,arguments)))if(x.off(y,A),E.handleError){var I=arguments[0];I?v(I):b(g.apply(null,arguments).slice(1))}else b(g.apply(null,arguments))}k(function(){x.off(y,A)}),x._on(y,A,!1)},{timeout:E.timeout,overload:E.overload})};function P(y,E,x){x=S(x,{Promise,timeout:0,overload:!1},{Promise:C});var M=x.Promise;return W(M,function(b,v,k){var A;if(typeof y.addEventListener=="function"){A=function(){b(g.apply(null,arguments))},k(function(){y.removeEventListener(E,A)}),y.addEventListener(E,A,{once:!0});return}var T=function(){I&&y.removeListener("error",I),b(g.apply(null,arguments))},I;E!=="error"&&(I=function(D){y.removeListener(E,T),v(D)},y.once("error",I)),k(function(){I&&y.removeListener("error",I),y.removeListener(E,T)}),y.once(E,T)},{timeout:x.timeout,overload:x.overload})}var $=_.prototype;Object.defineProperties(_,{defaultMaxListeners:{get:function(){return $._maxListeners},set:function(y){if(typeof y!="number"||y<0||Number.isNaN(y))throw TypeError("n must be a non-negative number");$._maxListeners=y},enumerable:!0},once:{value:P,writable:!0,configurable:!0}}),Object.defineProperties($,{_maxListeners:{value:o,writable:!0,configurable:!0},_observers:{value:null,writable:!0,configurable:!0}}),typeof n=="function"&&n.amd?n(function(){return _}):t.exports=_})()})(ku);var ho=ku.exports;const Gf=na(ho);var Vr,Yf=new Uint8Array(16);function Zf(){if(!Vr&&(Vr=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto<"u"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!Vr))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Vr(Yf)}const Jf=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function vs(t){return typeof t=="string"&&Jf.test(t)}var De=[];for(var Ao=0;Ao<256;++Ao)De.push((Ao+256).toString(16).substr(1));function Xf(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=(De[t[e+0]]+De[t[e+1]]+De[t[e+2]]+De[t[e+3]]+"-"+De[t[e+4]]+De[t[e+5]]+"-"+De[t[e+6]]+De[t[e+7]]+"-"+De[t[e+8]]+De[t[e+9]]+"-"+De[t[e+10]]+De[t[e+11]]+De[t[e+12]]+De[t[e+13]]+De[t[e+14]]+De[t[e+15]]).toLowerCase();if(!vs(n))throw TypeError("Stringified UUID is invalid");return n}function ra(t,e,n){t=t||{};var r=t.random||(t.rng||Zf)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){n=n||0;for(var i=0;i<16;++i)e[n+i]=r[i];return e}return Xf(r)}const Dt=Object.create(null);Dt.open="0";Dt.close="1";Dt.ping="2";Dt.pong="3";Dt.message="4";Dt.upgrade="5";Dt.noop="6";const vi=Object.create(null);Object.keys(Dt).forEach(t=>{vi[Dt[t]]=t});const bs={type:"error",data:"parser error"},xu=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",Au=typeof ArrayBuffer=="function",Mu=t=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer,ia=({type:t,data:e},n,r)=>xu&&e instanceof Blob?n?r(e):Ja(e,r):Au&&(e instanceof ArrayBuffer||Mu(e))?n?r(e):Ja(new Blob([e]),r):r(Dt[t]+(e||"")),Ja=(t,e)=>{const n=new FileReader;return n.onload=function(){const r=n.result.split(",")[1];e("b"+(r||""))},n.readAsDataURL(t)};function Xa(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}let Mo;function Qf(t,e){if(xu&&t.data instanceof Blob)return t.data.arrayBuffer().then(Xa).then(e);if(Au&&(t.data instanceof ArrayBuffer||Mu(t.data)))return e(Xa(t.data));ia(t,!1,n=>{Mo||(Mo=new TextEncoder),e(Mo.encode(n))})}const Qa="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",yr=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let t=0;t{let e=t.length*.75,n=t.length,r,i=0,o,s,c,a;t[t.length-1]==="="&&(e--,t[t.length-2]==="="&&e--);const l=new ArrayBuffer(e),u=new Uint8Array(l);for(r=0;r>4,u[i++]=(s&15)<<4|c>>2,u[i++]=(c&3)<<6|a&63;return l},t0=typeof ArrayBuffer=="function",oa=(t,e)=>{if(typeof t!="string")return{type:"message",data:Tu(t,e)};const n=t.charAt(0);return n==="b"?{type:"message",data:n0(t.substring(1),e)}:vi[n]?t.length>1?{type:vi[n],data:t.substring(1)}:{type:vi[n]}:bs},n0=(t,e)=>{if(t0){const n=e0(t);return Tu(n,e)}else return{base64:!0,data:t}},Tu=(t,e)=>{switch(e){case"blob":return t instanceof Blob?t:new Blob([t]);case"arraybuffer":default:return t instanceof ArrayBuffer?t:t.buffer}},Ru=String.fromCharCode(30),r0=(t,e)=>{const n=t.length,r=new Array(n);let i=0;t.forEach((o,s)=>{ia(o,!1,c=>{r[s]=c,++i===n&&e(r.join(Ru))})})},i0=(t,e)=>{const n=t.split(Ru),r=[];for(let i=0;i{const r=n.length;let i;if(r<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,r);else if(r<65536){i=new Uint8Array(3);const o=new DataView(i.buffer);o.setUint8(0,126),o.setUint16(1,r)}else{i=new Uint8Array(9);const o=new DataView(i.buffer);o.setUint8(0,127),o.setBigUint64(1,BigInt(r))}t.data&&typeof t.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(n)})}})}let To;function Wr(t){return t.reduce((e,n)=>e+n.length,0)}function Gr(t,e){if(t[0].length===e)return t.shift();const n=new Uint8Array(e);let r=0;for(let i=0;iMath.pow(2,53-32)-1){c.enqueue(bs);break}i=u*Math.pow(2,32)+l.getUint32(4),r=3}else{if(Wr(n)t){c.enqueue(bs);break}}}})}const Ou=4;function Re(t){if(t)return a0(t)}function a0(t){for(var e in Re.prototype)t[e]=Re.prototype[e];return t}Re.prototype.on=Re.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this};Re.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this};Re.prototype.off=Re.prototype.removeListener=Re.prototype.removeAllListeners=Re.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var n=this._callbacks["$"+t];if(!n)return this;if(arguments.length==1)return delete this._callbacks["$"+t],this;for(var r,i=0;itypeof self<"u"?self:typeof window<"u"?window:Function("return this")())();function Lu(t,...e){return e.reduce((n,r)=>(t.hasOwnProperty(r)&&(n[r]=t[r]),n),{})}const c0=mt.setTimeout,l0=mt.clearTimeout;function fo(t,e){e.useNativeTimers?(t.setTimeoutFn=c0.bind(mt),t.clearTimeoutFn=l0.bind(mt)):(t.setTimeoutFn=mt.setTimeout.bind(mt),t.clearTimeoutFn=mt.clearTimeout.bind(mt))}const u0=1.33;function d0(t){return typeof t=="string"?h0(t):Math.ceil((t.byteLength||t.size)*u0)}function h0(t){let e=0,n=0;for(let r=0,i=t.length;r=57344?n+=3:(r++,n+=4);return n}function f0(t){let e="";for(let n in t)t.hasOwnProperty(n)&&(e.length&&(e+="&"),e+=encodeURIComponent(n)+"="+encodeURIComponent(t[n]));return e}function p0(t){let e={},n=t.split("&");for(let r=0,i=n.length;r0);return e}function Iu(){const t=nc(+new Date);return t!==tc?(ec=0,tc=t):t+"."+nc(ec++)}for(;Yr{this.readyState="paused",e()};if(this.polling||!this.writable){let r=0;this.polling&&(r++,this.once("pollComplete",function(){--r||n()})),this.writable||(r++,this.once("drain",function(){--r||n()}))}else n()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const n=r=>{if(this.readyState==="opening"&&r.type==="open"&&this.onOpen(),r.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(r)};i0(e,this.socket.binaryType).forEach(n),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,r0(e,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",n=this.query||{};return this.opts.timestampRequests!==!1&&(n[this.opts.timestampParam]=Iu()),!this.supportsBinary&&!n.sid&&(n.b64=1),this.createUri(e,n)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new Nt(this.uri(),e)}doWrite(e,n){const r=this.request({method:"POST",data:e});r.on("success",n),r.on("error",(i,o)=>{this.onError("xhr post error",i,o)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(n,r)=>{this.onError("xhr poll error",n,r)}),this.pollXhr=e}}class Nt extends Re{constructor(e,n){super(),fo(this,n),this.opts=n,this.method=n.method||"GET",this.uri=e,this.data=n.data!==void 0?n.data:null,this.create()}create(){var e;const n=Lu(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");n.xdomain=!!this.opts.xd;const r=this.xhr=new Bu(n);try{r.open(this.method,this.uri,!0);try{if(this.opts.extraHeaders){r.setDisableHeaderCheck&&r.setDisableHeaderCheck(!0);for(let i in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(i)&&r.setRequestHeader(i,this.opts.extraHeaders[i])}}catch{}if(this.method==="POST")try{r.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{r.setRequestHeader("Accept","*/*")}catch{}(e=this.opts.cookieJar)===null||e===void 0||e.addCookies(r),"withCredentials"in r&&(r.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(r.timeout=this.opts.requestTimeout),r.onreadystatechange=()=>{var i;r.readyState===3&&((i=this.opts.cookieJar)===null||i===void 0||i.parseCookies(r)),r.readyState===4&&(r.status===200||r.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof r.status=="number"?r.status:0)},0))},r.send(this.data)}catch(i){this.setTimeoutFn(()=>{this.onError(i)},0);return}typeof document<"u"&&(this.index=Nt.requestsCount++,Nt.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if(!(typeof this.xhr>"u"||this.xhr===null)){if(this.xhr.onreadystatechange=v0,e)try{this.xhr.abort()}catch{}typeof document<"u"&&delete Nt.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}Nt.requestsCount=0;Nt.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",rc);else if(typeof addEventListener=="function"){const t="onpagehide"in mt?"pagehide":"unload";addEventListener(t,rc,!1)}}function rc(){for(let t in Nt.requests)Nt.requests.hasOwnProperty(t)&&Nt.requests[t].abort()}const aa=(()=>typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,n)=>n(e,0))(),Zr=mt.WebSocket||mt.MozWebSocket,ic=!0,E0="arraybuffer",oc=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class C0 extends sa{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),n=this.opts.protocols,r=oc?{}:Lu(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=ic&&!oc?n?new Zr(e,n):new Zr(e):new Zr(e,n,r)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let n=0;n{const s={};try{ic&&this.ws.send(o)}catch{}i&&aa(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=Iu()),this.supportsBinary||(n.b64=1),this.createUri(e,n)}check(){return!!Zr}}class _0 extends sa{get name(){return"webtransport"}doOpen(){typeof WebTransport=="function"&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this.transport.ready.then(()=>{this.transport.createBidirectionalStream().then(e=>{const n=s0(Number.MAX_SAFE_INTEGER,this.socket.binaryType),r=e.readable.pipeThrough(n).getReader(),i=o0();i.readable.pipeTo(e.writable),this.writer=i.writable.getWriter();const o=()=>{r.read().then(({done:c,value:a})=>{c||(this.onPacket(a),o())}).catch(c=>{})};o();const s={type:"open"};this.query.sid&&(s.data=`{"sid":"${this.query.sid}"}`),this.writer.write(s).then(()=>this.onOpen())})}))}write(e){this.writable=!1;for(let n=0;n{i&&aa(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this.transport)===null||e===void 0||e.close()}}const S0={websocket:C0,webtransport:_0,polling:w0},k0=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,x0=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Es(t){const e=t,n=t.indexOf("["),r=t.indexOf("]");n!=-1&&r!=-1&&(t=t.substring(0,n)+t.substring(n,r).replace(/:/g,";")+t.substring(r,t.length));let i=k0.exec(t||""),o={},s=14;for(;s--;)o[x0[s]]=i[s]||"";return n!=-1&&r!=-1&&(o.source=e,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=A0(o,o.path),o.queryKey=M0(o,o.query),o}function A0(t,e){const n=/\/{2,9}/g,r=e.replace(n,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&r.splice(0,1),e.slice(-1)=="/"&&r.splice(r.length-1,1),r}function M0(t,e){const n={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,i,o){i&&(n[i]=o)}),n}let Du=class Fn extends Re{constructor(e,n={}){super(),this.binaryType=E0,this.writeBuffer=[],e&&typeof e=="object"&&(n=e,e=null),e?(e=Es(e),n.hostname=e.host,n.secure=e.protocol==="https"||e.protocol==="wss",n.port=e.port,e.query&&(n.query=e.query)):n.host&&(n.hostname=Es(n.host).host),fo(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=n.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=p0(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,typeof addEventListener=="function"&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const n=Object.assign({},this.opts.query);n.EIO=Ou,n.transport=e,this.id&&(n.sid=this.id);const r=Object.assign({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new S0[e](r)}open(){let e;if(this.opts.rememberUpgrade&&Fn.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)e="websocket";else if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}else e=this.transports[0];this.readyState="opening";try{e=this.createTransport(e)}catch{this.transports.shift(),this.open();return}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",n=>this.onClose("transport close",n))}probe(e){let n=this.createTransport(e),r=!1;Fn.priorWebsocketSuccess=!1;const i=()=>{r||(n.send([{type:"ping",data:"probe"}]),n.once("packet",d=>{if(!r)if(d.type==="pong"&&d.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;Fn.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{r||this.readyState!=="closed"&&(u(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const h=new Error("probe error");h.transport=n.name,this.emitReserved("upgradeError",h)}}))};function o(){r||(r=!0,u(),n.close(),n=null)}const s=d=>{const h=new Error("probe error: "+d);h.transport=n.name,o(),this.emitReserved("upgradeError",h)};function c(){s("transport closed")}function a(){s("socket closed")}function l(d){n&&d.name!==n.name&&o()}const u=()=>{n.removeListener("open",i),n.removeListener("error",s),n.removeListener("close",c),this.off("close",a),this.off("upgrading",l)};n.once("open",i),n.once("error",s),n.once("close",c),this.once("close",a),this.once("upgrading",l),this.upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{r||n.open()},200):n.open()}onOpen(){if(this.readyState="open",Fn.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){let e=0;const n=this.upgrades.length;for(;e{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let r=0;r0&&n>this.maxPayload)return this.writeBuffer.slice(0,r);n+=2}return this.writeBuffer}write(e,n,r){return this.sendPacket("message",e,n,r),this}send(e,n,r){return this.sendPacket("message",e,n,r),this}sendPacket(e,n,r,i){if(typeof n=="function"&&(i=n,n=void 0),typeof r=="function"&&(i=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;r=r||{},r.compress=r.compress!==!1;const o={type:e,data:n,options:r};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),e()},r=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():e()}):this.upgrading?r():e()),this}onError(e){Fn.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,n){(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")&&(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,n),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const n=[];let r=0;const i=e.length;for(;rtypeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer,$u=Object.prototype.toString,L0=typeof Blob=="function"||typeof Blob<"u"&&$u.call(Blob)==="[object BlobConstructor]",P0=typeof File=="function"||typeof File<"u"&&$u.call(File)==="[object FileConstructor]";function ca(t){return R0&&(t instanceof ArrayBuffer||O0(t))||L0&&t instanceof Blob||P0&&t instanceof File}function bi(t,e){if(!t||typeof t!="object")return!1;if(Array.isArray(t)){for(let n=0,r=t.length;n=0&&t.num{delete this.acks[e];for(let s=0;s{this.io.clearTimeoutFn(o),n.apply(this,[null,...s])}}emitWithAck(e,...n){const r=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((i,o)=>{n.push((s,c)=>r?s?o(s):i(c):i(s)),this.emit(e,...n)})}_addToQueue(e){let n;typeof e[e.length-1]=="function"&&(n=e.pop());const r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...o)=>r!==this._queue[0]?void 0:(i!==null?r.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(i)):(this._queue.shift(),n&&n(null,...o)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const n=this._queue[0];n.pending&&!e||(n.pending=!0,n.tryCount++,this.flags=n.flags,this.emit.apply(this,n.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:ye.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,n)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case ye.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case ye.EVENT:case ye.BINARY_EVENT:this.onevent(e);break;case ye.ACK:case ye.BINARY_ACK:this.onack(e);break;case ye.DISCONNECT:this.ondisconnect();break;case ye.CONNECT_ERROR:this.destroy();const r=new Error(e.data.message);r.data=e.data.data,this.emitReserved("connect_error",r);break}}onevent(e){const n=e.data||[];e.id!=null&&n.push(this.ack(e.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const r of n)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const n=this;let r=!1;return function(...i){r||(r=!0,n.packet({type:ye.ACK,id:e,data:i}))}}onack(e){const n=this.acks[e.id];typeof n=="function"&&(n.apply(this,e.data),delete this.acks[e.id])}onconnect(e,n){this.id=e,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:ye.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const n=this._anyListeners;for(let r=0;r0&&t.jitter<=1?t.jitter:0,this.attempts=0}ar.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),n=Math.floor(e*this.jitter*t);t=Math.floor(e*10)&1?t+n:t-n}return Math.min(t,this.max)|0};ar.prototype.reset=function(){this.attempts=0};ar.prototype.setMin=function(t){this.ms=t};ar.prototype.setMax=function(t){this.max=t};ar.prototype.setJitter=function(t){this.jitter=t};class Ss extends Re{constructor(e,n){var r;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(n=e,e=void 0),n=n||{},n.path=n.path||"/socket.io",this.opts=n,fo(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((r=n.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new ar({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=e;const i=n.parser||K0;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var n;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(n=this.backoff)===null||n===void 0||n.setMin(e),this)}randomizationFactor(e){var n;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(n=this.backoff)===null||n===void 0||n.setJitter(e),this)}reconnectionDelayMax(e){var n;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(n=this.backoff)===null||n===void 0||n.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new Du(this.uri,this.opts);const n=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const i=wt(n,"open",function(){r.onopen(),e&&e()}),o=c=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",c),e?e(c):this.maybeReconnectOnOpen()},s=wt(n,"error",o);if(this._timeout!==!1){const c=this._timeout,a=this.setTimeoutFn(()=>{i(),o(new Error("timeout")),n.close()},c);this.opts.autoUnref&&a.unref(),this.subs.push(()=>{this.clearTimeoutFn(a)})}return this.subs.push(i),this.subs.push(s),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(wt(e,"ping",this.onping.bind(this)),wt(e,"data",this.ondata.bind(this)),wt(e,"error",this.onerror.bind(this)),wt(e,"close",this.onclose.bind(this)),wt(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(n){this.onclose("parse error",n)}}ondecoded(e){aa(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,n){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new ju(this,e,n),this.nsps[e]=r),r}_destroy(e){const n=Object.keys(this.nsps);for(const r of n)if(this.nsps[r].active)return;this._close()}_packet(e){const n=this.encoder.encode(e);for(let r=0;re()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,n){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},n);this.opts.autoUnref&&r.unref(),this.subs.push(()=>{this.clearTimeoutFn(r)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const dr={};function wi(t,e){typeof t=="object"&&(e=t,t=void 0),e=e||{};const n=T0(t,e.path||"/socket.io"),r=n.source,i=n.id,o=n.path,s=dr[i]&&o in dr[i].nsps,c=e.forceNew||e["force new connection"]||e.multiplex===!1||s;let a;return c?a=new Ss(r,e):(dr[i]||(dr[i]=new Ss(r,e)),a=dr[i]),n.query&&!e.query&&(e.query=n.queryKey),a.socket(n.path,e)}Object.assign(wi,{Manager:Ss,Socket:ju,io:wi,connect:wi});function X(t,e,n,r){return new(n||(n=Promise))(function(i,o){function s(l){try{a(r.next(l))}catch(u){o(u)}}function c(l){try{a(r.throw(l))}catch(u){o(u)}}function a(l){var u;l.done?i(l.value):(u=l.value,u instanceof n?u:new n(function(d){d(u)})).then(s,c)}a((r=r.apply(t,e||[])).next())})}var Ye=typeof global<"u"?global:typeof self<"u"?self:typeof window<"u"?window:{},Mt=[],ft=[],F0=typeof Uint8Array<"u"?Uint8Array:Array,ua=!1;function Ku(){ua=!0;for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e=0;e<64;++e)Mt[e]=t[e],ft[t.charCodeAt(e)]=e;ft["-".charCodeAt(0)]=62,ft["_".charCodeAt(0)]=63}function H0(t,e,n){for(var r,i,o=[],s=e;s>18&63]+Mt[i>>12&63]+Mt[i>>6&63]+Mt[63&i]);return o.join("")}function ac(t){var e;ua||Ku();for(var n=t.length,r=n%3,i="",o=[],s=16383,c=0,a=n-r;ca?a:c+s));return r===1?(e=t[n-1],i+=Mt[e>>2],i+=Mt[e<<4&63],i+="=="):r===2&&(e=(t[n-2]<<8)+t[n-1],i+=Mt[e>>10],i+=Mt[e>>4&63],i+=Mt[e<<2&63],i+="="),o.push(i),o.join("")}function Jr(t,e,n,r,i){var o,s,c=8*i-r-1,a=(1<>1,u=-7,d=n?i-1:0,h=n?-1:1,f=t[e+d];for(d+=h,o=f&(1<<-u)-1,f>>=-u,u+=c;u>0;o=256*o+t[e+d],d+=h,u-=8);for(s=o&(1<<-u)-1,o>>=-u,u+=r;u>0;s=256*s+t[e+d],d+=h,u-=8);if(o===0)o=1-l;else{if(o===a)return s?NaN:1/0*(f?-1:1);s+=Math.pow(2,r),o-=l}return(f?-1:1)*s*Math.pow(2,o-r)}function Uu(t,e,n,r,i,o){var s,c,a,l=8*o-i-1,u=(1<>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,f=r?0:o-1,m=r?1:-1,g=e<0||e===0&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(c=isNaN(e)?1:0,s=u):(s=Math.floor(Math.log(e)/Math.LN2),e*(a=Math.pow(2,-s))<1&&(s--,a*=2),(e+=s+d>=1?h/a:h*Math.pow(2,1-d))*a>=2&&(s++,a/=2),s+d>=u?(c=0,s=u):s+d>=1?(c=(e*a-1)*Math.pow(2,i),s+=d):(c=e*Math.pow(2,d-1)*Math.pow(2,i),s=0));i>=8;t[n+f]=255&c,f+=m,c/=256,i-=8);for(s=s<0;t[n+f]=255&s,f+=m,s/=256,l-=8);t[n+f-m]|=128*g}var z0={}.toString,Fu=Array.isArray||function(t){return z0.call(t)=="[object Array]"};J.TYPED_ARRAY_SUPPORT=Ye.TYPED_ARRAY_SUPPORT===void 0||Ye.TYPED_ARRAY_SUPPORT;var q0=$i();function $i(){return J.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function Vt(t,e){if($i()=$i())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+$i().toString(16)+" bytes");return 0|t}function Tt(t){return!(t==null||!t._isBuffer)}function qu(t,e){if(Tt(t))return t.length;if(typeof ArrayBuffer<"u"&&typeof ArrayBuffer.isView=="function"&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;typeof t!="string"&&(t=""+t);var n=t.length;if(n===0)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return ji(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return Yu(t).length;default:if(r)return ji(t).length;e=(""+e).toLowerCase(),r=!0}}function V0(t,e,n){var r=!1;if((e===void 0||e<0)&&(e=0),e>this.length||((n===void 0||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return tp(this,e,n);case"utf8":case"utf-8":return Wu(this,e,n);case"ascii":return Q0(this,e,n);case"latin1":case"binary":return ep(this,e,n);case"base64":return X0(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return np(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}function _n(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function cc(t,e,n,r,i){if(t.length===0)return-1;if(typeof n=="string"?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if(typeof e=="string"&&(e=J.from(e,r)),Tt(e))return e.length===0?-1:lc(t,e,n,r,i);if(typeof e=="number")return e&=255,J.TYPED_ARRAY_SUPPORT&&typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):lc(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function lc(t,e,n,r,i){var o,s=1,c=t.length,a=e.length;if(r!==void 0&&((r=String(r).toLowerCase())==="ucs2"||r==="ucs-2"||r==="utf16le"||r==="utf-16le")){if(t.length<2||e.length<2)return-1;s=2,c/=2,a/=2,n/=2}function l(f,m){return s===1?f[m]:f.readUInt16BE(m*s)}if(i){var u=-1;for(o=n;oc&&(n=c-a),o=n;o>=0;o--){for(var d=!0,h=0;hi&&(r=i):r=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var s=0;s>8,a=s%256,l.push(a),l.push(c);return l}(e,t.length-n),t,n,r)}function X0(t,e,n){return e===0&&n===t.length?ac(t):ac(t.slice(e,n))}function Wu(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:l>223?3:l>191?2:1;if(i+d<=n)switch(d){case 1:l<128&&(u=l);break;case 2:(192&(o=t[i+1]))==128&&(a=(31&l)<<6|63&o)>127&&(u=a);break;case 3:o=t[i+1],s=t[i+2],(192&o)==128&&(192&s)==128&&(a=(15&l)<<12|(63&o)<<6|63&s)>2047&&(a<55296||a>57343)&&(u=a);break;case 4:o=t[i+1],s=t[i+2],c=t[i+3],(192&o)==128&&(192&s)==128&&(192&c)==128&&(a=(15&l)<<18|(63&o)<<12|(63&s)<<6|63&c)>65535&&a<1114112&&(u=a)}u===null?(u=65533,d=1):u>65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u),i+=d}return function(h){var f=h.length;if(f<=uc)return String.fromCharCode.apply(String,h);for(var m="",g=0;g0&&(t=this.toString("hex",0,50).match(/.{2}/g).join(" "),this.length>50&&(t+=" ... ")),""},J.prototype.compare=function(t,e,n,r,i){if(!Tt(t))throw new TypeError("Argument must be a Buffer");if(e===void 0&&(e=0),n===void 0&&(n=t?t.length:0),r===void 0&&(r=0),i===void 0&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(e>>>=0),c=Math.min(o,s),a=this.slice(r,i),l=t.slice(e,n),u=0;ui)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return W0(this,t,e,n);case"utf8":case"utf-8":return G0(this,t,e,n);case"ascii":return Vu(this,t,e,n);case"latin1":case"binary":return Y0(this,t,e,n);case"base64":return Z0(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return J0(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},J.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var uc=4096;function Q0(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",o=e;on)throw new RangeError("Trying to access beyond buffer length")}function Ze(t,e,n,r,i,o){if(!Tt(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function Xr(t,e,n,r){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-n,2);i>>8*(r?i:1-i)}function Qr(t,e,n,r){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-n,4);i>>8*(r?i:3-i)&255}function Gu(t,e,n,r,i,o){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function dc(t,e,n,r,i){return i||Gu(t,0,n,4),Uu(t,e,n,r,23,4),n+4}function hc(t,e,n,r,i){return i||Gu(t,0,n,8),Uu(t,e,n,r,52,8),n+8}J.prototype.slice=function(t,e){var n,r=this.length;if((t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=e===void 0?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e0&&(i*=256);)r+=this[t+--e]*i;return r},J.prototype.readUInt8=function(t,e){return e||Le(t,1,this.length),this[t]},J.prototype.readUInt16LE=function(t,e){return e||Le(t,2,this.length),this[t]|this[t+1]<<8},J.prototype.readUInt16BE=function(t,e){return e||Le(t,2,this.length),this[t]<<8|this[t+1]},J.prototype.readUInt32LE=function(t,e){return e||Le(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},J.prototype.readUInt32BE=function(t,e){return e||Le(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},J.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||Le(t,e,this.length);for(var r=this[t],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*e)),r},J.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||Le(t,e,this.length);for(var r=e,i=1,o=this[t+--r];r>0&&(i*=256);)o+=this[t+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},J.prototype.readInt8=function(t,e){return e||Le(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},J.prototype.readInt16LE=function(t,e){e||Le(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},J.prototype.readInt16BE=function(t,e){e||Le(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},J.prototype.readInt32LE=function(t,e){return e||Le(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},J.prototype.readInt32BE=function(t,e){return e||Le(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},J.prototype.readFloatLE=function(t,e){return e||Le(t,4,this.length),Jr(this,t,!0,23,4)},J.prototype.readFloatBE=function(t,e){return e||Le(t,4,this.length),Jr(this,t,!1,23,4)},J.prototype.readDoubleLE=function(t,e){return e||Le(t,8,this.length),Jr(this,t,!0,52,8)},J.prototype.readDoubleBE=function(t,e){return e||Le(t,8,this.length),Jr(this,t,!1,52,8)},J.prototype.writeUIntLE=function(t,e,n,r){t=+t,e|=0,n|=0,r||Ze(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+n},J.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,1,255,0),J.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},J.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,2,65535,0),J.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):Xr(this,t,e,!0),e+2},J.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,2,65535,0),J.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):Xr(this,t,e,!1),e+2},J.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,4,4294967295,0),J.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):Qr(this,t,e,!0),e+4},J.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,4,4294967295,0),J.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):Qr(this,t,e,!1),e+4},J.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);Ze(this,t,e,n,i-1,-i)}var o=0,s=1,c=0;for(this[e]=255&t;++o>0)-c&255;return e+n},J.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);Ze(this,t,e,n,i-1,-i)}var o=n-1,s=1,c=0;for(this[e+o]=255&t;--o>=0&&(s*=256);)t<0&&c===0&&this[e+o+1]!==0&&(c=1),this[e+o]=(t/s>>0)-c&255;return e+n},J.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,1,127,-128),J.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},J.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,2,32767,-32768),J.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):Xr(this,t,e,!0),e+2},J.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,2,32767,-32768),J.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):Xr(this,t,e,!1),e+2},J.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,4,2147483647,-2147483648),J.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):Qr(this,t,e,!0),e+4},J.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||Ze(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),J.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):Qr(this,t,e,!1),e+4},J.prototype.writeFloatLE=function(t,e,n){return dc(this,t,e,!0,n)},J.prototype.writeFloatBE=function(t,e,n){return dc(this,t,e,!1,n)},J.prototype.writeDoubleLE=function(t,e,n){return hc(this,t,e,!0,n)},J.prototype.writeDoubleBE=function(t,e,n){return hc(this,t,e,!1,n)},J.prototype.copy=function(t,e,n,r){if(n||(n=0),r||r===0||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e=0;--i)t[i+e]=this[i+n];else if(o<1e3||!J.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=n===void 0?this.length:n>>>0,t||(t=0),typeof t=="number")for(o=e;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===r){(e-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function Yu(t){return function(e){var n,r,i,o,s,c;ua||Ku();var a=e.length;if(a%4>0)throw new Error("Invalid string. Length must be a multiple of 4");s=e[a-2]==="="?2:e[a-1]==="="?1:0,c=new F0(3*a/4-s),i=s>0?a-4:a;var l=0;for(n=0,r=0;n>16&255,c[l++]=o>>8&255,c[l++]=255&o;return s===2?(o=ft[e.charCodeAt(n)]<<2|ft[e.charCodeAt(n+1)]>>4,c[l++]=255&o):s===1&&(o=ft[e.charCodeAt(n)]<<10|ft[e.charCodeAt(n+1)]<<4|ft[e.charCodeAt(n+2)]>>2,c[l++]=o>>8&255,c[l++]=255&o),c}(function(e){if((e=function(n){return n.trim?n.trim():n.replace(/^\s+|\s+$/g,"")}(e).replace(rp,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(t))}function po(t,e,n,r){for(var i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}function Zu(t){return t!=null&&(!!t._isBuffer||fc(t)||function(e){return typeof e.readFloatLE=="function"&&typeof e.slice=="function"&&fc(e.slice(0,0))}(t))}function fc(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}var op=Object.freeze({__proto__:null,Buffer:J,INSPECT_MAX_BYTES:50,SlowBuffer:function(t){return+t!=t&&(t=0),J.alloc(+t)},isBuffer:Zu,kMaxLength:q0}),yt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function go(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Fr(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var n=function r(){return this instanceof r?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(r){var i=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:function(){return t[r]}})}),n}var Hn={},at={},Fe={};function Ki(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`positive integer expected, not ${t}`)}function Ju(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function Xu(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function ha(t,...e){if(!Xu(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function Qu(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("hash must be wrapped by utils.wrapConstructor");Ki(t.outputLen),Ki(t.blockLen)}function ed(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function td(t,e){ha(t);const n=e.outputLen;if(t.length=0&&wnew Uint8Array(d.buffer,d.byteOffset,d.byteLength),t.u16=d=>new Uint16Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/2)),t.u32=d=>new Uint32Array(d.buffer,d.byteOffset,Math.floor(d.byteLength/4)),t.createView=d=>new DataView(d.buffer,d.byteOffset,d.byteLength),t.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,!t.isLE)throw new Error("Non little-endian hardware is not supported");const n=Array.from({length:256},(d,h)=>h.toString(16).padStart(2,"0"));function r(d){(0,e.bytes)(d);let h="";for(let f=0;f=i._0&&d<=i._9?d-i._0:d>=i._A&&d<=i._F?d-(i._A-10):d>=i._a&&d<=i._f?d-(i._a-10):void 0}function s(d){if(typeof d!="string")throw new Error("hex string expected, got "+typeof d);const h=d.length,f=h/2;if(h%2)throw new Error("padded hex string expected, got unpadded hex of length "+h);const m=new Uint8Array(f);for(let g=0,w=0;g{},t.Hash=class{};function l(d,h,f,m){if(typeof d.setBigUint64=="function")return d.setBigUint64(h,f,m);const g=BigInt(32),w=BigInt(4294967295),p=Number(f>>g&w),S=Number(f&w),C=m?4:0,O=m?0:4;d.setUint32(h+C,p,m),d.setUint32(h+O,S,m)}function u(d){return Uint8Array.from(d)}t.wrapCipher=(d,h)=>(Object.assign(h,d),h)}(at);var Tr={},Pe={};Object.defineProperty(Pe,"__esModule",{value:!0}),Pe.AEAD_TAG_LENGTH=Pe.XCHACHA20_NONCE_LENGTH=Pe.CURVE25519_PUBLIC_KEY_SIZE=Pe.ETH_PUBLIC_KEY_SIZE=Pe.UNCOMPRESSED_PUBLIC_KEY_SIZE=Pe.COMPRESSED_PUBLIC_KEY_SIZE=Pe.SECRET_KEY_LENGTH=void 0,Pe.SECRET_KEY_LENGTH=32,Pe.COMPRESSED_PUBLIC_KEY_SIZE=33,Pe.UNCOMPRESSED_PUBLIC_KEY_SIZE=65,Pe.ETH_PUBLIC_KEY_SIZE=64,Pe.CURVE25519_PUBLIC_KEY_SIZE=32,Pe.XCHACHA20_NONCE_LENGTH=24,Pe.AEAD_TAG_LENGTH=16,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ephemeralKeySize=t.symmetricNonceLength=t.symmetricAlgorithm=t.isHkdfKeyCompressed=t.isEphemeralKeyCompressed=t.ellipticCurve=t.ECIES_CONFIG=void 0;var e=Pe,n=function(){this.ellipticCurve="secp256k1",this.isEphemeralKeyCompressed=!1,this.isHkdfKeyCompressed=!1,this.symmetricAlgorithm="aes-256-gcm",this.symmetricNonceLength=16};t.ECIES_CONFIG=new n,t.ellipticCurve=function(){return t.ECIES_CONFIG.ellipticCurve},t.isEphemeralKeyCompressed=function(){return t.ECIES_CONFIG.isEphemeralKeyCompressed},t.isHkdfKeyCompressed=function(){return t.ECIES_CONFIG.isHkdfKeyCompressed},t.symmetricAlgorithm=function(){return t.ECIES_CONFIG.symmetricAlgorithm},t.symmetricNonceLength=function(){return t.ECIES_CONFIG.symmetricNonceLength},t.ephemeralKeySize=function(){var r={secp256k1:t.ECIES_CONFIG.isEphemeralKeyCompressed?e.COMPRESSED_PUBLIC_KEY_SIZE:e.UNCOMPRESSED_PUBLIC_KEY_SIZE,x25519:e.CURVE25519_PUBLIC_KEY_SIZE,ed25519:e.CURVE25519_PUBLIC_KEY_SIZE};if(t.ECIES_CONFIG.ellipticCurve in r)return r[t.ECIES_CONFIG.ellipticCurve];throw new Error("Not implemented")}}(Tr);var Oo={},Ui={},mo={},nd={},fa={},ei={};Object.defineProperty(ei,"__esModule",{value:!0}),ei.crypto=void 0,ei.crypto=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.gcm=t.ctr=t.cbc=t.utils=void 0,t.randomBytes=i,t.getWebcryptoSubtle=o,t.managedNonce=function(a){return(0,n.number)(a.nonceLength),(l,...u)=>({encrypt(d,...h){const{nonceLength:f}=a,m=i(f),g=a(l,m,...u).encrypt(d,...h),w=(0,r.concatBytes)(m,g);return g.fill(0),w},decrypt(d,...h){const{nonceLength:f}=a,m=d.subarray(0,f),g=d.subarray(f);return a(l,m,...u).decrypt(g,...h)}})};const e=ei,n=Fe,r=at;function i(a=32){if(e.crypto&&typeof e.crypto.getRandomValues=="function")return e.crypto.getRandomValues(new Uint8Array(a));if(e.crypto&&typeof e.crypto.randomBytes=="function")return e.crypto.randomBytes(a);throw new Error("crypto.getRandomValues must be defined")}function o(){if(e.crypto&&typeof e.crypto.subtle=="object"&&e.crypto.subtle!=null)return e.crypto.subtle;throw new Error("crypto.subtle must be defined")}t.utils={async encrypt(a,l,u,d){const h=o(),f=await h.importKey("raw",a,l,!0,["encrypt"]),m=await h.encrypt(u,f,d);return new Uint8Array(m)},async decrypt(a,l,u,d){const h=o(),f=await h.importKey("raw",a,l,!0,["decrypt"]),m=await h.decrypt(u,f,d);return new Uint8Array(m)}};const s={CBC:"AES-CBC",CTR:"AES-CTR",GCM:"AES-GCM"};function c(a){return(l,u,d)=>{(0,n.bytes)(l),(0,n.bytes)(u);const h={name:a,length:8*l.length},f=function(m,g,w){if(m===s.CBC)return{name:s.CBC,iv:g};if(m===s.CTR)return{name:s.CTR,counter:g,length:64};if(m===s.GCM)return w?{name:s.GCM,iv:g,additionalData:w}:{name:s.GCM,iv:g};throw new Error("unknown aes block mode")}(a,u,d);return{encrypt:m=>((0,n.bytes)(m),t.utils.encrypt(l,h,f,m)),decrypt:m=>((0,n.bytes)(m),t.utils.decrypt(l,h,f,m))}}}t.cbc=c(s.CBC),t.ctr=c(s.CTR),t.gcm=c(s.GCM)}(fa);var rd={},Ie={},Wt={},it={};function Fi(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`positive integer expected, not ${t}`)}function id(t){if(typeof t!="boolean")throw new Error(`boolean expected, not ${t}`)}function od(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function pa(t,...e){if(!od(t))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(t.length))throw new Error(`Uint8Array expected of length ${e}, not of length=${t.length}`)}function sd(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");Fi(t.outputLen),Fi(t.blockLen)}function ad(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}function cd(t,e){pa(t);const n=e.outputLen;if(t.length=0&&ml().update(c(h)).digest(),d=l();return u.outputLen=d.outputLen,u.blockLen=d.blockLen,u.create=()=>l(),u},t.wrapConstructorWithOpts=function(l){const u=(h,f)=>l(f).update(c(h)).digest(),d=l({});return u.outputLen=d.outputLen,u.blockLen=d.blockLen,u.create=h=>l(h),u},t.wrapXOFConstructorWithOpts=function(l){const u=(h,f)=>l(f).update(c(h)).digest(),d=l({});return u.outputLen=d.outputLen,u.blockLen=d.blockLen,u.create=h=>l(h),u},t.randomBytes=function(l=32){if(e.crypto&&typeof e.crypto.getRandomValues=="function")return e.crypto.getRandomValues(new Uint8Array(l));if(e.crypto&&typeof e.crypto.randomBytes=="function")return e.crypto.randomBytes(l);throw new Error("crypto.getRandomValues must be defined")};const e=ti,n=it;t.u8=l=>new Uint8Array(l.buffer,l.byteOffset,l.byteLength),t.u32=l=>new Uint32Array(l.buffer,l.byteOffset,Math.floor(l.byteLength/4)),t.createView=l=>new DataView(l.buffer,l.byteOffset,l.byteLength),t.rotr=(l,u)=>l<<32-u|l>>>u,t.rotl=(l,u)=>l<>>32-u>>>0,t.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,t.byteSwap=l=>l<<24&4278190080|l<<8&16711680|l>>>8&65280|l>>>24&255,t.byteSwapIfBE=t.isLE?l=>l:l=>(0,t.byteSwap)(l);const r=Array.from({length:256},(l,u)=>u.toString(16).padStart(2,"0")),i={_0:48,_9:57,_A:65,_F:70,_a:97,_f:102};function o(l){return l>=i._0&&l<=i._9?l-i._0:l>=i._A&&l<=i._F?l-(i._A-10):l>=i._a&&l<=i._f?l-(i._a-10):void 0}function s(l){if(typeof l!="string")throw new Error("utf8ToBytes expected string, got "+typeof l);return new Uint8Array(new TextEncoder().encode(l))}function c(l){return typeof l=="string"&&(l=s(l)),(0,n.bytes)(l),l}t.nextTick=async()=>{},t.Hash=class{clone(){return this._cloneInto()}};const a={}.toString}(Qt),Object.defineProperty(Wt,"__esModule",{value:!0}),Wt.HashMD=Wt.Maj=Wt.Chi=void 0;const Lo=it,hr=Qt;Wt.Chi=(t,e,n)=>t&e^~t&n;Wt.Maj=(t,e,n)=>t&e^t&n^e&n;Wt.HashMD=class extends hr.Hash{constructor(t,e,n,r){super(),this.blockLen=t,this.outputLen=e,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=(0,hr.createView)(this.buffer)}update(t){(0,Lo.exists)(this);const{view:e,buffer:n,blockLen:r}=this,i=(t=(0,hr.toBytes)(t)).length;for(let o=0;or-o&&(this.process(n,0),o=0);for(let u=o;u>m&g),p=Number(h&g),S=f?4:0,C=f?0:4;u.setUint32(d+S,w,f),u.setUint32(d+C,p,f)})(n,r-8,BigInt(8*this.length),i),this.process(n,0);const s=(0,hr.createView)(t),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const a=c/4,l=this.get();if(a>l.length)throw new Error("_sha2: outputLen bigger than state");for(let u=0;u>xs&ni)}:{h:0|Number(t>>xs&ni),l:0|Number(t&ni)}}function ld(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let i=0;iBigInt(t>>>0)<>>0);he.toBig=ud;const dd=(t,e,n)=>t>>>n;he.shrSH=dd;const hd=(t,e,n)=>t<<32-n|e>>>n;he.shrSL=hd;const fd=(t,e,n)=>t>>>n|e<<32-n;he.rotrSH=fd;const pd=(t,e,n)=>t<<32-n|e>>>n;he.rotrSL=pd;const gd=(t,e,n)=>t<<64-n|e>>>n-32;he.rotrBH=gd;const md=(t,e,n)=>t>>>n-32|e<<64-n;he.rotrBL=md;const yd=(t,e)=>e;he.rotr32H=yd;const vd=(t,e)=>t;he.rotr32L=vd;const bd=(t,e,n)=>t<>>32-n;he.rotlSH=bd;const wd=(t,e,n)=>e<>>32-n;he.rotlSL=wd;const Ed=(t,e,n)=>e<>>64-n;he.rotlBH=Ed;const Cd=(t,e,n)=>t<>>64-n;function _d(t,e,n,r){const i=(e>>>0)+(r>>>0);return{h:t+n+(i/2**32|0)|0,l:0|i}}he.rotlBL=Cd;const Sd=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0);he.add3L=Sd;const kd=(t,e,n,r)=>e+n+r+(t/2**32|0)|0;he.add3H=kd;const xd=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0);he.add4L=xd;const Ad=(t,e,n,r,i)=>e+n+r+i+(t/2**32|0)|0;he.add4H=Ad;const Md=(t,e,n,r,i)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(i>>>0);he.add5L=Md;const Td=(t,e,n,r,i,o)=>e+n+r+i+o+(t/2**32|0)|0;he.add5H=Td;const cp={fromBig:ga,split:ld,toBig:ud,shrSH:dd,shrSL:hd,rotrSH:fd,rotrSL:pd,rotrBH:gd,rotrBL:md,rotr32H:yd,rotr32L:vd,rotlSH:bd,rotlSL:wd,rotlBH:Ed,rotlBL:Cd,add:_d,add3L:Sd,add3H:kd,add4L:xd,add4H:Ad,add5H:Td,add5L:Md};he.default=cp,Object.defineProperty(Ie,"__esModule",{value:!0}),Ie.sha384=Ie.sha512_256=Ie.sha512_224=Ie.sha512=Ie.SHA384=Ie.SHA512_256=Ie.SHA512_224=Ie.SHA512=void 0;const lp=Wt,fe=he,ri=Qt,[up,dp]=(()=>fe.default.split(["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","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(t=>BigInt(t))))(),en=new Uint32Array(80),tn=new Uint32Array(80);class Hr extends lp.HashMD{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:n,Bh:r,Bl:i,Ch:o,Cl:s,Dh:c,Dl:a,Eh:l,El:u,Fh:d,Fl:h,Gh:f,Gl:m,Hh:g,Hl:w}=this;return[e,n,r,i,o,s,c,a,l,u,d,h,f,m,g,w]}set(e,n,r,i,o,s,c,a,l,u,d,h,f,m,g,w){this.Ah=0|e,this.Al=0|n,this.Bh=0|r,this.Bl=0|i,this.Ch=0|o,this.Cl=0|s,this.Dh=0|c,this.Dl=0|a,this.Eh=0|l,this.El=0|u,this.Fh=0|d,this.Fl=0|h,this.Gh=0|f,this.Gl=0|m,this.Hh=0|g,this.Hl=0|w}process(e,n){for(let C=0;C<16;C++,n+=4)en[C]=e.getUint32(n),tn[C]=e.getUint32(n+=4);for(let C=16;C<80;C++){const O=0|en[C-15],N=0|tn[C-15],U=fe.default.rotrSH(O,N,1)^fe.default.rotrSH(O,N,8)^fe.default.shrSH(O,N,7),W=fe.default.rotrSL(O,N,1)^fe.default.rotrSL(O,N,8)^fe.default.shrSL(O,N,7),q=0|en[C-2],F=0|tn[C-2],K=fe.default.rotrSH(q,F,19)^fe.default.rotrBH(q,F,61)^fe.default.shrSH(q,F,6),Y=fe.default.rotrSL(q,F,19)^fe.default.rotrBL(q,F,61)^fe.default.shrSL(q,F,6),j=fe.default.add4L(W,Y,tn[C-7],tn[C-16]),B=fe.default.add4H(j,U,K,en[C-7],en[C-16]);en[C]=0|B,tn[C]=0|j}let{Ah:r,Al:i,Bh:o,Bl:s,Ch:c,Cl:a,Dh:l,Dl:u,Eh:d,El:h,Fh:f,Fl:m,Gh:g,Gl:w,Hh:p,Hl:S}=this;for(let C=0;C<80;C++){const O=fe.default.rotrSH(d,h,14)^fe.default.rotrSH(d,h,18)^fe.default.rotrBH(d,h,41),N=fe.default.rotrSL(d,h,14)^fe.default.rotrSL(d,h,18)^fe.default.rotrBL(d,h,41),U=d&f^~d&g,W=h&m^~h&w,q=fe.default.add5L(S,N,W,dp[C],tn[C]),F=fe.default.add5H(q,p,O,U,up[C],en[C]),K=0|q,Y=fe.default.rotrSH(r,i,28)^fe.default.rotrBH(r,i,34)^fe.default.rotrBH(r,i,39),j=fe.default.rotrSL(r,i,28)^fe.default.rotrBL(r,i,34)^fe.default.rotrBL(r,i,39),B=r&o^r&c^o&c,R=i&s^i&a^s&a;p=0|g,S=0|w,g=0|f,w=0|m,f=0|d,m=0|h,{h:d,l:h}=fe.default.add(0|l,0|u,0|F,0|K),l=0|c,u=0|a,c=0|o,a=0|s,o=0|r,s=0|i;const _=fe.default.add3L(K,j,R);r=fe.default.add3H(_,F,Y,B),i=0|_}({h:r,l:i}=fe.default.add(0|this.Ah,0|this.Al,0|r,0|i)),{h:o,l:s}=fe.default.add(0|this.Bh,0|this.Bl,0|o,0|s),{h:c,l:a}=fe.default.add(0|this.Ch,0|this.Cl,0|c,0|a),{h:l,l:u}=fe.default.add(0|this.Dh,0|this.Dl,0|l,0|u),{h:d,l:h}=fe.default.add(0|this.Eh,0|this.El,0|d,0|h),{h:f,l:m}=fe.default.add(0|this.Fh,0|this.Fl,0|f,0|m),{h:g,l:w}=fe.default.add(0|this.Gh,0|this.Gl,0|g,0|w),{h:p,l:S}=fe.default.add(0|this.Hh,0|this.Hl,0|p,0|S),this.set(r,i,o,s,c,a,l,u,d,h,f,m,g,w,p,S)}roundClean(){en.fill(0),tn.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)}}Ie.SHA512=Hr;class Rd extends Hr{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}Ie.SHA512_224=Rd;class Od extends Hr{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}Ie.SHA512_256=Od;class pc extends Hr{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}Ie.SHA384=pc,Ie.sha512=(0,ri.wrapConstructor)(()=>new Hr),Ie.sha512_224=(0,ri.wrapConstructor)(()=>new Rd),Ie.sha512_256=(0,ri.wrapConstructor)(()=>new Od),Ie.sha384=(0,ri.wrapConstructor)(()=>new pc);var As={},qn={},Se={},pe={};Object.defineProperty(pe,"__esModule",{value:!0}),pe.notImplemented=pe.bitMask=void 0,pe.isBytes=Hi,pe.abytes=zi,pe.abool=function(t,e){if(typeof e!="boolean")throw new Error(`${t} must be valid boolean, got "${e}".`)},pe.bytesToHex=Po,pe.numberToHexUnpadded=gc,pe.hexToNumber=Io,pe.hexToBytes=Ci,pe.bytesToNumberBE=function(t){return Io(Po(t))},pe.bytesToNumberLE=function(t){return zi(t),Io(Po(Uint8Array.from(t).reverse()))},pe.numberToBytesBE=yc,pe.numberToBytesLE=function(t,e){return yc(t,e).reverse()},pe.numberToVarBytesBE=function(t){return Ci(gc(t))},pe.ensureBytes=function(t,e,n){let r;if(typeof e=="string")try{r=Ci(e)}catch(o){throw new Error(`${t} must be valid hex string, got "${e}". Cause: ${o}`)}else{if(!Hi(e))throw new Error(`${t} must be hex string or Uint8Array`);r=Uint8Array.from(e)}const i=r.length;if(typeof n=="number"&&i!==n)throw new Error(`${t} expected ${n} bytes, got ${i}`);return r},pe.concatBytes=vc,pe.equalBytes=function(t,e){if(t.length!==e.length)return!1;let n=0;for(let r=0;rMs;t>>=Ei,e+=1);return e},pe.bitGet=function(t,e){return t>>BigInt(e)&Ei},pe.bitSet=function(t,e,n){return t|(n?Ei:Ms)<{r.fill(1),i.fill(0),o=0},c=(...u)=>n(i,r,...u),a=(u=Bo())=>{i=c(wc([0]),u),r=c(),u.length!==0&&(i=c(wc([1]),u),r=c())},l=()=>{if(o++>=1e3)throw new Error("drbg: tried 1000 values");let u=0;const d=[];for(;u{let h;for(s(),a(u);!(h=d(l()));)a();return s(),h}},pe.validateObject=function(t,e,n={}){const r=(i,o,s)=>{const c=pp[o];if(typeof c!="function")throw new Error(`Invalid validator "${o}", expected function`);const a=t[i];if(!(s&&a===void 0||c(a,t)))throw new Error(`Invalid param ${String(i)}=${a} (${typeof a}), expected ${o}`)};for(const[i,o]of Object.entries(e))r(i,o,!1);for(const[i,o]of Object.entries(n))r(i,o,!0);return t},pe.memoized=function(t){const e=new WeakMap;return(n,...r)=>{const i=e.get(n);if(i!==void 0)return i;const o=t(n,...r);return e.set(n,o),o}};const Ms=BigInt(0),Ei=BigInt(1),hp=BigInt(2);function Hi(t){return t instanceof Uint8Array||t!=null&&typeof t=="object"&&t.constructor.name==="Uint8Array"}function zi(t){if(!Hi(t))throw new Error("Uint8Array expected")}const fp=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function Po(t){zi(t);let e="";for(let n=0;n=jt._0&&t<=jt._9?t-jt._0:t>=jt._A&&t<=jt._F?t-(jt._A-10):t>=jt._a&&t<=jt._f?t-(jt._a-10):void 0}function Ci(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);const e=t.length,n=e/2;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);const r=new Uint8Array(n);for(let i=0,o=0;itypeof t=="bigint"&&Ms<=t;function bc(t,e,n){return No(t)&&No(e)&&No(n)&&e<=t&&t(hp<new Uint8Array(t),wc=t=>Uint8Array.from(t),pp={bigint:t=>typeof t=="bigint",function:t=>typeof t=="function",boolean:t=>typeof t=="boolean",string:t=>typeof t=="string",stringOrUint8Array:t=>typeof t=="string"||Hi(t),isSafeInteger:t=>Number.isSafeInteger(t),array:t=>Array.isArray(t),field:(t,e)=>e.Fp.isValid(t),hash:t=>typeof t=="function"&&Number.isSafeInteger(t.outputLen)};pe.notImplemented=()=>{throw new Error("not implemented")},Object.defineProperty(Se,"__esModule",{value:!0}),Se.isNegativeLE=void 0,Se.mod=nt,Se.pow=Ld,Se.pow2=function(t,e,n){let r=t;for(;e-- >Ne;)r*=r,r%=n;return r},Se.invert=ii,Se.tonelliShanks=Pd,Se.FpSqrt=_c,Se.validateField=function(t){const e=mp.reduce((n,r)=>(n[r]="function",n),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"});return(0,et.validateObject)(t,e)},Se.FpPow=Sc,Se.FpInvertBatch=kc,Se.FpDiv=function(t,e,n){return t.mul(e,typeof n=="bigint"?ii(n,t.ORDER):t.inv(n))},Se.FpLegendre=xc,Se.FpIsSquare=function(t){const e=xc(t.ORDER);return n=>{const r=e(t,n);return t.eql(r,t.ZERO)||t.eql(r,t.ONE)}},Se.nLength=Do,Se.Field=function(t,e,n=!1,r={}){if(t<=Ne)throw new Error(`Expected Field ORDER > 0, got ${t}`);const{nBitLength:i,nByteLength:o}=Do(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=_c(t),c=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:(0,et.bitMask)(i),ZERO:Ne,ONE:ke,create:a=>nt(a,t),isValid:a=>{if(typeof a!="bigint")throw new Error("Invalid field element: expected bigint, got "+typeof a);return Ne<=a&&aa===Ne,isOdd:a=>(a&ke)===ke,neg:a=>nt(-a,t),eql:(a,l)=>a===l,sqr:a=>nt(a*a,t),add:(a,l)=>nt(a+l,t),sub:(a,l)=>nt(a-l,t),mul:(a,l)=>nt(a*l,t),pow:(a,l)=>Sc(c,a,l),div:(a,l)=>nt(a*ii(l,t),t),sqrN:a=>a*a,addN:(a,l)=>a+l,subN:(a,l)=>a-l,mulN:(a,l)=>a*l,inv:a=>ii(a,t),sqrt:r.sqrt||(a=>s(c,a)),invertBatch:a=>kc(c,a),cmov:(a,l,u)=>u?l:a,toBytes:a=>n?(0,et.numberToBytesLE)(a,o):(0,et.numberToBytesBE)(a,o),fromBytes:a=>{if(a.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${a.length}`);return n?(0,et.bytesToNumberLE)(a):(0,et.bytesToNumberBE)(a)}});return Object.freeze(c)},Se.FpSqrtOdd=function(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");const n=t.sqrt(e);return t.isOdd(n)?n:t.neg(n)},Se.FpSqrtEven=function(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");const n=t.sqrt(e);return t.isOdd(n)?t.neg(n):n},Se.hashToPrivateScalar=function(t,e,n=!1){t=(0,et.ensureBytes)("privateHash",t);const r=t.length,i=Do(e).nByteLength+8;if(i<24||r1024)throw new Error(`hashToPrivateScalar: expected ${i}-1024 bytes of input, got ${r}`);const o=n?(0,et.bytesToNumberLE)(t):(0,et.bytesToNumberBE)(t);return nt(o,e-ke)+ke},Se.getFieldBytesLength=Rs,Se.getMinHashLength=Ac,Se.mapHashToField=function(t,e,n=!1){const r=t.length,i=Rs(e),o=Ac(e);if(r<16||r1024)throw new Error(`expected ${o}-1024 bytes of input, got ${r}`);const s=nt(n?(0,et.bytesToNumberBE)(t):(0,et.bytesToNumberLE)(t),e-ke)+ke;return n?(0,et.numberToBytesLE)(s,i):(0,et.numberToBytesBE)(s,i)};const et=pe,Ne=BigInt(0),ke=BigInt(1),gn=BigInt(2),gp=BigInt(3),Ts=BigInt(4),Ec=BigInt(5),Cc=BigInt(8);function nt(t,e){const n=t%e;return n>=Ne?n:e+n}function Ld(t,e,n){if(n<=Ne||e 0");if(n===ke)return Ne;let r=ke;for(;e>Ne;)e&ke&&(r=r*t%n),t=t*t%n,e>>=ke;return r}function ii(t,e){if(t===Ne||e<=Ne)throw new Error(`invert: expected positive integers, got n=${t} mod=${e}`);let n=nt(t,e),r=e,i=Ne,o=ke;for(;n!==Ne;){const s=r%n,c=i-o*(r/n);r=n,n=s,i=o,o=c}if(r!==ke)throw new Error("invert: does not exist");return nt(i,e)}function Pd(t){const e=(t-ke)/gn;let n,r,i;for(n=t-ke,r=0;n%gn===Ne;n/=gn,r++);for(i=gn;i(nt(t,e)&ke)===ke;const mp=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Sc(t,e,n){if(n 0");if(n===Ne)return t.ONE;if(n===ke)return e;let r=t.ONE,i=e;for(;n>Ne;)n&ke&&(r=t.mul(r,i)),i=t.sqr(i),n>>=ke;return r}function kc(t,e){const n=new Array(e.length),r=e.reduce((o,s,c)=>t.is0(s)?o:(n[c]=o,t.mul(o,s)),t.ONE),i=t.inv(r);return e.reduceRight((o,s,c)=>t.is0(s)?o:(n[c]=t.mul(o,n[c]),t.mul(o,s)),i),n}function xc(t){const e=(t-ke)/gn;return(n,r)=>n.pow(r,e)}function Do(t,e){const n=e!==void 0?e:t.toString(2).length;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Rs(t){if(typeof t!="bigint")throw new Error("field order must be bigint");const e=t.toString(2).length;return Math.ceil(e/8)}function Ac(t){const e=Rs(t);return e+Math.ceil(e/2)}Object.defineProperty(qn,"__esModule",{value:!0}),qn.wNAF=function(t,e){const n=(o,s)=>{const c=s.negate();return o?c:s},r=o=>{if(!Number.isSafeInteger(o)||o<=0||o>e)throw new Error(`Wrong window size=${o}, should be [1..${e}]`)},i=o=>(r(o),{windows:Math.ceil(e/o)+1,windowSize:2**(o-1)});return{constTimeNegate:n,unsafeLadder(o,s){let c=t.ZERO,a=o;for(;s>yp;)s&$o&&(c=c.add(a)),a=a.double(),s>>=$o;return c},precomputeWindow(o,s){const{windows:c,windowSize:a}=i(s),l=[];let u=o,d=u;for(let h=0;h>=m,p>l&&(p-=f,c+=$o);const S=w,C=w+Math.abs(p)-1,O=g%2!=0,N=p<0;p===0?d=d.add(n(O,s[S])):u=u.add(n(N,s[C]))}return{p:u,f:d}},wNAFCached(o,s,c){const a=Rc.get(o)||1;let l=jo.get(o);return l||(l=this.precomputeWindow(o,a),a!==1&&jo.set(o,c(l))),this.wNAF(a,l,s)},setWindowSize(o,s){r(s),Rc.set(o,s),jo.delete(o)}}},qn.pippenger=function(t,e,n,r){if(!Array.isArray(n)||!Array.isArray(r)||r.length!==n.length)throw new Error("arrays of points and scalars must have equal length");r.forEach((u,d)=>{if(!e.isValid(u))throw new Error(`wrong scalar at index ${d}`)}),n.forEach((u,d)=>{if(!(u instanceof t))throw new Error(`wrong point at index ${d}`)});const i=(0,Tc.bitLen)(BigInt(n.length)),o=i>12?i-3:i>4?i-2:i?2:1,s=(1<=0;u-=o){c.fill(t.ZERO);for(let h=0;h>BigInt(u)&BigInt(s));c[m]=c[m].add(n[h])}let d=t.ZERO;for(let h=c.length-1,f=t.ZERO;h>0;h--)f=f.add(c[h]),d=d.add(f);if(l=l.add(d),u!==0)for(let h=0;h{try{return{isValid:!0,value:n.sqrt(B*n.inv(R))}}catch{return{isValid:!1,value:vt}}}),f=e.adjustScalarBytes||(B=>B),m=e.domain||((B,R,_)=>{if((0,tt.abool)("phflag",_),R.length||_)throw new Error("Contexts/pre-hash are not supported");return B});function g(B,R){Je.aInRange("coordinate "+B,R,vt,l)}function w(B){if(!(B instanceof C))throw new Error("ExtendedPoint expected")}const p=(0,tt.memoized)((B,R)=>{const{ex:_,ey:P,ez:$}=B,y=B.is0();R==null&&(R=y?vp:n.inv($));const E=u(_*R),x=u(P*R),M=u($*R);if(y)return{x:vt,y:Xe};if(M!==Xe)throw new Error("invZ was invalid");return{x:E,y:x}}),S=(0,tt.memoized)(B=>{const{a:R,d:_}=e;if(B.is0())throw new Error("bad point: ZERO");const{ex:P,ey:$,ez:y,et:E}=B,x=u(P*P),M=u($*$),b=u(y*y),v=u(b*b),k=u(x*R);if(u(b*u(k+M))!==u(v+u(_*u(x*M))))throw new Error("bad point: equation left != right (1)");if(u(P*$)!==u(y*E))throw new Error("bad point: equation left != right (2)");return!0});class C{constructor(R,_,P,$){this.ex=R,this.ey=_,this.ez=P,this.et=$,g("x",R),g("y",_),g("z",P),g("t",$),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(R){if(R instanceof C)throw new Error("extended point not allowed");const{x:_,y:P}=R||{};return g("x",_),g("y",P),new C(_,P,Xe,u(_*P))}static normalizeZ(R){const _=n.invertBatch(R.map(P=>P.ez));return R.map((P,$)=>P.toAffine(_[$])).map(C.fromAffine)}static msm(R,_){return(0,Ko.pippenger)(C,d,R,_)}_setWindowSize(R){U.setWindowSize(this,R)}assertValidity(){S(this)}equals(R){w(R);const{ex:_,ey:P,ez:$}=this,{ex:y,ey:E,ez:x}=R,M=u(_*x),b=u(y*$),v=u(P*x),k=u(E*$);return M===b&&v===k}is0(){return this.equals(C.ZERO)}negate(){return new C(u(-this.ex),this.ey,this.ez,u(-this.et))}double(){const{a:R}=e,{ex:_,ey:P,ez:$}=this,y=u(_*_),E=u(P*P),x=u(oi*u($*$)),M=u(R*y),b=_+P,v=u(u(b*b)-y-E),k=M+E,A=k-x,T=M-E,I=u(v*A),D=u(k*T),H=u(v*T),z=u(A*k);return new C(I,D,z,H)}add(R){w(R);const{a:_,d:P}=e,{ex:$,ey:y,ez:E,et:x}=this,{ex:M,ey:b,ez:v,et:k}=R;if(_===BigInt(-1)){const ie=u((y-$)*(b+M)),ce=u((y+$)*(b-M)),ae=u(ce-ie);if(ae===vt)return this.double();const me=u(E*oi*k),Ee=u(x*oi*v),de=Ee+me,ge=ce+ie,ve=Ee-me,Oe=u(de*ae),ct=u(ge*ve),_o=u(de*ve),So=u(ae*ge);return new C(Oe,ct,So,_o)}const A=u($*M),T=u(y*b),I=u(x*P*k),D=u(E*v),H=u(($+y)*(M+b)-A-T),z=D-I,Z=D+I,Q=u(T-_*A),ne=u(H*z),se=u(Z*Q),le=u(H*Q),re=u(z*Z);return new C(ne,se,re,le)}subtract(R){return this.add(R.negate())}wNAF(R){return U.wNAFCached(this,R,C.normalizeZ)}multiply(R){const _=R;Je.aInRange("scalar",_,Xe,r);const{p:P,f:$}=this.wNAF(_);return C.normalizeZ([P,$])[0]}multiplyUnsafe(R){const _=R;return Je.aInRange("scalar",_,vt,r),_===vt?N:this.equals(N)||_===Xe?this:this.equals(O)?this.wNAF(_).p:U.unsafeLadder(this,_)}isSmallOrder(){return this.multiplyUnsafe(a).is0()}isTorsionFree(){return U.unsafeLadder(this,r).is0()}toAffine(R){return p(this,R)}clearCofactor(){const{h:R}=e;return R===Xe?this:this.multiplyUnsafe(R)}static fromHex(R,_=!1){const{d:P,a:$}=e,y=n.BYTES;R=(0,tt.ensureBytes)("pointHex",R,y),(0,tt.abool)("zip215",_);const E=R.slice(),x=R[y-1];E[y-1]=-129&x;const M=Je.bytesToNumberLE(E),b=_?l:n.ORDER;Je.aInRange("pointHex.y",M,vt,b);const v=u(M*M),k=u(v-Xe),A=u(P*v-$);let{isValid:T,value:I}=h(k,A);if(!T)throw new Error("Point.fromHex: invalid y coordinate");const D=(I&Xe)===Xe,H=(128&x)!=0;if(!_&&I===vt&&H)throw new Error("Point.fromHex: x=0 and x_0=1");return H!==D&&(I=u(-I)),C.fromAffine({x:I,y:M})}static fromPrivateKey(R){return F(R).point}toRawBytes(){const{x:R,y:_}=this.toAffine(),P=Je.numberToBytesLE(_,n.BYTES);return P[P.length-1]|=R&Xe?128:0,P}toHex(){return Je.bytesToHex(this.toRawBytes())}}C.BASE=new C(e.Gx,e.Gy,Xe,u(e.Gx*e.Gy)),C.ZERO=new C(vt,Xe,Xe,vt);const{BASE:O,ZERO:N}=C,U=(0,Ko.wNAF)(C,8*c);function W(B){return(0,Oc.mod)(B,r)}function q(B){return W(Je.bytesToNumberLE(B))}function F(B){const R=c;B=(0,tt.ensureBytes)("private key",B,R);const _=(0,tt.ensureBytes)("hashed private key",o(B),2*R),P=f(_.slice(0,R)),$=_.slice(R,2*R),y=q(P),E=O.multiply(y),x=E.toRawBytes();return{head:P,prefix:$,scalar:y,point:E,pointBytes:x}}function K(B=new Uint8Array,...R){const _=Je.concatBytes(...R);return q(o(m(_,(0,tt.ensureBytes)("context",B),!!i)))}const Y=bp;return O._setWindowSize(8),{CURVE:e,getPublicKey:function(B){return F(B).pointBytes},sign:function(B,R,_={}){B=(0,tt.ensureBytes)("message",B),i&&(B=i(B));const{prefix:P,scalar:$,pointBytes:y}=F(R),E=K(_.context,P,B),x=O.multiply(E).toRawBytes(),M=W(E+K(_.context,x,y,B)*$);Je.aInRange("signature.s",M,vt,r);const b=Je.concatBytes(x,Je.numberToBytesLE(M,n.BYTES));return(0,tt.ensureBytes)("result",b,2*c)},verify:function(B,R,_,P=Y){const{context:$,zip215:y}=P,E=n.BYTES;B=(0,tt.ensureBytes)("signature",B,2*E),R=(0,tt.ensureBytes)("message",R),y!==void 0&&(0,tt.abool)("zip215",y),i&&(R=i(R));const x=Je.bytesToNumberLE(B.slice(E,2*E));let M,b,v;try{M=C.fromHex(_,y),b=C.fromHex(B.slice(0,E),y),v=O.multiplyUnsafe(x)}catch{return!1}if(!y&&M.isSmallOrder())return!1;const k=K($,b.toRawBytes(),M.toRawBytes(),R);return b.add(M.multiplyUnsafe(k)).subtract(v).clearCofactor().equals(C.ZERO)},ExtendedPoint:C,utils:{getExtendedPublicKey:F,randomPrivateKey:()=>s(n.BYTES),precompute:(B=8,R=C.BASE)=>(R._setWindowSize(B),R.multiply(BigInt(3)),R)}}};const Ko=qn,Oc=Se,Je=pe,tt=pe,vt=BigInt(0),Xe=BigInt(1),oi=BigInt(2),vp=BigInt(8),bp={zip215:!0};var un={};Object.defineProperty(un,"__esModule",{value:!0}),un.expand_message_xmd=Id,un.expand_message_xof=Nd,un.hash_to_field=Uo,un.isogenyMap=function(t,e){const n=e.map(r=>Array.from(r).reverse());return(r,i)=>{const[o,s,c,a]=n.map(l=>l.reduce((u,d)=>t.add(t.mul(u,r),d)));return r=t.div(o,s),i=t.mul(i,t.div(c,a)),{x:r,y:i}}},un.createHasher=function(t,e,n){if(typeof e!="function")throw new Error("mapToCurve() must be defined");return{hashToCurve(r,i){const o=Uo(r,2,{...n,DST:n.DST,...i}),s=t.fromAffine(e(o[0])),c=t.fromAffine(e(o[1])),a=s.add(c).clearCofactor();return a.assertValidity(),a},encodeToCurve(r,i){const o=Uo(r,1,{...n,DST:n.encodeDST,...i}),s=t.fromAffine(e(o[0])).clearCofactor();return s.assertValidity(),s},mapToCurve(r){if(!Array.isArray(r))throw new Error("mapToCurve: expected array of bigints");for(const o of r)if(typeof o!="bigint")throw new Error(`mapToCurve: expected array of bigints, got ${o} in array`);const i=t.fromAffine(e(r)).clearCofactor();return i.assertValidity(),i}}};const wp=Se,Ue=pe,Ep=Ue.bytesToNumberBE;function dn(t,e){if(Rr(t),Rr(e),t<0||t>=1<<8*e)throw new Error(`bad I2OSP call: value=${t} length=${e}`);const n=Array.from({length:e}).fill(0);for(let r=e-1;r>=0;r--)n[r]=255&t,t>>>=8;return new Uint8Array(n)}function Cp(t,e){const n=new Uint8Array(t.length);for(let r=0;r255&&(e=r((0,Ue.concatBytes)((0,Ue.utf8ToBytes)("H2C-OVERSIZE-DST-"),e)));const{outputLen:i,blockLen:o}=r,s=Math.ceil(n/i);if(n>65535||s>255)throw new Error("expand_message_xmd: invalid lenInBytes");const c=(0,Ue.concatBytes)(e,dn(e.length,1)),a=dn(0,o),l=dn(n,2),u=new Array(s),d=r((0,Ue.concatBytes)(a,t,l,dn(0,1),c));u[0]=r((0,Ue.concatBytes)(d,dn(1,1),c));for(let h=1;h<=s;h++){const f=[Cp(d,u[h-1]),dn(h+1,1),c];u[h]=r((0,Ue.concatBytes)(...f))}return(0,Ue.concatBytes)(...u).slice(0,n)}function Nd(t,e,n,r,i){if((0,Ue.abytes)(t),(0,Ue.abytes)(e),Rr(n),e.length>255){const o=Math.ceil(2*r/8);e=i.create({dkLen:o}).update((0,Ue.utf8ToBytes)("H2C-OVERSIZE-DST-")).update(e).digest()}if(n>65535||e.length>255)throw new Error("expand_message_xof: invalid lenInBytes");return i.create({dkLen:n}).update(t).update(dn(n,2)).update(e).update(dn(e.length,1)).digest()}function Uo(t,e,n){(0,Ue.validateObject)(n,{DST:"stringOrUint8Array",p:"bigint",m:"isSafeInteger",k:"isSafeInteger",hash:"hash"});const{p:r,k:i,m:o,hash:s,expand:c,DST:a}=n;(0,Ue.abytes)(t),Rr(e);const l=typeof a=="string"?(0,Ue.utf8ToBytes)(a):a,u=r.toString(2).length,d=Math.ceil((u+i)/8),h=e*o*d;let f;if(c==="xmd")f=Id(t,l,h,s);else if(c==="xof")f=Nd(t,l,h,i,s);else{if(c!=="_internal_pass")throw new Error('expand must be "xmd" or "xof"');f=t}const m=new Array(e);for(let g=0;g(0,Lc.mod)(g,n),i=e.montgomeryBits,o=Math.ceil(i/8),s=e.nByteLength,c=e.adjustScalarBytes||(g=>g),a=e.powPminus2||(g=>(0,Lc.pow)(g,n-BigInt(2),n));function l(g,w,p){const S=r(g*(w-p));return[w=r(w-S),p=r(p+S)]}const u=(e.a-BigInt(2))/BigInt(4);function d(g){return(0,nn.numberToBytesLE)(r(g),o)}function h(g,w){const p=function(O){const N=(0,nn.ensureBytes)("u coordinate",O,o);return s===32&&(N[31]&=127),(0,nn.bytesToNumberLE)(N)}(w),S=function(O){const N=(0,nn.ensureBytes)("scalar",O),U=N.length;if(U!==o&&U!==s)throw new Error(`Expected ${o} or ${s} bytes, got ${U}`);return(0,nn.bytesToNumberLE)(c(N))}(g),C=function(O,N){(0,nn.aInRange)("u",O,$n,n),(0,nn.aInRange)("scalar",N,$n,n);const U=N,W=O;let q,F=Fo,K=$n,Y=O,j=Fo,B=$n;for(let _=BigInt(i-1);_>=$n;_--){const P=U>>_&Fo;B^=P,q=l(B,F,Y),F=q[0],Y=q[1],q=l(B,K,j),K=q[0],j=q[1],B=P;const $=F+K,y=r($*$),E=F-K,x=r(E*E),M=y-x,b=Y+j,v=r((Y-j)*$),k=r(b*E),A=v+k,T=v-k;Y=r(A*A),j=r(W*r(T*T)),F=r(y*x),K=r(M*(y+r(u*M)))}q=l(B,F,Y),F=q[0],Y=q[1],q=l(B,K,j),K=q[0],j=q[1];const R=a(K);return r(F*R)}(p,S);if(C===$n)throw new Error("Invalid private or public key received");return d(C)}const f=d(e.Gu);function m(g){return h(g,f)}return{scalarMult:h,scalarMultBase:m,getSharedSecret:(g,w)=>h(g,w),getPublicKey:g=>m(g),utils:{randomPrivateKey:()=>e.randomBytes(e.nByteLength)},GuBytes:f}};const Lc=Se,nn=pe,$n=BigInt(0),Fo=BigInt(1);(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.hash_to_ristretto255=t.hashToRistretto255=t.RistrettoPoint=t.encodeToCurve=t.hashToCurve=t.edwardsToMontgomery=t.x25519=t.ed25519ph=t.ed25519ctx=t.ed25519=t.ED25519_TORSION_SUBGROUP=void 0,t.edwardsToMontgomeryPub=U,t.edwardsToMontgomeryPriv=function(k){const A=O.hash(k.subarray(0,32));return O.adjustScalarBytes(A).subarray(0,32)};const e=Ie,n=Qt,r=As,i=un,o=Se,s=Os,c=pe,a=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),l=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752"),u=BigInt(0),d=BigInt(1),h=BigInt(2),f=BigInt(3),m=BigInt(5),g=BigInt(8);function w(k){const A=BigInt(10),T=BigInt(20),I=BigInt(40),D=BigInt(80),H=a,z=k*k%H*k%H,Z=(0,o.pow2)(z,h,H)*z%H,Q=(0,o.pow2)(Z,d,H)*k%H,ne=(0,o.pow2)(Q,m,H)*Q%H,se=(0,o.pow2)(ne,A,H)*ne%H,le=(0,o.pow2)(se,T,H)*se%H,re=(0,o.pow2)(le,I,H)*le%H,ie=(0,o.pow2)(re,D,H)*re%H,ce=(0,o.pow2)(ie,D,H)*re%H,ae=(0,o.pow2)(ce,A,H)*ne%H;return{pow_p_5_8:(0,o.pow2)(ae,h,H)*k%H,b2:z}}function p(k){return k[0]&=248,k[31]&=127,k[31]|=64,k}function S(k,A){const T=a,I=(0,o.mod)(A*A*A,T),D=w(k*(0,o.mod)(I*I*A,T)).pow_p_5_8;let H=(0,o.mod)(k*I*D,T);const z=(0,o.mod)(A*H*H,T),Z=H,Q=(0,o.mod)(H*l,T),ne=z===k,se=z===(0,o.mod)(-k,T),le=z===(0,o.mod)(-k*l,T);return ne&&(H=Z),(se||le)&&(H=Q),(0,o.isNegativeLE)(H,T)&&(H=(0,o.mod)(-H,T)),{isValid:ne||se,value:H}}t.ED25519_TORSION_SUBGROUP=["0100000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac037a","0000000000000000000000000000000000000000000000000000000000000080","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc05","ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f","26e8958fc2b227b045c3f489f2ef98f0d5dfac05d3c63339b13802886d53fc85","0000000000000000000000000000000000000000000000000000000000000000","c7176a703d4dd84fba3c0b760d10670f2a2053fa2c39ccc64ec7fd7792ac03fa"];const C=(()=>(0,o.Field)(a,void 0,!0))(),O=(()=>({a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:C,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:g,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:e.sha512,randomBytes:n.randomBytes,adjustScalarBytes:p,uvRatio:S}))();function N(k,A,T){if(A.length>255)throw new Error("Context is too big");return(0,n.concatBytes)((0,n.utf8ToBytes)("SigEd25519 no Ed25519 collisions"),new Uint8Array([T?1:0,A.length]),A,k)}function U(k){const{y:A}=t.ed25519.ExtendedPoint.fromHex(k),T=BigInt(1);return C.toBytes(C.create((T+A)*C.inv(T-A)))}t.ed25519=(0,r.twistedEdwards)(O),t.ed25519ctx=(0,r.twistedEdwards)({...O,domain:N}),t.ed25519ph=(0,r.twistedEdwards)(Object.assign({},O,{domain:N,prehash:e.sha512})),t.x25519=(0,s.montgomery)({P:a,a:BigInt(486662),montgomeryBits:255,nByteLength:32,Gu:BigInt(9),powPminus2:k=>{const A=a,{pow_p_5_8:T,b2:I}=w(k);return(0,o.mod)((0,o.pow2)(T,f,A)*I,A)},adjustScalarBytes:p,randomBytes:n.randomBytes}),t.edwardsToMontgomery=U;const W=(()=>(C.ORDER+f)/g)(),q=(()=>C.pow(h,W))(),F=(()=>C.sqrt(C.neg(C.ONE)))(),K=(()=>(0,o.FpSqrtEven)(C,C.neg(BigInt(486664))))();function Y(k){const{xMn:A,xMd:T,yMn:I,yMd:D}=function(re){const ie=(C.ORDER-m)/g,ce=BigInt(486662);let ae=C.sqr(re);ae=C.mul(ae,h);let me=C.add(ae,C.ONE),Ee=C.neg(ce),de=C.sqr(me),ge=C.mul(de,me),ve=C.mul(ae,ce);ve=C.mul(ve,Ee),ve=C.add(ve,de),ve=C.mul(ve,Ee);let Oe=C.sqr(ge);de=C.sqr(Oe),Oe=C.mul(Oe,ge),Oe=C.mul(Oe,ve),de=C.mul(de,Oe);let ct=C.pow(de,ie);ct=C.mul(ct,Oe);let _o=C.mul(ct,F);de=C.sqr(ct),de=C.mul(de,ge);let So=C.eql(de,ve),Ga=C.cmov(_o,ct,So),Nf=C.mul(Ee,ae),lr=C.mul(ct,re);lr=C.mul(lr,q);let Bf=C.mul(lr,F),Df=C.mul(ve,ae);de=C.sqr(lr),de=C.mul(de,ge);let $f=C.eql(de,Df),jf=C.cmov(Bf,lr,$f);de=C.sqr(Ga),de=C.mul(de,ge);let ko=C.eql(de,ve),Kf=C.cmov(Nf,Ee,ko),ur=C.cmov(jf,Ga,ko),Uf=C.isOdd(ur);return ur=C.cmov(ur,C.neg(ur),ko!==Uf),{xMn:Kf,xMd:me,yMn:ur,yMd:d}}(k);let H=C.mul(A,D);H=C.mul(H,K);let z=C.mul(T,I),Z=C.sub(A,T),Q=C.add(A,T),ne=C.mul(z,Q),se=C.eql(ne,C.ZERO);H=C.cmov(H,C.ZERO,se),z=C.cmov(z,C.ONE,se),Z=C.cmov(Z,C.ONE,se),Q=C.cmov(Q,C.ONE,se);const le=C.invertBatch([z,Q]);return{x:C.mul(H,le[0]),y:C.mul(Z,le[1])}}const j=(()=>(0,i.createHasher)(t.ed25519.ExtendedPoint,k=>Y(k[0]),{DST:"edwards25519_XMD:SHA-512_ELL2_RO_",encodeDST:"edwards25519_XMD:SHA-512_ELL2_NU_",p:C.ORDER,m:1,k:128,expand:"xmd",hash:e.sha512}))();function B(k){if(!(k instanceof v))throw new Error("RistrettoPoint expected")}t.hashToCurve=j.hashToCurve,t.encodeToCurve=j.encodeToCurve;const R=l,_=BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),P=BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),$=BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),y=BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),E=k=>S(d,k),x=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),M=k=>t.ed25519.CURVE.Fp.create((0,c.bytesToNumberLE)(k)&x);function b(k){const{d:A}=t.ed25519.CURVE,T=t.ed25519.CURVE.Fp.ORDER,I=t.ed25519.CURVE.Fp.create,D=I(R*k*k),H=I((D+d)*$);let z=BigInt(-1);const Z=I((z-A*D)*I(D+A));let{isValid:Q,value:ne}=S(H,Z),se=I(ne*k);(0,o.isNegativeLE)(se,T)||(se=I(-se)),Q||(ne=se),Q||(z=D);const le=I(z*(D-d)*y-Z),re=ne*ne,ie=I((ne+ne)*Z),ce=I(le*_),ae=I(d-re),me=I(d+re);return new t.ed25519.ExtendedPoint(I(ie*me),I(ae*ce),I(ce*me),I(ie*ae))}class v{constructor(A){this.ep=A}static fromAffine(A){return new v(t.ed25519.ExtendedPoint.fromAffine(A))}static hashToCurve(A){A=(0,c.ensureBytes)("ristrettoHash",A,64);const T=b(M(A.slice(0,32))),I=b(M(A.slice(32,64)));return new v(T.add(I))}static fromHex(A){A=(0,c.ensureBytes)("ristrettoHex",A,32);const{a:T,d:I}=t.ed25519.CURVE,D=t.ed25519.CURVE.Fp.ORDER,H=t.ed25519.CURVE.Fp.create,z="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",Z=M(A);if(!(0,c.equalBytes)((0,c.numberToBytesLE)(Z,32),A)||(0,o.isNegativeLE)(Z,D))throw new Error(z);const Q=H(Z*Z),ne=H(d+T*Q),se=H(d-T*Q),le=H(ne*ne),re=H(se*se),ie=H(T*I*le-re),{isValid:ce,value:ae}=E(H(ie*re)),me=H(ae*se),Ee=H(ae*me*ie);let de=H((Z+Z)*me);(0,o.isNegativeLE)(de,D)&&(de=H(-de));const ge=H(ne*Ee),ve=H(de*ge);if(!ce||(0,o.isNegativeLE)(ve,D)||ge===u)throw new Error(z);return new v(new t.ed25519.ExtendedPoint(de,ge,d,ve))}toRawBytes(){let{ex:A,ey:T,ez:I,et:D}=this.ep;const H=t.ed25519.CURVE.Fp.ORDER,z=t.ed25519.CURVE.Fp.create,Z=z(z(I+T)*z(I-T)),Q=z(A*T),ne=z(Q*Q),{value:se}=E(z(Z*ne)),le=z(se*Z),re=z(se*Q),ie=z(le*re*D);let ce;if((0,o.isNegativeLE)(D*ie,H)){let me=z(T*R),Ee=z(A*R);A=me,T=Ee,ce=z(le*P)}else ce=re;(0,o.isNegativeLE)(A*ie,H)&&(T=z(-T));let ae=z((I-T)*ce);return(0,o.isNegativeLE)(ae,H)&&(ae=z(-ae)),(0,c.numberToBytesLE)(ae,32)}toHex(){return(0,c.bytesToHex)(this.toRawBytes())}toString(){return this.toHex()}equals(A){B(A);const{ex:T,ey:I}=this.ep,{ex:D,ey:H}=A.ep,z=t.ed25519.CURVE.Fp.create,Z=z(T*H)===z(I*D),Q=z(I*H)===z(T*D);return Z||Q}add(A){return B(A),new v(this.ep.add(A.ep))}subtract(A){return B(A),new v(this.ep.subtract(A.ep))}multiply(A){return new v(this.ep.multiply(A))}multiplyUnsafe(A){return new v(this.ep.multiplyUnsafe(A))}double(){return new v(this.ep.double())}negate(){return new v(this.ep.negate())}}t.RistrettoPoint=(v.BASE||(v.BASE=new v(t.ed25519.ExtendedPoint.BASE)),v.ZERO||(v.ZERO=new v(t.ed25519.ExtendedPoint.ZERO)),v),t.hashToRistretto255=(k,A)=>{const T=A.DST,I=typeof T=="string"?(0,n.utf8ToBytes)(T):T,D=(0,i.expand_message_xmd)(k,I,64,e.sha512);return v.hashToCurve(D)},t.hash_to_ristretto255=t.hashToRistretto255})(rd);var Bd={},Gt={};Object.defineProperty(Gt,"__esModule",{value:!0}),Gt.sha224=Gt.sha256=Gt.SHA256=void 0;const Ho=Wt,dt=Qt,_p=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),rn=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),on=new Uint32Array(64);class ma extends Ho.HashMD{constructor(){super(64,32,8,!1),this.A=0|rn[0],this.B=0|rn[1],this.C=0|rn[2],this.D=0|rn[3],this.E=0|rn[4],this.F=0|rn[5],this.G=0|rn[6],this.H=0|rn[7]}get(){const{A:e,B:n,C:r,D:i,E:o,F:s,G:c,H:a}=this;return[e,n,r,i,o,s,c,a]}set(e,n,r,i,o,s,c,a){this.A=0|e,this.B=0|n,this.C=0|r,this.D=0|i,this.E=0|o,this.F=0|s,this.G=0|c,this.H=0|a}process(e,n){for(let d=0;d<16;d++,n+=4)on[d]=e.getUint32(n,!1);for(let d=16;d<64;d++){const h=on[d-15],f=on[d-2],m=(0,dt.rotr)(h,7)^(0,dt.rotr)(h,18)^h>>>3,g=(0,dt.rotr)(f,17)^(0,dt.rotr)(f,19)^f>>>10;on[d]=g+on[d-7]+m+on[d-16]|0}let{A:r,B:i,C:o,D:s,E:c,F:a,G:l,H:u}=this;for(let d=0;d<64;d++){const h=u+((0,dt.rotr)(c,6)^(0,dt.rotr)(c,11)^(0,dt.rotr)(c,25))+(0,Ho.Chi)(c,a,l)+_p[d]+on[d]|0,f=((0,dt.rotr)(r,2)^(0,dt.rotr)(r,13)^(0,dt.rotr)(r,22))+(0,Ho.Maj)(r,i,o)|0;u=l,l=a,a=c,c=s+h|0,s=o,o=i,i=r,r=h+f|0}r=r+this.A|0,i=i+this.B|0,o=o+this.C|0,s=s+this.D|0,c=c+this.E|0,a=a+this.F|0,l=l+this.G|0,u=u+this.H|0,this.set(r,i,o,s,c,a,l,u)}roundClean(){on.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}Gt.SHA256=ma;class Sp extends ma{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}Gt.sha256=(0,dt.wrapConstructor)(()=>new ma),Gt.sha224=(0,dt.wrapConstructor)(()=>new Sp);var _i={},ya={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.hmac=t.HMAC=void 0;const e=it,n=Qt;class r extends n.Hash{constructor(o,s){super(),this.finished=!1,this.destroyed=!1,(0,e.hash)(o);const c=(0,n.toBytes)(s);if(this.iHash=o.create(),typeof this.iHash.update!="function")throw new Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const a=this.blockLen,l=new Uint8Array(a);l.set(c.length>a?o.create().update(c).digest():c);for(let u=0;unew r(i,o).update(s).digest(),t.hmac.create=(i,o)=>new r(i,o)})(ya);var va={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.DER=void 0,t.weierstrassPoints=f,t.weierstrass=function(g){const w=function(k){const A=(0,e.validateBasic)(k);return r.validateObject(A,{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...A})}(g),{Fp:p,n:S}=w,C=p.BYTES+1,O=2*p.BYTES+1;function N(k){return n.mod(k,S)}function U(k){return n.invert(k,S)}const{ProjectivePoint:W,normPrivateKeyToScalar:q,weierstrassEquation:F,isWithinCurveOrder:K}=f({...w,toBytes(k,A,T){const I=A.toAffine(),D=p.toBytes(I.x),H=r.concatBytes;return(0,i.abool)("isCompressed",T),T?H(Uint8Array.from([A.hasEvenY()?2:3]),D):H(Uint8Array.from([4]),D,p.toBytes(I.y))},fromBytes(k){const A=k.length,T=k[0],I=k.subarray(1);if(A!==C||T!==2&&T!==3){if(A===O&&T===4)return{x:p.fromBytes(I.subarray(0,p.BYTES)),y:p.fromBytes(I.subarray(p.BYTES,2*p.BYTES))};throw new Error(`Point of length ${A} was invalid. Expected ${C} compressed bytes or ${O} uncompressed bytes`)}{const D=r.bytesToNumberBE(I);if(!r.inRange(D,l,p.ORDER))throw new Error("Point is not on curve");const H=F(D);let z;try{z=p.sqrt(H)}catch(Z){const Q=Z instanceof Error?": "+Z.message:"";throw new Error("Point is not on curve"+Q)}return(1&T)==1!=((z&l)===l)&&(z=p.neg(z)),{x:D,y:z}}}}),Y=k=>r.bytesToHex(r.numberToBytesBE(k,w.nByteLength));function j(k){return k>S>>l}const B=(k,A,T)=>r.bytesToNumberBE(k.slice(A,T));class R{constructor(A,T,I){this.r=A,this.s=T,this.recovery=I,this.assertValidity()}static fromCompact(A){const T=w.nByteLength;return A=(0,i.ensureBytes)("compactSignature",A,2*T),new R(B(A,0,T),B(A,T,2*T))}static fromDER(A){const{r:T,s:I}=t.DER.toSig((0,i.ensureBytes)("DER",A));return new R(T,I)}assertValidity(){r.aInRange("r",this.r,l,S),r.aInRange("s",this.s,l,S)}addRecoveryBit(A){return new R(this.r,this.s,A)}recoverPublicKey(A){const{r:T,s:I,recovery:D}=this,H=y((0,i.ensureBytes)("msgHash",A));if(D==null||![0,1,2,3].includes(D))throw new Error("recovery id invalid");const z=D===2||D===3?T+w.n:T;if(z>=p.ORDER)throw new Error("recovery id 2 or 3 invalid");const Z=1&D?"03":"02",Q=W.fromHex(Z+Y(z)),ne=U(z),se=N(-H*ne),le=N(I*ne),re=W.BASE.multiplyAndAddUnsafe(Q,se,le);if(!re)throw new Error("point at infinify");return re.assertValidity(),re}hasHighS(){return j(this.s)}normalizeS(){return this.hasHighS()?new R(this.r,N(-this.s),this.recovery):this}toDERRawBytes(){return r.hexToBytes(this.toDERHex())}toDERHex(){return t.DER.hexFromSig({r:this.r,s:this.s})}toCompactRawBytes(){return r.hexToBytes(this.toCompactHex())}toCompactHex(){return Y(this.r)+Y(this.s)}}const _={isValidPrivateKey(k){try{return q(k),!0}catch{return!1}},normPrivateKeyToScalar:q,randomPrivateKey:()=>{const k=n.getMinHashLength(w.n);return n.mapHashToField(w.randomBytes(k),w.n)},precompute:(k=8,A=W.BASE)=>(A._setWindowSize(k),A.multiply(BigInt(3)),A)};function P(k){const A=r.isBytes(k),T=typeof k=="string",I=(A||T)&&k.length;return A?I===C||I===O:T?I===2*C||I===2*O:k instanceof W}const $=w.bits2int||function(k){const A=r.bytesToNumberBE(k),T=8*k.length-w.nBitLength;return T>0?A>>BigInt(T):A},y=w.bits2int_modN||function(k){return N($(k))},E=r.bitMask(w.nBitLength);function x(k){return r.aInRange(`num < 2^${w.nBitLength}`,k,a,E),r.numberToBytesBE(k,w.nByteLength)}function M(k,A,T=b){if(["recovered","canonical"].some(ie=>ie in T))throw new Error("sign() legacy options not supported");const{hash:I,randomBytes:D}=w;let{lowS:H,prehash:z,extraEntropy:Z}=T;H==null&&(H=!0),k=(0,i.ensureBytes)("msgHash",k),o(T),z&&(k=(0,i.ensureBytes)("prehashed msgHash",I(k)));const Q=y(k),ne=q(A),se=[x(ne),x(Q)];if(Z!=null&&Z!==!1){const ie=Z===!0?D(p.BYTES):Z;se.push((0,i.ensureBytes)("extraEntropy",ie))}const le=r.concatBytes(...se),re=Q;return{seed:le,k2sig:function(ie){const ce=$(ie);if(!K(ce))return;const ae=U(ce),me=W.BASE.multiply(ce).toAffine(),Ee=N(me.x);if(Ee===a)return;const de=N(ae*N(re+Ee*ne));if(de===a)return;let ge=(me.x===Ee?0:2)|Number(me.y&l),ve=de;return H&&j(de)&&(ve=function(Oe){return j(Oe)?N(-Oe):Oe}(de),ge^=1),new R(Ee,ve,ge)}}}const b={lowS:w.lowS,prehash:!1},v={lowS:w.lowS,prehash:!1};return W.BASE._setWindowSize(8),{CURVE:w,getPublicKey:function(k,A=!0){return W.fromPrivateKey(k).toRawBytes(A)},getSharedSecret:function(k,A,T=!0){if(P(k))throw new Error("first arg must be private key");if(!P(A))throw new Error("second arg must be public key");return W.fromHex(A).multiply(q(k)).toRawBytes(T)},sign:function(k,A,T=b){const{seed:I,k2sig:D}=M(k,A,T),H=w;return r.createHmacDrbg(H.hash.outputLen,H.nByteLength,H.hmac)(I,D)},verify:function(k,A,T,I=v){var Ee;const D=k;if(A=(0,i.ensureBytes)("msgHash",A),T=(0,i.ensureBytes)("publicKey",T),"strict"in I)throw new Error("options.strict was renamed to lowS");o(I);const{lowS:H,prehash:z}=I;let Z,Q;try{if(typeof D=="string"||r.isBytes(D))try{Z=R.fromDER(D)}catch(de){if(!(de instanceof t.DER.Err))throw de;Z=R.fromCompact(D)}else{if(typeof D!="object"||typeof D.r!="bigint"||typeof D.s!="bigint")throw new Error("PARSE");{const{r:de,s:ge}=D;Z=new R(de,ge)}}Q=W.fromHex(T)}catch(de){if(de.message==="PARSE")throw new Error("signature must be Signature instance, Uint8Array or hex string");return!1}if(H&&Z.hasHighS())return!1;z&&(A=w.hash(A));const{r:ne,s:se}=Z,le=y(A),re=U(se),ie=N(le*re),ce=N(ne*re),ae=(Ee=W.BASE.multiplyAndAddUnsafe(Q,ie,ce))==null?void 0:Ee.toAffine();return ae?N(ae.x)===ne:!1},ProjectivePoint:W,Signature:R,utils:_}},t.SWUFpSqrtRatio=m,t.mapToCurveSimpleSWU=function(g,w){if(n.validateField(g),!g.isValid(w.A)||!g.isValid(w.B)||!g.isValid(w.Z))throw new Error("mapToCurveSimpleSWU: invalid opts");const p=m(g,w.Z);if(!g.isOdd)throw new Error("Fp.isOdd is not implemented!");return S=>{let C,O,N,U,W,q,F,K;C=g.sqr(S),C=g.mul(C,w.Z),O=g.sqr(C),O=g.add(O,C),N=g.add(O,g.ONE),N=g.mul(N,w.B),U=g.cmov(w.Z,g.neg(O),!g.eql(O,g.ZERO)),U=g.mul(U,w.A),O=g.sqr(N),q=g.sqr(U),W=g.mul(q,w.A),O=g.add(O,W),O=g.mul(O,N),q=g.mul(q,U),W=g.mul(q,w.B),O=g.add(O,W),F=g.mul(C,N);const{isValid:Y,value:j}=p(O,q);K=g.mul(C,S),K=g.mul(K,j),F=g.cmov(F,N,Y),K=g.cmov(K,j,Y);const B=g.isOdd(S)===g.isOdd(K);return K=g.cmov(g.neg(K),K,B),F=g.div(F,U),{x:F,y:K}}};const e=qn,n=Se,r=pe,i=pe;function o(g){g.lowS!==void 0&&(0,i.abool)("lowS",g.lowS),g.prehash!==void 0&&(0,i.abool)("prehash",g.prehash)}const{bytesToNumberBE:s,hexToBytes:c}=r;t.DER={Err:class extends Error{constructor(g=""){super(g)}},_tlv:{encode:(g,w)=>{const{Err:p}=t.DER;if(g<0||g>256)throw new p("tlv.encode: wrong tag");if(1&w.length)throw new p("tlv.encode: unpadded data");const S=w.length/2,C=r.numberToHexUnpadded(S);if(C.length/2&128)throw new p("tlv.encode: long form length too big");const O=S>127?r.numberToHexUnpadded(C.length/2|128):"";return`${r.numberToHexUnpadded(g)}${O}${C}${w}`},decode(g,w){const{Err:p}=t.DER;let S=0;if(g<0||g>256)throw new p("tlv.encode: wrong tag");if(w.length<2||w[S++]!==g)throw new p("tlv.decode: wrong tlv");const C=w[S++];let O=0;if(128&C){const U=127&C;if(!U)throw new p("tlv.decode(long): indefinite length not supported");if(U>4)throw new p("tlv.decode(long): byte length is too big");const W=w.subarray(S,S+U);if(W.length!==U)throw new p("tlv.decode: length bytes not complete");if(W[0]===0)throw new p("tlv.decode(long): zero leftmost byte");for(const q of W)O=O<<8|q;if(S+=U,O<128)throw new p("tlv.decode(long): not minimal encoding")}else O=C;const N=w.subarray(S,S+O);if(N.length!==O)throw new p("tlv.decode: wrong value length");return{v:N,l:w.subarray(S+O)}}},_int:{encode(g){const{Err:w}=t.DER;if(g{const P=R.toAffine();return r.concatBytes(Uint8Array.from([4]),p.toBytes(P.x),p.toBytes(P.y))}),O=w.fromBytes||(B=>{const R=B.subarray(1);return{x:p.fromBytes(R.subarray(0,p.BYTES)),y:p.fromBytes(R.subarray(p.BYTES,2*p.BYTES))}});function N(B){const{a:R,b:_}=w,P=p.sqr(B),$=p.mul(P,B);return p.add(p.add($,p.mul(B,R)),_)}if(!p.eql(p.sqr(w.Gy),N(w.Gx)))throw new Error("bad generator point: equation left != right");function U(B){const{allowedPrivateKeyLengths:R,nByteLength:_,wrapPrivateKey:P,n:$}=w;if(R&&typeof B!="bigint"){if(r.isBytes(B)&&(B=r.bytesToHex(B)),typeof B!="string"||!R.includes(B.length))throw new Error("Invalid key");B=B.padStart(2*_,"0")}let y;try{y=typeof B=="bigint"?B:r.bytesToNumberBE((0,i.ensureBytes)("private key",B,_))}catch{throw new Error(`private key must be ${_} bytes, hex or bigint, not ${typeof B}`)}return P&&(y=n.mod(y,$)),r.aInRange("private key",y,l,$),y}function W(B){if(!(B instanceof K))throw new Error("ProjectivePoint expected")}const q=(0,i.memoized)((B,R)=>{const{px:_,py:P,pz:$}=B;if(p.eql($,p.ONE))return{x:_,y:P};const y=B.is0();R==null&&(R=y?p.ONE:p.inv($));const E=p.mul(_,R),x=p.mul(P,R),M=p.mul($,R);if(y)return{x:p.ZERO,y:p.ZERO};if(!p.eql(M,p.ONE))throw new Error("invZ was invalid");return{x:E,y:x}}),F=(0,i.memoized)(B=>{if(B.is0()){if(w.allowInfinityPoint&&!p.is0(B.py))return;throw new Error("bad point: ZERO")}const{x:R,y:_}=B.toAffine();if(!p.isValid(R)||!p.isValid(_))throw new Error("bad point: x or y not FE");const P=p.sqr(_),$=N(R);if(!p.eql(P,$))throw new Error("bad point: equation left != right");if(!B.isTorsionFree())throw new Error("bad point: not in prime-order subgroup");return!0});class K{constructor(R,_,P){if(this.px=R,this.py=_,this.pz=P,R==null||!p.isValid(R))throw new Error("x required");if(_==null||!p.isValid(_))throw new Error("y required");if(P==null||!p.isValid(P))throw new Error("z required");Object.freeze(this)}static fromAffine(R){const{x:_,y:P}=R||{};if(!R||!p.isValid(_)||!p.isValid(P))throw new Error("invalid affine point");if(R instanceof K)throw new Error("projective point not allowed");const $=y=>p.eql(y,p.ZERO);return $(_)&&$(P)?K.ZERO:new K(_,P,p.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(R){const _=p.invertBatch(R.map(P=>P.pz));return R.map((P,$)=>P.toAffine(_[$])).map(K.fromAffine)}static fromHex(R){const _=K.fromAffine(O((0,i.ensureBytes)("pointHex",R)));return _.assertValidity(),_}static fromPrivateKey(R){return K.BASE.multiply(U(R))}static msm(R,_){return(0,e.pippenger)(K,S,R,_)}_setWindowSize(R){j.setWindowSize(this,R)}assertValidity(){F(this)}hasEvenY(){const{y:R}=this.toAffine();if(p.isOdd)return!p.isOdd(R);throw new Error("Field doesn't support isOdd")}equals(R){W(R);const{px:_,py:P,pz:$}=this,{px:y,py:E,pz:x}=R,M=p.eql(p.mul(_,x),p.mul(y,$)),b=p.eql(p.mul(P,x),p.mul(E,$));return M&&b}negate(){return new K(this.px,p.neg(this.py),this.pz)}double(){const{a:R,b:_}=w,P=p.mul(_,d),{px:$,py:y,pz:E}=this;let x=p.ZERO,M=p.ZERO,b=p.ZERO,v=p.mul($,$),k=p.mul(y,y),A=p.mul(E,E),T=p.mul($,y);return T=p.add(T,T),b=p.mul($,E),b=p.add(b,b),x=p.mul(R,b),M=p.mul(P,A),M=p.add(x,M),x=p.sub(k,M),M=p.add(k,M),M=p.mul(x,M),x=p.mul(T,x),b=p.mul(P,b),A=p.mul(R,A),T=p.sub(v,A),T=p.mul(R,T),T=p.add(T,b),b=p.add(v,v),v=p.add(b,v),v=p.add(v,A),v=p.mul(v,T),M=p.add(M,v),A=p.mul(y,E),A=p.add(A,A),v=p.mul(A,T),x=p.sub(x,v),b=p.mul(A,k),b=p.add(b,b),b=p.add(b,b),new K(x,M,b)}add(R){W(R);const{px:_,py:P,pz:$}=this,{px:y,py:E,pz:x}=R;let M=p.ZERO,b=p.ZERO,v=p.ZERO;const k=w.a,A=p.mul(w.b,d);let T=p.mul(_,y),I=p.mul(P,E),D=p.mul($,x),H=p.add(_,P),z=p.add(y,E);H=p.mul(H,z),z=p.add(T,I),H=p.sub(H,z),z=p.add(_,$);let Z=p.add(y,x);return z=p.mul(z,Z),Z=p.add(T,D),z=p.sub(z,Z),Z=p.add(P,$),M=p.add(E,x),Z=p.mul(Z,M),M=p.add(I,D),Z=p.sub(Z,M),v=p.mul(k,z),M=p.mul(A,D),v=p.add(M,v),M=p.sub(I,v),v=p.add(I,v),b=p.mul(M,v),I=p.add(T,T),I=p.add(I,T),D=p.mul(k,D),z=p.mul(A,z),I=p.add(I,D),D=p.sub(T,D),D=p.mul(k,D),z=p.add(z,D),T=p.mul(I,z),b=p.add(b,T),T=p.mul(Z,z),M=p.mul(H,M),M=p.sub(M,T),T=p.mul(H,I),v=p.mul(Z,v),v=p.add(v,T),new K(M,b,v)}subtract(R){return this.add(R.negate())}is0(){return this.equals(K.ZERO)}wNAF(R){return j.wNAFCached(this,R,K.normalizeZ)}multiplyUnsafe(R){r.aInRange("scalar",R,a,w.n);const _=K.ZERO;if(R===a)return _;if(R===l)return this;const{endo:P}=w;if(!P)return j.unsafeLadder(this,R);let{k1neg:$,k1:y,k2neg:E,k2:x}=P.splitScalar(R),M=_,b=_,v=this;for(;y>a||x>a;)y&l&&(M=M.add(v)),x&l&&(b=b.add(v)),v=v.double(),y>>=l,x>>=l;return $&&(M=M.negate()),E&&(b=b.negate()),b=new K(p.mul(b.px,P.beta),b.py,b.pz),M.add(b)}multiply(R){const{endo:_,n:P}=w;let $,y;if(r.aInRange("scalar",R,l,P),_){const{k1neg:E,k1:x,k2neg:M,k2:b}=_.splitScalar(R);let{p:v,f:k}=this.wNAF(x),{p:A,f:T}=this.wNAF(b);v=j.constTimeNegate(E,v),A=j.constTimeNegate(M,A),A=new K(p.mul(A.px,_.beta),A.py,A.pz),$=v.add(A),y=k.add(T)}else{const{p:E,f:x}=this.wNAF(R);$=E,y=x}return K.normalizeZ([$,y])[0]}multiplyAndAddUnsafe(R,_,P){const $=K.BASE,y=(x,M)=>M!==a&&M!==l&&x.equals($)?x.multiply(M):x.multiplyUnsafe(M),E=y(this,_).add(y(R,P));return E.is0()?void 0:E}toAffine(R){return q(this,R)}isTorsionFree(){const{h:R,isTorsionFree:_}=w;if(R===l)return!0;if(_)return _(K,this);throw new Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){const{h:R,clearCofactor:_}=w;return R===l?this:_?_(K,this):this.multiplyUnsafe(w.h)}toRawBytes(R=!0){return(0,i.abool)("isCompressed",R),this.assertValidity(),C(K,this,R)}toHex(R=!0){return(0,i.abool)("isCompressed",R),r.bytesToHex(this.toRawBytes(R))}}K.BASE=new K(w.Gx,w.Gy,p.ONE),K.ZERO=new K(p.ZERO,p.ONE,p.ZERO);const Y=w.nBitLength,j=(0,e.wNAF)(K,w.endo?Math.ceil(Y/2):Y);return{CURVE:w,ProjectivePoint:K,normPrivateKeyToScalar:U,weierstrassEquation:N,isWithinCurveOrder:function(B){return r.inRange(B,l,w.n)}}}function m(g,w){const p=g.ORDER;let S=a;for(let B=p-l;B%u===a;B/=u)S+=l;const C=S,O=u<{let _=K,P=g.pow(R,q),$=g.sqr(P);$=g.mul($,R);let y=g.mul(B,$);y=g.pow(y,W),y=g.mul(y,P),P=g.mul(y,R),$=g.mul(y,B);let E=g.mul($,P);y=g.pow(E,F);let x=g.eql(y,g.ONE);P=g.mul($,Y),y=g.mul(E,_),$=g.cmov(P,$,x),E=g.cmov(y,E,x);for(let M=C;M>l;M--){let b=M-u;b=u<{let $=g.sqr(P);const y=g.mul(_,P);$=g.mul($,y);let E=g.pow($,B);E=g.mul(E,y);const x=g.mul(E,R),M=g.mul(g.sqr(E),P),b=g.eql(M,_);return{isValid:b,value:g.cmov(x,E,b)}}}return j}})(va),Object.defineProperty(_i,"__esModule",{value:!0}),_i.getHash=Ic,_i.createCurve=function(t,e){const n=r=>(0,xp.weierstrass)({...t,...Ic(r)});return Object.freeze({...n(e),create:n})};const kp=ya,Pc=Qt,xp=va;function Ic(t){return{hash:t,hmac:(e,...n)=>(0,kp.hmac)(t,e,(0,Pc.concatBytes)(...n)),randomBytes:Pc.randomBytes}}(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.encodeToCurve=t.hashToCurve=t.schnorr=t.secp256k1=void 0;const e=Gt,n=Qt,r=_i,i=un,o=Se,s=pe,c=va,a=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),l=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),u=BigInt(1),d=BigInt(2),h=(y,E)=>(y+E/d)/E;function f(y){const E=a,x=BigInt(3),M=BigInt(6),b=BigInt(11),v=BigInt(22),k=BigInt(23),A=BigInt(44),T=BigInt(88),I=y*y*y%E,D=I*I*y%E,H=(0,o.pow2)(D,x,E)*D%E,z=(0,o.pow2)(H,x,E)*D%E,Z=(0,o.pow2)(z,d,E)*I%E,Q=(0,o.pow2)(Z,b,E)*Z%E,ne=(0,o.pow2)(Q,v,E)*Q%E,se=(0,o.pow2)(ne,A,E)*ne%E,le=(0,o.pow2)(se,T,E)*se%E,re=(0,o.pow2)(le,A,E)*ne%E,ie=(0,o.pow2)(re,x,E)*D%E,ce=(0,o.pow2)(ie,k,E)*Q%E,ae=(0,o.pow2)(ce,M,E)*I%E,me=(0,o.pow2)(ae,d,E);if(!m.eql(m.sqr(me),y))throw new Error("Cannot find square root");return me}const m=(0,o.Field)(a,void 0,void 0,{sqrt:f});t.secp256k1=(0,r.createCurve)({a:BigInt(0),b:BigInt(7),Fp:m,n:l,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:y=>{const E=l,x=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),M=-u*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),b=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),v=x,k=BigInt("0x100000000000000000000000000000000"),A=h(v*y,E),T=h(-M*y,E);let I=(0,o.mod)(y-A*x-T*b,E),D=(0,o.mod)(-A*M-T*v,E);const H=I>k,z=D>k;if(H&&(I=E-I),z&&(D=E-D),I>k||D>k)throw new Error("splitScalar: Endomorphism failed, k="+y);return{k1neg:H,k1:I,k2neg:z,k2:D}}}},e.sha256);const g=BigInt(0),w={};function p(y,...E){let x=w[y];if(x===void 0){const M=(0,e.sha256)(Uint8Array.from(y,b=>b.charCodeAt(0)));x=(0,s.concatBytes)(M,M),w[y]=x}return(0,e.sha256)((0,s.concatBytes)(x,...E))}const S=y=>y.toRawBytes(!0).slice(1),C=y=>(0,s.numberToBytesBE)(y,32),O=y=>(0,o.mod)(y,a),N=y=>(0,o.mod)(y,l),U=t.secp256k1.ProjectivePoint,W=(y,E,x)=>U.BASE.multiplyAndAddUnsafe(y,E,x);function q(y){let E=t.secp256k1.utils.normPrivateKeyToScalar(y),x=U.fromPrivateKey(E);return{scalar:x.hasEvenY()?E:N(-E),bytes:S(x)}}function F(y){(0,s.aInRange)("x",y,u,a);const E=O(y*y);let x=f(O(E*y+BigInt(7)));x%d!==g&&(x=O(-x));const M=new U(y,x,u);return M.assertValidity(),M}const K=s.bytesToNumberBE;function Y(...y){return N(K(p("BIP0340/challenge",...y)))}function j(y){return q(y).bytes}function B(y,E,x=(0,n.randomBytes)(32)){const M=(0,s.ensureBytes)("message",y),{bytes:b,scalar:v}=q(E),k=(0,s.ensureBytes)("auxRand",x,32),A=C(v^K(p("BIP0340/aux",k))),T=p("BIP0340/nonce",A,b,M),I=N(K(T));if(I===g)throw new Error("sign failed: k is zero");const{bytes:D,scalar:H}=q(I),z=Y(D,b,M),Z=new Uint8Array(64);if(Z.set(D,0),Z.set(C(N(H+z*v)),32),!R(Z,M,b))throw new Error("sign: Invalid signature produced");return Z}function R(y,E,x){const M=(0,s.ensureBytes)("signature",y,64),b=(0,s.ensureBytes)("message",E),v=(0,s.ensureBytes)("publicKey",x,32);try{const k=F(K(v)),A=K(M.subarray(0,32));if(!(0,s.inRange)(A,u,a))return!1;const T=K(M.subarray(32,64));if(!(0,s.inRange)(T,u,l))return!1;const I=Y(C(A),S(k),b),D=W(k,T,N(-I));return!(!D||!D.hasEvenY()||D.toAffine().x!==A)}catch{return!1}}t.schnorr={getPublicKey:j,sign:B,verify:R,utils:{randomPrivateKey:t.secp256k1.utils.randomPrivateKey,lift_x:F,pointToBytes:S,numberToBytesBE:s.numberToBytesBE,bytesToNumberBE:s.bytesToNumberBE,taggedHash:p,mod:o.mod}};const _=(()=>(0,i.isogenyMap)(m,[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(y=>y.map(E=>BigInt(E)))))(),P=(()=>(0,c.mapToCurveSimpleSWU)(m,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:m.create(BigInt("-11"))}))(),$=(()=>(0,i.createHasher)(t.secp256k1.ProjectivePoint,y=>{const{x:E,y:x}=P(m.create(y[0]));return _(E,x)},{DST:"secp256k1_XMD:SHA-256_SSWU_RO_",encodeDST:"secp256k1_XMD:SHA-256_SSWU_NU_",p:m.ORDER,m:1,k:128,expand:"xmd",hash:e.sha256}))();t.hashToCurve=$.hashToCurve,t.encodeToCurve=$.encodeToCurve})(Bd);var Ls={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.decodeHex=t.remove0x=void 0;var e=at;t.remove0x=function(n){return n.startsWith("0x")||n.startsWith("0X")?n.slice(2):n},t.decodeHex=function(n){return(0,e.hexToBytes)((0,t.remove0x)(n))}})(Ls),function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.hexToPublicKey=t.convertPublicKeyFormat=t.getSharedPoint=t.getPublicKey=t.isValidPrivateKey=t.getValidSecret=void 0;var e=fa,n=rd,r=Bd,i=Tr,o=Pe,s=Ls;t.getValidSecret=function(){var u;do u=(0,e.randomBytes)(o.SECRET_KEY_LENGTH);while(!(0,t.isValidPrivateKey)(u));return u},t.isValidPrivateKey=function(u){return c((0,i.ellipticCurve)(),function(d){return d.utils.isValidPrivateKey(u)},function(){return!0},function(){return!0})},t.getPublicKey=function(u){return c((0,i.ellipticCurve)(),function(d){return d.getPublicKey(u)},function(d){return d.getPublicKey(u)},function(d){return d.getPublicKey(u)})},t.getSharedPoint=function(u,d,h){return c((0,i.ellipticCurve)(),function(f){return f.getSharedSecret(u,d,h)},function(f){return f.getSharedSecret(u,d)},function(f){return l(f,u,d)})},t.convertPublicKeyFormat=function(u,d){return c((0,i.ellipticCurve)(),function(h){return h.getSharedSecret(BigInt(1),u,d)},function(){return u},function(){return u})};function c(u,d,h,f){if(u==="secp256k1")return d(r.secp256k1);if(u==="x25519")return h(n.x25519);if(u==="ed25519")return f(n.ed25519);throw new Error("Not implemented")}t.hexToPublicKey=function(u){var d=(0,s.decodeHex)(u);return c((0,i.ellipticCurve)(),function(){return a(d)},function(){return d},function(){return d})};var a=function(u){if(u.length===o.ETH_PUBLIC_KEY_SIZE){var d=new Uint8Array(1+u.length);return d.set([4]),d.set(u,1),d}return u},l=function(u,d,h){var f=u.utils.getExtendedPublicKey(d).scalar;return u.ExtendedPoint.fromHex(h).multiply(f).toRawBytes()}}(nd);var Dd={},Vn={};Object.defineProperty(Vn,"__esModule",{value:!0}),Vn.hkdf=void 0,Vn.extract=jd,Vn.expand=Kd;const Ps=it,Nc=Qt,$d=ya;function jd(t,e,n){return(0,Ps.hash)(t),n===void 0&&(n=new Uint8Array(t.outputLen)),(0,$d.hmac)(t,(0,Nc.toBytes)(n),(0,Nc.toBytes)(e))}const zo=new Uint8Array([0]),Bc=new Uint8Array;function Kd(t,e,n,r=32){if((0,Ps.hash)(t),(0,Ps.number)(r),r>255*t.outputLen)throw new Error("Length should be <= 255*HashLen");const i=Math.ceil(r/t.outputLen);n===void 0&&(n=Bc);const o=new Uint8Array(i*t.outputLen),s=$d.hmac.create(t,e),c=s._cloneInto(),a=new Uint8Array(s.outputLen);for(let l=0;lKd(t,jd(t,e,n),r,i),function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.getSharedKey=t.deriveKey=void 0;var e=at,n=Vn,r=Gt;t.deriveKey=function(i,o,s){return(0,n.hkdf)(r.sha256,i,o,s,32)},t.getSharedKey=function(){for(var i=[],o=0;o(t>>>0&255)<<24|(t>>>8&255)<<16|(t>>>16&255)<<8|t>>>24&255|0;function Ud(t){t.reverse();const e=1&t[15];let n=0;for(let r=0;r>>1|n,n=(1&i)<<7}return t[0]^=225&-e,t}class Fd{constructor(e,n){this.blockLen=Ut,this.outputLen=Ut,this.s0=0,this.s1=0,this.s2=0,this.s3=0,this.finished=!1,e=(0,Ve.toBytes)(e),(0,Mn.bytes)(e,16);const r=(0,Ve.createView)(e);let i=r.getUint32(0,!1),o=r.getUint32(4,!1),s=r.getUint32(8,!1),c=r.getUint32(12,!1);const a=[];for(let p=0;p<128;p++)a.push({s0:pt(i),s1:pt(o),s2:pt(s),s3:pt(c)}),{s0:i,s1:o,s2:s,s3:c}={s3:(d=s)<<31|(h=c)>>>1,s2:(u=o)<<31|d>>>1,s1:(l=i)<<31|u>>>1,s0:l>>>1^225<<24&-(1&h)};var l,u,d,h;const f=(p=>p>65536?8:p>1024?4:2)(n||1024);if(![1,2,4,8].includes(f))throw new Error(`ghash: wrong window size=${f}, should be 2, 4 or 8`);this.W=f;const m=128/f,g=this.windowSize=2**f,w=[];for(let p=0;p>>f-W-1&1))continue;const{s0:q,s1:F,s2:K,s3:Y}=a[f*p+W];C^=q,O^=F,N^=K,U^=Y}w.push({s0:C,s1:O,s2:N,s3:U})}this.t=w}_updateBlock(e,n,r,i){e^=this.s0,n^=this.s1,r^=this.s2,i^=this.s3;const{W:o,t:s,windowSize:c}=this;let a=0,l=0,u=0,d=0;const h=(1<>>8*g&255;for(let p=8/o-1;p>=0;p--){const S=w>>>o*p&h,{s0:C,s1:O,s2:N,s3:U}=s[f*c+S];a^=C,l^=O,u^=N,d^=U,f+=1}}this.s0=a,this.s1=l,this.s2=u,this.s3=d}update(e){e=(0,Ve.toBytes)(e),(0,Mn.exists)(this);const n=(0,Ve.u32)(e),r=Math.floor(e.length/Ut),i=e.length%Ut;for(let o=0;ot(i,r.length).update((0,Ve.toBytes)(r)).digest(),n=t(new Uint8Array(16),0);return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=(r,i)=>t(r,i),e}An.ghash=$c((t,e)=>new Fd(t,e)),An.polyval=$c((t,e)=>new Ap(t,e)),Object.defineProperty(Ae,"__esModule",{value:!0}),Ae.unsafe=Ae.aeskwp=Ae.aeskw=Ae.siv=Ae.gcm=Ae.cfb=Ae.cbc=Ae.ecb=Ae.ctr=void 0,Ae.expandKeyLE=Ct,Ae.expandKeyDecLE=Or;const be=Fe,Is=An,ee=at,Qe=16,si=new Uint8Array(Qe),Mp=283;function wa(t){return t<<1^Mp&-(t>>7)}function Wn(t,e){let n=0;for(;e>0;e>>=1)n^=t&-(1&e),t=wa(t);return n}const Ns=(()=>{const t=new Uint8Array(256);for(let n=0,r=1;n<256;n++,r^=wa(r))t[n]=r;const e=new Uint8Array(256);e[0]=99;for(let n=0;n<255;n++){let r=t[255-n];r|=r<<8,e[t[n]]=255&(r^r>>4^r>>5^r>>6^r>>7^99)}return(0,ee.clean)(t),e})(),Tp=Ns.map((t,e)=>Ns.indexOf(e)),Rp=t=>t<<24|t>>>8,qo=t=>t<<8|t>>>24,qi=t=>t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255;function Hd(t,e){if(t.length!==256)throw new Error("Wrong sbox length");const n=new Uint32Array(256).map((l,u)=>e(t[u])),r=n.map(qo),i=r.map(qo),o=i.map(qo),s=new Uint32Array(65536),c=new Uint32Array(65536),a=new Uint16Array(65536);for(let l=0;l<256;l++)for(let u=0;u<256;u++){const d=256*l+u;s[d]=n[l]^r[u],c[d]=i[l]^o[u],a[d]=t[l]<<8|t[u]}return{sbox:t,sbox2:a,T0:n,T1:r,T2:i,T3:o,T01:s,T23:c}}const Ea=Hd(Ns,t=>Wn(t,3)<<24|t<<16|t<<8|Wn(t,2)),zd=Hd(Tp,t=>Wn(t,11)<<24|Wn(t,13)<<16|Wn(t,9)<<8|Wn(t,14)),Op=(()=>{const t=new Uint8Array(16);for(let e=0,n=1;e<16;e++,n=wa(n))t[e]=n;return t})();function Ct(t){(0,be.bytes)(t);const e=t.length;if(![16,24,32].includes(e))throw new Error(`aes: wrong key size: should be 16, 24 or 32, got: ${e}`);const{sbox2:n}=Ea,r=[];(0,ee.isAligned32)(t)||r.push(t=(0,ee.copyBytes)(t));const i=(0,ee.u32)(t),o=i.length,s=a=>Lt(n,a,a,a,a),c=new Uint32Array(e+28);c.set(i);for(let a=o;a6&&a%o==4&&(l=s(l)),c[a]=c[a-o]^l}return(0,ee.clean)(...r),c}function Or(t){const e=Ct(t),n=e.slice(),r=e.length,{sbox2:i}=Ea,{T0:o,T1:s,T2:c,T3:a}=zd;for(let l=0;l>>8&255]^c[d>>>16&255]^a[d>>>24]}return n}function yn(t,e,n,r,i,o){return t[n<<8&65280|r>>>8&255]^e[i>>>8&65280|o>>>24&255]}function Lt(t,e,n,r,i){return t[255&e|65280&n]|t[r>>>16&255|i>>>16&65280]<<16}function We(t,e,n,r,i){const{sbox2:o,T01:s,T23:c}=Ea;let a=0;e^=t[a++],n^=t[a++],r^=t[a++],i^=t[a++];const l=t.length/4-2;for(let u=0;u=0;w--)g=g+(255&o[w])|0,o[w]=255&g,g>>>=8;({s0:c,s1:a,s2:l,s3:u}=We(t,s[0],s[1],s[2],s[3]))}const f=Qe*Math.floor(d.length/4);if(f>>0,c.setUint32(u,h,e),{s0:f,s1:m,s2:g,s3:w}=We(t,s[0],s[1],s[2],s[3]);const p=Qe*Math.floor(a.length/4);if(p16)throw new Error("aes/pcks5: wrong padding");const i=t.subarray(0,-r);for(let o=0;on(r,i),decrypt:(r,i)=>n(r,i)}}),Ae.ecb=(0,ee.wrapCipher)({blockSize:16},function(t,e={}){(0,be.bytes)(t);const n=!e.disablePadding;return{encrypt(r,i){const{b:o,o:s,out:c}=Kc(r,n,i),a=Ct(t);let l=0;for(;l+4<=o.length;){const{s0:u,s1:d,s2:h,s3:f}=We(a,o[l+0],o[l+1],o[l+2],o[l+3]);s[l++]=u,s[l++]=d,s[l++]=h,s[l++]=f}if(n){const u=Fc(r.subarray(4*l)),{s0:d,s1:h,s2:f,s3:m}=We(a,u[0],u[1],u[2],u[3]);s[l++]=d,s[l++]=h,s[l++]=f,s[l++]=m}return(0,ee.clean)(a),c},decrypt(r,i){jc(r);const o=Or(t),s=Qn(r.length,i),c=[o];(0,ee.isAligned32)(r)||c.push(r=(0,ee.copyBytes)(r));const a=(0,ee.u32)(r),l=(0,ee.u32)(s);for(let u=0;u+4<=a.length;){const{s0:d,s1:h,s2:f,s3:m}=Lr(o,a[u+0],a[u+1],a[u+2],a[u+3]);l[u++]=d,l[u++]=h,l[u++]=f,l[u++]=m}return(0,ee.clean)(...c),Uc(s,n)}}}),Ae.cbc=(0,ee.wrapCipher)({blockSize:16,nonceLength:16},function(t,e,n={}){(0,be.bytes)(t),(0,be.bytes)(e,16);const r=!n.disablePadding;return{encrypt(i,o){const s=Ct(t),{b:c,o:a,out:l}=Kc(i,r,o);let u=e;const d=[s];(0,ee.isAligned32)(u)||d.push(u=(0,ee.copyBytes)(u));const h=(0,ee.u32)(u);let f=h[0],m=h[1],g=h[2],w=h[3],p=0;for(;p+4<=c.length;)f^=c[p+0],m^=c[p+1],g^=c[p+2],w^=c[p+3],{s0:f,s1:m,s2:g,s3:w}=We(s,f,m,g,w),a[p++]=f,a[p++]=m,a[p++]=g,a[p++]=w;if(r){const S=Fc(i.subarray(4*p));f^=S[0],m^=S[1],g^=S[2],w^=S[3],{s0:f,s1:m,s2:g,s3:w}=We(s,f,m,g,w),a[p++]=f,a[p++]=m,a[p++]=g,a[p++]=w}return(0,ee.clean)(...d),l},decrypt(i,o){jc(i);const s=Or(t);let c=e;const a=[s];(0,ee.isAligned32)(c)||a.push(c=(0,ee.copyBytes)(c));const l=(0,ee.u32)(c),u=Qn(i.length,o);(0,ee.isAligned32)(i)||a.push(i=(0,ee.copyBytes)(i));const d=(0,ee.u32)(i),h=(0,ee.u32)(u);let f=l[0],m=l[1],g=l[2],w=l[3];for(let p=0;p+4<=d.length;){const S=f,C=m,O=g,N=w;f=d[p+0],m=d[p+1],g=d[p+2],w=d[p+3];const{s0:U,s1:W,s2:q,s3:F}=Lr(s,f,m,g,w);h[p++]=U^S,h[p++]=W^C,h[p++]=q^O,h[p++]=F^N}return(0,ee.clean)(...a),Uc(u,r)}}}),Ae.cfb=(0,ee.wrapCipher)({blockSize:16,nonceLength:16},function(t,e){function n(r,i,o){(0,be.bytes)(r);const s=r.length;o=Qn(s,o);const c=Ct(t);let a=e;const l=[c];(0,ee.isAligned32)(a)||l.push(a=(0,ee.copyBytes)(a)),(0,ee.isAligned32)(r)||l.push(r=(0,ee.copyBytes)(r));const u=(0,ee.u32)(r),d=(0,ee.u32)(o),h=i?d:u,f=(0,ee.u32)(a);let m=f[0],g=f[1],w=f[2],p=f[3];for(let C=0;C+4<=u.length;){const{s0:O,s1:N,s2:U,s3:W}=We(c,m,g,w,p);d[C+0]=u[C+0]^O,d[C+1]=u[C+1]^N,d[C+2]=u[C+2]^U,d[C+3]=u[C+3]^W,m=h[C++],g=h[C++],w=h[C++],p=h[C++]}const S=Qe*Math.floor(u.length/4);if(Sn(r,!0,i),decrypt:(r,i)=>n(r,!1,i)}}),Ae.gcm=(0,ee.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},function(t,e,n){if((0,be.bytes)(t),(0,be.bytes)(e),n!==void 0&&(0,be.bytes)(n),e.length<8)throw new Error("aes/gcm: invalid nonce length");const r=16;function i(s,c,a){const l=Vd(Is.ghash,!1,s,a,n);for(let u=0;ur=>{if(!Number.isSafeInteger(r)||e>r||r>n)throw new Error(`${t}: invalid value=${r}, must be [${e}..${n}]`)};function Wd(t){return t!=null&&typeof t=="object"&&(t instanceof Uint32Array||t.constructor.name==="Uint32Array")}function Gd(t,e){if((0,be.bytes)(e,16),!Wd(t))throw new Error("_encryptBlock accepts result of expandKeyLE");const n=(0,ee.u32)(e);let{s0:r,s1:i,s2:o,s3:s}=We(t,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=i,n[2]=o,n[3]=s,e}function Yd(t,e){if((0,be.bytes)(e,16),!Wd(t))throw new Error("_decryptBlock accepts result of expandKeyLE");const n=(0,ee.u32)(e);let{s0:r,s1:i,s2:o,s3:s}=Lr(t,n[0],n[1],n[2],n[3]);return n[0]=r,n[1]=i,n[2]=o,n[3]=s,e}Ae.siv=(0,ee.wrapCipher)({blockSize:16,nonceLength:12,tagLength:16},function(t,e,n){const r=ai("AAD",0,68719476736),i=ai("plaintext",0,2**36),o=ai("nonce",12,12),s=ai("ciphertext",16,2**36+16);function c(){const u=Ct(t),d=new Uint8Array(t.length),h=new Uint8Array(16),f=[u,d];let m=e;(0,ee.isAligned32)(m)||f.push(m=(0,ee.copyBytes)(m));const g=(0,ee.u32)(m);let w=0,p=g[0],S=g[1],C=g[2],O=0;for(const U of[h,d].map(ee.u32)){const W=(0,ee.u32)(U);for(let q=0;q=2**32)throw new Error("plaintext should be less than 4gb");const n=Ct(t);if(e.length===16)Gd(n,e);else{const r=(0,ee.u32)(e);let i=r[0],o=r[1];for(let s=0,c=1;s<6;s++)for(let a=2;a=2**32)throw new Error("ciphertext should be less than 4gb");const n=Or(t),r=e.length/8-1;if(r===1)Yd(n,e);else{const i=(0,ee.u32)(e);let o=i[0],s=i[1];for(let c=0,a=6*r;c<6;c++)for(let l=2*r;l>=1;l-=2,a--){s^=qi(a);const{s0:u,s1:d,s2:h,s3:f}=Lr(n,o,s,i[l],i[l+1]);o=u,s=d,i[l]=h,i[l+1]=f}i[0]=o,i[1]=s}n.fill(0)}},Hc=new Uint8Array(8).fill(166);Ae.aeskw=(0,ee.wrapCipher)({blockSize:8},t=>({encrypt(e){if((0,be.bytes)(e),!e.length||e.length%8!=0)throw new Error("invalid plaintext length");if(e.length===8)throw new Error("8-byte keys not allowed in AESKW, use AESKWP instead");const n=(0,ee.concatBytes)(Hc,e);return Vi.encrypt(t,n),n},decrypt(e){if((0,be.bytes)(e),e.length%8!=0||e.length<24)throw new Error("invalid ciphertext length");const n=(0,ee.copyBytes)(e);if(Vi.decrypt(t,n),!(0,ee.equalBytes)(n.subarray(0,8),Hc))throw new Error("integrity check failed");return n.subarray(0,8).fill(0),n.subarray(8)}}));const zc=2790873510;Ae.aeskwp=(0,ee.wrapCipher)({blockSize:8},t=>({encrypt(e){if((0,be.bytes)(e),!e.length)throw new Error("invalid plaintext length");const n=8*Math.ceil(e.length/8),r=new Uint8Array(8+n);r.set(e,8);const i=(0,ee.u32)(r);return i[0]=zc,i[1]=qi(e.length),Vi.encrypt(t,r),r},decrypt(e){if((0,be.bytes)(e),e.length<16)throw new Error("invalid ciphertext length");const n=(0,ee.copyBytes)(e),r=(0,ee.u32)(n);Vi.decrypt(t,n);const i=qi(r[1])>>>0,o=8*Math.ceil(i/8);if(r[0]!==zc||n.length-8!==o)throw new Error("integrity check failed");for(let s=i;s>>32-e},Yn.createCipher=function(t,e){const{allowShortKeys:n,extendNonceFn:r,counterLength:i,counterRight:o,rounds:s}=(0,ht.checkOpts)({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},e);if(typeof t!="function")throw new Error("core must be a function");return(0,Kt.number)(i),(0,Kt.number)(s),(0,Kt.bool)(o),(0,Kt.bool)(n),(c,a,l,u,d=0)=>{(0,Kt.bytes)(c),(0,Kt.bytes)(a),(0,Kt.bytes)(l);const h=l.length;if(u===void 0&&(u=new Uint8Array(h)),(0,Kt.bytes)(u),(0,Kt.number)(d),d<0||d>=qc)throw new Error("arx: counter overflow");if(u.length=qc)throw new Error("arx: counter overflow");const E=Math.min(ci,j-y);if(_&&E===ci){const x=y/4;if(y%4!=0)throw new Error("arx: invalid block position");for(let M,b=0;bUint8Array.from(t.split("").map(e=>e.charCodeAt(0))),Lp=Xd("expand 16-byte k"),Pp=Xd("expand 32-byte k"),Ip=(0,ht.u32)(Lp),Qd=(0,ht.u32)(Pp);function Vo(t){return t.byteOffset%4==0}Yn.sigma=Qd.slice();const ci=64,Np=16,qc=2**32-1,Vc=new Uint32Array;var Cr={};Object.defineProperty(Cr,"__esModule",{value:!0}),Cr.poly1305=void 0,Cr.wrapConstructorWithKey=eh;const li=Fe,vr=at,Be=(t,e)=>255&t[e++]|(255&t[e++])<<8;class Bp{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,e=(0,vr.toBytes)(e),(0,li.bytes)(e,32);const n=Be(e,0),r=Be(e,2),i=Be(e,4),o=Be(e,6),s=Be(e,8),c=Be(e,10),a=Be(e,12),l=Be(e,14);this.r[0]=8191&n,this.r[1]=8191&(n>>>13|r<<3),this.r[2]=7939&(r>>>10|i<<6),this.r[3]=8191&(i>>>7|o<<9),this.r[4]=255&(o>>>4|s<<12),this.r[5]=s>>>1&8190,this.r[6]=8191&(s>>>14|c<<2),this.r[7]=8065&(c>>>11|a<<5),this.r[8]=8191&(a>>>8|l<<8),this.r[9]=l>>>5&127;for(let u=0;u<8;u++)this.pad[u]=Be(e,16+2*u)}process(e,n,r=!1){const i=r?0:2048,{h:o,r:s}=this,c=s[0],a=s[1],l=s[2],u=s[3],d=s[4],h=s[5],f=s[6],m=s[7],g=s[8],w=s[9],p=Be(e,n+0),S=Be(e,n+2),C=Be(e,n+4),O=Be(e,n+6),N=Be(e,n+8),U=Be(e,n+10),W=Be(e,n+12),q=Be(e,n+14);let F=o[0]+(8191&p),K=o[1]+(8191&(p>>>13|S<<3)),Y=o[2]+(8191&(S>>>10|C<<6)),j=o[3]+(8191&(C>>>7|O<<9)),B=o[4]+(8191&(O>>>4|N<<12)),R=o[5]+(N>>>1&8191),_=o[6]+(8191&(N>>>14|U<<2)),P=o[7]+(8191&(U>>>11|W<<5)),$=o[8]+(8191&(W>>>8|q<<8)),y=o[9]+(q>>>5|i),E=0,x=E+F*c+K*(5*w)+Y*(5*g)+j*(5*m)+B*(5*f);E=x>>>13,x&=8191,x+=R*(5*h)+_*(5*d)+P*(5*u)+$*(5*l)+y*(5*a),E+=x>>>13,x&=8191;let M=E+F*a+K*c+Y*(5*w)+j*(5*g)+B*(5*m);E=M>>>13,M&=8191,M+=R*(5*f)+_*(5*h)+P*(5*d)+$*(5*u)+y*(5*l),E+=M>>>13,M&=8191;let b=E+F*l+K*a+Y*c+j*(5*w)+B*(5*g);E=b>>>13,b&=8191,b+=R*(5*m)+_*(5*f)+P*(5*h)+$*(5*d)+y*(5*u),E+=b>>>13,b&=8191;let v=E+F*u+K*l+Y*a+j*c+B*(5*w);E=v>>>13,v&=8191,v+=R*(5*g)+_*(5*m)+P*(5*f)+$*(5*h)+y*(5*d),E+=v>>>13,v&=8191;let k=E+F*d+K*u+Y*l+j*a+B*c;E=k>>>13,k&=8191,k+=R*(5*w)+_*(5*g)+P*(5*m)+$*(5*f)+y*(5*h),E+=k>>>13,k&=8191;let A=E+F*h+K*d+Y*u+j*l+B*a;E=A>>>13,A&=8191,A+=R*c+_*(5*w)+P*(5*g)+$*(5*m)+y*(5*f),E+=A>>>13,A&=8191;let T=E+F*f+K*h+Y*d+j*u+B*l;E=T>>>13,T&=8191,T+=R*a+_*c+P*(5*w)+$*(5*g)+y*(5*m),E+=T>>>13,T&=8191;let I=E+F*m+K*f+Y*h+j*d+B*u;E=I>>>13,I&=8191,I+=R*l+_*a+P*c+$*(5*w)+y*(5*g),E+=I>>>13,I&=8191;let D=E+F*g+K*m+Y*f+j*h+B*d;E=D>>>13,D&=8191,D+=R*u+_*l+P*a+$*c+y*(5*w),E+=D>>>13,D&=8191;let H=E+F*w+K*g+Y*m+j*f+B*h;E=H>>>13,H&=8191,H+=R*d+_*u+P*l+$*a+y*c,E+=H>>>13,H&=8191,E=(E<<2)+E|0,E=E+x|0,x=8191&E,E>>>=13,M+=E,o[0]=x,o[1]=M,o[2]=b,o[3]=v,o[4]=k,o[5]=A,o[6]=T,o[7]=I,o[8]=D,o[9]=H}finalize(){const{h:e,pad:n}=this,r=new Uint16Array(10);let i=e[1]>>>13;e[1]&=8191;for(let c=2;c<10;c++)e[c]+=i,i=e[c]>>>13,e[c]&=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 c=1;c<10;c++)r[c]=e[c]+i,i=r[c]>>>13,r[c]&=8191;r[9]-=8192;let o=(1^i)-1;for(let c=0;c<10;c++)r[c]&=o;o=~o;for(let c=0;c<10;c++)e[c]=e[c]&o|r[c];e[0]=65535&(e[0]|e[1]<<13),e[1]=65535&(e[1]>>>3|e[2]<<10),e[2]=65535&(e[2]>>>6|e[3]<<7),e[3]=65535&(e[3]>>>9|e[4]<<4),e[4]=65535&(e[4]>>>12|e[5]<<1|e[6]<<14),e[5]=65535&(e[6]>>>2|e[7]<<11),e[6]=65535&(e[7]>>>5|e[8]<<8),e[7]=65535&(e[8]>>>8|e[9]<<5);let s=e[0]+n[0];e[0]=65535&s;for(let c=1;c<8;c++)s=(e[c]+n[c]|0)+(s>>>16)|0,e[c]=65535&s;(0,vr.clean)(r)}update(e){(0,li.exists)(this);const{buffer:n,blockLen:r}=this,i=(e=(0,vr.toBytes)(e)).length;for(let o=0;o>>0,e[o++]=r[s]>>>8;return e}digest(){const{buffer:e,outputLen:n}=this;this.digestInto(e);const r=e.slice(0,n);return this.destroy(),r}}function eh(t){const e=(r,i)=>t(i).update((0,vr.toBytes)(r)).digest(),n=t(new Uint8Array(32));return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}Cr.poly1305=eh(t=>new Bp(t)),function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.xchacha20poly1305=t.chacha20poly1305=t._poly1305_aead=t.chacha12=t.chacha8=t.xchacha20=t.chacha20=t.chacha20orig=void 0,t.hchacha=s;const e=Yn,n=Fe,r=Cr,i=at;function o(d,h,f,m,g,w=20){let p=d[0],S=d[1],C=d[2],O=d[3],N=h[0],U=h[1],W=h[2],q=h[3],F=h[4],K=h[5],Y=h[6],j=h[7],B=g,R=f[0],_=f[1],P=f[2],$=p,y=S,E=C,x=O,M=N,b=U,v=W,k=q,A=F,T=K,I=Y,D=j,H=B,z=R,Z=_,Q=P;for(let se=0;se{d.update(h);const f=h.length%16;f&&d.update(c.subarray(f))},l=new Uint8Array(32);function u(d,h,f,m,g){const w=d(h,f,l),p=r.poly1305.create(w);g&&a(p,g),a(p,m);const S=new Uint8Array(16),C=(0,i.createView)(S);(0,i.setBigUint64)(C,0,BigInt(g?g.length:0),!0),(0,i.setBigUint64)(C,8,BigInt(m.length),!0),p.update(S);const O=p.digest();return(0,i.clean)(w,S),O}t._poly1305_aead=d=>(h,f,m)=>((0,n.bytes)(h,32),(0,n.bytes)(f),{encrypt(w,p){const S=w.length,C=S+16;p?(0,n.bytes)(p,C):p=new Uint8Array(C),d(h,f,w,p,1);const O=u(d,h,f,p.subarray(0,-16),m);return p.set(O,S),(0,i.clean)(O),p},decrypt(w,p){const S=w.length,C=S-16;if(S<16)throw new Error("encrypted data must be at least 16 bytes");p?(0,n.bytes)(p,C):p=new Uint8Array(C);const O=w.subarray(0,-16),N=w.subarray(-16),U=u(d,h,f,O,m);if(!(0,i.equalBytes)(N,U))throw new Error("invalid tag");return d(h,f,O,p,1),(0,i.clean)(U),p}}),t.chacha20poly1305=(0,i.wrapCipher)({blockSize:64,nonceLength:12,tagLength:16},(0,t._poly1305_aead)(t.chacha20)),t.xchacha20poly1305=(0,i.wrapCipher)({blockSize:64,nonceLength:24,tagLength:16},(0,t._poly1305_aead)(t.xchacha20))}(Jd),Object.defineProperty(Wi,"__esModule",{value:!0}),Wi.xchacha20=void 0;var jn,Wc,fr,Dp=Jd;Wi.xchacha20=function(t,e,n){return(0,Dp.xchacha20poly1305)(t,e,n)},function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.aesDecrypt=t.aesEncrypt=t.symDecrypt=t.symEncrypt=void 0;var e=at,n=fa,r=Xn,i=Wi,o=Tr,s=Pe;t.symEncrypt=function(u,d,h){return c(a,u,d,h)};function c(u,d,h,f){var m=(0,o.symmetricAlgorithm)();if(m==="aes-256-gcm")return u(r.aes256gcm,d,h,(0,o.symmetricNonceLength)(),s.AEAD_TAG_LENGTH,f);if(m==="xchacha20")return u(i.xchacha20,d,h,s.XCHACHA20_NONCE_LENGTH,s.AEAD_TAG_LENGTH,f);if(m==="aes-256-cbc")return u(r.aes256cbc,d,h,16,0);throw new Error("Not implemented")}function a(u,d,h,f,m,g){var w=(0,n.randomBytes)(f),p=u(d,w,g).encrypt(h);if(m===0)return(0,e.concatBytes)(w,p);var S=p.length-m,C=p.subarray(0,S),O=p.subarray(S);return(0,e.concatBytes)(w,O,C)}function l(u,d,h,f,m,g){var w=h.subarray(0,f),p=u(d,Uint8Array.from(w),g),S=h.subarray(f);if(m===0)return p.decrypt(S);var C=S.subarray(0,m),O=S.subarray(m);return p.decrypt((0,e.concatBytes)(O,C))}t.symDecrypt=function(u,d,h){return c(l,u,d,h)},t.aesEncrypt=t.symEncrypt,t.aesDecrypt=t.symDecrypt}(Dc),jn=mo,Wc=yt&&yt.__createBinding||(Object.create?function(t,e,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(e,n);i&&!("get"in i?!e.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return e[n]}}),Object.defineProperty(t,r,i)}:function(t,e,n,r){r===void 0&&(r=n),t[r]=e[n]}),fr=yt&&yt.__exportStar||function(t,e){for(var n in t)n==="default"||Object.prototype.hasOwnProperty.call(e,n)||Wc(e,t,n)},Object.defineProperty(jn,"__esModule",{value:!0}),fr(nd,jn),fr(Dd,jn),fr(Ls,jn),fr(Dc,jn);var Pr={};Object.defineProperty(Pr,"__esModule",{value:!0}),Pr.PublicKey=void 0;var Gc=at,ui=mo,$p=function(){function t(e){this.data=(0,ui.convertPublicKeyFormat)(e,!0)}return t.fromHex=function(e){return new t((0,ui.hexToPublicKey)(e))},Object.defineProperty(t.prototype,"uncompressed",{get:function(){return J.from((0,ui.convertPublicKeyFormat)(this.data,!1))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"compressed",{get:function(){return J.from(this.data)},enumerable:!1,configurable:!0}),t.prototype.toHex=function(e){return e===void 0&&(e=!0),(0,Gc.bytesToHex)(e?this.data:this.uncompressed)},t.prototype.decapsulate=function(e,n){n===void 0&&(n=!1);var r=n?this.data:this.uncompressed,i=e.multiply(this,n);return(0,ui.getSharedKey)(r,i)},t.prototype.equals=function(e){return(0,Gc.equalBytes)(this.data,e.data)},t}();Pr.PublicKey=$p,Object.defineProperty(Ui,"__esModule",{value:!0}),Ui.PrivateKey=void 0;var Yc=at,Kn=mo,jp=Pr,Kp=function(){function t(e){if(e===void 0)this.data=(0,Kn.getValidSecret)();else{if(!(0,Kn.isValidPrivateKey)(e))throw new Error("Invalid private key");this.data=e}this.publicKey=new jp.PublicKey((0,Kn.getPublicKey)(this.data))}return t.fromHex=function(e){return new t((0,Kn.decodeHex)(e))},Object.defineProperty(t.prototype,"secret",{get:function(){return J.from(this.data)},enumerable:!1,configurable:!0}),t.prototype.toHex=function(){return(0,Yc.bytesToHex)(this.data)},t.prototype.encapsulate=function(e,n){n===void 0&&(n=!1);var r=n?this.publicKey.compressed:this.publicKey.uncompressed,i=this.multiply(e,n);return(0,Kn.getSharedKey)(r,i)},t.prototype.multiply=function(e,n){return n===void 0&&(n=!1),(0,Kn.getSharedPoint)(this.data,e.compressed,n)},t.prototype.equals=function(e){return(0,Yc.equalBytes)(this.data,e.data)},t}();Ui.PrivateKey=Kp,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.PublicKey=t.PrivateKey=void 0;var e=Ui;Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return e.PrivateKey}});var n=Pr;Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return n.PublicKey}})}(Oo),function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.utils=t.PublicKey=t.PrivateKey=t.ECIES_CONFIG=void 0,t.encrypt=function(c,a){var l=new r.PrivateKey,u=c instanceof Uint8Array?new r.PublicKey(c):r.PublicKey.fromHex(c),d=l.encapsulate(u,(0,n.isHkdfKeyCompressed)()),h=(0,n.isEphemeralKeyCompressed)()?l.publicKey.compressed:l.publicKey.uncompressed,f=(0,i.symEncrypt)(d,a);return J.from((0,e.concatBytes)(h,f))},t.decrypt=function(c,a){var l=c instanceof Uint8Array?new r.PrivateKey(c):r.PrivateKey.fromHex(c),u=(0,n.ephemeralKeySize)(),d=new r.PublicKey(a.subarray(0,u)),h=a.subarray(u),f=d.decapsulate(l,(0,n.isHkdfKeyCompressed)());return J.from((0,i.symDecrypt)(f,h))};var e=at,n=Tr,r=Oo,i=mo,o=Tr;Object.defineProperty(t,"ECIES_CONFIG",{enumerable:!0,get:function(){return o.ECIES_CONFIG}});var s=Oo;Object.defineProperty(t,"PrivateKey",{enumerable:!0,get:function(){return s.PrivateKey}}),Object.defineProperty(t,"PublicKey",{enumerable:!0,get:function(){return s.PublicKey}}),t.utils={aesEncrypt:i.aesEncrypt,aesDecrypt:i.aesDecrypt,symEncrypt:i.symEncrypt,symDecrypt:i.symDecrypt,decodeHex:i.decodeHex,getValidSecret:i.getValidSecret,remove0x:i.remove0x}}(Hn);const th=Ge("KeyExchange:Layer"),nh=Ge("SocketService:Layer"),rh=Ge("Ecies:Layer"),ih=Ge("RemoteCommunication:Layer");th.color="##95c44e",nh.color="#f638d7",rh.color="#465b9c",ih.color="#47a2be";const V={KeyExchange:th,SocketService:nh,Ecies:rh,RemoteCommunication:ih};let pr,di=[],Wo=[];const Jt=(t,e)=>X(void 0,void 0,void 0,function*(){pr=e,Wo.push(t),function(n){return X(this,void 0,void 0,function*(){if(!pr||!n)return;(function(){const s=Wo;Wo=di,di=s})();const r=pr.endsWith("/")?`${pr}evt`:`${pr}/evt`,i=Object.assign({},n);if(delete i.params,n.params)for(const[s,c]of Object.entries(n.params))i[s]=c;const o=JSON.stringify(i);V.RemoteCommunication(`[sendBufferedEvents] Sending ${di.length} analytics events to ${r}`);try{const s=yield Su(r,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:o}),c=yield s.text();V.RemoteCommunication(`[sendBufferedEvents] Response: ${c}`),di.length=0}catch{}})}(t).catch(()=>{})});class Go{constructor(e){this.enabled=!0,e!=null&&e.debug&&Ge.enable("Ecies:Layer"),this.ecies=e!=null&&e.privateKey?Hn.PrivateKey.fromHex(e.privateKey):new Hn.PrivateKey,V.Ecies("[ECIES constructor()] initialized secret: ",this.ecies.toHex()),V.Ecies("[ECIES constructor()] initialized public: ",this.ecies.publicKey.toHex()),V.Ecies("[ECIES constructor()] init with",this)}generateECIES(){this.ecies=new Hn.PrivateKey}getPublicKey(){return this.ecies.publicKey.toHex()}encrypt(e,n){let r=e;if(this.enabled)try{V.Ecies("[ECIES: encrypt()] using otherPublicKey",n);const i=J.from(e),o=Hn.encrypt(n,i);r=J.from(o).toString("base64")}catch(i){throw V.Ecies("[ECIES: encrypt()] error encrypt:",i),V.Ecies("[ECIES: encrypt()] private: ",this.ecies.toHex()),V.Ecies("[ECIES: encrypt()] data: ",e),V.Ecies("[ECIES: encrypt()] otherkey: ",n),i}return r}decrypt(e){let n=e;if(this.enabled)try{V.Ecies("[ECIES: decrypt()] using privateKey",this.ecies.toHex());const r=J.from(e.toString(),"base64");n=Hn.decrypt(this.ecies.toHex(),r).toString()}catch(r){throw V.Ecies("[ECIES: decrypt()] error decrypt",r),V.Ecies("[ECIES: decrypt()] private: ",this.ecies.toHex()),V.Ecies("[ECIES: decrypt()] encryptedData: ",e),r}return n}getKeyInfo(){return{private:this.ecies.toHex(),public:this.ecies.publicKey.toHex()}}toString(){V.Ecies("[ECIES: toString()]",this.getKeyInfo())}}var wn={name:"@metamask/sdk-communication-layer",version:"0.31.0",description:"",homepage:"https://github.com/MetaMask/metamask-sdk#readme",bugs:{url:"https://github.com/MetaMask/metamask-sdk/issues"},repository:{type:"git",url:"https://github.com/MetaMask/metamask-sdk.git",directory:"packages/sdk-communication-layer"},main:"dist/node/cjs/metamask-sdk-communication-layer.js",unpkg:"dist/browser/umd/metamask-sdk-communication-layer.js",module:"dist/node/es/metamask-sdk-communication-layer.js",browser:"dist/browser/es/metamask-sdk-communication-layer.js","react-native":"dist/react-native/es/metamask-sdk-communication-layer.js",types:"dist/types/src/index.d.ts",files:["/dist"],scripts:{"build:types":"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types","build:clean":"yarn clean && yarn build",build:"yarn build:types && rollup -c --bundleConfigAsCjs","build:dev":"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs","build:post-tsc":"echo 'N/A'","build:pre-tsc":"echo 'N/A'",size:"size-limit",clean:"rimraf ./dist",lint:"yarn lint:eslint && yarn lint:misc --check","lint:changelog":"../../scripts/validate-changelog.sh @metamask/sdk-communication-layer","lint:eslint":"eslint . --cache --ext js,ts","lint:fix":"yarn lint:eslint --fix && yarn lint:misc --write","lint:misc":"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore","publish:preview":"yarn npm publish --tag preview",prepack:"../../scripts/prepack.sh",reset:"yarn clean && rimraf ./node_modules/",test:'jest --testPathIgnorePatterns "/e2e/"',"test:e2e":'jest --testPathPattern "/e2e/"',"test:coverage":"jest --coverage","test:ci":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns "/e2e/"',"test:dev":"jest",watch:"rollup -c --bundleConfigAsCjs -w"},dependencies:{bufferutil:"^4.0.8","date-fns":"^2.29.3",debug:"^4.3.4","utf-8-validate":"^5.0.2",uuid:"^8.3.2"},devDependencies:{"@jest/globals":"^29.3.1","@lavamoat/allow-scripts":"^2.3.1","@metamask/auto-changelog":"3.1.0","@metamask/eslint-config":"^6.0.0","@metamask/eslint-config-nodejs":"^6.0.0","@metamask/eslint-config-typescript":"^6.0.0","@rollup/plugin-commonjs":"^25.0.0","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-replace":"^6.0.1","@rollup/plugin-terser":"^0.4.4","@size-limit/preset-big-lib":"^11.0.2","@types/jest":"^29.2.4","@types/node":"^20.1.3","@types/uuid":"^9.0.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","cross-fetch":"^4.0.0",eciesjs:"^0.4.11",eslint:"^7.30.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.23.4","eslint-plugin-jest":"^24.4.0","eslint-plugin-jsdoc":"^36.1.0","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0",eventemitter2:"^6.4.9",jest:"^29.3.1",prettier:"^2.3.0",rimraf:"^3.0.2",rollup:"^4.26.0","rollup-plugin-jscc":"^2.0.0","rollup-plugin-natives":"^0.7.5","rollup-plugin-node-builtins":"^2.1.2","rollup-plugin-node-globals":"^1.4.0","rollup-plugin-peer-deps-external":"^2.2.4","rollup-plugin-polyfill-node":"^0.13.0","rollup-plugin-sizes":"^1.0.6","rollup-plugin-typescript2":"^0.31.2","rollup-plugin-visualizer":"^5.12.0","size-limit":"^11.1.6","socket.io-client":"^4.5.1","stream-browserify":"^3.0.0","ts-jest":"^29.0.3","ts-node":"^10.9.1",typescript:"^5.6.3"},peerDependencies:{"cross-fetch":"^4.0.0",eciesjs:"*",eventemitter2:"^6.4.9","readable-stream":"^3.6.2","socket.io-client":"^4.5.1"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},lavamoat:{allowScripts:{"@lavamoat/preinstall-always-fail":!1,canvas:!0,"eciesjs>secp256k1":!1,"socket.io-client>engine.io-client>ws>bufferutil":!1,"socket.io-client>engine.io-client>ws>utf-8-validate":!1,bufferutil:!1,"utf-8-validate":!1}}};const rr="https://metamask-sdk.api.cx.metamask.io/",Up=["websocket"],ir=6048e5,Fp=3e3,Hp={METAMASK_GETPROVIDERSTATE:"metamask_getProviderState",ETH_REQUESTACCOUNTS:"eth_requestAccounts"};function oh(t){const{context:e}=t;V.RemoteCommunication(`[RemoteCommunication: clean()] context=${e}`),t.channelConfig=void 0,t.ready=!1,t.originatorConnectStarted=!1}var je,te,Gi,_e,xe,Te,Un;(Un=je||(je={})).DISCONNECTED="disconnected",Un.WAITING="waiting",Un.TIMEOUT="timeout",Un.LINKED="linked",Un.PAUSED="paused",Un.TERMINATED="terminated",function(t){t.KEY_INFO="key_info",t.SERVICE_STATUS="service_status",t.PROVIDER_UPDATE="provider_update",t.RPC_UPDATE="rpc_update",t.KEYS_EXCHANGED="keys_exchanged",t.JOIN_CHANNEL="join_channel",t.PUBLIC_KEY="public_key",t.CHANNEL_CREATED="channel_created",t.CLIENTS_CONNECTED="clients_connected",t.CLIENTS_DISCONNECTED="clients_disconnected",t.CLIENTS_WAITING="clients_waiting",t.CLIENTS_READY="clients_ready",t.REJECTED="rejected",t.WALLET_INIT="wallet_init",t.CHANNEL_PERSISTENCE="channel_persistence",t.CONFIG="config",t.MESSAGE_ACK="ack",t.SOCKET_DISCONNECTED="socket_disconnected",t.SOCKET_RECONNECT="socket_reconnect",t.OTP="otp",t.SDK_RPC_CALL="sdk_rpc_call",t.AUTHORIZED="authorized",t.CONNECTION_STATUS="connection_status",t.MESSAGE="message",t.TERMINATE="terminate"}(te||(te={})),(Gi||(Gi={})).KEY_EXCHANGE="key_exchange",function(t){t.KEY_HANDSHAKE_START="key_handshake_start",t.KEY_HANDSHAKE_CHECK="key_handshake_check",t.KEY_HANDSHAKE_SYN="key_handshake_SYN",t.KEY_HANDSHAKE_SYNACK="key_handshake_SYNACK",t.KEY_HANDSHAKE_ACK="key_handshake_ACK",t.KEY_HANDSHAKE_WALLET="key_handshake_wallet",t.KEY_HANDSHAKE_NONE="none"}(_e||(_e={}));class zp extends ho.EventEmitter2{constructor({communicationLayer:e,otherPublicKey:n,context:r,ecies:i,logging:o}){super(),this.keysExchanged=!1,this.step=_e.KEY_HANDSHAKE_NONE,this.debug=!1,this.context=r,this.communicationLayer=e,i!=null&&i.privateKey&&n&&(V.KeyExchange(`[KeyExchange: constructor()] otherPubKey=${n} set keysExchanged to true!`,i),this.keysExchanged=!0),this.myECIES=new Go(Object.assign(Object.assign({},i),{debug:o==null?void 0:o.eciesLayer})),this.communicationLayer.state.eciesInstance=this.myECIES,this.myPublicKey=this.myECIES.getPublicKey(),this.debug=(o==null?void 0:o.keyExchangeLayer)===!0,n&&this.setOtherPublicKey(n),this.communicationLayer.on(Gi.KEY_EXCHANGE,this.onKeyExchangeMessage.bind(this))}onKeyExchangeMessage(e){const{relayPersistence:n}=this.communicationLayer.remote.state;if(V.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} keysExchanged=${this.keysExchanged} relayPersistence=${n}`,e),n)return void V.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Ignoring key exchange message because relay persistence is activated");const{message:r}=e;this.keysExchanged&&V.KeyExchange(`[KeyExchange: onKeyExchangeMessage()] context=${this.context} received handshake while already exchanged. step=${this.step} otherPubKey=${this.otherPublicKey}`),this.emit(te.KEY_INFO,r.type),r.type===_e.KEY_HANDSHAKE_SYN?(this.checkStep([_e.KEY_HANDSHAKE_NONE,_e.KEY_HANDSHAKE_ACK]),V.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYN",r),r.pubkey&&this.setOtherPublicKey(r.pubkey),this.communicationLayer.sendMessage({type:_e.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey}).catch(i=>{V.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_SYNACK",i)}),this.setStep(_e.KEY_HANDSHAKE_ACK)):r.type===_e.KEY_HANDSHAKE_SYNACK?(this.checkStep([_e.KEY_HANDSHAKE_SYNACK,_e.KEY_HANDSHAKE_ACK,_e.KEY_HANDSHAKE_NONE]),V.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_SYNACK"),r.pubkey&&this.setOtherPublicKey(r.pubkey),this.communicationLayer.sendMessage({type:_e.KEY_HANDSHAKE_ACK}).catch(i=>{V.KeyExchange("[KeyExchange: onKeyExchangeMessage()] Error sending KEY_HANDSHAKE_ACK",i)}),this.keysExchanged=!0,this.setStep(_e.KEY_HANDSHAKE_ACK),this.emit(te.KEYS_EXCHANGED)):r.type===_e.KEY_HANDSHAKE_ACK&&(V.KeyExchange("[KeyExchange: onKeyExchangeMessage()] KEY_HANDSHAKE_ACK set keysExchanged to true!"),this.checkStep([_e.KEY_HANDSHAKE_ACK,_e.KEY_HANDSHAKE_NONE]),this.keysExchanged=!0,this.setStep(_e.KEY_HANDSHAKE_ACK),this.emit(te.KEYS_EXCHANGED))}resetKeys(e){this.clean(),this.myECIES=new Go(e)}clean(){V.KeyExchange(`[KeyExchange: clean()] context=${this.context} reset handshake state`),this.setStep(_e.KEY_HANDSHAKE_NONE),this.emit(te.KEY_INFO,this.step),this.keysExchanged=!1}start({isOriginator:e,force:n}){const{relayPersistence:r,protocolVersion:i}=this.communicationLayer.remote.state,o=i>=2;r?V.KeyExchange("[KeyExchange: start()] Ignoring key exchange message because relay persistence is activated"):(V.KeyExchange(`[KeyExchange: start()] context=${this.context} protocolVersion=${i} isOriginator=${e} step=${this.step} force=${n} relayPersistence=${r} keysExchanged=${this.keysExchanged}`),e?!(this.keysExchanged||this.step!==_e.KEY_HANDSHAKE_NONE&&this.step!==_e.KEY_HANDSHAKE_SYNACK)||n?(V.KeyExchange(`[KeyExchange: start()] context=${this.context} -- start key exchange (force=${n}) -- step=${this.step}`,this.step),this.clean(),this.setStep(_e.KEY_HANDSHAKE_SYNACK),this.communicationLayer.sendMessage({type:_e.KEY_HANDSHAKE_SYN,pubkey:this.myPublicKey,v:2}).catch(s=>{V.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYN",s)})):V.KeyExchange(`[KeyExchange: start()] context=${this.context} -- key exchange already ${this.keysExchanged?"done":"in progress"} -- aborted.`,this.step):this.keysExchanged&&n!==!0?V.KeyExchange("[KeyExchange: start()] don't send KEY_HANDSHAKE_START -- exchange already done."):o?this.communicationLayer.sendMessage({type:_e.KEY_HANDSHAKE_SYNACK,pubkey:this.myPublicKey,v:2}).catch(s=>{V.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_SYNACK",s)}):(this.communicationLayer.sendMessage({type:_e.KEY_HANDSHAKE_START}).catch(s=>{V.KeyExchange("[KeyExchange: start()] Error sending KEY_HANDSHAKE_START",s)}),this.clean()))}setStep(e){this.step=e,this.emit(te.KEY_INFO,e)}checkStep(e){e.length>0&&e.indexOf(this.step.toString())}setRelayPersistence({localKey:e,otherKey:n}){this.otherPublicKey=n,this.myECIES=new Go({privateKey:e,debug:this.debug}),this.keysExchanged=!0}setKeysExchanged(e){this.keysExchanged=e}areKeysExchanged(){return this.keysExchanged}getMyPublicKey(){return this.myPublicKey}getOtherPublicKey(){return this.otherPublicKey}setOtherPublicKey(e){V.KeyExchange("[KeyExchange: setOtherPubKey()]",e),this.otherPublicKey=e}encryptMessage(e){if(!this.otherPublicKey)throw new Error("encryptMessage: Keys not exchanged - missing otherPubKey");return this.myECIES.encrypt(e,this.otherPublicKey)}decryptMessage(e){if(!this.otherPublicKey)throw new Error("decryptMessage: Keys not exchanged - missing otherPubKey");return this.myECIES.decrypt(e)}getKeyInfo(){return{ecies:Object.assign(Object.assign({},this.myECIES.getKeyInfo()),{otherPubKey:this.otherPublicKey}),step:this.step,keysExchanged:this.areKeysExchanged()}}toString(){const e={keyInfo:this.getKeyInfo(),keysExchanged:this.keysExchanged,step:this.step};return JSON.stringify(e)}}(function(t){t.TERMINATE="terminate",t.ANSWER="answer",t.OFFER="offer",t.CANDIDATE="candidate",t.JSONRPC="jsonrpc",t.WALLET_INFO="wallet_info",t.WALLET_INIT="wallet_init",t.ORIGINATOR_INFO="originator_info",t.PAUSE="pause",t.OTP="otp",t.AUTHORIZED="authorized",t.PING="ping",t.READY="ready"})(xe||(xe={})),function(t){t.REQUEST="sdk_connect_request_started",t.REQUEST_MOBILE="sdk_connect_request_started_mobile",t.RECONNECT="sdk_reconnect_request_started",t.CONNECTED="sdk_connection_established",t.CONNECTED_MOBILE="sdk_connection_established_mobile",t.AUTHORIZED="sdk_connection_authorized",t.REJECTED="sdk_connection_rejected",t.TERMINATED="sdk_connection_terminated",t.DISCONNECTED="sdk_disconnected",t.SDK_USE_EXTENSION="sdk_use_extension",t.SDK_RPC_REQUEST="sdk_rpc_request",t.SDK_RPC_REQUEST_RECEIVED="sdk_rpc_request_received",t.SDK_RPC_REQUEST_DONE="sdk_rpc_request_done",t.SDK_EXTENSION_UTILIZED="sdk_extension_utilized",t.SDK_USE_INAPP_BROWSER="sdk_use_inapp_browser"}(Te||(Te={}));const Si=(t,e,n)=>X(void 0,void 0,void 0,function*(){var r,i,o,s,c,a;const{remote:l,state:u}=t,{channelId:d,isOriginator:h}=u;if(e==="error_terminated")return V.SocketService(`handleJoinChannelResults: Channel ${d} terminated`),void t.emit(te.TERMINATE);if(!n)return void V.SocketService(`handleJoinChannelResults: No result for channel ${d}`);const{persistence:f,walletKey:m,rejected:g}=n;if(V.SocketService(`handleJoinChannelResults: Channel ${d} persistence=${f} walletKey=${m} rejected=${g}`),g)return V.SocketService(`handleJoinChannelResults: Channel ${d} rejected`),yield t.remote.disconnect({terminate:!0}),t.remote.emit(te.REJECTED,{channelId:d}),void t.remote.emitServiceStatusEvent();if(m&&!(!((r=l.state.channelConfig)===null||r===void 0)&&r.otherKey)){t.getKeyExchange().setOtherPublicKey(m),(i=t.state.keyExchange)===null||i===void 0||i.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(te.AUTHORIZED);const{communicationLayer:w,storageManager:p}=l.state,S=Object.assign(Object.assign({},l.state.channelConfig),{channelId:(o=l.state.channelId)!==null&&o!==void 0?o:"",validUntil:Date.now()+ir,localKey:w==null?void 0:w.getKeyInfo().ecies.private,otherKey:m});t.sendMessage({type:_e.KEY_HANDSHAKE_ACK}).catch(C=>{}),(s=t.state.socket)===null||s===void 0||s.emit(xe.PING,{id:d,clientType:h?"dapp":"wallet",context:"on_channel_reconnect",message:""}),yield p==null?void 0:p.persistChannelConfig(S),l.emitServiceStatusEvent(),l.setConnectionStatus(je.LINKED)}f&&(t.emit(te.CHANNEL_PERSISTENCE),(c=t.state.keyExchange)===null||c===void 0||c.setKeysExchanged(!0),l.state.ready=!0,l.state.authorized=!0,l.emit(te.AUTHORIZED),Jt(Object.assign(Object.assign({id:d??"",event:h?Te.CONNECTED:Te.CONNECTED_MOBILE},t.remote.state.originatorInfo),{sdkVersion:t.remote.state.sdkVersion,commLayer:t.state.communicationLayerPreference,commLayerVersion:wn.version,walletVersion:(a=t.remote.state.walletInfo)===null||a===void 0?void 0:a.version}),u.communicationServerUrl).catch(w=>{}))}),er=t=>new Promise(e=>{setTimeout(e,t)}),Zc=(t,e,...n)=>X(void 0,[t,e,...n],void 0,function*(r,i,o=200){let s;const c=Date.now();let a=!1;for(;!a;){if(a=Date.now()-c>3e5,s=i[r],s.elapsedTime!==void 0)return s;yield er(o)}throw new Error(`RPC ${r} timed out`)}),Bs=t=>X(void 0,void 0,void 0,function*(){const{state:e}=t,{socket:n,channelId:r,context:i,isOriginator:o,isReconnecting:s}=e;if(s)return V.SocketService("[SocketService: reconnectSocket()] Reconnection already in progress, skipping",t),!1;if(!n)return V.SocketService("[SocketService: reconnectSocket()] socket is not defined",t),!1;if(!r)return!1;const{connected:c}=n;e.isReconnecting=!0,e.reconnectionAttempts=0,V.SocketService(`[SocketService: reconnectSocket()] connected=${c} trying to reconnect after socketio disconnection`,t);try{for(;3>e.reconnectionAttempts;){if(V.SocketService(`[SocketService: reconnectSocket()] Attempt ${e.reconnectionAttempts+1} of 3`,t),yield er(200),n.connected)return V.SocketService("Socket already connected --- ping to retrieve messages"),n.emit(xe.PING,{id:r,clientType:o?"dapp":"wallet",context:"on_channel_config",message:""}),!0;e.resumed=!0,n.connect(),t.emit(te.SOCKET_RECONNECT);try{if(yield new Promise((a,l)=>{n.emit(te.JOIN_CHANNEL,{channelId:r,context:`${i}connect_again`,clientType:o?"dapp":"wallet"},(u,d)=>X(void 0,void 0,void 0,function*(){try{yield Si(t,u,d),a()}catch(h){l(h)}}))}),yield er(100),n.connected)return V.SocketService(`Reconnection successful on attempt ${e.reconnectionAttempts+1}`),!0}catch(a){V.SocketService(`Error during reconnection attempt ${e.reconnectionAttempts+1}:`,a)}e.reconnectionAttempts+=1,3>e.reconnectionAttempts&&(yield er(200))}return V.SocketService("Failed to reconnect after 3 attempts"),!1}finally{e.isReconnecting=!1,e.reconnectionAttempts=0}});function sh(t,e){return X(this,void 0,void 0,function*(){var n;const r=(n=t.state.keyExchange)===null||n===void 0?void 0:n.encryptMessage(JSON.stringify(e)),i={id:t.state.channelId,context:t.state.context,clientType:t.state.isOriginator?"dapp":"wallet",message:r,plaintext:t.state.hasPlaintext?JSON.stringify(e):void 0};return V.SocketService(`[SocketService: encryptAndSendMessage()] context=${t.state.context}`,i),e.type===xe.TERMINATE&&(t.state.manualDisconnect=!0),new Promise((o,s)=>{var c;(c=t.state.socket)===null||c===void 0||c.emit(te.MESSAGE,i,(a,l)=>{var u;a&&(V.SocketService(`[SocketService: encryptAndSendMessage()] error=${a}`),s(a)),V.SocketService("[encryptAndSendMessage] response",l),o((u=l==null?void 0:l.success)!==null&&u!==void 0&&u)})})})}var Zn;(function(t){t.RPC_CHECK="rpcCheck",t.SKIPPED_RPC="skippedRpc"})(Zn||(Zn={}));const ah=["eth_sendTransaction","eth_signTypedData","eth_signTransaction","personal_sign","wallet_requestPermissions","wallet_switchEthereumChain","eth_signTypedData_v3","eth_signTypedData_v4","metamask_connectSign","metamask_connectWith","metamask_batch"].map(t=>t.toLowerCase()),qp=[{event:te.CLIENTS_CONNECTED,handler:function(t,e){return n=>X(this,void 0,void 0,function*(){var r,i,o,s,c,a,l,u,d,h,f;const m=(i=(r=t.remote.state.channelConfig)===null||r===void 0?void 0:r.relayPersistence)!==null&&i!==void 0&&i;if(V.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on 'clients_connected-${e}' relayPersistence=${m} resumed=${t.state.resumed} clientsPaused=${t.state.clientsPaused} keysExchanged=${(o=t.state.keyExchange)===null||o===void 0?void 0:o.areKeysExchanged()} isOriginator=${t.state.isOriginator}`),t.emit(te.CLIENTS_CONNECTED,{isOriginator:t.state.isOriginator,keysExchanged:(s=t.state.keyExchange)===null||s===void 0?void 0:s.areKeysExchanged(),context:t.state.context}),t.state.resumed)t.state.isOriginator||(V.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} 'clients_connected' / keysExchanged=${(c=t.state.keyExchange)===null||c===void 0?void 0:c.areKeysExchanged()} -- backward compatibility`),(a=t.state.keyExchange)===null||a===void 0||a.start({isOriginator:(l=t.state.isOriginator)!==null&&l!==void 0&&l})),t.state.resumed=!1;else if(t.state.clientsPaused)V.SocketService("[SocketService: handleClientsConnected()] 'clients_connected' skip sending originatorInfo on pause");else if(!t.state.isOriginator){const g=!m;V.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on 'clients_connected' / keysExchanged=${(u=t.state.keyExchange)===null||u===void 0?void 0:u.areKeysExchanged()} -- force=${g} -- backward compatibility`),V.SocketService(`[SocketService: handleClientsConnected()] context=${t.state.context} on 'clients_connected' / keysExchanged=${(d=t.state.keyExchange)===null||d===void 0?void 0:d.areKeysExchanged()} -- force=${g} -- backward compatibility`),(h=t.state.keyExchange)===null||h===void 0||h.start({isOriginator:(f=t.state.isOriginator)!==null&&f!==void 0&&f,force:g})}t.state.clientsConnected=!0,t.state.clientsPaused=!1})}},{event:te.CHANNEL_CREATED,handler:function(t,e){return n=>{V.SocketService(`[SocketService: handleChannelCreated()] context=${t.state.context} on 'channel_created-${e}'`,n),t.emit(te.CHANNEL_CREATED,n)}}},{event:te.CLIENTS_DISCONNECTED,handler:function(t,e){return()=>{var n;t.state.clientsConnected=!1,V.SocketService(`[SocketService: handlesClientsDisconnected()] context=${t.state.context} on 'clients_disconnected-${e}'`),t.remote.state.relayPersistence?V.SocketService(`[SocketService: handlesClientsDisconnected()] context=${t.state.context} on 'clients_disconnected-${e}' - relayPersistence enabled, skipping key exchange cleanup.`):(t.state.isOriginator&&!t.state.clientsPaused&&((n=t.state.keyExchange)===null||n===void 0||n.clean()),t.emit(te.CLIENTS_DISCONNECTED,e))}}},{event:te.CONFIG,handler:function(t,e){return n=>X(this,void 0,void 0,function*(){var r,i,o;V.SocketService(`[SocketService: handleChannelConfig()] update relayPersistence on 'config-${e}'`,n);const{persistence:s,walletKey:c}=n;t.state.isOriginator&&t.remote.state.channelConfig?(n.walletKey&&!t.remote.state.channelConfig.otherKey&&(V.SocketService(`Setting wallet key ${c}`),t.remote.state.channelConfig.otherKey=c,t.getKeyExchange().setOtherPublicKey(n.walletKey),(r=t.state.keyExchange)===null||r===void 0||r.setKeysExchanged(!0),yield t.remote.sendMessage({type:_e.KEY_HANDSHAKE_ACK}),yield t.remote.sendMessage({type:xe.PING}),yield(i=t.remote.state.storageManager)===null||i===void 0?void 0:i.persistChannelConfig(t.remote.state.channelConfig)),s!==!0||t.remote.state.channelConfig.relayPersistence||(V.SocketService(`Setting relay persistence ${s}`),t.remote.state.channelConfig.relayPersistence=s,t.remote.state.relayPersistence=!0,t.remote.emit(te.CHANNEL_PERSISTENCE),t.remote.state.authorized=!0,t.remote.state.ready=!0,t.remote.emit(te.AUTHORIZED),yield(o=t.remote.state.storageManager)===null||o===void 0?void 0:o.persistChannelConfig(t.remote.state.channelConfig))):t.state.isOriginator||n.persistence&&(t.remote.state.relayPersistence=!0,t.remote.emit(te.CHANNEL_PERSISTENCE))})}},{event:te.MESSAGE,handler:function(t,e){return n=>{var r,i,o,s,c,a,l,u,d,h,f,m,g,w,p,S,C,O;const{ackId:N,message:U,error:W}=n,q=(r=t.remote.state.relayPersistence)!==null&&r!==void 0&&r;if(V.SocketService(`[SocketService handleMessage()] relayPersistence=${q} context=${t.state.context} on 'message' ${e} keysExchanged=${(i=t.state.keyExchange)===null||i===void 0?void 0:i.areKeysExchanged()}`,n),W)throw V.SocketService(` + [SocketService handleMessage()] context=${t.state.context}::on 'message' error=${W}`),new Error(W);const F=typeof U=="string";if(!F&&(U==null?void 0:U.type)===_e.KEY_HANDSHAKE_START)return q?void 0:(V.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on 'message' received HANDSHAKE_START isOriginator=${t.state.isOriginator}`,U),void((o=t.state.keyExchange)===null||o===void 0||o.start({isOriginator:(s=t.state.isOriginator)!==null&&s!==void 0&&s,force:!0})));if(!F&&(!((c=U==null?void 0:U.type)===null||c===void 0)&&c.startsWith("key_handshake")))return q?void 0:(V.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on 'message' emit KEY_EXCHANGE`,U),void t.emit(Gi.KEY_EXCHANGE,{message:U,context:t.state.context}));if(F&&!(!((a=t.state.keyExchange)===null||a===void 0)&&a.areKeysExchanged())){let j=!1;try{V.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on 'message' trying to decrypt message`),(l=t.state.keyExchange)===null||l===void 0||l.decryptMessage(U),j=!0}catch(B){V.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on 'message' error`,B)}if(!j)return t.state.isOriginator?(d=t.state.keyExchange)===null||d===void 0||d.start({isOriginator:(h=t.state.isOriginator)!==null&&h!==void 0&&h}):t.sendMessage({type:_e.KEY_HANDSHAKE_START}).catch(B=>{}),void V.SocketService(`Message ignored because invalid key exchange status. step=${(f=t.state.keyExchange)===null||f===void 0?void 0:f.getKeyInfo().step}`,(m=t.state.keyExchange)===null||m===void 0?void 0:m.getKeyInfo(),U);V.SocketService("Invalid key exchange status detected --- updating it."),(u=t.state.keyExchange)===null||u===void 0||u.setKeysExchanged(!0)}else if(!F&&(U!=null&&U.type))return void t.emit(te.MESSAGE,U);if(!F)return void t.emit(te.MESSAGE,U);const K=(g=t.state.keyExchange)===null||g===void 0?void 0:g.decryptMessage(U),Y=JSON.parse(K??"{}");if(N&&(N==null?void 0:N.length)>0&&(V.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on 'message' ackid=${N} channelId=${e}`),(w=t.state.socket)===null||w===void 0||w.emit(te.MESSAGE_ACK,{ackId:N,channelId:e,clientType:t.state.isOriginator?"dapp":"wallet"})),t.state.clientsPaused=(Y==null?void 0:Y.type)===xe.PAUSE,t.state.isOriginator&&Y.data){const j=Y.data,B=t.state.rpcMethodTracker[j.id];if(B){const R=Date.now()-B.timestamp;V.SocketService(`[SocketService handleMessage()] context=${t.state.context}::on 'message' received answer for id=${j.id} method=${B.method} responseTime=${R}`,Y),t.remote.state.analytics&&ah.includes(B.method.toLowerCase())&&Jt(Object.assign(Object.assign({id:(p=t.remote.state.channelId)!==null&&p!==void 0?p:"",event:Te.SDK_RPC_REQUEST_DONE,sdkVersion:t.remote.state.sdkVersion,commLayerVersion:wn.version},t.remote.state.originatorInfo),{walletVersion:(S=t.remote.state.walletInfo)===null||S===void 0?void 0:S.version,params:{method:B.method,from:"mobile"}}),t.remote.state.communicationServerUrl).catch(P=>{});const _=Object.assign(Object.assign({},B),{result:j.result,error:j.error?{code:(C=j.error)===null||C===void 0?void 0:C.code,message:(O=j.error)===null||O===void 0?void 0:O.message}:void 0,elapsedTime:R});t.state.rpcMethodTracker[j.id]=_,t.emit(te.RPC_UPDATE,_)}}t.emit(te.MESSAGE,{message:Y})}}},{event:te.REJECTED,handler:function(t,e){return n=>X(this,void 0,void 0,function*(){var r;t.state.isOriginator&&!t.remote.state.ready?(V.SocketService(`[SocketService: handleChannelRejected()] context=${t.state.context} channelId=${e} isOriginator=${t.state.isOriginator} ready=${t.remote.state.ready}`,t.remote.state.originatorInfo),Jt(Object.assign(Object.assign({id:e,event:Te.REJECTED},t.remote.state.originatorInfo),{sdkVersion:t.remote.state.sdkVersion,commLayer:t.state.communicationLayerPreference,commLayerVersion:wn.version,walletVersion:(r=t.remote.state.walletInfo)===null||r===void 0?void 0:r.version}),t.remote.state.communicationServerUrl).catch(i=>{}),yield t.remote.disconnect({terminate:!0}),t.remote.emit(te.REJECTED,{channelId:e}),t.remote.setConnectionStatus(je.DISCONNECTED)):V.SocketService(`[SocketService: handleChannelRejected()] SKIP -- channelId=${e} isOriginator=${t.state.isOriginator} ready=${t.remote.state.ready}`)})}},{event:"clients_waiting_to_join",handler:function(t,e){return n=>{V.SocketService(`[SocketService: handleClientsWaitingToJoin()] context=${t.state.context} on 'clients_waiting_to_join-${e}'`,n),t.emit(te.CLIENTS_WAITING,n)}}}],Vp=[{event:te.KEY_INFO,handler:function(t){return e=>{V.SocketService("[SocketService: handleKeyInfo()] on 'KEY_INFO'",e),t.emit(te.KEY_INFO,e)}}},{event:te.KEYS_EXCHANGED,handler:function(t){return()=>{var e,n,r;V.SocketService(`[SocketService: handleKeysExchanged()] on 'keys_exchanged' keyschanged=${(e=t.state.keyExchange)===null||e===void 0?void 0:e.areKeysExchanged()}`);const{channelConfig:i}=t.remote.state;if(i){const s=t.getKeyExchange().getKeyInfo().ecies;i.localKey=s.private,i.otherKey=s.otherPubKey,t.remote.state.channelConfig=i,(n=t.remote.state.storageManager)===null||n===void 0||n.persistChannelConfig(i).catch(c=>{})}t.emit(te.KEYS_EXCHANGED,{keysExchanged:(r=t.state.keyExchange)===null||r===void 0?void 0:r.areKeysExchanged(),isOriginator:t.state.isOriginator});const o={keyInfo:t.getKeyInfo()};t.emit(te.SERVICE_STATUS,o)}}}];function Jc(t,e){V.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} setting socket listeners for channel ${e}...`);const{socket:n}=t.state,{keyExchange:r}=t.state;n&&t.state.isOriginator&&(t.state.debug&&(n==null||n.io.on("error",i=>{V.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=error`,i)}),n==null||n.io.on("reconnect",i=>{V.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=reconnect`,i),Bs(t).catch(o=>{})}),n==null||n.io.on("reconnect_error",i=>{V.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=reconnect_error`,i)}),n==null||n.io.on("reconnect_failed",()=>{V.SocketService(`[SocketService: setupChannelListener()] context=${t.state.context} socket event=reconnect_failed`)})),n==null||n.on("disconnect",i=>(V.SocketService(`[SocketService: setupChannelListener()] on 'disconnect' -- MetaMaskSDK socket disconnected '${i}' begin recovery...`),function(o){return s=>{V.SocketService(`[SocketService: handleDisconnect()] on 'disconnect' manualDisconnect=${o.state.manualDisconnect}`,s),o.state.manualDisconnect||(o.emit(te.SOCKET_DISCONNECTED),Bs(o).catch(c=>{}))}}(t)(i)))),qp.forEach(({event:i,handler:o})=>{n==null||n.on(`${i}-${e}`,o(t,e))}),Vp.forEach(({event:i,handler:o})=>{r==null||r.on(i,o(t))}),t.state.setupChannelListeners=!0}class Wp extends ho.EventEmitter2{constructor(e){super(),this.state={clientsConnected:!1,clientsPaused:!1,manualDisconnect:!1,lastRpcId:void 0,rpcMethodTracker:{},hasPlaintext:!1,communicationServerUrl:"",focusListenerAdded:!1,removeFocusListener:void 0,isReconnecting:!1,reconnectionAttempts:0},this.options=e;const{reconnect:n,communicationLayerPreference:r,communicationServerUrl:i,context:o,remote:s,logging:c}=e;this.state.resumed=n,this.state.context=o,this.state.isOriginator=s.state.isOriginator,this.state.communicationLayerPreference=r,this.state.debug=(c==null?void 0:c.serviceLayer)===!0,this.remote=s,(c==null?void 0:c.serviceLayer)===!0&&Ge.enable("SocketService:Layer"),this.state.communicationServerUrl=i,this.state.hasPlaintext=this.state.communicationServerUrl!==rr&&(c==null?void 0:c.plaintext)===!0,V.SocketService(`[SocketService: constructor()] Socket IO url: ${this.state.communicationServerUrl}`),this.initSocket()}initSocket(){var e;const{otherPublicKey:n,ecies:r,logging:i}=this.options,o={autoConnect:!1,transports:Up,withCredentials:!0},s=this.state.communicationServerUrl;V.SocketService(`[SocketService: initSocket()] Socket IO url: ${s}`),this.state.socket=wi(s,o),function(a){if(typeof window<"u"&&typeof document<"u"&&(V.SocketService(`[SocketService: setupSocketFocusListener()] hasFocus=${document.hasFocus()}`,a),!a.state.focusListenerAdded)){const l=()=>{V.SocketService("Document has focus --- reconnecting socket"),Bs(a).catch(u=>{})};window.addEventListener("focus",l),a.state.focusListenerAdded=!0,a.state.removeFocusListener=()=>{window.removeEventListener("focus",l),a.state.focusListenerAdded=!1}}}(this);const c={communicationLayer:this,otherPublicKey:n,sendPublicKey:!1,context:(e=this.state.context)!==null&&e!==void 0?e:"",ecies:r,logging:i};this.state.keyExchange=new zp(c)}resetKeys(){return V.SocketService("[SocketService: resetKeys()] Resetting keys."),void((e=this.state.keyExchange)===null||e===void 0||e.resetKeys());var e}createChannel(){return X(this,void 0,void 0,function*(){return function(e){return X(this,void 0,void 0,function*(){var n,r,i;if(V.SocketService(`[SocketService: createChannel()] context=${e.state.context}`),e.state.socket||e.initSocket(),(n=e.state.socket)===null||n===void 0?void 0:n.connected)throw new Error("socket already connected");(r=e.state.socket)===null||r===void 0||r.connect(),e.state.manualDisconnect=!1,e.state.isOriginator=!0;const o=ra();e.state.channelId=o,Jc(e,o),yield new Promise((c,a)=>{var l;(l=e.state.socket)===null||l===void 0||l.emit(te.JOIN_CHANNEL,{channelId:o,context:`${e.state.context}createChannel`,clientType:"dapp"},(u,d)=>X(this,void 0,void 0,function*(){try{yield Si(e,u,d),c()}catch(h){a(h)}}))});const s=(i=e.state.keyExchange)===null||i===void 0?void 0:i.getKeyInfo();return{channelId:o,pubKey:(s==null?void 0:s.ecies.public)||"",privKey:(s==null?void 0:s.ecies.private)||""}})}(this)})}connectToChannel({channelId:e,withKeyExchange:n=!1,authorized:r}){return function(i){return X(this,arguments,void 0,function*({options:o,instance:s}){const{channelId:c,authorized:a,withKeyExchange:l}=o,{state:u,remote:d}=s,{isOriginator:h=!1,socket:f,keyExchange:m}=u,{channelConfig:g}=d.state;if(f!=null&&f.connected)throw new Error("socket already connected");if(h&&(g!=null&&g.relayPersistence)){const{localKey:w,otherKey:p}=g;w&&p&&(m==null||m.setRelayPersistence({localKey:w,otherKey:p}))}return Object.assign(u,{manualDisconnect:!1,withKeyExchange:l,isOriginator:h,channelId:c}),f==null||f.connect(),Jc(s,c),!h&&a&&(m==null||m.setKeysExchanged(!0),Object.assign(d.state,{ready:!0,authorized:!0})),new Promise(w=>{var p;const S=(p=m==null?void 0:m.getKeyInfo())===null||p===void 0?void 0:p.ecies.public;f==null||f.emit(te.JOIN_CHANNEL,{channelId:c,context:`${u.context}_connectToChannel`,clientType:h?"dapp":"wallet",publicKey:a&&!h?S:void 0},(C,O)=>X(this,void 0,void 0,function*(){yield Si(s,C,O),w()}))})})}({options:{channelId:e,withKeyExchange:n,authorized:r},instance:this})}getKeyInfo(){return this.state.keyExchange.getKeyInfo()}keyCheck(){var e,n;(n=(e=this).state.socket)===null||n===void 0||n.emit(te.MESSAGE,{id:e.state.channelId,context:e.state.context,message:{type:_e.KEY_HANDSHAKE_CHECK,pubkey:e.getKeyInfo().ecies.otherPubKey}})}getKeyExchange(){return this.state.keyExchange}sendMessage(e){return X(this,void 0,void 0,function*(){return function(n,r){return X(this,void 0,void 0,function*(){var i,o,s;if(!n.state.channelId)throw V.SocketService("handleSendMessage: no channelId - Create a channel first"),new Error("Create a channel first");if(V.SocketService(`[SocketService: handleSendMessage()] context=${n.state.context} areKeysExchanged=${(i=n.state.keyExchange)===null||i===void 0?void 0:i.areKeysExchanged()}`,r),(o=r==null?void 0:r.type)===null||o===void 0?void 0:o.startsWith("key_handshake"))return function(a,l){var u;V.SocketService(`[SocketService: handleKeyHandshake()] context=${a.state.context}`,l),(u=a.state.socket)===null||u===void 0||u.emit(te.MESSAGE,{id:a.state.channelId,context:a.state.context,clientType:a.state.isOriginator?"dapp":"wallet",message:l})}(n,r),!0;(function(a,l){var u;if(!(!((u=a.state.keyExchange)===null||u===void 0)&&u.areKeysExchanged())&&!a.remote.state.relayPersistence)throw V.SocketService(`[SocketService: validateKeyExchange()] context=${a.state.context} ERROR keys not exchanged`,l),new Error("Keys not exchanged BBB")})(n,r),function(a,l){var u;const d=(u=l==null?void 0:l.method)!==null&&u!==void 0?u:"",h=l==null?void 0:l.id;a.state.isOriginator&&h&&(a.state.rpcMethodTracker[h]={id:h,timestamp:Date.now(),method:d},a.emit(te.RPC_UPDATE,a.state.rpcMethodTracker[h]))}(n,r);const c=yield sh(n,r);return n.remote.state.analytics&&n.remote.state.isOriginator&&r.method&&ah.includes(r.method.toLowerCase())&&Jt({id:(s=n.remote.state.channelId)!==null&&s!==void 0?s:"",event:Te.SDK_RPC_REQUEST,params:{method:r.method,from:"mobile"}},n.remote.state.communicationServerUrl).catch(a=>{}),function(a,l){return X(this,void 0,void 0,function*(){var u;const d=l==null?void 0:l.id,h=(u=l==null?void 0:l.method)!==null&&u!==void 0?u:"";if(a.state.isOriginator&&d)try{const f=Zc(d,a.state.rpcMethodTracker,200).then(w=>({type:Zn.RPC_CHECK,result:w})),m=(()=>X(this,void 0,void 0,function*(){const w=yield(S=>X(void 0,[S],void 0,function*({rpcId:C,instance:O}){for(;O.state.lastRpcId===C||O.state.lastRpcId===void 0;)yield er(200);return O.state.lastRpcId}))({instance:a,rpcId:d}),p=yield Zc(w,a.state.rpcMethodTracker,200);return{type:Zn.SKIPPED_RPC,result:p}}))(),g=yield Promise.race([f,m]);if(g.type===Zn.RPC_CHECK){const w=g.result;V.SocketService(`[SocketService:handleRpcReplies()] id=${l.id} ${h} ( ${w.elapsedTime} ms)`,w.result)}else{if(g.type!==Zn.SKIPPED_RPC)throw new Error(`Error handling RPC replies for ${d}`);{const w=Object.assign(Object.assign({},a.state.rpcMethodTracker[d]),{error:new Error("SDK_CONNECTION_ISSUE")});a.emit(te.RPC_UPDATE,w);const p={data:Object.assign(Object.assign({},w),{jsonrpc:"2.0"}),name:"metamask-provider"};a.emit(te.MESSAGE,{message:p})}}}catch(f){throw f}})}(n,r).catch(a=>{}),c})}(this,e)})}ping(){return function(e){return X(this,void 0,void 0,function*(){var n,r;V.SocketService(`[SocketService: ping()] context=${e.state.context} originator=${e.state.isOriginator} keysExchanged=${(n=e.state.keyExchange)===null||n===void 0?void 0:n.areKeysExchanged()}`),(r=e.state.socket)===null||r===void 0||r.emit(xe.PING,{id:e.state.channelId,context:"ping",clientType:e.remote.state.isOriginator?"dapp":"wallet",message:""})})}(this)}pause(){return function(e){return X(this,void 0,void 0,function*(){var n,r;V.SocketService(`[SocketService: pause()] context=${e.state.context}`),e.state.manualDisconnect=!0,!((n=e.state.keyExchange)===null||n===void 0)&&n.areKeysExchanged()&&(yield e.sendMessage({type:xe.PAUSE})),(r=e.state.socket)===null||r===void 0||r.disconnect()})}(this)}isConnected(){var e;return(e=this.state.socket)===null||e===void 0?void 0:e.connected}resume(){return function(e){return X(this,void 0,void 0,function*(){const{state:n,remote:r}=e,{socket:i,channelId:o,context:s,keyExchange:c,isOriginator:a}=n,{isOriginator:l}=r.state;if(V.SocketService(`[SocketService: resume()] channelId=${o} context=${s} connected=${i==null?void 0:i.connected} manualDisconnect=${n.manualDisconnect} resumed=${n.resumed} keysExchanged=${c==null?void 0:c.areKeysExchanged()}`),!o)throw V.SocketService("[SocketService: resume()] channelId is not defined"),new Error("ChannelId is not defined");i!=null&&i.connected?(V.SocketService("[SocketService: resume()] already connected."),i.emit(xe.PING,{id:o,clientType:l?"dapp":"wallet",context:"on_channel_config",message:""}),r.hasRelayPersistence()||c!=null&&c.areKeysExchanged()||(a?yield e.sendMessage({type:xe.READY}):c==null||c.start({isOriginator:!1}))):(i==null||i.connect(),V.SocketService(`[SocketService: resume()] after connecting socket --> connected=${i==null?void 0:i.connected}`),i==null||i.emit(te.JOIN_CHANNEL,{channelId:o,context:`${s}_resume`,clientType:l?"dapp":"wallet"},(u,d)=>X(this,void 0,void 0,function*(){try{yield Si(e,u,d)}catch{}}))),n.manualDisconnect=!1,n.resumed=!0})}(this)}getRPCMethodTracker(){return this.state.rpcMethodTracker}disconnect(e){return function(n,r){var i,o,s,c,a;V.SocketService(`[SocketService: disconnect()] context=${n.state.context}`,r),r!=null&&r.terminate&&((o=(i=n.state).removeFocusListener)===null||o===void 0||o.call(i),n.state.channelId=r.channelId,(s=n.state.socket)===null||s===void 0||s.removeAllListeners(),(c=n.state.keyExchange)===null||c===void 0||c.clean(),n.remote.state.ready=!1,n.state.socket=void 0,n.state.rpcMethodTracker={}),n.state.manualDisconnect=!0,(a=n.state.socket)===null||a===void 0||a.disconnect()}(this,e)}}var Ln,He,Xc;function Gp(t){return()=>X(this,void 0,void 0,function*(){var e,n,r;const{state:i}=t;if(i.authorized)return;yield(()=>X(this,void 0,void 0,function*(){for(;!i.walletInfo;)yield er(500)}))();const o="7.3".localeCompare(((e=i.walletInfo)===null||e===void 0?void 0:e.version)||"");if(V.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' version=${(n=i.walletInfo)===null||n===void 0?void 0:n.version} compareValue=${o}`),o!==1)return;const s=i.platformType===He.MobileWeb||i.platformType===He.ReactNative||i.platformType===He.MetaMaskMobileWebview;V.RemoteCommunication(`[RemoteCommunication: handleAuthorizedEvent()] HACK 'authorized' platform=${i.platformType} secure=${s} channel=${i.channelId} walletVersion=${(r=i.walletInfo)===null||r===void 0?void 0:r.version}`),s&&(i.authorized=!0,t.emit(te.AUTHORIZED))})}function Yp(t){return e=>{const{state:n}=t;V.RemoteCommunication(`[RemoteCommunication: handleChannelCreatedEvent()] context=${n.context} on 'channel_created' channelId=${e}`),t.emit(te.CHANNEL_CREATED,e)}}function Zp(t,e){return()=>{var n,r,i,o;const{state:s}=t;V.RemoteCommunication(`[RemoteCommunication: handleClientsConnectedEvent()] on 'clients_connected' channel=${s.channelId} keysExchanged=${(r=(n=s.communicationLayer)===null||n===void 0?void 0:n.getKeyInfo())===null||r===void 0?void 0:r.keysExchanged}`),s.analytics&&Jt(Object.assign(Object.assign({id:(i=s.channelId)!==null&&i!==void 0?i:"",event:s.reconnection?Te.RECONNECT:s.isOriginator?Te.REQUEST:Te.REQUEST_MOBILE},s.originatorInfo),{commLayer:e,sdkVersion:s.sdkVersion,walletVersion:(o=s.walletInfo)===null||o===void 0?void 0:o.version,commLayerVersion:wn.version}),s.communicationServerUrl).catch(c=>{}),s.clientsConnected=!0,s.originatorInfoSent=!1,t.emit(te.CLIENTS_CONNECTED)}}function Jp(t){return e=>{const{state:n}=t;V.RemoteCommunication(`[RemoteCommunication: handleClientsDisconnectedEvent()] context=${n.context} on 'clients_disconnected' channelId=${e}`),n.relayPersistence||(n.clientsConnected=!1,n.ready=!1,n.authorized=!1),t.emit(te.CLIENTS_DISCONNECTED,n.channelId),t.setConnectionStatus(je.DISCONNECTED)}}function Xp(t){return e=>{var n;const{state:r}=t;if(V.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] context=${r.context} on 'clients_waiting' numberUsers=${e} ready=${r.ready} autoStarted=${r.originatorConnectStarted}`),t.setConnectionStatus(je.WAITING),t.emit(te.CLIENTS_WAITING,e),r.originatorConnectStarted){V.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] on 'clients_waiting' watch autoStarted=${r.originatorConnectStarted} timeout`,r.autoConnectOptions);const i=((n=r.autoConnectOptions)===null||n===void 0?void 0:n.timeout)||3e3,o=setTimeout(()=>{V.RemoteCommunication(`[RemoteCommunication: handleClientsWaitingEvent()] setTimeout(${i}) terminate channelConfig`,r.autoConnectOptions),r.originatorConnectStarted=!1,r.ready||t.setConnectionStatus(je.TIMEOUT),clearTimeout(o)},i)}}}function Qp(t,e){return n=>{var r,i,o,s,c,a,l,u;const{state:d}=t;if(V.RemoteCommunication(`[RemoteCommunication: handleKeysExchangedEvent()] context=${d.context} on commLayer.'keys_exchanged' channel=${d.channelId}`,n),(i=(r=d.communicationLayer)===null||r===void 0?void 0:r.getKeyInfo())===null||i===void 0?void 0:i.keysExchanged){const h=Object.assign(Object.assign({},d.channelConfig),{channelId:(o=d.channelId)!==null&&o!==void 0?o:"",validUntil:((s=d.channelConfig)===null||s===void 0?void 0:s.validUntil)||ir,localKey:d.communicationLayer.getKeyInfo().ecies.private,otherKey:d.communicationLayer.getKeyInfo().ecies.otherPubKey});(c=d.storageManager)===null||c===void 0||c.persistChannelConfig(h).catch(f=>{}),t.setConnectionStatus(je.LINKED)}(function(h,f){var m,g,w,p,S,C,O,N;const{state:U}=h;V.RemoteCommunication(`[RemoteCommunication: setLastActiveDate()] channel=${U.channelId}`,f);const W=Object.assign(Object.assign({},U.channelConfig),{channelId:(m=U.channelId)!==null&&m!==void 0?m:"",validUntil:(w=(g=U.channelConfig)===null||g===void 0?void 0:g.validUntil)!==null&&w!==void 0?w:0,relayPersistence:U.relayPersistence,localKey:(S=(p=U.communicationLayer)===null||p===void 0?void 0:p.state.keyExchange)===null||S===void 0?void 0:S.getKeyInfo().ecies.private,otherKey:(O=(C=U.communicationLayer)===null||C===void 0?void 0:C.state.keyExchange)===null||O===void 0?void 0:O.getKeyInfo().ecies.otherPubKey,lastActive:f.getTime()});(N=U.storageManager)===null||N===void 0||N.persistChannelConfig(W)})(t,new Date),d.analytics&&d.channelId&&Jt(Object.assign(Object.assign({id:d.channelId,event:n.isOriginator?Te.CONNECTED:Te.CONNECTED_MOBILE},d.originatorInfo),{sdkVersion:d.sdkVersion,commLayer:e,commLayerVersion:wn.version,walletVersion:(a=d.walletInfo)===null||a===void 0?void 0:a.version}),d.communicationServerUrl).catch(h=>{}),d.isOriginator=n.isOriginator,n.isOriginator||((l=d.communicationLayer)===null||l===void 0||l.sendMessage({type:xe.READY}),d.ready=!0,d.paused=!1),n.isOriginator&&!d.originatorInfoSent&&((u=d.communicationLayer)===null||u===void 0||u.sendMessage({type:xe.ORIGINATOR_INFO,originatorInfo:d.originatorInfo,originator:d.originatorInfo}),d.originatorInfoSent=!0)}}function e1(t){return e=>{let n=e;e.message&&(n=n.message),function(r,i){const{state:o}=i;if(V.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] context=${o.context} on 'message' typeof=${typeof r}`,r),i.state.ready=!0,o.isOriginator||r.type!==xe.ORIGINATOR_INFO)if(o.isOriginator&&r.type===xe.WALLET_INFO)(function(s,c){const{state:a}=s;a.walletInfo=c.walletInfo,a.paused=!1})(i,r);else{if(o.isOriginator&&r.type===xe.WALLET_INIT)(function(s,c){return X(this,void 0,void 0,function*(){var a,l,u;const{state:d}=s;if(d.isOriginator){const h=c.data||{};if(typeof h=="object"&&"accounts"in h&&"chainId"in h&&"walletKey"in h)try{const{channelConfig:f}=s.state;if(V.RemoteCommunication("WALLET_INIT: channelConfig",JSON.stringify(f,null,2)),f){const m=h.accounts,g=h.chainId,w=h.walletKey;let p,S=!1;"deeplinkProtocol"in h&&(S=!!h.deeplinkProtocol,s.state.deeplinkProtocolAvailable=S),"walletVersion"in h&&(p=h.walletVersion),yield(a=s.state.storageManager)===null||a===void 0?void 0:a.persistChannelConfig(Object.assign(Object.assign({},f),{otherKey:w,walletVersion:p,deeplinkProtocolAvailable:S,relayPersistence:!0})),yield(l=s.state.storageManager)===null||l===void 0?void 0:l.persistAccounts(m),yield(u=s.state.storageManager)===null||u===void 0?void 0:u.persistChainId(g)}s.emit(te.WALLET_INIT,{accounts:h.accounts,chainId:h.chainId})}catch{}}})})(i,r).catch(s=>{V.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${s}`)});else if(r.type===xe.TERMINATE)(function(s){return X(this,void 0,void 0,function*(){const{state:c}=s;c.isOriginator&&(yield ch({options:{terminate:!0,sendMessage:!1},instance:s}),s.emit(te.TERMINATE))})})(i).catch(s=>{V.RemoteCommunication(`[RemoteCommunication: onCommunicationLayerMessage()] error=${s}`)});else if(r.type===xe.PAUSE)(function(s){const{state:c}=s;c.paused=!0,s.setConnectionStatus(je.PAUSED)})(i);else if(r.type===xe.READY&&o.isOriginator)(function(s){const{state:c}=s;s.setConnectionStatus(je.LINKED);const a=c.paused;c.paused=!1,s.emit(te.CLIENTS_READY,{isOriginator:c.isOriginator,walletInfo:c.walletInfo}),a&&(c.authorized=!0,s.emit(te.AUTHORIZED))})(i);else{if(r.type===xe.OTP&&o.isOriginator)return void function(s,c){var a;const{state:l}=s;s.emit(te.OTP,c.otpAnswer),"6.6".localeCompare(((a=l.walletInfo)===null||a===void 0?void 0:a.version)||"")===1&&s.emit(te.SDK_RPC_CALL,{method:Hp.ETH_REQUESTACCOUNTS,params:[]})}(i,r);r.type===xe.AUTHORIZED&&o.isOriginator&&function(s){const{state:c}=s;c.authorized=!0,s.emit(te.AUTHORIZED)}(i)}i.emit(te.MESSAGE,r)}else(function(s,c){var a;const{state:l}=s;(a=l.communicationLayer)===null||a===void 0||a.sendMessage({type:xe.WALLET_INFO,walletInfo:l.walletInfo}),l.originatorInfo=c.originatorInfo||c.originator,s.emit(te.CLIENTS_READY,{isOriginator:l.isOriginator,originatorInfo:l.originatorInfo}),l.paused=!1})(i,r)}(n,t)}}function t1(t){return()=>{const{state:e}=t;V.RemoteCommunication("[RemoteCommunication: handleSocketReconnectEvent()] on 'socket_reconnect' -- reset key exchange status / set ready to false"),e.ready=!1,e.authorized=!1,oh(e),t.emitServiceStatusEvent({context:"socket_reconnect"})}}function n1(t){return()=>{const{state:e}=t;V.RemoteCommunication("[RemoteCommunication: handleSocketDisconnectedEvent()] on 'socket_Disconnected' set ready to false"),e.ready=!1}}function r1(t){return()=>X(this,void 0,void 0,function*(){var e,n,r,i,o,s,c;const{state:a}=t;V.RemoteCommunication(`[RemoteCommunication: handleFullPersistenceEvent()] context=${a.context}`),t.state.ready=!0,t.state.clientsConnected=!0,t.state.authorized=!0,t.state.relayPersistence=!0,(e=t.state.communicationLayer)===null||e===void 0||e.getKeyExchange().setKeysExchanged(!0),t.emit(te.KEYS_EXCHANGED,{keysExchanged:!0,isOriginator:!0}),t.emit(te.AUTHORIZED),t.emit(te.CLIENTS_READY),t.emit(te.CHANNEL_PERSISTENCE);try{a.channelConfig=Object.assign(Object.assign({},a.channelConfig),{localKey:(n=a.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange().getKeyInfo().ecies.private,otherKey:(r=a.communicationLayer)===null||r===void 0?void 0:r.getKeyExchange().getOtherPublicKey(),channelId:(i=a.channelId)!==null&&i!==void 0?i:"",validUntil:(s=(o=a.channelConfig)===null||o===void 0?void 0:o.validUntil)!==null&&s!==void 0?s:ir,relayPersistence:!0}),yield(c=a.storageManager)===null||c===void 0?void 0:c.persistChannelConfig(a.channelConfig)}catch{}})}function Qc({communicationLayerPreference:t,otherPublicKey:e,reconnect:n,ecies:r,communicationServerUrl:i=rr,instance:o}){var s,c,a,l,u,d,h,f,m,g,w;const{state:p}=o;if(V.RemoteCommunication("[initCommunicationLayer()] ",JSON.stringify(p,null,2)),t!==Ln.SOCKET)throw new Error("Invalid communication protocol");p.communicationLayer=new Wp({communicationLayerPreference:t,otherPublicKey:e,reconnect:n,transports:p.transports,communicationServerUrl:i,context:p.context,ecies:r,logging:p.logging,remote:o});let S=typeof document<"u"&&document.URL||"",C=typeof document<"u"&&document.title||"";!((s=p.dappMetadata)===null||s===void 0)&&s.url&&(S=p.dappMetadata.url),!((c=p.dappMetadata)===null||c===void 0)&&c.name&&(C=p.dappMetadata.name);const O=(d=(l=(a=p.dappMetadata)===null||a===void 0?void 0:a.name)!==null&&l!==void 0?l:(u=p.dappMetadata)===null||u===void 0?void 0:u.url)!==null&&d!==void 0?d:"N/A",N=typeof window<"u"&&window.location!==void 0&&(h=window.location.hostname)!==null&&h!==void 0?h:O,U={url:S,title:C,source:(f=p.dappMetadata)===null||f===void 0?void 0:f.source,dappId:N,icon:((m=p.dappMetadata)===null||m===void 0?void 0:m.iconUrl)||((g=p.dappMetadata)===null||g===void 0?void 0:g.base64Icon),platform:p.platformType,apiVersion:wn.version,connector:(w=p.dappMetadata)===null||w===void 0?void 0:w.connector};p.originatorInfo=U;const W={[te.AUTHORIZED]:Gp(o),[te.MESSAGE]:e1(o),[te.CHANNEL_PERSISTENCE]:r1(o),[te.CLIENTS_CONNECTED]:Zp(o,t),[te.KEYS_EXCHANGED]:Qp(o,t),[te.SOCKET_DISCONNECTED]:n1(o),[te.SOCKET_RECONNECT]:t1(o),[te.CLIENTS_DISCONNECTED]:Jp(o),[te.KEY_INFO]:()=>{},[te.CHANNEL_CREATED]:Yp(o),[te.CLIENTS_WAITING]:Xp(o),[te.RPC_UPDATE]:q=>{o.emit(te.RPC_UPDATE,q)}};for(const[q,F]of Object.entries(W))try{p.communicationLayer.on(q,F)}catch{}}function ch(t){return X(this,arguments,void 0,function*({options:e,instance:n}){const{state:r}=n;return V.RemoteCommunication(`[RemoteCommunication: disconnect()] channel=${r.channelId}`,e),new Promise((i,o)=>{var s,c,a,l,u,d;e!=null&&e.terminate?(n.state.ready&&Jt({id:(s=n.state.channelId)!==null&&s!==void 0?s:"",event:Te.TERMINATED},n.state.communicationServerUrl).catch(h=>{}),r.ready=!1,r.paused=!1,(c=r.storageManager)===null||c===void 0||c.terminate((a=r.channelId)!==null&&a!==void 0?a:""),n.state.terminated=!0,e.sendMessage?!((l=r.communicationLayer)===null||l===void 0)&&l.getKeyInfo().keysExchanged&&n.state.communicationLayer&&sh(n.state.communicationLayer,{type:xe.TERMINATE}).then(()=>{i(!0)}).catch(h=>{o(h)}):i(!0),r.authorized=!1,r.relayPersistence=!1,r.channelId=ra(),e.channelId=r.channelId,r.channelConfig=void 0,r.originatorConnectStarted=!1,(u=r.communicationLayer)===null||u===void 0||u.disconnect(e),n.setConnectionStatus(je.TERMINATED)):((d=r.communicationLayer)===null||d===void 0||d.disconnect(e),n.setConnectionStatus(je.DISCONNECTED),i(!0))})})}(Ln||(Ln={})).SOCKET="socket",function(t){t.NonBrowser="nodejs",t.MetaMaskMobileWebview="in-app-browser",t.DesktopWeb="web-desktop",t.MobileWeb="web-mobile",t.ReactNative="react-native"}(He||(He={}));class i1 extends ho.EventEmitter2{constructor(e){super(),this.state={ready:!1,authorized:!1,isOriginator:!1,terminated:!1,protocolVersion:1,paused:!1,deeplinkProtocolAvailable:!1,platformType:"metamask-mobile",analytics:!1,reconnection:!1,originatorInfoSent:!1,communicationServerUrl:rr,context:"",persist:!1,clientsConnected:!1,sessionDuration:ir,originatorConnectStarted:!1,debug:!1,_connectionStatus:je.DISCONNECTED},this._options=e;const{platformType:n,communicationLayerPreference:r,otherPublicKey:i,reconnect:o,walletInfo:s,dappMetadata:c,protocolVersion:a,transports:l,context:u,relayPersistence:d,ecies:h,analytics:f=!1,storage:m,sdkVersion:g,communicationServerUrl:w=rr,logging:p,autoConnect:S={timeout:Fp}}=e;this.state.otherPublicKey=i,this.state.dappMetadata=c,this.state.walletInfo=s,this.state.transports=l,this.state.platformType=n,this.state.analytics=f,this.state.protocolVersion=a??1,this.state.isOriginator=!i,this.state.relayPersistence=d,this.state.communicationServerUrl=w,this.state.context=u,this.state.terminated=!1,this.state.sdkVersion=g,this.setMaxListeners(50),this.setConnectionStatus(je.DISCONNECTED),m!=null&&m.duration&&(this.state.sessionDuration=ir),this.state.storageOptions=m,this.state.autoConnectOptions=S,this.state.debug=(p==null?void 0:p.remoteLayer)===!0,(p==null?void 0:p.remoteLayer)===!0&&Ge.enable("RemoteCommunication:Layer"),(p==null?void 0:p.serviceLayer)===!0&&Ge.enable("SocketService:Layer"),(p==null?void 0:p.eciesLayer)===!0&&Ge.enable("ECIES:Layer"),(p==null?void 0:p.keyExchangeLayer)===!0&&Ge.enable("KeyExchange:Layer"),this.state.logging=p,m!=null&&m.storageManager&&(this.state.storageManager=m.storageManager),V.RemoteCommunication(`[RemoteCommunication: constructor()] protocolVersion=${a} relayPersistence=${d} isOriginator=${this.state.isOriginator} communicationLayerPreference=${r} otherPublicKey=${i} reconnect=${o}`),this.state.isOriginator||Qc({communicationLayerPreference:r,otherPublicKey:i,reconnect:o,ecies:h,communicationServerUrl:w,instance:this}),this.emitServiceStatusEvent({context:"constructor"})}initFromDappStorage(){return X(this,void 0,void 0,function*(){var e;if(this.state.storageManager){const n=yield this.state.storageManager.getPersistedChannelConfig({});n&&(this.state.channelConfig=n,this.state.channelId=n.channelId,this.state.deeplinkProtocolAvailable=(e=n.deeplinkProtocolAvailable)!==null&&e!==void 0&&e,n.relayPersistence&&(this.state.authorized=!0,this.state.ready=!0,this.setConnectionStatus(je.LINKED),yield this.connectToChannel({channelId:n.channelId})))}Qc({communicationLayerPreference:Ln.SOCKET,otherPublicKey:this.state.otherPublicKey,reconnect:this._options.reconnect,ecies:this._options.ecies,communicationServerUrl:this.state.communicationServerUrl,instance:this})})}originatorSessionConnect(){return X(this,void 0,void 0,function*(){return yield function(e){return X(this,void 0,void 0,function*(){var n;const{state:r}=e;if(!r.storageManager)return void V.RemoteCommunication("[RemoteCommunication: originatorSessionConnect()] no storage manager defined - skip");const i=yield r.storageManager.getPersistedChannelConfig({});if(V.RemoteCommunication(`[RemoteCommunication: originatorSessionConnect()] autoStarted=${r.originatorConnectStarted} channelConfig`,i),(n=r.communicationLayer)===null||n===void 0?void 0:n.isConnected())return V.RemoteCommunication("[RemoteCommunication: originatorSessionConnect()] socket already connected - skip"),i;if(i){if(i.validUntil>Date.now())return r.channelConfig=i,r.originatorConnectStarted=!0,r.channelId=i==null?void 0:i.channelId,r.reconnection=!0,i;V.RemoteCommunication("[RemoteCommunication: autoConnect()] Session has expired")}r.originatorConnectStarted=!1})}(this)})}generateChannelIdConnect(){return X(this,void 0,void 0,function*(){return function(e){return X(this,void 0,void 0,function*(){var n,r,i,o,s,c;if(!e.communicationLayer)throw new Error("communication layer not initialized");if(e.ready)throw new Error("Channel already connected");if(e.channelId&&(!((n=e.communicationLayer)===null||n===void 0)&&n.isConnected()))return e.channelConfig=Object.assign(Object.assign({},e.channelConfig),{channelId:e.channelId,validUntil:Date.now()+e.sessionDuration}),(r=e.storageManager)===null||r===void 0||r.persistChannelConfig(e.channelConfig),{channelId:e.channelId,privKey:(o=(i=e.communicationLayer)===null||i===void 0?void 0:i.getKeyInfo())===null||o===void 0?void 0:o.ecies.private,pubKey:(c=(s=e.communicationLayer)===null||s===void 0?void 0:s.getKeyInfo())===null||c===void 0?void 0:c.ecies.public};V.RemoteCommunication("[RemoteCommunication: generateChannelId()]");const a=yield e.communicationLayer.createChannel();V.RemoteCommunication("[RemoteCommunication: generateChannelId()] channel created",a);const l=Object.assign(Object.assign({},e.channelConfig),{channelId:a.channelId,localKey:a.privKey,validUntil:Date.now()+e.sessionDuration});return e.channelId=a.channelId,e.channelConfig=l,{channelId:e.channelId,pubKey:a.pubKey,privKey:a.privKey}})}(this.state)})}clean(){return oh(this.state)}connectToChannel({channelId:e,withKeyExchange:n,authorized:r}){return function(i){return X(this,arguments,void 0,function*({channelId:o,withKeyExchange:s,authorized:c,state:a}){var l,u,d;if(!vs(o))throw V.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${a.context} invalid channel channelId=${o}`),new Error(`Invalid channel ${o}`);if(V.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${a.context} channelId=${o} withKeyExchange=${s}`),(l=a.communicationLayer)===null||l===void 0?void 0:l.isConnected())return void V.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${a.context} already connected - interrupt connection.`);a.channelId=o,yield(u=a.communicationLayer)===null||u===void 0?void 0:u.connectToChannel({channelId:o,authorized:c,withKeyExchange:s});const h=Object.assign(Object.assign({},a.channelConfig),{channelId:o,validUntil:Date.now()+a.sessionDuration});a.channelConfig=h,(d=a.storageManager)===null||d===void 0||d.persistChannelConfig(h)})}({channelId:e,authorized:r,withKeyExchange:n,state:this.state})}sendMessage(e){return function(n,r){return X(this,void 0,void 0,function*(){var i,o;const{state:s}=n;V.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${s.context} paused=${s.paused} ready=${s.ready} relayPersistence=${s.relayPersistence} authorized=${s.authorized} socket=${(i=s.communicationLayer)===null||i===void 0?void 0:i.isConnected()} clientsConnected=${s.clientsConnected} status=${s._connectionStatus}`,r),s.relayPersistence||s.ready&&(!((o=s.communicationLayer)===null||o===void 0)&&o.isConnected())&&s.clientsConnected||(V.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${s.context} SKIP message waiting for MM mobile readiness.`),yield new Promise(c=>{n.once(te.CLIENTS_READY,c)}),V.RemoteCommunication(`[RemoteCommunication: sendMessage()] context=${s.context} AFTER SKIP / READY -- sending pending message`));try{return yield function(a,l){return X(this,void 0,void 0,function*(){return new Promise(u=>{var d;const{state:h}=a;V.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${h.context} ready=${h.ready} authorized=${h.authorized} method=${l.method}`),!h.isOriginator||h.authorized||h.relayPersistence?(d=h.communicationLayer)===null||d===void 0||d.sendMessage(l).then(f=>{u(f)}).catch(f=>{u(!1)}):a.once(te.AUTHORIZED,()=>{var f;V.RemoteCommunication(`[RemoteCommunication: handleAuthorization()] context=${h.context} AFTER SKIP / AUTHORIZED -- sending pending message`),(f=h.communicationLayer)===null||f===void 0||f.sendMessage(l).then(m=>{u(m)}).catch(m=>{u(!1)})})})})}(n,r)}catch(c){throw c}})}(this,e)}testStorage(){return X(this,void 0,void 0,function*(){return function(e){return X(this,void 0,void 0,function*(){var n;const r=yield(n=e.storageManager)===null||n===void 0?void 0:n.getPersistedChannelConfig();V.RemoteCommunication("[RemoteCommunication: testStorage()] res",r)})}(this.state)})}hasDeeplinkProtocol(){return this.state.deeplinkProtocolAvailable}getChannelConfig(){return this.state.channelConfig}isReady(){return this.state.ready}isConnected(){var e;return(e=this.state.communicationLayer)===null||e===void 0?void 0:e.isConnected()}isAuthorized(){return this.state.authorized}isPaused(){return this.state.paused}getCommunicationLayer(){return this.state.communicationLayer}ping(){return X(this,void 0,void 0,function*(){var e;V.RemoteCommunication(`[RemoteCommunication: ping()] channel=${this.state.channelId}`),yield(e=this.state.communicationLayer)===null||e===void 0?void 0:e.ping()})}testLogger(){V.RemoteCommunication(`testLogger() channel=${this.state.channelId}`),V.SocketService(`testLogger() channel=${this.state.channelId}`),V.Ecies(`testLogger() channel=${this.state.channelId}`),V.KeyExchange(`testLogger() channel=${this.state.channelId}`)}keyCheck(){var e;V.RemoteCommunication(`[RemoteCommunication: keyCheck()] channel=${this.state.channelId}`),(e=this.state.communicationLayer)===null||e===void 0||e.keyCheck()}setConnectionStatus(e){this.state._connectionStatus!==e&&(this.state._connectionStatus=e,this.emit(te.CONNECTION_STATUS,e),this.emitServiceStatusEvent({context:"setConnectionStatus"}))}emitServiceStatusEvent(e={}){this.emit(te.SERVICE_STATUS,this.getServiceStatus())}getConnectionStatus(){return this.state._connectionStatus}getServiceStatus(){return{originatorInfo:this.state.originatorInfo,keyInfo:this.getKeyInfo(),connectionStatus:this.state._connectionStatus,channelConfig:this.state.channelConfig,channelId:this.state.channelId}}getKeyInfo(){var e;return(e=this.state.communicationLayer)===null||e===void 0?void 0:e.getKeyInfo()}resetKeys(){var e;(e=this.state.communicationLayer)===null||e===void 0||e.resetKeys()}setOtherPublicKey(e){var n;const r=(n=this.state.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange();if(!r)throw new Error("KeyExchange is not initialized.");r.getOtherPublicKey()!==e&&r.setOtherPublicKey(e)}pause(){return X(this,void 0,void 0,function*(){var e;V.RemoteCommunication(`[RemoteCommunication: pause()] channel=${this.state.channelId}`),yield(e=this.state.communicationLayer)===null||e===void 0?void 0:e.pause(),this.setConnectionStatus(je.PAUSED)})}getVersion(){return wn.version}hasRelayPersistence(){var e;return(e=this.state.relayPersistence)!==null&&e!==void 0&&e}resume(){return X(this,void 0,void 0,function*(){return function(e){return X(this,void 0,void 0,function*(){var n;const{state:r}=e;V.RemoteCommunication(`[RemoteCommunication: resume()] channel=${r.channelId}`),yield(n=r.communicationLayer)===null||n===void 0?void 0:n.resume(),e.setConnectionStatus(je.LINKED)})}(this)})}encrypt(e){var n,r,i;const o=(n=this.state.communicationLayer)===null||n===void 0?void 0:n.getKeyExchange(),s=o==null?void 0:o.getOtherPublicKey();if(!s)throw new Error("KeyExchange not completed");return(i=(r=this.state.communicationLayer)===null||r===void 0?void 0:r.state.eciesInstance)===null||i===void 0?void 0:i.encrypt(e,s)}decrypt(e){var n,r,i;if(!(!((n=this.state.communicationLayer)===null||n===void 0)&&n.state.eciesInstance))throw new Error("ECIES instance is not initialized");return(i=(r=this.state.communicationLayer)===null||r===void 0?void 0:r.state.eciesInstance)===null||i===void 0?void 0:i.decrypt(e)}getChannelId(){return this.state.channelId}getRPCMethodTracker(){var e;return(e=this.state.communicationLayer)===null||e===void 0?void 0:e.getRPCMethodTracker()}reject({channelId:e}){return function(n){return X(this,arguments,void 0,function*({channelId:r,state:i}){var o,s,c;if(!vs(r))throw V.RemoteCommunication(`[RemoteCommunication: connectToChannel()] context=${i.context} invalid channel channelId=${r}`),new Error(`Invalid channel ${r}`);if(i.isOriginator)return void V.RemoteCommunication(`[RemoteCommunication: reject()] context=${i.context} isOriginator=${i.isOriginator} channelId=${r}`);const{socket:a}=(s=(o=i.communicationLayer)===null||o===void 0?void 0:o.state)!==null&&s!==void 0?s:{};a!=null&&a.connected||(V.RemoteCommunication(`[RemoteCommunication: reject()] context=${i.context} socket already connected`),a==null||a.connect()),Jt(Object.assign(Object.assign({id:r,event:Te.REJECTED},i.originatorInfo),{sdkVersion:i.sdkVersion,commLayerVersion:wn.version,walletVersion:(c=i.walletInfo)===null||c===void 0?void 0:c.version}),i.communicationServerUrl).catch(l=>{}),yield new Promise((l,u)=>{a==null||a.emit(te.REJECTED,{channelId:r},(d,h)=>{V.RemoteCommunication(`[RemoteCommunication: reject()] context=${i.context} socket=${a==null?void 0:a.id}`,{error:d,response:h}),d?u(d):l(h)})})})}({channelId:e,state:this.state})}disconnect(e){return X(this,void 0,void 0,function*(){return ch({options:e,instance:this})})}}(function(t){t.RENEW="renew",t.LINK="link"})(Xc||(Xc={}));var o1="ERC721",s1="ERC1155",Me={errors:{disconnected:()=>"MetaMask: Disconnected from chain. Attempting to connect.",permanentlyDisconnected:()=>"MetaMask: Disconnected from MetaMask background. Page reload required.",sendSiteMetadata:()=>"MetaMask: Failed to send site metadata. This is an internal error, please report this bug.",unsupportedSync:t=>`MetaMask: The MetaMask Ethereum provider does not support synchronous methods like ${t} without a callback parameter.`,invalidDuplexStream:()=>"Must provide a Node.js-style duplex stream.",invalidNetworkParams:()=>"MetaMask: Received invalid network parameters. Please report this bug.",invalidRequestArgs:()=>"Expected a single, non-array, object argument.",invalidRequestMethod:()=>"'args.method' must be a non-empty string.",invalidRequestParams:()=>"'args.params' must be an object or array if provided.",invalidLoggerObject:()=>"'args.logger' must be an object if provided.",invalidLoggerMethod:t=>`'args.logger' must include required method '${t}'.`},info:{connected:t=>`MetaMask: Connected to chain with ID "${t}".`},warnings:{chainIdDeprecation:`MetaMask: 'ethereum.chainId' is deprecated and may be removed in the future. Please use the 'eth_chainId' RPC method instead. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,networkVersionDeprecation:`MetaMask: 'ethereum.networkVersion' is deprecated and may be removed in the future. Please use the 'net_version' RPC method instead. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,selectedAddressDeprecation:`MetaMask: 'ethereum.selectedAddress' is deprecated and may be removed in the future. Please use the 'eth_accounts' RPC method instead. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/discussions/23`,enableDeprecation:`MetaMask: 'ethereum.enable()' is deprecated and may be removed in the future. Please use the 'eth_requestAccounts' RPC method instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1102`,sendDeprecation:`MetaMask: 'ethereum.send(...)' is deprecated and may be removed in the future. Please use 'ethereum.sendAsync(...)' or 'ethereum.request(...)' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193`,events:{close:`MetaMask: The event 'close' is deprecated and may be removed in the future. Please use 'disconnect' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#disconnect`,data:`MetaMask: The event 'data' is deprecated and will be removed in the future. Use 'message' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`,networkChanged:`MetaMask: The event 'networkChanged' is deprecated and may be removed in the future. Use 'chainChanged' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#chainchanged`,notification:`MetaMask: The event 'notification' is deprecated and may be removed in the future. Use 'message' instead. +For more information, see: https://eips.ethereum.org/EIPS/eip-1193#message`},rpc:{ethDecryptDeprecation:`MetaMask: The RPC method 'eth_decrypt' is deprecated and may be removed in the future. +For more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,ethGetEncryptionPublicKeyDeprecation:`MetaMask: The RPC method 'eth_getEncryptionPublicKey' is deprecated and may be removed in the future. +For more information, see: https://medium.com/metamask/metamask-api-method-deprecation-2b0564a84686`,walletWatchAssetNFTExperimental:`MetaMask: The RPC method 'wallet_watchAsset' is experimental for ERC721/ERC1155 assets and may change in the future. +For more information, see: https://github.com/MetaMask/metamask-improvement-proposals/blob/main/MIPs/mip-1.md and https://github.com/MetaMask/metamask-improvement-proposals/blob/main/PROCESS-GUIDE.md#proposal-lifecycle`},experimentalMethods:"MetaMask: 'ethereum._metamask' exposes non-standard, experimental methods. They may be removed or changed without warning."}};function a1(t){const e={ethDecryptDeprecation:!1,ethGetEncryptionPublicKeyDeprecation:!1,walletWatchAssetNFTExperimental:!1};return(n,r,i)=>{var o;e.ethDecryptDeprecation||n.method!=="eth_decrypt"?e.ethGetEncryptionPublicKeyDeprecation||n.method!=="eth_getEncryptionPublicKey"?!e.walletWatchAssetNFTExperimental&&n.method==="wallet_watchAsset"&&[o1,s1].includes(((o=n.params)==null?void 0:o.type)||"")&&(t.warn(Me.warnings.rpc.walletWatchAssetNFTExperimental),e.walletWatchAssetNFTExperimental=!0):(t.warn(Me.warnings.rpc.ethGetEncryptionPublicKeyDeprecation),e.ethGetEncryptionPublicKeyDeprecation=!0):(t.warn(Me.warnings.rpc.ethDecryptDeprecation),e.ethDecryptDeprecation=!0),i()}}var lh=4294967295,el=Math.floor(Math.random()*lh);function c1(){return(t,e,n,r)=>{const i=t.id,o=el=(el+1)%lh;t.id=o,e.id=o,n(s=>{t.id=i,e.id=i,s()})}}var Ca=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},mn=(t,e,n)=>(Ca(t,e,"read from private field"),n?n.call(t):e.get(t)),Et=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},hi=(t,e,n,r)=>(Ca(t,e,"write to private field"),e.set(t,n),n),qe=(t,e,n)=>(Ca(t,e,"access private method"),n),hn={invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},tl={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}};function nl(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}var Yi=(t,e)=>Object.hasOwnProperty.call(t,e);class l1 extends TypeError{constructor(e,n){let r;const{message:i,explanation:o,...s}=e,{path:c}=e,a=c.length===0?i:`At path: ${c.join(".")} -- ${i}`;super(o??a),o!=null&&(this.cause=a),Object.assign(this,s),this.name=this.constructor.name,this.failures=()=>r??(r=[e,...n()])}}function Zt(t){return typeof t=="object"&&t!=null}function $t(t){return typeof t=="symbol"?t.toString():typeof t=="string"?JSON.stringify(t):`${t}`}function u1(t,e,n,r){if(t===!0)return;t===!1?t={}:typeof t=="string"&&(t={message:t});const{path:i,branch:o}=e,{type:s}=n,{refinement:c,message:a=`Expected a value of type \`${s}\`${c?` with refinement \`${c}\``:""}, but received: \`${$t(r)}\``}=t;return{value:r,type:s,refinement:c,key:i[i.length-1],path:i,branch:o,...t,message:a}}function*rl(t,e,n,r){(function(i){return Zt(i)&&typeof i[Symbol.iterator]=="function"})(t)||(t=[t]);for(const i of t){const o=u1(i,e,n,r);o&&(yield o)}}function*_a(t,e,n={}){const{path:r=[],branch:i=[t],coerce:o=!1,mask:s=!1}=n,c={path:r,branch:i};if(o&&(t=e.coercer(t,c),s&&e.type!=="type"&&Zt(e.schema)&&Zt(t)&&!Array.isArray(t)))for(const l in t)e.schema[l]===void 0&&delete t[l];let a="valid";for(const l of e.validator(t,c))l.explanation=n.message,a="not_valid",yield[l,void 0];for(let[l,u,d]of e.entries(t,c)){const h=_a(u,d,{path:l===void 0?r:[...r,l],branch:l===void 0?i:[...i,u],coerce:o,mask:s,message:n.message});for(const f of h)f[0]?(a=f[0].refinement!=null?"not_refined":"not_valid",yield[f[0],void 0]):o&&(u=f[1],l===void 0?t=u:t instanceof Map?t.set(l,u):t instanceof Set?t.add(u):Zt(t)&&(u!==void 0||l in t)&&(t[l]=u))}if(a!=="not_valid")for(const l of e.refiner(t,c))l.explanation=n.message,a="not_refined",yield[l,void 0];a==="valid"&&(yield[void 0,t])}class St{constructor(e){const{type:n,schema:r,validator:i,refiner:o,coercer:s=a=>a,entries:c=function*(){}}=e;this.type=n,this.schema=r,this.entries=c,this.coercer=s,this.validator=i?(a,l)=>rl(i(a,l),l,this,a):()=>[],this.refiner=o?(a,l)=>rl(o(a,l),l,this,a):()=>[]}assert(e,n){return uh(e,this,n)}create(e,n){return dh(e,this,n)}is(e){return cr(e,this)}mask(e,n){return function(r,i,o){const s=Ir(r,i,{coerce:!0,mask:!0,message:o});if(s[0])throw s[0];return s[1]}(e,this,n)}validate(e,n={}){return Ir(e,this,n)}}function uh(t,e,n){const r=Ir(t,e,{message:n});if(r[0])throw r[0]}function dh(t,e,n){const r=Ir(t,e,{coerce:!0,message:n});if(r[0])throw r[0];return r[1]}function cr(t,e){return!Ir(t,e)[0]}function Ir(t,e,n={}){const r=_a(t,e,n),i=function(o){const{done:s,value:c}=o.next();return s?void 0:c}(r);return i[0]?[new l1(i[0],function*(){for(const s of r)s[0]&&(yield s[0])}),void 0]:[void 0,i[1]]}function En(t,e){return new St({type:t,schema:null,validator:e})}function il(t){let e;return new St({type:"lazy",schema:null,*entries(n,r){e??(e=t()),yield*e.entries(n,r)},validator:(n,r)=>(e??(e=t()),e.validator(n,r)),coercer:(n,r)=>(e??(e=t()),e.coercer(n,r)),refiner:(n,r)=>(e??(e=t()),e.refiner(n,r))})}function hh(t){return new St({type:"array",schema:t,*entries(e){if(t&&Array.isArray(e))for(const[n,r]of e.entries())yield[n,r,t]},coercer:e=>Array.isArray(e)?e.slice():e,validator:e=>Array.isArray(e)||`Expected an array value, but received: ${$t(e)}`})}function fh(t){const e=$t(t),n=typeof t;return new St({type:"literal",schema:n==="string"||n==="number"||n==="boolean"?t:null,validator:r=>r===t||`Expected the literal \`${e}\`, but received: ${$t(r)}`})}function ph(){return En("number",t=>typeof t=="number"&&!isNaN(t)||`Expected a number, but received: ${$t(t)}`)}function gh(t){const e=t?Object.keys(t):[],n=En("never",()=>!1);return new St({type:"object",schema:t||null,*entries(r){if(t&&Zt(r)){const i=new Set(Object.keys(r));for(const o of e)i.delete(o),yield[o,r[o],t[o]];for(const o of i)yield[o,r[o],n]}},validator:r=>Zt(r)||`Expected an object, but received: ${$t(r)}`,coercer:r=>Zt(r)?{...r}:r})}function ol(t){return new St({...t,validator:(e,n)=>e===void 0||t.validator(e,n),refiner:(e,n)=>e===void 0||t.refiner(e,n)})}function mh(t,e){return new St({type:"record",schema:null,*entries(n){if(Zt(n))for(const r in n){const i=n[r];yield[r,r,t],yield[r,i,e]}},validator:n=>Zt(n)||`Expected an object, but received: ${$t(n)}`})}function Cn(){return En("string",t=>typeof t=="string"||`Expected a string, but received: ${$t(t)}`)}function yo(t){const e=t.map(n=>n.type).join(" | ");return new St({type:"union",schema:null,coercer(n){for(const r of t){const[i,o]=r.validate(n,{coerce:!0});if(!i)return o}return n},validator(n,r){const i=[];for(const o of t){const[...s]=_a(n,o,r),[c]=s;if(!c[0])return[];for(const[a]of s)a&&i.push(a)}return[`Expected the value to satisfy a union of \`${e}\`, but received: ${$t(n)}`,...i]}})}function d1(t){return function(e){return function(n){return typeof n=="object"&&n!==null&&"message"in n}(e)&&typeof e.message=="string"?e.message:e==null?"":String(e)}(t).replace(/\.$/u,"")}function h1(t,e){var r,i;return n=t,typeof((i=(r=n==null?void 0:n.prototype)==null?void 0:r.constructor)==null?void 0:i.name)=="string"?new t({message:e}):t({message:e});var n}var f1=class extends Error{constructor(t){super(t.message),this.code="ERR_ASSERTION"}};function yh(){throw new Error("setTimeout has not been defined")}function vh(){throw new Error("clearTimeout has not been defined")}var sn=yh,an=vh;function bh(t){if(sn===setTimeout)return setTimeout(t,0);if((sn===yh||!sn)&&setTimeout)return sn=setTimeout,setTimeout(t,0);try{return sn(t,0)}catch{try{return sn.call(null,t,0)}catch{return sn.call(this,t,0)}}}typeof Ye.setTimeout=="function"&&(sn=setTimeout),typeof Ye.clearTimeout=="function"&&(an=clearTimeout);var Tn,Yt=[],tr=!1,ki=-1;function p1(){tr&&Tn&&(tr=!1,Tn.length?Yt=Tn.concat(Yt):ki=-1,Yt.length&&wh())}function wh(){if(!tr){var t=bh(p1);tr=!0;for(var e=Yt.length;e;){for(Tn=Yt,Yt=[];++ki1)for(var n=1;ngh(t);function sl({path:t,branch:e}){const n=t[t.length-1];return Yi(e[e.length-2],n)}function Zi(t){return new St({...t,type:`optional ${t.type}`,validator:(e,n)=>!sl(n)||t.validator(e,n),refiner:(e,n)=>!sl(n)||t.refiner(e,n)})}var fi,al,cl,Ji=yo([fh(null),En("boolean",t=>typeof t=="boolean"),En("finite number",t=>cr(t,ph())&&Number.isFinite(t)),Cn(),hh(il(()=>Ji)),mh(Cn(),il(()=>Ji))]),Br=(fi=Ji,al=En("any",()=>!0),cl=t=>(function(e,n,r="Assertion failed",i=f1){try{uh(e,n)}catch(o){throw h1(i,`${r}: ${d1(o)}.`)}}(t,Ji),JSON.parse(JSON.stringify(t,(e,n)=>{if(e!=="__proto__"&&e!=="constructor")return n}))),new St({...fi,coercer:(t,e)=>cr(t,al)?fi.coercer(cl(t,e),e):fi.coercer(t,e)}));function Ds(t){try{return function(e){dh(e,Br)}(t),!0}catch{return!1}}var _r=fh("2.0"),xi=function(t){return new St({...t,validator:(e,n)=>e===null||t.validator(e,n),refiner:(e,n)=>e===null||t.refiner(e,n)})}(yo([ph(),Cn()])),$s=Nr({code:En("integer",t=>typeof t=="number"&&!isNaN(t)&&Number.isInteger(t)||`Expected an integer, but received: ${$t(t)}`),message:Cn(),data:Zi(Br),stack:Zi(Cn())}),Ch=yo([mh(Cn(),Br),hh(Br)]),S1=Nr({id:xi,jsonrpc:_r,method:Cn(),params:Zi(Ch)}),k1=Nr({jsonrpc:_r,method:Cn(),params:Zi(Ch)});function ll(t){return cr(t,S1)}function ul(t){return cr(t,$s)}gh({id:xi,jsonrpc:_r,result:ol(En("unknown",()=>!0)),error:ol($s)}),yo([Nr({id:xi,jsonrpc:_r,result:Br}),Nr({id:xi,jsonrpc:_r,error:$s})]);var dl=hn.internal,x1="Unspecified error message. This is a bug, please report it.",A1={code:dl,message:_h(dl)},M1="Unspecified server error.";function _h(t,e=x1){if(function(n){return Number.isInteger(n)}(t)){const n=t.toString();if(Yi(tl,n))return tl[n].message;if(function(r){return r>=-32099&&r<=-32e3}(t))return M1}return e}function hl(t,{fallbackError:e=A1,shouldIncludeStack:n=!0}={}){if(!ul(e))throw new Error("Must provide fallback error with integer number code and string message.");const r=function(i,o){if(i&&typeof i=="object"&&"serialize"in i&&typeof i.serialize=="function")return i.serialize();if(ul(i))return i;const s=Sh(i);return{...o,data:{cause:s}}}(t,e);return n||delete r.stack,r}function Sh(t){return Array.isArray(t)?t.map(e=>Ds(e)?e:nl(e)?fl(e):null):nl(t)?fl(t):Ds(t)?t:null}function fl(t){return Object.getOwnPropertyNames(t).reduce((e,n)=>{const r=t[n];return Ds(r)&&(e[n]=r),e},{})}var kh=br;br.default=br,br.stable=pl,br.stableStringify=pl;var Xi="[...]",xh="[Circular]",Pn=[],Rn=[];function Ah(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function br(t,e,n,r){var i;r===void 0&&(r=Ah()),js(t,"",0,[],void 0,0,r);try{i=Rn.length===0?JSON.stringify(t,e,n):JSON.stringify(t,Mh(e),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Pn.length!==0;){var o=Pn.pop();o.length===4?Object.defineProperty(o[0],o[1],o[3]):o[0][o[1]]=o[2]}}return i}function nr(t,e,n,r){var i=Object.getOwnPropertyDescriptor(r,n);i.get!==void 0?i.configurable?(Object.defineProperty(r,n,{value:t}),Pn.push([r,n,e,i])):Rn.push([e,n,t]):(r[n]=t,Pn.push([r,n,e]))}function js(t,e,n,r,i,o,s){var c;if(o+=1,typeof t=="object"&&t!==null){for(c=0;cs.depthLimit||s.edgesLimit!==void 0&&n+1>s.edgesLimit)return void nr(Xi,t,e,i);if(r.push(t),Array.isArray(t))for(c=0;ce?1:0}function pl(t,e,n,r){r===void 0&&(r=Ah());var i,o=Ks(t,"",0,[],void 0,0,r)||t;try{i=Rn.length===0?JSON.stringify(o,e,n):JSON.stringify(o,Mh(e),n)}catch{return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;Pn.length!==0;){var s=Pn.pop();s.length===4?Object.defineProperty(s[0],s[1],s[3]):s[0][s[1]]=s[2]}}return i}function Ks(t,e,n,r,i,o,s){var c;if(o+=1,typeof t=="object"&&t!==null){for(c=0;cs.depthLimit||s.edgesLimit!==void 0&&n+1>s.edgesLimit)return void nr(Xi,t,e,i);if(r.push(t),Array.isArray(t))for(c=0;c0)for(var r=0;rL1(hn.invalidRequest,t);function L1(t,e){const[n,r]=function(i){if(i){if(typeof i=="string")return[i];if(typeof i=="object"&&!Array.isArray(i)){const{message:o,data:s}=i;if(o&&typeof o!="string")throw new Error("Must specify string message.");return[o??void 0,s]}}return[]}(e);return new Ft(t,n??_h(t),r)}var Th={};function cn(){}function Ce(){Ce.init.call(this)}function Rh(t){return t._maxListeners===void 0?Ce.defaultMaxListeners:t._maxListeners}function gl(t,e,n,r){var i,o,s;if(typeof n!="function")throw new TypeError('"listener" argument must be a function');if((o=t._events)?(o.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),o=t._events),s=o[e]):(o=t._events=new cn,t._eventsCount=0),s){if(typeof s=="function"?s=o[e]=r?[n,s]:[s,n]:r?s.unshift(n):s.push(n),!s.warned&&(i=Rh(t))&&i>0&&s.length>i){s.warned=!0;var c=new Error("Possible EventEmitter memory leak detected. "+s.length+" "+e+" listeners added. Use emitter.setMaxListeners() to increase limit");c.name="MaxListenersExceededWarning",c.emitter=t,c.type=e,c.count=s.length,function(a){typeof console.warn=="function"?console.warn(a):console.log(a)}(c)}}else s=o[e]=n,++t._eventsCount;return t}function ml(t,e,n){var r=!1;function i(){t.removeListener(e,i),r||(r=!0,n.apply(t,arguments))}return i.listener=n,i}function yl(t){var e=this._events;if(e){var n=e[t];if(typeof n=="function")return 1;if(n)return n.length}return 0}function gr(t,e){for(var n=new Array(e);e--;)n[e]=t[e];return n}cn.prototype=Object.create(null),Ce.EventEmitter=Ce,Ce.usingDomains=!1,Ce.prototype.domain=void 0,Ce.prototype._events=void 0,Ce.prototype._maxListeners=void 0,Ce.defaultMaxListeners=10,Ce.init=function(){this.domain=null,Ce.usingDomains&&(void 0).active,this._events&&this._events!==Object.getPrototypeOf(this)._events||(this._events=new cn,this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},Ce.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||isNaN(t))throw new TypeError('"n" argument must be a positive number');return this._maxListeners=t,this},Ce.prototype.getMaxListeners=function(){return Rh(this)},Ce.prototype.emit=function(t){var e,n,r,i,o,s,c,a=t==="error";if(s=this._events)a=a&&s.error==null;else if(!a)return!1;if(c=this.domain,a){if(e=arguments[1],!c){if(e instanceof Error)throw e;var l=new Error('Uncaught, unspecified "error" event. ('+e+")");throw l.context=e,l}return e||(e=new Error('Uncaught, unspecified "error" event')),e.domainEmitter=this,e.domain=c,e.domainThrown=!1,c.emit("error",e),!1}if(!(n=s[t]))return!1;var u=typeof n=="function";switch(r=arguments.length){case 1:(function(d,h,f){if(h)d.call(f);else for(var m=d.length,g=gr(d,m),w=0;w0;)if(n[o]===e||n[o].listener&&n[o].listener===e){s=n[o].listener,i=o;break}if(i<0)return this;if(n.length===1){if(n[0]=void 0,--this._eventsCount==0)return this._events=new cn,this;delete r[t]}else(function(c,a){for(var l=a,u=l+1,d=c.length;u0?Reflect.ownKeys(this._events):[]};var Sa=Fr(Object.freeze({__proto__:null,EventEmitter:Ce,default:Ce}));Object.defineProperty(Th,"__esModule",{value:!0});const P1=Sa;function vl(t,e,n){try{Reflect.apply(t,e,n)}catch(r){setTimeout(()=>{throw r})}}let I1=class extends P1.EventEmitter{emit(t,...e){let n=t==="error";const r=this._events;if(r!==void 0)n=n&&r.error===void 0;else if(!n)return!1;if(n){let o;if(e.length>0&&([o]=e),o instanceof Error)throw o;const s=new Error("Unhandled error."+(o?` (${o.message})`:""));throw s.context=o,s}const i=r[t];if(i===void 0)return!1;if(typeof i=="function")vl(i,this,e);else{const o=i.length,s=function(c){const a=c.length,l=new Array(a);for(let u=0;u{"destroy"in e&&typeof e.destroy=="function"&&e.destroy()}),hi(this,fn,[]),hi(this,Qi,!0)}push(e){qe(this,wr,Ai).call(this),mn(this,fn).push(e)}handle(e,n){if(qe(this,wr,Ai).call(this),n&&typeof n!="function")throw new Error('"callback" must be a function if provided.');return Array.isArray(e)?n?qe(this,Mi,Us).call(this,e,n):qe(this,Mi,Us).call(this,e):n?qe(this,Ti,Fs).call(this,e,n):this._promiseHandle(e)}asMiddleware(){return qe(this,wr,Ai).call(this),async(e,n,r,i)=>{var o,s;try{const[c,a,l]=await qe(o=Oi,Ri,Hs).call(o,e,n,mn(this,fn));return a?(await qe(s=Oi,kr,eo).call(s,l),i(c)):r(async u=>{var d;try{await qe(d=Oi,kr,eo).call(d,l)}catch(h){return u(h)}return u()})}catch(c){return i(c)}}}async _promiseHandle(e){return new Promise((n,r)=>{qe(this,Ti,Fs).call(this,e,(i,o)=>{i&&o===void 0?r(i):n(o)}).catch(r)})}};Qi=new WeakMap,fn=new WeakMap,Jn=new WeakMap,wr=new WeakSet,Ai=function(){if(mn(this,Qi))throw new Error("This engine is destroyed and can no longer be used.")},Mi=new WeakSet,Us=async function(t,e){try{if(t.length===0){const r=[{id:null,jsonrpc:"2.0",error:new Ft(hn.invalidRequest,"Request batch must contain plain objects. Received an empty array")}];return e?e(null,r):r}const n=(await Promise.all(t.map(this._promiseHandle.bind(this)))).filter(r=>r!==void 0);return e?e(null,n):n}catch(n){if(e)return e(n);throw n}},Ti=new WeakSet,Fs=async function(t,e){var n;if(!t||Array.isArray(t)||typeof t!="object"){const s=new Ft(hn.invalidRequest,"Requests must be plain objects. Received: "+typeof t,{request:t});return e(s,{id:null,jsonrpc:"2.0",error:s})}if(typeof t.method!="string"){const s=new Ft(hn.invalidRequest,"Must specify a string method. Received: "+typeof t.method,{request:t});return mn(this,Jn)&&!ll(t)?e(null):e(s,{id:t.id??null,jsonrpc:"2.0",error:s})}if(mn(this,Jn)&&cr(t,k1)&&!ll(t)){try{await mn(this,Jn).call(this,t)}catch(s){return e(s)}return e(null)}let r=null;const i={...t},o={id:i.id,jsonrpc:i.jsonrpc};try{await qe(n=bt,Yo,bl).call(n,i,o,mn(this,fn))}catch(s){r=s}return r&&(delete o.result,o.error||(o.error=hl(r))),e(r,o)},Yo=new WeakSet,bl=async function(t,e,n){var r,i,o;const[s,c,a]=await qe(r=bt,Ri,Hs).call(r,t,e,n);if(qe(i=bt,Jo,El).call(i,t,e,c),await qe(o=bt,kr,eo).call(o,a),s)throw s},Ri=new WeakSet,Hs=async function(t,e,n){var r;const i=[];let o=null,s=!1;for(const c of n)if([o,s]=await qe(r=bt,Zo,wl).call(r,t,e,c,i),s)break;return[o,s,i.reverse()]},Zo=new WeakSet,wl=async function(t,e,n,r){return new Promise(i=>{const o=c=>{const a=c||e.error;a&&(e.error=hl(a)),i([a,!0])},s=c=>{e.error?o(e.error):(c&&(typeof c!="function"&&o(new Ft(hn.internal,`JsonRpcEngine: "next" return handlers must be functions. Received "${typeof c}" for request: +${Xo(t)}`,{request:t})),r.push(c)),i([null,!1]))};try{n(t,e,s,o)}catch(c){o(c)}})},kr=new WeakSet,eo=async function(t){for(const e of t)await new Promise((n,r)=>{e(i=>i?r(i):n())})},Jo=new WeakSet,El=function(t,e,n){if(!Yi(e,"result")&&!Yi(e,"error"))throw new Ft(hn.internal,`JsonRpcEngine: Response has no error or result for request: +${Xo(t)}`,{request:t});if(!n)throw new Ft(hn.internal,`JsonRpcEngine: Nothing ended request: +${Xo(t)}`,{request:t})},Et(bt,Yo),Et(bt,Ri),Et(bt,Zo),Et(bt,kr),Et(bt,Jo);var N1=bt;function Xo(t){return JSON.stringify(t,null,2)}var Lh=Object.freeze(["eth_subscription"]),B1=(t=console)=>[c1(),D1(t),a1(t)];function D1(t){return(e,n,r)=>{typeof e.method=="string"&&e.method||(n.error=Sr({message:"The request 'method' must be a non-empty string.",data:e})),r(i=>{const{error:o}=n;return o&&t.error(`MetaMask - RPC Error: ${o.message}`,o),i()})}}var Li=(t,e,n=!0)=>(r,i)=>{r||i.error?e(r||i.error):!n||Array.isArray(i)?t(i):t(i.result)},Ph=t=>!!t&&typeof t=="string"&&t.startsWith("0x"),Ih=()=>{};async function Cl(t,e){try{const n=await async function(){return{name:$1(window),icon:await j1(window)}}();t.handle({jsonrpc:"2.0",id:1,method:"metamask_sendDomainMetadata",params:n},Ih)}catch(n){e.error({message:Me.errors.sendSiteMetadata(),originalError:n})}}function $1(t){const{document:e}=t,n=e.querySelector('head > meta[property="og:site_name"]');if(n)return n.content;const r=e.querySelector('head > meta[name="title"]');return r?r.content:e.title&&e.title.length>0?e.title:window.location.hostname}async function j1(t){const{document:e}=t,n=e.querySelectorAll('head > link[rel~="icon"]');for(const r of Array.from(n))if(r&&await K1(r.href))return r.href;return null}async function K1(t){return new Promise((e,n)=>{try{const r=document.createElement("img");r.onload=()=>e(!0),r.onerror=()=>e(!1),r.src=t}catch(r){n(r)}})}var Nh=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},Ot=(t,e,n)=>(Nh(t,e,"read from private field"),n?n.call(t):e.get(t)),zs=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},Ht=(t,e,n,r)=>(Nh(t,e,"write to private field"),e.set(t,n),n);function _l(t,e,n){try{Reflect.apply(t,e,n)}catch(r){setTimeout(()=>{throw r})}}class U1 extends Ce{emit(e,...n){let r=e==="error";const i=this._events;if(i!==void 0)r=r&&i.error===void 0;else if(!r)return!1;if(r){let s;if(n.length>0&&([s]=n),s instanceof Error)throw s;const c=new Error("Unhandled error."+(s?` (${s.message})`:""));throw c.context=s,c}const o=i[e];if(o===void 0)return!1;if(typeof o=="function")_l(o,this,n);else{const s=o.length,c=function(a){const l=a.length,u=new Array(l);for(let d=0;di.push(o)),this._rpcEngine=i}get chainId(){return Ot(this,ln)}get selectedAddress(){return Ot(this,kn)}isConnected(){return this._state.isConnected}async request(e){if(!e||typeof e!="object"||Array.isArray(e))throw Sr({message:Me.errors.invalidRequestArgs(),data:e});const{method:n,params:r}=e;if(typeof n!="string"||n.length===0)throw Sr({message:Me.errors.invalidRequestMethod(),data:e});if(r!==void 0&&!Array.isArray(r)&&(typeof r!="object"||r===null))throw Sr({message:Me.errors.invalidRequestParams(),data:e});const i=r==null?{method:n}:{method:n,params:r};return new Promise((o,s)=>{this._rpcRequest(i,Li(o,s))})}_initializeState(e){if(this._state.initialized)throw new Error("Provider already initialized.");if(e){const{accounts:n,chainId:r,isUnlocked:i,networkVersion:o}=e;this._handleConnect(r),this._handleChainChanged({chainId:r,networkVersion:o}),this._handleUnlockStateChanged({accounts:n,isUnlocked:i}),this._handleAccountsChanged(n)}this._state.initialized=!0,this.emit("_initialized")}_rpcRequest(e,n){let r=n;return Array.isArray(e)||(e.jsonrpc||(e.jsonrpc="2.0"),e.method!=="eth_accounts"&&e.method!=="eth_requestAccounts"||(r=(i,o)=>{this._handleAccountsChanged(o.result??[],e.method==="eth_accounts"),n(i,o)})),this._rpcEngine.handle(e,r)}_handleConnect(e){this._state.isConnected||(this._state.isConnected=!0,this.emit("connect",{chainId:e}),this._log.debug(Me.info.connected(e)))}_handleDisconnect(e,n){if(this._state.isConnected||!this._state.isPermanentlyDisconnected&&!e){let r;this._state.isConnected=!1,e?(r=new Ft(1013,n??Me.errors.disconnected()),this._log.debug(r)):(r=new Ft(1011,n??Me.errors.permanentlyDisconnected()),this._log.error(r),Ht(this,ln,null),this._state.accounts=null,Ht(this,kn,null),this._state.isUnlocked=!1,this._state.isPermanentlyDisconnected=!0),this.emit("disconnect",r)}}_handleChainChanged({chainId:e}={}){Ph(e)?(this._handleConnect(e),e!==Ot(this,ln)&&(Ht(this,ln,e),this._state.initialized&&this.emit("chainChanged",Ot(this,ln)))):this._log.error(Me.errors.invalidNetworkParams(),{chainId:e})}_handleAccountsChanged(e,n=!1){let r=e;Array.isArray(e)||(this._log.error("MetaMask: Received invalid accounts parameter. Please report this bug.",e),r=[]);for(const i of e)if(typeof i!="string"){this._log.error("MetaMask: Received non-string account. Please report this bug.",e),r=[];break}if(!H1(this._state.accounts,r)&&(n&&this._state.accounts!==null&&this._log.error("MetaMask: 'eth_accounts' unexpectedly updated accounts. Please report this bug.",r),this._state.accounts=r,Ot(this,kn)!==r[0]&&Ht(this,kn,r[0]||null),this._state.initialized)){const i=[...r];this.emit("accountsChanged",i)}}_handleUnlockStateChanged({accounts:e,isUnlocked:n}={}){typeof n=="boolean"?n!==this._state.isUnlocked&&(this._state.isUnlocked=n,this._handleAccountsChanged(e??[])):this._log.error("MetaMask: Received invalid isUnlocked parameter. Please report this bug.")}};ln=new WeakMap,kn=new WeakMap,Bh._defaultState={accounts:null,isConnected:!1,isUnlocked:!1,initialized:!1,isPermanentlyDisconnected:!1};var Sl,kl,z1=Bh,qs={exports:{}};function $h(){return kl?Sl:(kl=1,Sl=Sa.EventEmitter)}var ka,xa=Fr(op);ka=typeof Object.create=="function"?function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t};var jh=Object.getOwnPropertyDescriptors||function(t){for(var e=Object.keys(t),n={},r=0;r=i)return c;switch(c){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch{return"[Circular]"}default:return c}}),s=r[n];n=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),bo(e)?n.showHidden=e:e&&Oa(n,e),Pt(n.showHidden)&&(n.showHidden=!1),Pt(n.depth)&&(n.depth=2),Pt(n.colors)&&(n.colors=!1),Pt(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=V1),to(n,t,n.depth)}function V1(t,e){var n=Bt.styles[e];return n?"\x1B["+Bt.colors[n][0]+"m"+t+"\x1B["+Bt.colors[n][1]+"m":t}function W1(t,e){return t}function to(t,e,n){if(t.customInspect&&e&&Mr(e.inspect)&&e.inspect!==Bt&&(!e.constructor||e.constructor.prototype!==e)){var r=e.inspect(n,t);return Dr(r)||(r=to(t,r,n)),r}var i=function(h,f){if(Pt(f))return h.stylize("undefined","undefined");if(Dr(f)){var m="'"+JSON.stringify(f).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return h.stylize(m,"string")}if(Ta(f))return h.stylize(""+f,"number");if(bo(f))return h.stylize(""+f,"boolean");if(zr(f))return h.stylize("null","null")}(t,e);if(i)return i;var o=Object.keys(e),s=function(h){var f={};return h.forEach(function(m,g){f[m]=!0}),f}(o);if(t.showHidden&&(o=Object.getOwnPropertyNames(e)),Ar(e)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return es(e);if(o.length===0){if(Mr(e)){var c=e.name?": "+e.name:"";return t.stylize("[Function"+c+"]","special")}if(xr(e))return t.stylize(RegExp.prototype.toString.call(e),"regexp");if(no(e))return t.stylize(Date.prototype.toString.call(e),"date");if(Ar(e))return es(e)}var a,l="",u=!1,d=["{","}"];return Ma(e)&&(u=!0,d=["[","]"]),Mr(e)&&(l=" [Function"+(e.name?": "+e.name:"")+"]"),xr(e)&&(l=" "+RegExp.prototype.toString.call(e)),no(e)&&(l=" "+Date.prototype.toUTCString.call(e)),Ar(e)&&(l=" "+es(e)),o.length!==0||u&&e.length!=0?n<0?xr(e)?t.stylize(RegExp.prototype.toString.call(e),"regexp"):t.stylize("[Object]","special"):(t.seen.push(e),a=u?function(h,f,m,g,w){for(var p=[],S=0,C=f.length;S60?m[0]+(f===""?"":f+` + `)+" "+h.join(`, + `)+" "+m[1]:m[0]+f+" "+h.join(", ")+" "+m[1]}(a,l,d)):d[0]+l+d[1]}function es(t){return"["+Error.prototype.toString.call(t)+"]"}function ts(t,e,n,r,i,o){var s,c,a;if((a=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?c=a.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):a.set&&(c=t.stylize("[Setter]","special")),Vh(r,i)||(s="["+i+"]"),c||(t.seen.indexOf(a.value)<0?(c=zr(n)?to(t,a.value,null):to(t,a.value,n-1)).indexOf(` +`)>-1&&(c=o?c.split(` +`).map(function(l){return" "+l}).join(` +`).substr(2):` +`+c.split(` +`).map(function(l){return" "+l}).join(` +`)):c=t.stylize("[Circular]","special")),Pt(s)){if(o&&i.match(/^\d+$/))return c;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=t.stylize(s,"name")):(s=s.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),s=t.stylize(s,"string"))}return s+": "+c}function Ma(t){return Array.isArray(t)}function bo(t){return typeof t=="boolean"}function zr(t){return t===null}function Uh(t){return t==null}function Ta(t){return typeof t=="number"}function Dr(t){return typeof t=="string"}function Fh(t){return typeof t=="symbol"}function Pt(t){return t===void 0}function xr(t){return Nn(t)&&Ra(t)==="[object RegExp]"}function Nn(t){return typeof t=="object"&&t!==null}function no(t){return Nn(t)&&Ra(t)==="[object Date]"}function Ar(t){return Nn(t)&&(Ra(t)==="[object Error]"||t instanceof Error)}function Mr(t){return typeof t=="function"}function Hh(t){return t===null||typeof t=="boolean"||typeof t=="number"||typeof t=="string"||typeof t=="symbol"||t===void 0}function zh(t){return J.isBuffer(t)}function Ra(t){return Object.prototype.toString.call(t)}function ns(t){return t<10?"0"+t.toString(10):t.toString(10)}Bt.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},Bt.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};var G1=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function qh(){console.log("%s - %s",function(){var t=new Date,e=[ns(t.getHours()),ns(t.getMinutes()),ns(t.getSeconds())].join(":");return[t.getDate(),G1[t.getMonth()],e].join(" ")}(),vo.apply(null,arguments))}function Oa(t,e){if(!e||!Nn(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t}function Vh(t,e){return Object.prototype.hasOwnProperty.call(t,e)}var xn=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function La(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(xn&&t[xn]){var e;if(typeof(e=t[xn])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,xn,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var n,r,i=new Promise(function(c,a){n=c,r=a}),o=[],s=0;s0?this.tail.next=u:this.head=u,this.tail=u,++this.length}},{key:"unshift",value:function(l){var u={data:l,next:this.head};this.length===0&&(this.tail=u),this.head=u,++this.length}},{key:"shift",value:function(){if(this.length!==0){var l=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,l}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(l){if(this.length===0)return"";for(var u=this.head,d=""+u.data;u=u.next;)d+=l+u.data;return d}},{key:"concat",value:function(l){if(this.length===0)return o.alloc(0);for(var u,d,h,f=o.allocUnsafe(l>>>0),m=this.head,g=0;m;)u=m.data,d=f,h=g,o.prototype.copy.call(u,d,h),g+=m.data.length,m=m.next;return f}},{key:"consume",value:function(l,u){var d;return lf.length?f.length:l;if(m===f.length?h+=f:h+=f.slice(0,l),(l-=m)===0){m===f.length?(++d,u.next?this.head=u.next:this.head=this.tail=null):(this.head=u,u.data=f.slice(m));break}++d}return this.length-=d,h}},{key:"_getBuffer",value:function(l){var u=o.allocUnsafe(l),d=this.head,h=1;for(d.data.copy(u),l-=d.data.length;d=d.next;){var f=d.data,m=l>f.length?f.length:l;if(f.copy(u,u.length-l,0,m),(l-=m)===0){m===f.length?(++h,d.next?this.head=d.next:this.head=this.tail=null):(this.head=d,d.data=f.slice(m));break}++h}return this.length-=h,u}},{key:c,value:function(l,u){return s(this,e(e({},u),{},{depth:0,customInspect:!1}))}}]),a}(),rs}function Yh(){if(Al)return is;function t(r,i){n(r,i),e(r)}function e(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function n(r,i){r.emit("error",i)}return Al=1,is={destroy:function(r,i){var o=this,s=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return s||c?(i?i(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,we.nextTick(n,this,r)):we.nextTick(n,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(a){!i&&a?o._writableState?o._writableState.errorEmitted?we.nextTick(e,o):(o._writableState.errorEmitted=!0,we.nextTick(t,o,a)):we.nextTick(t,o,a):i?(we.nextTick(e,o),i(a)):we.nextTick(e,o)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(r,i){var o=r._readableState,s=r._writableState;o&&o.autoDestroy||s&&s.autoDestroy?r.destroy(i):r.emit("error",i)}},is}var Bn={},Ml,Tl,Zh={};function lt(t,e,n){n||(n=Error);var r=function(i){var o,s;function c(a,l,u){return i.call(this,function(d,h,f){return typeof e=="string"?e:e(d,h,f)}(a,l,u))||this}return s=i,(o=c).prototype=Object.create(s.prototype),o.prototype.constructor=o,o.__proto__=s,c}(n);r.prototype.name=n.name,r.prototype.code=t,Zh[t]=r}function Rl(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(r){return String(r)}),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:n===2?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}function Jh(){if(Tl)return Ml;Tl=1;var t=Bn.codes.ERR_INVALID_OPT_VALUE;return Ml={getHighWaterMark:function(e,n,r,i){var o=function(s,c,a){return s.highWaterMark!=null?s.highWaterMark:c?s[a]:null}(n,i,r);if(o!=null){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new t(i?r:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}}lt("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError),lt("ERR_INVALID_ARG_TYPE",function(t,e,n){var r,i,o;if(typeof e=="string"&&(i="not ",e.substr(0,i.length)===i)?(r="must not be",e=e.replace(/^not /,"")):r="must be",function(c,a,l){return(l===void 0||l>c.length)&&(l=c.length),c.substring(l-a.length,l)===a}(t," argument"))o="The ".concat(t," ").concat(r," ").concat(Rl(e,"type"));else{var s=function(c,a,l){return typeof l!="number"&&(l=0),!(l+a.length>c.length)&&c.indexOf(a,l)!==-1}(t,".")?"property":"argument";o='The "'.concat(t,'" ').concat(s," ").concat(r," ").concat(Rl(e,"type"))}return o+=". Received type ".concat(typeof n)},TypeError),lt("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),lt("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"}),lt("ERR_STREAM_PREMATURE_CLOSE","Premature close"),lt("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"}),lt("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),lt("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),lt("ERR_STREAM_WRITE_AFTER_END","write after end"),lt("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),lt("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError),lt("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),Bn.codes=Zh;var os,Ol,ss,Ll,as,Pl,X1=typeof Object.create=="function"?function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:function(t,e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t},qr=Fr(Object.freeze({__proto__:null,default:X1}));function Q1(){if(Ol)return os;function t(e){try{if(!yt.localStorage)return!1}catch{return!1}var n=yt.localStorage[e];return n!=null&&String(n).toLowerCase()==="true"}return Ol=1,os=function(e,n){if(t("noDeprecation"))return e;var r=!1;return function(){if(!r){if(t("throwDeprecation"))throw new Error(n);t("traceDeprecation")?console.trace(n):console.warn(n),r=!0}return e.apply(this,arguments)}},os}function Xh(){if(Ll)return ss;function t(j){var B=this;this.next=null,this.entry=null,this.finish=function(){(function(R,_,P){var $=R.entry;for(R.entry=null;$;){var y=$.callback;_.pendingcb--,y(P),$=$.next}_.corkedRequestsFree.next=R})(B,j)}}var e;Ll=1,ss=N,N.WritableState=O;var n={deprecate:Q1()},r=$h(),i=xa.Buffer,o=(yt!==void 0?yt:typeof window<"u"?window:typeof self<"u"?self:{}).Uint8Array||function(){},s,c=Yh(),a=Jh().getHighWaterMark,l=Bn.codes,u=l.ERR_INVALID_ARG_TYPE,d=l.ERR_METHOD_NOT_IMPLEMENTED,h=l.ERR_MULTIPLE_CALLBACK,f=l.ERR_STREAM_CANNOT_PIPE,m=l.ERR_STREAM_DESTROYED,g=l.ERR_STREAM_NULL_VALUES,w=l.ERR_STREAM_WRITE_AFTER_END,p=l.ERR_UNKNOWN_ENCODING,S=c.errorOrDestroy;function C(){}function O(j,B,R){e=e||or(),j=j||{},typeof R!="boolean"&&(R=B instanceof e),this.objectMode=!!j.objectMode,R&&(this.objectMode=this.objectMode||!!j.writableObjectMode),this.highWaterMark=a(this,j,"writableHighWaterMark",R),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var _=j.decodeStrings===!1;this.decodeStrings=!_,this.defaultEncoding=j.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(P){(function($,y){var E=$._writableState,x=E.sync,M=E.writecb;if(typeof M!="function")throw new h;if(function(v){v.writing=!1,v.writecb=null,v.length-=v.writelen,v.writelen=0}(E),y)(function(v,k,A,T,I){--k.pendingcb,A?(we.nextTick(I,T),we.nextTick(Y,v,k),v._writableState.errorEmitted=!0,S(v,T)):(I(T),v._writableState.errorEmitted=!0,S(v,T),Y(v,k))})($,E,x,y,M);else{var b=F(E)||$.destroyed;b||E.corked||E.bufferProcessing||!E.bufferedRequest||q($,E),x?we.nextTick(W,$,E,b,M):W($,E,b,M)}})(B,P)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=j.emitClose!==!1,this.autoDestroy=!!j.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new t(this)}function N(j){var B=this instanceof(e=e||or());if(!B&&!s.call(N,this))return new N(j);this._writableState=new O(j,this,B),this.writable=!0,j&&(typeof j.write=="function"&&(this._write=j.write),typeof j.writev=="function"&&(this._writev=j.writev),typeof j.destroy=="function"&&(this._destroy=j.destroy),typeof j.final=="function"&&(this._final=j.final)),r.call(this)}function U(j,B,R,_,P,$,y){B.writelen=_,B.writecb=y,B.writing=!0,B.sync=!0,B.destroyed?B.onwrite(new m("write")):R?j._writev(P,B.onwrite):j._write(P,$,B.onwrite),B.sync=!1}function W(j,B,R,_){R||function(P,$){$.length===0&&$.needDrain&&($.needDrain=!1,P.emit("drain"))}(j,B),B.pendingcb--,_(),Y(j,B)}function q(j,B){B.bufferProcessing=!0;var R=B.bufferedRequest;if(j._writev&&R&&R.next){var _=B.bufferedRequestCount,P=new Array(_),$=B.corkedRequestsFree;$.entry=R;for(var y=0,E=!0;R;)P[y]=R,R.isBuf||(E=!1),R=R.next,y+=1;P.allBuffers=E,U(j,B,!0,B.length,P,"",$.finish),B.pendingcb++,B.lastBufferedRequest=null,$.next?(B.corkedRequestsFree=$.next,$.next=null):B.corkedRequestsFree=new t(B),B.bufferedRequestCount=0}else{for(;R;){var x=R.chunk,M=R.encoding,b=R.callback;if(U(j,B,!1,B.objectMode?1:x.length,x,M,b),R=R.next,B.bufferedRequestCount--,B.writing)break}R===null&&(B.lastBufferedRequest=null)}B.bufferedRequest=R,B.bufferProcessing=!1}function F(j){return j.ending&&j.length===0&&j.bufferedRequest===null&&!j.finished&&!j.writing}function K(j,B){j._final(function(R){B.pendingcb--,R&&S(j,R),B.prefinished=!0,j.emit("prefinish"),Y(j,B)})}function Y(j,B){var R=F(B);if(R&&(function(P,$){$.prefinished||$.finalCalled||(typeof P._final!="function"||$.destroyed?($.prefinished=!0,P.emit("prefinish")):($.pendingcb++,$.finalCalled=!0,we.nextTick(K,P,$)))}(j,B),B.pendingcb===0&&(B.finished=!0,j.emit("finish"),B.autoDestroy))){var _=j._readableState;(!_||_.autoDestroy&&_.endEmitted)&&j.destroy()}return R}return qr(N,r),O.prototype.getBuffer=function(){for(var j=this.bufferedRequest,B=[];j;)B.push(j),j=j.next;return B},function(){try{Object.defineProperty(O.prototype,"buffer",{get:n.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}(),typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(s=Function.prototype[Symbol.hasInstance],Object.defineProperty(N,Symbol.hasInstance,{value:function(j){return!!s.call(this,j)||this===N&&j&&j._writableState instanceof O}})):s=function(j){return j instanceof this},N.prototype.pipe=function(){S(this,new f)},N.prototype.write=function(j,B,R){var _,P=this._writableState,$=!1,y=!P.objectMode&&(_=j,i.isBuffer(_)||_ instanceof o);return y&&!i.isBuffer(j)&&(j=function(E){return i.from(E)}(j)),typeof B=="function"&&(R=B,B=null),y?B="buffer":B||(B=P.defaultEncoding),typeof R!="function"&&(R=C),P.ending?function(E,x){var M=new w;S(E,M),we.nextTick(x,M)}(this,R):(y||function(E,x,M,b){var v;return M===null?v=new g:typeof M=="string"||x.objectMode||(v=new u("chunk",["string","Buffer"],M)),!v||(S(E,v),we.nextTick(b,v),!1)}(this,P,j,R))&&(P.pendingcb++,$=function(E,x,M,b,v,k){if(!M){var A=function(H,z,Z){return H.objectMode||H.decodeStrings===!1||typeof z!="string"||(z=i.from(z,Z)),z}(x,b,v);b!==A&&(M=!0,v="buffer",b=A)}var T=x.objectMode?1:b.length;x.length+=T;var I=x.length-1))throw new p(j);return this._writableState.defaultEncoding=j,this},Object.defineProperty(N.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(N.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),N.prototype._write=function(j,B,R){R(new d("_write()"))},N.prototype._writev=null,N.prototype.end=function(j,B,R){var _=this._writableState;return typeof j=="function"?(R=j,j=null,B=null):typeof B=="function"&&(R=B,B=null),j!=null&&this.write(j,B),_.corked&&(_.corked=1,this.uncork()),_.ending||function(P,$,y){$.ending=!0,Y(P,$),y&&($.finished?we.nextTick(y):P.once("finish",y)),$.ended=!0,P.writable=!1}(this,_,R),this},Object.defineProperty(N.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(N.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(j){this._writableState&&(this._writableState.destroyed=j)}}),N.prototype.destroy=c.destroy,N.prototype._undestroy=c.undestroy,N.prototype._destroy=function(j,B){B(j)},ss}function or(){if(Pl)return as;Pl=1;var t=Object.keys||function(l){var u=[];for(var d in l)u.push(d);return u};as=s;var e=Qh(),n=Xh();qr(s,e);for(var r=t(n.prototype),i=0;i=this.charLength-this.charReceived?this.charLength-this.charReceived:t.length;if(t.copy(this.charBuffer,this.charReceived,0,n),this.charReceived+=n,this.charReceived=55296&&i<=56319)){if(this.charReceived=this.charLength=0,t.length===0)return e;break}this.charLength+=this.surrogateSize,e=""}this.detectIncompleteChar(t);var r=t.length;this.charLength&&(t.copy(this.charBuffer,0,t.length-this.charReceived,r),r-=this.charReceived);var i;if(r=(e+=t.toString(this.encoding,0,r)).length-1,(i=e.charCodeAt(r))>=55296&&i<=56319){var o=this.surrogateSize;return this.charLength+=o,this.charReceived+=o,this.charBuffer.copy(this.charBuffer,o,0,o),t.copy(this.charBuffer,0,0,o),e.substring(0,r)}return e},Pi.prototype.detectIncompleteChar=function(t){for(var e=t.length>=3?3:t.length;e>0;e--){var n=t[t.length-e];if(e==1&&n>>5==6){this.charLength=2;break}if(e<=2&&n>>4==14){this.charLength=3;break}if(e<=3&&n>>3==30){this.charLength=4;break}}this.charReceived=e},Pi.prototype.end=function(t){var e="";if(t&&t.length&&(e=this.write(t)),this.charReceived){var n=this.charReceived,r=this.charBuffer,i=this.encoding;e+=r.slice(0,n).toString(i)}return e};var Il=Fr(Object.freeze({__proto__:null,StringDecoder:Pi})),Nl=Bn.codes.ERR_STREAM_PREMATURE_CLOSE;function i2(){}var cs,Bl,Dl,$l,ls,jl,Pa=function t(e,n,r){if(typeof n=="function")return t(e,null,n);n||(n={}),r=function(m){var g=!1;return function(){if(!g){g=!0;for(var w=arguments.length,p=new Array(w),S=0;S0)if(typeof v=="string"||D.objectMode||Object.getPrototypeOf(v)===r.prototype||(v=function(H){return r.from(H)}(v)),A)D.endEmitted?S(b,new p):W(b,D,v,!0);else if(D.ended)S(b,new g);else{if(D.destroyed)return!1;D.reading=!1,D.decoder&&!k?(v=D.decoder.write(v),D.objectMode||v.length!==0?W(b,D,v,!1):j(b,D)):W(b,D,v,!1)}else A||(D.reading=!1,j(b,D));return!D.ended&&(D.lengthv.highWaterMark&&(v.highWaterMark=function(k){return k>=q?k=q:(k--,k|=k>>>1,k|=k>>>2,k|=k>>>4,k|=k>>>8,k|=k>>>16,k++),k}(b)),b<=v.length?b:v.ended?v.length:(v.needReadable=!0,0))}function K(b){var v=b._readableState;o("emitReadable",v.needReadable,v.emittedReadable),v.needReadable=!1,v.emittedReadable||(o("emitReadable",v.flowing),v.emittedReadable=!0,we.nextTick(Y,b))}function Y(b){var v=b._readableState;o("emitReadable_",v.destroyed,v.length,v.ended),v.destroyed||!v.length&&!v.ended||(b.emit("readable"),v.emittedReadable=!1),v.needReadable=!v.flowing&&!v.ended&&v.length<=v.highWaterMark,$(b)}function j(b,v){v.readingMore||(v.readingMore=!0,we.nextTick(B,b,v))}function B(b,v){for(;!v.reading&&!v.ended&&(v.length0,v.resumeScheduled&&!v.paused?v.flowing=!0:b.listenerCount("data")>0&&b.resume()}function _(b){o("readable nexttick read 0"),b.read(0)}function P(b,v){o("resume",v.reading),v.reading||b.read(0),v.resumeScheduled=!1,b.emit("resume"),$(b),v.flowing&&!v.reading&&b.read(0)}function $(b){var v=b._readableState;for(o("flow",v.flowing);v.flowing&&b.read()!==null;);}function y(b,v){return v.length===0?null:(v.objectMode?k=v.buffer.shift():!b||b>=v.length?(k=v.decoder?v.buffer.join(""):v.buffer.length===1?v.buffer.first():v.buffer.concat(v.length),v.buffer.clear()):k=v.buffer.consume(b,v.decoder),k);var k}function E(b){var v=b._readableState;o("endReadable",v.endEmitted),v.endEmitted||(v.ended=!0,we.nextTick(x,v,b))}function x(b,v){if(o("endReadableNT",b.endEmitted,b.length),!b.endEmitted&&b.length===0&&(b.endEmitted=!0,v.readable=!1,v.emit("end"),b.autoDestroy)){var k=v._writableState;(!k||k.autoDestroy&&k.finished)&&v.destroy()}}function M(b,v){for(var k=0,A=b.length;k=v.highWaterMark:v.length>0)||v.ended))return o("read: emitReadable",v.length,v.ended),v.length===0&&v.ended?E(this):K(this),null;if((b=F(b,v))===0&&v.ended)return v.length===0&&E(this),null;var A,T=v.needReadable;return o("need readable",T),(v.length===0||v.length-b0?y(b,v):null)===null?(v.needReadable=v.length<=v.highWaterMark,b=0):(v.length-=b,v.awaitDrain=0),v.length===0&&(v.ended||(v.needReadable=!0),k!==b&&v.ended&&E(this)),A!==null&&this.emit("data",A),A},N.prototype._read=function(b){S(this,new w("_read()"))},N.prototype.pipe=function(b,v){var k=this,A=this._readableState;switch(A.pipesCount){case 0:A.pipes=b;break;case 1:A.pipes=[A.pipes,b];break;default:A.pipes.push(b)}A.pipesCount+=1,o("pipe count=%d opts=%j",A.pipesCount,v);var T=(!v||v.end!==!1)&&b!==we.stdout&&b!==we.stderr?D:le;function I(re,ie){o("onunpipe"),re===k&&ie&&ie.hasUnpiped===!1&&(ie.hasUnpiped=!0,o("cleanup"),b.removeListener("close",ne),b.removeListener("finish",se),b.removeListener("drain",H),b.removeListener("error",Q),b.removeListener("unpipe",I),k.removeListener("end",D),k.removeListener("end",le),k.removeListener("data",Z),z=!0,!A.awaitDrain||b._writableState&&!b._writableState.needDrain||H())}function D(){o("onend"),b.end()}A.endEmitted?we.nextTick(T):k.once("end",T),b.on("unpipe",I);var H=function(re){return function(){var ie=re._readableState;o("pipeOnDrain",ie.awaitDrain),ie.awaitDrain&&ie.awaitDrain--,ie.awaitDrain===0&&e(re,"data")&&(ie.flowing=!0,$(re))}}(k);b.on("drain",H);var z=!1;function Z(re){o("ondata");var ie=b.write(re);o("dest.write",ie),ie===!1&&((A.pipesCount===1&&A.pipes===b||A.pipesCount>1&&M(A.pipes,b)!==-1)&&!z&&(o("false write response, pause",A.awaitDrain),A.awaitDrain++),k.pause())}function Q(re){o("onerror",re),le(),b.removeListener("error",Q),e(b,"error")===0&&S(b,re)}function ne(){b.removeListener("finish",se),le()}function se(){o("onfinish"),b.removeListener("close",ne),le()}function le(){o("unpipe"),k.unpipe(b)}return k.on("data",Z),function(re,ie,ce){if(typeof re.prependListener=="function")return re.prependListener(ie,ce);re._events&&re._events[ie]?Array.isArray(re._events[ie])?re._events[ie].unshift(ce):re._events[ie]=[ce,re._events[ie]]:re.on(ie,ce)}(b,"error",Q),b.once("close",ne),b.once("finish",se),b.emit("pipe",k),A.flowing||(o("pipe resume"),k.resume()),b},N.prototype.unpipe=function(b){var v=this._readableState,k={hasUnpiped:!1};if(v.pipesCount===0)return this;if(v.pipesCount===1)return b&&b!==v.pipes||(b||(b=v.pipes),v.pipes=null,v.pipesCount=0,v.flowing=!1,b&&b.emit("unpipe",this,k)),this;if(!b){var A=v.pipes,T=v.pipesCount;v.pipes=null,v.pipesCount=0,v.flowing=!1;for(var I=0;I0,A.flowing!==!1&&this.resume()):b==="readable"&&(A.endEmitted||A.readableListening||(A.readableListening=A.needReadable=!0,A.flowing=!1,A.emittedReadable=!1,o("on readable",A.length,A.reading),A.length?K(this):A.reading||we.nextTick(_,this))),k},N.prototype.addListener=N.prototype.on,N.prototype.removeListener=function(b,v){var k=n.prototype.removeListener.call(this,b,v);return b==="readable"&&we.nextTick(R,this),k},N.prototype.removeAllListeners=function(b){var v=n.prototype.removeAllListeners.apply(this,arguments);return b!=="readable"&&b!==void 0||we.nextTick(R,this),v},N.prototype.resume=function(){var b=this._readableState;return b.flowing||(o("resume"),b.flowing=!b.readableListening,function(v,k){k.resumeScheduled||(k.resumeScheduled=!0,we.nextTick(P,v,k))}(this,b)),b.paused=!1,this},N.prototype.pause=function(){return o("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(o("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},N.prototype.wrap=function(b){var v=this,k=this._readableState,A=!1;for(var T in b.on("end",function(){if(o("wrapped end"),k.decoder&&!k.ended){var D=k.decoder.end();D&&D.length&&v.push(D)}v.push(null)}),b.on("data",function(D){o("wrapped data"),k.decoder&&(D=k.decoder.write(D)),k.objectMode&&D==null||(k.objectMode||D&&D.length)&&(v.push(D)||(A=!0,b.pause()))}),b)this[T]===void 0&&typeof b[T]=="function"&&(this[T]=function(D){return function(){return b[D].apply(b,arguments)}}(T));for(var I=0;I0,function(l){r||(r=l),l&&o.forEach(Fl),a||(o.forEach(Fl),i(r))})});return e.reduce(g2)};(function(t,e){(e=qs.exports=Qh()).Stream=e,e.Readable=e,e.Writable=Xh(),e.Duplex=or(),e.Transform=ef,e.PassThrough=h2,e.finished=Pa,e.pipeline=m2})(0,qs.exports);var sr=qs.exports;function y2(t={}){const e={},n=new sr.Duplex({objectMode:!0,read:()=>{},write:function(o,s,c){let a=null;try{o.id?function(l){const{id:u}=l;if(u===null)return;const d=e[u];if(!d)return void console.warn(`StreamMiddleware - Unknown response id "${u}"`);delete e[u],Object.assign(d.res,l),setTimeout(d.end)}(o):function(l){t!=null&&t.retryOnMessage&&l.method===t.retryOnMessage&&Object.values(e).forEach(({req:u,retryCount:d=0})=>{if(!u.id)return;if(d>=3)throw new Error(`StreamMiddleware - Retry limit exceeded for request id "${u.id}"`);const h=e[u.id];h&&(h.retryCount=d+1),i(u)}),r.emit("notification",l)}(o)}catch(l){a=l}c(a)}}),r=new Oh;return{events:r,middleware:(o,s,c,a)=>{e[o.id]={req:o,res:s,next:c,end:a},i(o)},stream:n};function i(o){n.push(o)}}var ro={},Vs={exports:{}},v2=function t(e,n){if(e&&n)return t(e)(n);if(typeof e!="function")throw new TypeError("need wrapper function");return Object.keys(e).forEach(function(i){r[i]=e[i]}),r;function r(){for(var i=new Array(arguments.length),o=0;oe.destroy(n||void 0)),e}ignoreStream(t){if(!t)throw new Error("ObjectMultiplex - name must not be empty");if(this._substreams[t])throw new Error(`ObjectMultiplex - Substream for name "${t}" already exists`);this._substreams[t]=ql}_read(){}_write(t,e,n){const{name:r,data:i}=t;if(!r)return console.warn(`ObjectMultiplex - malformed chunk without name "${t}"`),n();const o=this._substreams[r];return o?(o!==ql&&o.push(i),n()):(console.warn(`ObjectMultiplex - orphaned data for stream "${r}"`),n())}};ro.ObjectMultiplex=k2;var x2=go(ro.ObjectMultiplex);const xt=t=>t!==null&&typeof t=="object"&&typeof t.pipe=="function";xt.writable=t=>xt(t)&&t.writable!==!1&&typeof t._write=="function"&&typeof t._writableState=="object",xt.readable=t=>xt(t)&&t.readable!==!1&&typeof t._read=="function"&&typeof t._readableState=="object",xt.duplex=t=>xt.writable(t)&&xt.readable(t),xt.transform=t=>xt.duplex(t)&&typeof t._transform=="function";var At,A2=xt,M2=class extends z1{constructor(t,{jsonRpcStreamName:e,logger:n=console,maxEventListeners:r=100,rpcMiddleware:i=[]}){if(super({logger:n,maxEventListeners:r,rpcMiddleware:i}),!A2.duplex(t))throw new Error(Me.errors.invalidDuplexStream());this._handleStreamDisconnect=this._handleStreamDisconnect.bind(this);const o=new x2;sr.pipeline(t,o,t,this._handleStreamDisconnect.bind(this,"MetaMask")),this._jsonRpcConnection=y2({retryOnMessage:"METAMASK_EXTENSION_CONNECT_CAN_RETRY"}),sr.pipeline(this._jsonRpcConnection.stream,o.createStream(e),this._jsonRpcConnection.stream,this._handleStreamDisconnect.bind(this,"MetaMask RpcProvider")),this._rpcEngine.push(this._jsonRpcConnection.middleware),this._jsonRpcConnection.events.on("notification",s=>{const{method:c,params:a}=s;c==="metamask_accountsChanged"?this._handleAccountsChanged(a):c==="metamask_unlockStateChanged"?this._handleUnlockStateChanged(a):c==="metamask_chainChanged"?this._handleChainChanged(a):Lh.includes(c)?this.emit("message",{type:c,data:a}):c==="METAMASK_STREAM_FAILURE"&&t.destroy(new Error(Me.errors.permanentlyDisconnected()))})}async _initializeStateAsync(){let t;try{t=await this.request({method:"metamask_getProviderState"})}catch(e){this._log.error("MetaMask: Failed to get initial state. Please report this bug.",e)}this._initializeState(t)}_handleStreamDisconnect(t,e){let n=`MetaMask: Lost connection to "${t}".`;e!=null&&e.stack&&(n+=` +${e.stack}`),this._log.warn(n),this.listenerCount("error")>0&&this.emit("error",n),this._handleDisconnect(!1,e?e.message:void 0)}_handleChainChanged({chainId:t,networkVersion:e}={}){Ph(t)&&(n=>!!n&&typeof n=="string")(e)?e==="loading"?this._handleDisconnect(!0):super._handleChainChanged({chainId:t}):this._log.error(Me.errors.invalidNetworkParams(),{chainId:t,networkVersion:e})}},T2=class extends M2{constructor(t,{jsonRpcStreamName:e="metamask-provider",logger:n=console,maxEventListeners:r=100,shouldSendMetadata:i}={}){if(super(t,{jsonRpcStreamName:e,logger:n,maxEventListeners:r,rpcMiddleware:B1(n)}),this._sentWarnings={chainId:!1,networkVersion:!1,selectedAddress:!1,enable:!1,experimentalMethods:!1,send:!1,events:{close:!1,data:!1,networkChanged:!1,notification:!1}},zs(this,At,void 0),this._initializeStateAsync(),Ht(this,At,null),this.isMetaMask=!0,this._sendSync=this._sendSync.bind(this),this.enable=this.enable.bind(this),this.send=this.send.bind(this),this.sendAsync=this.sendAsync.bind(this),this._warnOfDeprecation=this._warnOfDeprecation.bind(this),this._metamask=this._getExperimentalApi(),this._jsonRpcConnection.events.on("notification",o=>{const{method:s}=o;Lh.includes(s)&&(this.emit("data",o),this.emit("notification",o.params.result))}),i)if(document.readyState==="complete")Cl(this._rpcEngine,this._log);else{const o=()=>{Cl(this._rpcEngine,this._log),window.removeEventListener("DOMContentLoaded",o)};window.addEventListener("DOMContentLoaded",o)}}get chainId(){return this._sentWarnings.chainId||(this._log.warn(Me.warnings.chainIdDeprecation),this._sentWarnings.chainId=!0),super.chainId}get networkVersion(){return this._sentWarnings.networkVersion||(this._log.warn(Me.warnings.networkVersionDeprecation),this._sentWarnings.networkVersion=!0),Ot(this,At)}get selectedAddress(){return this._sentWarnings.selectedAddress||(this._log.warn(Me.warnings.selectedAddressDeprecation),this._sentWarnings.selectedAddress=!0),super.selectedAddress}sendAsync(t,e){this._rpcRequest(t,e)}addListener(t,e){return this._warnOfDeprecation(t),super.addListener(t,e)}on(t,e){return this._warnOfDeprecation(t),super.on(t,e)}once(t,e){return this._warnOfDeprecation(t),super.once(t,e)}prependListener(t,e){return this._warnOfDeprecation(t),super.prependListener(t,e)}prependOnceListener(t,e){return this._warnOfDeprecation(t),super.prependOnceListener(t,e)}_handleDisconnect(t,e){super._handleDisconnect(t,e),Ot(this,At)&&!t&&Ht(this,At,null)}_warnOfDeprecation(t){var e;((e=this._sentWarnings)==null?void 0:e.events[t])===!1&&(this._log.warn(Me.warnings.events[t]),this._sentWarnings.events[t]=!0)}async enable(){return this._sentWarnings.enable||(this._log.warn(Me.warnings.enableDeprecation),this._sentWarnings.enable=!0),new Promise((t,e)=>{try{this._rpcRequest({method:"eth_requestAccounts",params:[]},Li(t,e))}catch(n){e(n)}})}send(t,e){return this._sentWarnings.send||(this._log.warn(Me.warnings.sendDeprecation),this._sentWarnings.send=!0),typeof t!="string"||e&&!Array.isArray(e)?t&&typeof t=="object"&&typeof e=="function"?this._rpcRequest(t,e):this._sendSync(t):new Promise((n,r)=>{try{this._rpcRequest({method:t,params:e},Li(n,r,!1))}catch(i){r(i)}})}_sendSync(t){let e;switch(t.method){case"eth_accounts":e=this.selectedAddress?[this.selectedAddress]:[];break;case"eth_coinbase":e=this.selectedAddress??null;break;case"eth_uninstallFilter":this._rpcRequest(t,Ih),e=!0;break;case"net_version":e=Ot(this,At)??null;break;default:throw new Error(Me.errors.unsupportedSync(t.method))}return{id:t.id,jsonrpc:t.jsonrpc,result:e}}_getExperimentalApi(){return new Proxy({isUnlocked:async()=>(this._state.initialized||await new Promise(t=>{this.on("_initialized",()=>t())}),this._state.isUnlocked),requestBatch:async t=>{if(!Array.isArray(t))throw Sr({message:"Batch requests must be made with an array of request objects.",data:t});return new Promise((e,n)=>{this._rpcRequest(t,Li(e,n))})}},{get:(t,e,...n)=>(this._sentWarnings.experimentalMethods||(this._log.warn(Me.warnings.experimentalMethods),this._sentWarnings.experimentalMethods=!0),Reflect.get(t,e,...n))})}_handleChainChanged({chainId:t,networkVersion:e}={}){super._handleChainChanged({chainId:t,networkVersion:e}),this._state.isConnected&&e!==Ot(this,At)&&(Ht(this,At,e),this._state.initialized&&this.emit("networkChanged",Ot(this,At)))}};At=new WeakMap;const G=Ge("MM_SDK");G.color="#FFAC1C";var rf={},bn={};Object.defineProperty(bn,"__esModule",{value:!0}),bn.EthereumProviderError=bn.EthereumRpcError=void 0;const R2=kh;class of extends Error{constructor(e,n,r){if(!Number.isInteger(e))throw new Error('"code" must be an integer.');if(!n||typeof n!="string")throw new Error('"message" must be a nonempty string.');super(n),this.code=e,r!==void 0&&(this.data=r)}serialize(){const e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),this.stack&&(e.stack=this.stack),e}toString(){return R2.default(this.serialize(),O2,2)}}bn.EthereumRpcError=of;function O2(t,e){if(e!=="[Circular]")return e}bn.EthereumProviderError=class extends of{constructor(t,e,n){if(!function(r){return Number.isInteger(r)&&r>=1e3&&r<=4999}(t))throw new Error('"code" must be an integer such that: 1000 <= code <= 4999');super(t,e,n)}};var Ia={},pn={};Object.defineProperty(pn,"__esModule",{value:!0}),pn.errorValues=pn.errorCodes=void 0,pn.errorCodes={rpc:{invalidInput:-32e3,resourceNotFound:-32001,resourceUnavailable:-32002,transactionRejected:-32003,methodNotSupported:-32004,limitExceeded:-32005,parse:-32700,invalidRequest:-32600,methodNotFound:-32601,invalidParams:-32602,internal:-32603},provider:{userRejectedRequest:4001,unauthorized:4100,unsupportedMethod:4200,disconnected:4900,chainDisconnected:4901}},pn.errorValues={"-32700":{standard:"JSON RPC 2.0",message:"Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text."},"-32600":{standard:"JSON RPC 2.0",message:"The JSON sent is not a valid Request object."},"-32601":{standard:"JSON RPC 2.0",message:"The method does not exist / is not available."},"-32602":{standard:"JSON RPC 2.0",message:"Invalid method parameter(s)."},"-32603":{standard:"JSON RPC 2.0",message:"Internal JSON-RPC error."},"-32000":{standard:"EIP-1474",message:"Invalid input."},"-32001":{standard:"EIP-1474",message:"Resource not found."},"-32002":{standard:"EIP-1474",message:"Resource unavailable."},"-32003":{standard:"EIP-1474",message:"Transaction rejected."},"-32004":{standard:"EIP-1474",message:"Method not supported."},"-32005":{standard:"EIP-1474",message:"Request limit exceeded."},4001:{standard:"EIP-1193",message:"User rejected the request."},4100:{standard:"EIP-1193",message:"The requested account and/or method has not been authorized by the user."},4200:{standard:"EIP-1193",message:"The requested method is not supported by this Ethereum provider."},4900:{standard:"EIP-1193",message:"The provider is disconnected from all chains."},4901:{standard:"EIP-1193",message:"The provider is disconnected from the specified chain."}},function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.serializeError=t.isValidCode=t.getMessageFromCode=t.JSON_RPC_SERVER_ERROR_MESSAGE=void 0;const e=pn,n=bn,r=e.errorCodes.rpc.internal,i="Unspecified error message. This is a bug, please report it.",o={code:r,message:s(r)};function s(d,h=i){if(Number.isInteger(d)){const f=d.toString();if(u(e.errorValues,f))return e.errorValues[f].message;if(a(d))return t.JSON_RPC_SERVER_ERROR_MESSAGE}return h}function c(d){if(!Number.isInteger(d))return!1;const h=d.toString();return!!e.errorValues[h]||!!a(d)}function a(d){return d>=-32099&&d<=-32e3}function l(d){return d&&typeof d=="object"&&!Array.isArray(d)?Object.assign({},d):d}function u(d,h){return Object.prototype.hasOwnProperty.call(d,h)}t.JSON_RPC_SERVER_ERROR_MESSAGE="Unspecified server error.",t.getMessageFromCode=s,t.isValidCode=c,t.serializeError=function(d,{fallbackError:h=o,shouldIncludeStack:f=!1}={}){var m,g;if(!h||!Number.isInteger(h.code)||typeof h.message!="string")throw new Error("Must provide fallback error with integer number code and string message.");if(d instanceof n.EthereumRpcError)return d.serialize();const w={};if(d&&typeof d=="object"&&!Array.isArray(d)&&u(d,"code")&&c(d.code)){const S=d;w.code=S.code,S.message&&typeof S.message=="string"?(w.message=S.message,u(S,"data")&&(w.data=S.data)):(w.message=s(w.code),w.data={originalError:l(d)})}else{w.code=h.code;const S=(m=d)===null||m===void 0?void 0:m.message;w.message=S&&typeof S=="string"?S:h.message,w.data={originalError:l(d)}}const p=(g=d)===null||g===void 0?void 0:g.stack;return f&&d&&p&&typeof p=="string"&&(w.stack=p),w}}(Ia);var oo={};Object.defineProperty(oo,"__esModule",{value:!0}),oo.ethErrors=void 0;const Na=bn,sf=Ia,Ke=pn;function ut(t,e){const[n,r]=af(e);return new Na.EthereumRpcError(t,n||sf.getMessageFromCode(t),r)}function mr(t,e){const[n,r]=af(e);return new Na.EthereumProviderError(t,n||sf.getMessageFromCode(t),r)}function af(t){if(t){if(typeof t=="string")return[t];if(typeof t=="object"&&!Array.isArray(t)){const{message:e,data:n}=t;if(e&&typeof e!="string")throw new Error("Must specify string message.");return[e||void 0,n]}}return[]}oo.ethErrors={rpc:{parse:t=>ut(Ke.errorCodes.rpc.parse,t),invalidRequest:t=>ut(Ke.errorCodes.rpc.invalidRequest,t),invalidParams:t=>ut(Ke.errorCodes.rpc.invalidParams,t),methodNotFound:t=>ut(Ke.errorCodes.rpc.methodNotFound,t),internal:t=>ut(Ke.errorCodes.rpc.internal,t),server:t=>{if(!t||typeof t!="object"||Array.isArray(t))throw new Error("Ethereum RPC Server errors must provide single object argument.");const{code:e}=t;if(!Number.isInteger(e)||e>-32005||e<-32099)throw new Error('"code" must be an integer such that: -32099 <= code <= -32005');return ut(e,t)},invalidInput:t=>ut(Ke.errorCodes.rpc.invalidInput,t),resourceNotFound:t=>ut(Ke.errorCodes.rpc.resourceNotFound,t),resourceUnavailable:t=>ut(Ke.errorCodes.rpc.resourceUnavailable,t),transactionRejected:t=>ut(Ke.errorCodes.rpc.transactionRejected,t),methodNotSupported:t=>ut(Ke.errorCodes.rpc.methodNotSupported,t),limitExceeded:t=>ut(Ke.errorCodes.rpc.limitExceeded,t)},provider:{userRejectedRequest:t=>mr(Ke.errorCodes.provider.userRejectedRequest,t),unauthorized:t=>mr(Ke.errorCodes.provider.unauthorized,t),unsupportedMethod:t=>mr(Ke.errorCodes.provider.unsupportedMethod,t),disconnected:t=>mr(Ke.errorCodes.provider.disconnected,t),chainDisconnected:t=>mr(Ke.errorCodes.provider.chainDisconnected,t),custom:t=>{if(!t||typeof t!="object"||Array.isArray(t))throw new Error("Ethereum Provider custom errors must provide single object argument.");const{code:e,message:n,data:r}=t;if(!n||typeof n!="string")throw new Error('"message" must be a nonempty string');return new Na.EthereumProviderError(e,n,r)}}},function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.getMessageFromCode=t.serializeError=t.EthereumProviderError=t.EthereumRpcError=t.ethErrors=t.errorCodes=void 0;const e=bn;Object.defineProperty(t,"EthereumRpcError",{enumerable:!0,get:function(){return e.EthereumRpcError}}),Object.defineProperty(t,"EthereumProviderError",{enumerable:!0,get:function(){return e.EthereumProviderError}});const n=Ia;Object.defineProperty(t,"serializeError",{enumerable:!0,get:function(){return n.serializeError}}),Object.defineProperty(t,"getMessageFromCode",{enumerable:!0,get:function(){return n.getMessageFromCode}});const r=oo;Object.defineProperty(t,"ethErrors",{enumerable:!0,get:function(){return r.ethErrors}});const i=pn;Object.defineProperty(t,"errorCodes",{enumerable:!0,get:function(){return i.errorCodes}})}(rf);const ue={METAMASK_GETPROVIDERSTATE:"metamask_getProviderState",METAMASK_CONNECTSIGN:"metamask_connectSign",METAMASK_CONNECTWITH:"metamask_connectWith",METAMASK_OPEN:"metamask_open",METAMASK_BATCH:"metamask_batch",PERSONAL_SIGN:"personal_sign",WALLET_REQUESTPERMISSIONS:"wallet_requestPermissions",WALLET_REVOKEPERMISSIONS:"wallet_revokePermissions",WALLET_GETPERMISSIONS:"wallet_getPermissions",WALLET_WATCHASSET:"wallet_watchAsset",WALLET_ADDETHEREUMCHAIN:"wallet_addEthereumChain",WALLET_SWITCHETHETHEREUMCHAIN:"wallet_switchEthereumChain",ETH_REQUESTACCOUNTS:"eth_requestAccounts",ETH_ACCOUNTS:"eth_accounts",ETH_CHAINID:"eth_chainId",ETH_SENDTRANSACTION:"eth_sendTransaction",ETH_SIGNTYPEDDATA:"eth_signTypedData",ETH_SIGNTYPEDDATA_V3:"eth_signTypedData_v3",ETH_SIGNTYPEDDATA_V4:"eth_signTypedData_v4",ETH_SIGNTRANSACTION:"eth_signTransaction",ETH_SIGN:"eth_sign",PERSONAL_EC_RECOVER:"personal_ecRecover"},so={[ue.ETH_REQUESTACCOUNTS]:!0,[ue.ETH_SENDTRANSACTION]:!0,[ue.ETH_SIGNTRANSACTION]:!0,[ue.ETH_SIGN]:!0,[ue.PERSONAL_SIGN]:!0,[ue.ETH_ACCOUNTS]:!1,[ue.ETH_CHAINID]:!1,[ue.PERSONAL_SIGN]:!0,[ue.ETH_SIGNTYPEDDATA]:!0,[ue.ETH_SIGNTYPEDDATA_V3]:!0,[ue.ETH_SIGNTYPEDDATA_V4]:!0,[ue.WALLET_REQUESTPERMISSIONS]:!0,[ue.WALLET_GETPERMISSIONS]:!0,[ue.WALLET_WATCHASSET]:!0,[ue.WALLET_ADDETHEREUMCHAIN]:!0,[ue.WALLET_SWITCHETHETHEREUMCHAIN]:!0,[ue.METAMASK_CONNECTSIGN]:!0,[ue.METAMASK_CONNECTWITH]:!0,[ue.PERSONAL_EC_RECOVER]:!0,[ue.METAMASK_BATCH]:!0,[ue.METAMASK_OPEN]:!0},L2=Object.keys(so).map(t=>t.toLowerCase()),cf=["eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","eth_sign"].map(t=>t.toLowerCase()),hs=".sdk-comm",ao="providerType",Ws=".MMSDK_cached_address",Gs=".MMSDK_cached_chainId",kt={CHAIN_CHANGED:"chainChanged",ACCOUNTS_CHANGED:"accountsChanged",DISCONNECT:"disconnect",CONNECT:"connect",CONNECTED:"connected"};class P2{constructor({enabled:e}={enabled:!1}){this.enabled=!1,this.enabled=e}persistChannelConfig(e){return X(this,void 0,void 0,function*(){const n=JSON.stringify(e);G(`[StorageManagerWeb: persistChannelConfig()] enabled=${this.enabled}`,e),localStorage.setItem(hs,n)})}getPersistedChannelConfig(){return X(this,void 0,void 0,function*(){let e;try{if(G(`[StorageManagerWeb: getPersistedChannelConfig()] enabled=${this.enabled}`),e=localStorage.getItem(hs),G("[StorageManagerWeb: getPersistedChannelConfig()]",e),!e)return;const n=JSON.parse(e);return G("[StorageManagerWeb: getPersistedChannelConfig()] channelConfig",n),n}catch(n){return void console.error("[StorageManagerWeb: getPersistedChannelConfig()] Can't find existing channel config",n)}})}persistAccounts(e){return X(this,void 0,void 0,function*(){G(`[StorageManagerWeb: persistAccounts()] enabled=${this.enabled}`,e);const n=JSON.stringify(e);localStorage.setItem(Ws,n)})}getCachedAccounts(){return X(this,void 0,void 0,function*(){try{const e=localStorage.getItem(Ws);return e?JSON.parse(e):[]}catch(e){throw console.error("[StorageManagerWeb: getCachedAccounts()] Error reading cached accounts",e),e}})}persistChainId(e){return X(this,void 0,void 0,function*(){G(`[StorageManagerWeb: persistChainId()] enabled=${this.enabled}`,e),localStorage.setItem(Gs,e)})}getCachedChainId(){return X(this,void 0,void 0,function*(){try{const e=localStorage.getItem(Gs);return e??void 0}catch(e){throw console.error("[StorageManagerWeb: getCachedChainId()] Error reading cached chainId",e),e}})}terminate(){return X(this,void 0,void 0,function*(){G(`[StorageManagerWeb: terminate()] enabled=${this.enabled}`),localStorage.removeItem(hs)})}}const lf=t=>new P2(t);class I2 extends T2{constructor({connectionStream:e,shouldSendMetadata:n,autoRequestAccounts:r=!1}){super(e,{logger:console,maxEventListeners:100,shouldSendMetadata:n}),this.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:"",networkVersion:""},G(`[SDKProvider: constructor()] autoRequestAccounts=${r}`),this.state.autoRequestAccounts=r}forceInitializeState(){return X(this,void 0,void 0,function*(){return G(`[SDKProvider: forceInitializeState()] autoRequestAccounts=${this.state.autoRequestAccounts}`),this._initializeStateAsync()})}_setConnected(){G("[SDKProvider: _setConnected()] Setting connected state"),this._state.isConnected=!0}getState(){return this._state}getSDKProviderState(){return this.state}getSelectedAddress(){var e;const{accounts:n}=this._state;return n&&n.length!==0?((e=n[0])===null||e===void 0?void 0:e.toLowerCase())||"":(G("[SDKProvider: getSelectedAddress] No accounts found"),null)}getChainId(){return this.state.chainId}getNetworkVersion(){return this.state.networkVersion}setSDKProviderState(e){this.state=Object.assign(Object.assign({},this.state),e)}handleAccountsChanged(e,n){return this._handleAccountsChanged(e,n)}handleDisconnect({terminate:e=!1}){(function({terminate:n=!1,instance:r}){const{state:i}=r;G(`[SDKProvider: handleDisconnect()] cleaning up provider state terminate=${n}`,r),n&&(r._state.accounts=null,r._state.isUnlocked=!1,r._state.isPermanentlyDisconnected=!0,r._state.initialized=!1),r._handleAccountsChanged([]),r._state.isConnected=!1,r.emit("disconnect",rf.ethErrors.provider.disconnected()),i.providerStateRequested=!1})({terminate:e,instance:this})}_initializeStateAsync(){return X(this,void 0,void 0,function*(){return function(e){var n,r;return X(this,void 0,void 0,function*(){e.state===void 0&&(e.state={accounts:null,autoRequestAccounts:!1,providerStateRequested:!1,chainId:""});const{state:i}=e;let o;if(i.providerStateRequested)G("[SDKProvider: initializeStateAsync()] initialization already in progress");else{let s;i.providerStateRequested=!0;let c=null,a=!1,l=!1;const u=lf({enabled:!0});if(u){const d=yield u.getPersistedChannelConfig({});a=(n=d==null?void 0:d.relayPersistence)!==null&&n!==void 0&&n,s=yield u.getCachedChainId();const h=yield u.getCachedAccounts();h.length>0&&(c=h[0])}if(G(`[SDKProvider: initializeStateAsync()] relayPersistence=${a}`,{relayPersistence:a,cachedChainId:s,cachedSelectedAddress:c}),a)if(s&&c)o={accounts:[c],chainId:s,isUnlocked:!1},l=!0;else try{o=yield e.request({method:"metamask_getProviderState"})}catch(d){return e._log.error("MetaMask: Failed to get initial state. Please report this bug.",d),void(i.providerStateRequested=!1)}if(((r=o==null?void 0:o.accounts)===null||r===void 0?void 0:r.length)===0)if(e.getSelectedAddress())o.accounts=[e.getSelectedAddress()];else{G("[SDKProvider: initializeStateAsync()] Fetch accounts remotely.");const d=yield e.request({method:"eth_requestAccounts",params:[]});o.accounts=d}e._initializeState(o),i.providerStateRequested=!1,l&&(e._state.isConnected=!0,e.emit("connect",{chainId:o==null?void 0:o.chainId}))}})}(this)})}_initializeState(e){return G("[SDKProvider: _initializeState()]",e),function(n,r,i){return G("[SDKProvider: initializeState()] set state._initialized to false"),n._state.initialized=!1,r(i)}(this,super._initializeState.bind(this),e)}_handleChainChanged({chainId:e,networkVersion:n}={}){this.state.chainId=e,this.state.networkVersion=n,function({instance:r,chainId:i,networkVersion:o,superHandleChainChanged:s}){G(`[SDKProvider: handleChainChanged()] chainId=${i} networkVersion=${o}`);let c=o;o||(G("[SDKProvider: handleChainChanged()] forced network version to prevent provider error"),c="1"),r._state.isConnected=!0,r.emit("connect",{chainId:i}),s({chainId:i,networkVersion:c})}({instance:this,chainId:e,networkVersion:n,superHandleChainChanged:super._handleChainChanged.bind(this)})}}var jr,Dn={name:"@metamask/sdk",version:"0.31.4",description:"",homepage:"https://github.com/MetaMask/metamask-sdk#readme",bugs:{url:"https://github.com/MetaMask/metamask-sdk/issues"},repository:{type:"git",url:"https://github.com/MetaMask/metamask-sdk",directory:"packages/sdk"},main:"dist/node/cjs/metamask-sdk.js",module:"dist/browser/es/metamask-sdk.js",browser:"dist/browser/es/metamask-sdk.js",unpkg:"dist/browser/umd/metamask-sdk.js","react-native":"dist/react-native/es/metamask-sdk.js",types:"dist/types/src/index.d.ts",sideEffects:!1,files:["/dist"],scripts:{"build:types":"tsc --project tsconfig.build.json --emitDeclarationOnly --outDir dist/types",build:"yarn build:types && rollup -c --bundleConfigAsCjs","build:clean":"yarn clean && yarn build","build:dev":"yarn build:types && NODE_ENV=dev rollup -c --bundleConfigAsCjs","build:post-tsc":"echo 'N/A'","build:pre-tsc":"echo 'N/A'",typecheck:"tsc --noEmit",clean:"rimraf ./dist",size:"node bundle-size && size-limit",lint:"yarn lint:eslint && yarn lint:misc --check","lint:changelog":"../../scripts/validate-changelog.sh @metamask/sdk","lint:eslint":"eslint . --cache --ext js,ts","lint:fix":"yarn lint:eslint --fix && yarn lint:misc --write","lint:misc":"prettier '**/*.json' '**/*.md' '!CHANGELOG.md' --ignore-path ../../.gitignore",prepack:"../../scripts/prepack.sh","publish:preview":"yarn npm publish --tag preview",reset:"yarn clean && rimraf ./node_modules/",test:'jest --testPathIgnorePatterns "/e2e/"',"test:coverage":'jest --coverage --testPathIgnorePatterns "/e2e/"',"test:e2e":'jest --testPathPattern "/e2e/"',"test:ci":'jest --coverage --passWithNoTests --setupFilesAfterEnv ./jest-preload.js --testPathIgnorePatterns "/e2e/"',"test:dev":'jest -c ./jest.config.ts --detectOpenHandles --testPathIgnorePatterns "/e2e/"',watch:"rollup -c -w"},dependencies:{"@babel/runtime":"^7.26.0","@metamask/onboarding":"^1.0.1","@metamask/providers":"16.1.0","@metamask/sdk-communication-layer":"workspace:*","@metamask/sdk-install-modal-web":"workspace:*","@paulmillr/qr":"^0.2.1",bowser:"^2.9.0","cross-fetch":"^4.0.0",debug:"^4.3.4",eciesjs:"^0.4.11","eth-rpc-errors":"^4.0.3",eventemitter2:"^6.4.9","obj-multiplex":"^1.0.0",pump:"^3.0.0","readable-stream":"^3.6.2","socket.io-client":"^4.5.1",tslib:"^2.6.0",util:"^0.12.4",uuid:"^8.3.2"},devDependencies:{"@jest/globals":"^29.3.1","@lavamoat/allow-scripts":"^2.3.1","@metamask/auto-changelog":"3.1.0","@metamask/eslint-config":"^6.0.0","@metamask/eslint-config-nodejs":"^6.0.0","@metamask/eslint-config-typescript":"^6.0.0","@react-native-async-storage/async-storage":"^1.19.6","@rollup/plugin-alias":"^5.1.1","@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.0.2","@rollup/plugin-replace":"^6.0.1","@rollup/plugin-terser":"^0.4.1","@size-limit/preset-big-lib":"^11.0.2","@types/dom-screen-wake-lock":"^1.0.2","@types/node":"^20.1.3","@types/pump":"^1.1.1","@types/qrcode-terminal":"^0.12.0","@types/uuid":"^10.0.0","@typescript-eslint/eslint-plugin":"^4.26.0","@typescript-eslint/parser":"^4.26.0","browserify-zlib":"^0.2.0",buffer:"^6.0.3","crypto-browserify":"^3.12.0",eslint:"^7.30.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.23.4","eslint-plugin-jest":"^24.4.0","eslint-plugin-jsdoc":"^36.1.0","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.4.0","https-browserify":"^1.0.0",jest:"^29.3.1","jest-environment-jsdom":"^29.3.1",prettier:"^2.3.0",process:"^0.11.10",rimraf:"^4.4.0",rollup:"^4.26.0","rollup-plugin-analyzer":"^4.0.0","rollup-plugin-jscc":"^2.0.0","rollup-plugin-natives":"^0.7.5","rollup-plugin-node-builtins":"^2.1.2","rollup-plugin-polyfill-node":"^0.13.0","rollup-plugin-sizes":"^1.0.6","rollup-plugin-typescript2":"^0.31.2","rollup-plugin-visualizer":"^5.12.0","size-limit":"^11.0.2","stream-browserify":"^3.0.0","stream-http":"^3.2.0","ts-jest":"^29.0.3","ts-node":"^10.9.1",typescript:"^4.3.2",url:"^0.11.0",webpack:"^5.0.0"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},lavamoat:{allowScripts:{"eciesjs>secp256k1":!1,"socket.io-client>engine.io-client>ws>bufferutil":!1,"socket.io-client>engine.io-client>ws>utf-8-validate":!1,"@metamask/sdk-communication-layer>bufferutil":!1,"@metamask/sdk-communication-layer>eciesjs>secp256k1":!1,"@metamask/sdk-communication-layer>utf-8-validate":!1}}};(function(t){t.INPAGE="metamask-inpage",t.CONTENT_SCRIPT="metamask-contentscript",t.PROVIDER="metamask-provider"})(jr||(jr={}));const Vl="direct",Kr="https://metamask.app.link/connect",Ur="metamask://connect",Wl={NAME:"MetaMask",RDNS:"io.metamask"},N2=/(?:^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}$)|(?:^0{8}-0{4}-0{4}-0{4}-0{12}$)/u,st={Initialized:"initialized",DisplayURI:"display_uri",ProviderUpdate:"provider_update",ConnectWithResponse:"connectWithResponse",ConnectionStatus:"connection_status",ServiceStatus:"service_status"};var Xt;(function(t){t.TERMINATE="terminate",t.EXTENSION="extension",t.INITIALIZED="initialized"})(Xt||(Xt={}));const B2=typeof window<"u"&&window.localStorage;function D2({instance:t,msg:e}){return X(this,void 0,void 0,function*(){if(t._initialized||(G("[MetaMaskSDK: connectAndSign()] provider not ready -- wait for init()"),yield t.init()),G(`[MetaMaskSDK: connectAndSign()] activeProvider=${t.activeProvider}`),!t.activeProvider)throw new Error("SDK state invalid -- undefined provider");const n=/^0x([0-9A-Fa-f]{2})*$/u.test(e)?e:function(r){let i;if(J!==void 0)i=J.from(r,"utf8").toString("hex");else if(typeof TextEncoder<"u"){const o=new TextEncoder().encode(r);i=Array.from(o).map(s=>s.toString(16).padStart(2,"0")).join("")}else{if(typeof Ye!="object"||!("Buffer"in Ye))throw new Error("Unable to convert string to hex: No available method.");i=Ye.Buffer.from(r,"utf8").toString("hex")}return`0x${i}`}(e);return t.activeProvider.request({method:ue.METAMASK_CONNECTWITH,params:[{method:ue.PERSONAL_SIGN,params:[n]}]})})}function Gl(t){var e,n;return X(this,void 0,void 0,function*(){G("[MetaMaskSDK: connectWithExtensionProvider()] ",t),t.sdkProvider=t.activeProvider,t.activeProvider=window.extension,window.ethereum=window.extension;try{const r=yield(e=window.extension)===null||e===void 0?void 0:e.request({method:"eth_requestAccounts"});G(`[MetaMaskSDK: connectWithExtensionProvider()] accounts=${r}`)}catch(r){return void console.warn("[MetaMaskSDK: connectWithExtensionProvider()] can't request accounts error",r)}localStorage.setItem(ao,"extension"),t.extensionActive=!0,t.emit(st.ProviderUpdate,Xt.EXTENSION),t.options.enableAnalytics&&((n=t.analytics)===null||n===void 0||n.send({event:Te.SDK_USE_EXTENSION}))})}function co(t){let e;if(J!==void 0)e=J.from(t,"utf8").toString("base64");else if(typeof btoa=="function")e=btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/gu,(n,r)=>String.fromCharCode(parseInt(r,16))));else{if(typeof Ye!="object"||!("Buffer"in Ye))throw new Error("Unable to base64 encode: No available method.");e=Ye.Buffer.from(t,"utf8").toString("base64")}return e}class _t{constructor({shouldSetOnWindow:e,connectionStream:n,shouldSendMetadata:r=!1,shouldShimWeb3:i,sdkInstance:o}){const s=new I2({connectionStream:n,shouldSendMetadata:r,shouldSetOnWindow:e,shouldShimWeb3:i,autoRequestAccounts:!1}),c=new Proxy(s,{deleteProperty:()=>!0});if(this.provider=c,this.sdkInstance=o,e&&typeof window<"u")try{a=s,window.ethereum=a,window.dispatchEvent(new Event("ethereum#initialized"))}catch(l){G("[Ethereum] Unable to set global provider - window.ethereum may be read-only",l)}var a;if(i&&typeof window<"u")try{(function(l,u=console){let d=!1,h=!1;if(!window.web3){const f="__isMetaMaskShim__";let m={currentProvider:l};Object.defineProperty(m,f,{value:!0,enumerable:!0,configurable:!1,writable:!1}),m=new Proxy(m,{get:(g,w,...p)=>(w!=="currentProvider"||d?w==="currentProvider"||w===f||h||(h=!0,u.error("MetaMask no longer injects web3. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3"),l.request({method:"metamask_logWeb3ShimUsage"}).catch(S=>{u.debug("MetaMask: Failed to log web3 shim usage.",S)})):(d=!0,u.warn("You are accessing the MetaMask window.web3.currentProvider shim. This property is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3")),Reflect.get(g,w,...p)),set:(...g)=>(u.warn("You are accessing the MetaMask window.web3 shim. This object is deprecated; use window.ethereum instead. For details, see: https://docs.metamask.io/guide/provider-migration.html#replacing-window-web3"),Reflect.set(...g))}),Object.defineProperty(window,"web3",{value:m,enumerable:!1,configurable:!0,writable:!0})}})(this.provider)}catch(l){G("[Ethereum] Unable to shim web3 - window.web3 may be read-only",l)}this.provider.on("display_uri",l=>{this.sdkInstance.emit(st.DisplayURI,l)}),this.provider.on("_initialized",()=>{const l={chainId:this.provider.getChainId(),isConnected:this.provider.isConnected(),isMetaMask:this.provider.isMetaMask,selectedAddress:this.provider.getSelectedAddress(),networkVersion:this.provider.getNetworkVersion()};this.sdkInstance.emit(st.Initialized,l),G("[Ethereum: constructor()] provider initialized",l)})}static init(e){var n;return G("[Ethereum: init()] Initializing Ethereum service"),this.instance=new _t(e),(n=this.instance)===null||n===void 0?void 0:n.provider}static destroy(){}static getInstance(){var e;if(!(!((e=this.instance)===null||e===void 0)&&e.provider))throw new Error("Ethereum instance not intiialized - call Ethereum.factory first.");return this.instance}static getProvider(){var e;if(!(!((e=this.instance)===null||e===void 0)&&e.provider))throw new Error("Ethereum instance not intiialized - call Ethereum.factory first.");return this.instance.provider}}function $2(t,e,n,r){var i,o,s,c,a,l,u,d,h,f,m,g,w,p,S,C,O,N,U,W;return X(this,void 0,void 0,function*(){const q=(i=t.state.remote)===null||i===void 0?void 0:i.isReady(),F=(o=t.state.remote)===null||o===void 0?void 0:o.isConnected(),K=(s=t.state.remote)===null||s===void 0?void 0:s.isPaused(),Y=_t.getProvider(),j=(c=t.state.remote)===null||c===void 0?void 0:c.getChannelId(),B=(a=t.state.remote)===null||a===void 0?void 0:a.isAuthorized(),{deeplinkProtocol:R}=t.state,{method:_,data:P,triggeredInstaller:$}=(M=>{var b,v,k,A;let T;J.isBuffer(M)?(T=M.toJSON(),T._isBuffer=!0):T=M;const I=(b=T==null?void 0:T.data)===null||b===void 0?void 0:b.method;let D=!1;return typeof((v=T==null?void 0:T.data)===null||v===void 0?void 0:v.params)=="object"&&((A=(k=T==null?void 0:T.data)===null||k===void 0?void 0:k.params)===null||A===void 0?void 0:A.__triggeredInstaller)===!0&&(D=!0,T.data.params=T.data.params.wrappedParams),{method:I,data:T,triggeredInstaller:D}})(e);if(G(`[RCPMS: write()] method='${_}' isRemoteReady=${q} channelId=${j} isSocketConnected=${F} isRemotePaused=${K} providerConnected=${Y.isConnected()}`,e),!j)return _!==ue.METAMASK_GETPROVIDERSTATE&&G(`[RCPMS: write()] ${_} --> channelId is undefined`),r(new Error("disconnected"));G(`[RCPMS: write()] remote.isPaused()=${(l=t.state.remote)===null||l===void 0?void 0:l.isPaused()} authorized=${B} ready=${q} socketConnected=${F}`,e);const y=(u=t.state.platformManager)===null||u===void 0?void 0:u.isSecure(),E=(h=(d=t.state.platformManager)===null||d===void 0?void 0:d.isMobileWeb())!==null&&h!==void 0&&h,x=(m=(f=t.state.remote)===null||f===void 0?void 0:f.hasDeeplinkProtocol())!==null&&m!==void 0&&m&&E&&B;try{if(console.warn(`[RCPMS: _write()] triggeredInstaller=${$} activeDeeplinkProtocol=${x}`),$||(g=t.state.remote)===null||g===void 0||g.sendMessage(P==null?void 0:P.data).then(()=>{G(`[RCPMS: _write()] ${_} sent successfully`)}).catch(v=>{G("[RCPMS: _write()] error sending message",v)}),!y)return G(`[RCPMS: _write()] unsecure platform for method ${_} -- return callback`),r();if($)return G("[RCPMS: _write()] prevent deeplink -- installation completed separately."),r();const M=(S=(p=(w=t.state.remote)===null||w===void 0?void 0:w.getKeyInfo())===null||p===void 0?void 0:p.ecies.public)!==null&&S!==void 0?S:"";let b=encodeURI(`channelId=${j}&pubkey=${M}&comm=socket&t=d&v=2`);if(x){const v=JSON.stringify(P==null?void 0:P.data),k=(C=t.state.remote)===null||C===void 0?void 0:C.encrypt(v);if(!k)return G("[RCPMS: _write()] error encrypting message"),r(new Error("RemoteCommunicationPostMessageStream - disconnected"));b+=`&scheme=${R}&rpc=${co(k)}`}if(!(!((O=t.state.platformManager)===null||O===void 0)&&O.isMetaMaskInstalled()))return G("[RCPMS: _write()] prevent deeplink until installation is completed."),r();so[_]?(G(`[RCPMS: _write()] redirect link for '${_}' socketConnected=${F} connect?${b}`),(N=t.state.platformManager)===null||N===void 0||N.openDeeplink(`${Kr}?${b}`,`${Ur}?${b}`,"_self")):!((U=t.state.remote)===null||U===void 0)&&U.isPaused()?(G(`[RCPMS: _write()] MM is PAUSED! deeplink with connect! targetMethod=${_}`),(W=t.state.platformManager)===null||W===void 0||W.openDeeplink(`${Kr}?redirect=true&${b}`,`${Ur}?redirect=true&${b}`,"_self")):G(`[RCPMS: _write()] method ${_} doesn't need redirect.`)}catch(M){return G("[RCPMS: _write()] error sending message",M),r(new Error("RemoteCommunicationPostMessageStream - disconnected"))}return r()})}class j2 extends sr.Duplex{constructor({name:e,remote:n,deeplinkProtocol:r,platformManager:i}){super({objectMode:!0}),this.state={_name:null,remote:null,deeplinkProtocol:!1,platformManager:null},this.state._name=e,this.state.remote=n,this.state.deeplinkProtocol=r,this.state.platformManager=i,this._onMessage=this._onMessage.bind(this),this.state.remote.on(te.MESSAGE,this._onMessage)}_write(e,n,r){return X(this,void 0,void 0,function*(){return $2(this,e,0,r)})}_read(){}_onMessage(e){return function(n,r){try{if(G("[RCPMS: onMessage()] message",r),!r||typeof r!="object"||typeof(r==null?void 0:r.data)!="object")return;if(!(r!=null&&r.name))return void G("[RCPMS: onMessage()] ignore message without name",r);if((r==null?void 0:r.name)!==jr.PROVIDER)return void G(`[RCPMS: onMessage()] ignore message with wrong name message=${r}`);if(J.isBuffer(r)){const i=J.from(r);n.push(i)}else n.push(r)}catch(i){G(`[RCPMS: onMessage()] ignore message error err=${i}`)}}(this,e)}start(){}}let Yl=1;const uf=t=>new Promise(e=>{setTimeout(()=>{e(!0)},t)}),K2=({checkInstallationOnAllCalls:t=!1,communicationLayerPreference:e,injectProvider:n,shouldShimWeb3:r,platformManager:i,installer:o,sdk:s,remoteConnection:c,debug:a})=>X(void 0,void 0,void 0,function*(){var l,u;const d=(({name:K,remoteConnection:Y})=>{if(!Y||!(Y!=null&&Y.getConnector()))throw new Error("Missing remote connection parameter");return new j2({name:K,remote:Y==null?void 0:Y.getConnector(),deeplinkProtocol:Y==null?void 0:Y.state.deeplinkProtocol,platformManager:Y==null?void 0:Y.getPlatformManager()})})({name:jr.INPAGE,target:jr.CONTENT_SCRIPT,platformManager:i,communicationLayerPreference:e,remoteConnection:c}),h=i.getPlatformType(),f=s.options.dappMetadata,m=`Sdk/Javascript SdkVersion/${Dn.version} Platform/${h} dApp/${(l=f.url)!==null&&l!==void 0?l:f.name} dAppTitle/${f.name}`;let g=null,w=null;const p=(u=s.options.storage)===null||u===void 0?void 0:u.storageManager;if(p){try{const K=yield p.getCachedAccounts();K.length>0&&(g=K[0])}catch(K){console.error(`[initializeMobileProvider] failed to get cached addresses: ${K}`)}try{const K=yield p.getCachedChainId();K&&(w=K)}catch(K){console.error(`[initializeMobileProvider] failed to parse cached chainId: ${K}`)}}G(`[initializeMobileProvider] cachedAccountAddress: ${g}, cachedChainId: ${w}`);const S=!(!n||h===He.NonBrowser||h===He.ReactNative),C=_t.init({shouldSetOnWindow:S,connectionStream:d,shouldShimWeb3:r,sdkInstance:s});let O=!1;const N=K=>{O=K},U=()=>O,W=(K,Y,j,B)=>X(void 0,void 0,void 0,function*(){var R,_,P,$,y,E,x,M,b;const v=_t.getProvider();if(O){v.emit("display_uri",(c==null?void 0:c.state.qrcodeLink)||""),c==null||c.showActiveModal();let Q=U();for(;Q;){const ne=U(),se=c==null?void 0:c.isAuthorized();Q=ne&&!se,G(`[initializeMobileProvider: sendRequest()] waiting for initialization to complete - initializing: ${ne} authorized: ${se}`),yield uf(1e3)}return G("[initializeMobileProvider: sendRequest()] initial method completed -- prevent installation and call provider"),j(...Y)}const k=i.isMetaMaskInstalled(),A=c==null?void 0:c.isConnected();let T=null,I=null,D=null;if(T=(R=v.getSelectedAddress())!==null&&R!==void 0?R:g,D=v.getChainId()||w,T&&p&&T!==g&&p.persistAccounts([T]).catch(Q=>{console.error(`[initializeMobileProvider] failed to persist account: ${Q}`)}),D&&(w=D,p&&p.persistChainId(D).catch(Q=>{console.error(`[initializeMobileProvider] failed to persist chainId: ${Q}`)})),G("[initializeMobileProvider: sendRequest()]",{selectedAddress:T,chainId:D}),B&&G(`[initializeMobileProvider: sendRequest()] method=${K} ongoing=${O} selectedAddress=${T} isInstalled=${k} checkInstallationOnAllCalls=${t} socketConnected=${A}`),T&&K.toLowerCase()===ue.ETH_ACCOUNTS.toLowerCase())return[T];if(D&&K.toLowerCase()===ue.ETH_CHAINID.toLowerCase())return D;const H=[ue.ETH_REQUESTACCOUNTS,ue.WALLET_REQUESTPERMISSIONS,ue.METAMASK_CONNECTSIGN,ue.METAMASK_CONNECTWITH],z=!so[K],Z=(_=s.options.readonlyRPCMap)===null||_===void 0?void 0:_[D];if(Z&&z)try{const Q=(P=Y==null?void 0:Y[0])===null||P===void 0?void 0:P.params,ne=yield(({rpcEndpoint:se,method:le,sdkInfo:re,params:ie})=>X(void 0,void 0,void 0,function*(){const ce=JSON.stringify({jsonrpc:"2.0",method:le,params:ie,id:(Yl+=1,Yl)}),ae={Accept:"application/json","Content-Type":"application/json"};let me;se.includes("infura")&&(ae["Metamask-Sdk-Info"]=re);try{me=yield Su(se,{method:"POST",headers:ae,body:ce})}catch(Ee){throw Ee instanceof Error?new Error(`Failed to fetch from RPC: ${Ee.message}`):new Error(`Failed to fetch from RPC: ${Ee}`)}if(!me.ok)throw new Error(`Server responded with a status of ${me.status}`);return(yield me.json()).result}))({rpcEndpoint:Z,sdkInfo:m,method:K,params:Q||[]});return B&&G(`initializeProvider::ReadOnlyRPCResponse ${ne}`),ne}catch(Q){console.warn(`[initializeMobileProvider: sendRequest()] method=${K} readOnlyRPCRequest failed:`,Q)}if((!k||k&&!A)&&K!==ue.METAMASK_GETPROVIDERSTATE){const Q=(($=Y==null?void 0:Y[0])===null||$===void 0?void 0:$.params)||[];if(H.indexOf(K)!==-1||t){N(!0);const ne=K===ue.METAMASK_CONNECTWITH,se=`${Date.now()}`;try{yield o.start({wait:!1,connectWith:ne?{method:K,id:se,params:Q}:void 0}),yield new Promise((le,re)=>{c!=null&&c.isAuthorized()&&(G("[initializeMobileProvider: sendRequest()] already authorized"),le(!0)),c==null||c.getConnector().once(te.AUTHORIZED,()=>{le(!0)}),s.once(te.PROVIDER_UPDATE,ie=>{G(`[initializeMobileProvider: sendRequest()] PROVIDER_UPDATE --- remote provider request interupted type=${ie}`),ie===Xt.EXTENSION?re(te.PROVIDER_UPDATE):re(new Error("Connection Terminated"))})})}catch(le){if(Xt.EXTENSION===le){if(G(`[initializeMobileProvider: sendRequest()] extension provider detect: re-create ${K} on the active provider`),K.toLowerCase()===ue.METAMASK_CONNECTSIGN.toLowerCase()){const re=yield(y=s.getProvider())===null||y===void 0?void 0:y.request({method:ue.ETH_REQUESTACCOUNTS,params:[]});if(!re.length)throw new Error("SDK state invalid -- undefined accounts");const ie=yield(E=s.getProvider())===null||E===void 0?void 0:E.request({method:ue.PERSONAL_SIGN,params:[Q[0],re[0]]});return s.emit(st.ConnectWithResponse,ie),ie}if(K.toLowerCase()===ue.METAMASK_CONNECTWITH.toLowerCase()){const[re]=Q,ie=yield(({method:ce,sdk:ae,params:me})=>X(void 0,void 0,void 0,function*(){var Ee,de,ge,ve;if(!ae.isExtensionActive())throw new Error("SDK state invalid -- extension is not active");G("[MetaMaskProvider: extensionConnectWithOverwrite()] Overwriting request method",ce,me);const Oe=yield(Ee=ae.getProvider())===null||Ee===void 0?void 0:Ee.request({method:ue.ETH_REQUESTACCOUNTS,params:[]});if(!Oe.length)throw new Error("SDK state invalid -- undefined accounts");if((ce==null?void 0:ce.toLowerCase())===ue.PERSONAL_SIGN.toLowerCase()){const ct={method:ce,params:[me[0],Oe[0]]};return yield(de=ae.getProvider())===null||de===void 0?void 0:de.request(ct)}if((ce==null?void 0:ce.toLowerCase())===ue.ETH_SENDTRANSACTION.toLowerCase()){const ct={method:ce,params:[Object.assign(Object.assign({},me[0]),{from:Oe[0]})]};return yield(ge=ae.getProvider())===null||ge===void 0?void 0:ge.request(ct)}return cf.includes(ce.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${ce} -- not handled by the extension -- call separately`),Oe):yield(ve=ae.getProvider())===null||ve===void 0?void 0:ve.request({method:ce,params:me})}))({method:re.method,sdk:s,params:re.params});return s.emit(st.ConnectWithResponse,ie),ie}return G(`[initializeMobileProvider: sendRequest()] sending '${K}' on active provider`,Q),yield(x=s.getProvider())===null||x===void 0?void 0:x.request({method:K,params:Q})}throw le===te.REJECTED?(c==null||c.closeModal(),(M=s.getProvider())===null||M===void 0||M.handleDisconnect({terminate:!1}),Object.assign(new Error("User rejected connection"),{code:4001})):(G(`[initializeMobileProvider: sendRequest()] failed to start installer: ${le}`),le)}finally{N(!1)}if(K===ue.ETH_REQUESTACCOUNTS)return I=yield new Promise(le=>{const re=setInterval(()=>{const{accounts:ie}=v.getState();ie&&(clearInterval(re),le(ie))},100)}),G(`[initializeMobileProvider: sendRequest()] selectedAddress: ${T} --- SKIP rpc call`),I;if(K===ue.METAMASK_CONNECTWITH)try{let le=0;const re=5,ie=({resolve:Ee,reject:de})=>{le+=1;const ge=c==null?void 0:c.getConnector().getRPCMethodTracker(),ve=ge==null?void 0:ge[se];return G(`TRACKER: update method ${se}`,ve),ve!=null&&ve.result?(G("[initializeMobileProvider: sendRequest()] found result",ve.result),s.emit(st.ConnectWithResponse,ve.result),void Ee(ve.result)):ve!=null&&ve.error?(G("[initializeMobileProvider: sendRequest()] found error",ve.error),void de(ve.error)):le>=re?(G("[initializeMobileProvider: sendRequest()] max message count reached without result"),void de(new Error("Max message count reached without result"))):void G("[initializeMobileProvider: sendRequest()] not found yet, need to wait for next update")};let ce,ae;const me=yield new Promise((Ee,de)=>{const ge=c==null?void 0:c.getConnector().getRPCMethodTracker();G(`TRACKER: method ${se}`,ge),ge!=null&&ge[se].result?(G("[initializeMobileProvider: sendRequest()] found result",ge==null?void 0:ge[se].result),Ee(ge==null?void 0:ge[se].result)):ge!=null&&ge[se].error&&(G("[initializeMobileProvider: sendRequest()] found error",ge==null?void 0:ge[se].error),de(ge==null?void 0:ge[se].error)),ae=()=>ie({resolve:Ee,reject:de}),ce=c==null?void 0:c.getConnector().on(te.RPC_UPDATE,ae)});return ae&&(ce==null||ce.off(te.RPC_UPDATE,ae)),G("TRACKER: result",me),me}catch(le){throw G("[initializeMobileProvider: sendRequest()] error:",le),le}return Y[0]&&typeof Y[0]=="object"&&(Y[0].params={__triggeredInstaller:!0,wrappedParams:Y[0].params}),j(...Y)}if(i.isSecure()&&so[K])return j(...Y);if(s.isExtensionActive())return G(`[initializeMobileProvider: sendRequest()] EXTENSION active - redirect request '${K}' to it`,Y,Q),yield(b=s.getProvider())===null||b===void 0?void 0:b.request({method:K,params:Q});throw G(`[initializeMobileProvider: sendRequest()] method=${K} --- skip --- not connected/installed`),new Error("MetaMask is not connected/installed, please call eth_requestAccounts to connect first.")}try{const Q=yield j(...Y);if(G(`[initializeMobileProvider: sendRequest()] method=${K} rpcResponse`,Q),K===ue.WALLET_REQUESTPERMISSIONS){const ne=Q.reduce((se,le)=>{var re;if(le.parentCapability==="eth_accounts"){const ie=(re=le.caveats.find(ce=>ce.type==="restrictReturnedAccounts"))===null||re===void 0?void 0:re.value;ie&&se.push(...ie)}return se},[]);G("[initializeMobileProvider: sendRequest()] accountsToPersist:",ne),ne.length>0&&(v.handleAccountsChanged(ne,!1),p==null||p.persistAccounts(ne))}return Q}catch(Q){throw console.error("[initializeMobileProvider: sendRequest()] error:",Q),Q}}),{request:q}=C;C.request=(...K)=>X(void 0,void 0,void 0,function*(){return W(K==null?void 0:K[0].method,K,q,a)});const{send:F}=C;return C.send=(...K)=>X(void 0,void 0,void 0,function*(){return W(K==null?void 0:K[0],K,F,a)}),G("[initializeMobileProvider: sendRequest()] metamaskStream.start()"),d.start(),C});function U2(t){var e,n,r,i;return X(this,void 0,void 0,function*(){const{options:o}=t,s={communicationLayerPreference:(e=o.communicationLayerPreference)!==null&&e!==void 0?e:Ln.SOCKET,platformManager:t.platformManager,sdk:t,checkInstallationOnAllCalls:o.checkInstallationOnAllCalls,injectProvider:(n=o.injectProvider)===null||n===void 0||n,shouldShimWeb3:(r=o.shouldShimWeb3)===null||r===void 0||r,extensionOnly:(i=o.extensionOnly)===null||i===void 0||i,installer:t.installer,remoteConnection:t.remoteConnection,debug:t.debug},c=yield K2(s);t.activeProvider=c,function(a){var l,u,d,h;(u=(l=a.remoteConnection)===null||l===void 0?void 0:l.getConnector())===null||u===void 0||u.on(st.ConnectionStatus,f=>{a.emit(st.ConnectionStatus,f)}),(h=(d=a.remoteConnection)===null||d===void 0?void 0:d.getConnector())===null||h===void 0||h.on(st.ServiceStatus,f=>{a.emit(st.ServiceStatus,f)})}(t)})}const F2="sdk";class H2{constructor({serverUrl:e,enabled:n,originatorInfo:r}){this.serverURL=rr,this.serverURL=e,this.originatorInfo=r,this.enabled=n==null||n}send({event:e,params:n}){if(!this.enabled)return;const r=Object.assign(Object.assign({id:F2,event:e,sdkVersion:Dn.version},this.originatorInfo),{params:n});G(`[Analytics: send()] event: ${e}`,r),Jt(r,this.serverURL).catch(i=>{G(`[Analytics: send()] error: ${i}`)})}}const z2=()=>{if(typeof document>"u")return;let t;const e=document.getElementsByTagName("link");for(let n=0;n{if("state"in t)throw new Error("INVALID EXTENSION PROVIDER");return new Proxy(t,{get:(n,r)=>r==="request"?function(i){var o,s;return X(this,void 0,void 0,function*(){G("[wrapExtensionProvider()] Overwriting request method",i);const{method:c,params:a}=i,l=L2.includes(c.toLowerCase()),{id:u,from:d}=Zl(e);if(l&&((o=e.analytics)===null||o===void 0||o.send({event:Te.SDK_RPC_REQUEST,params:{method:c,from:d,id:u}})),c===ue.METAMASK_BATCH&&Array.isArray(a))return(({target:f,args:m,trackEvent:g,sdkInstance:w})=>X(void 0,void 0,void 0,function*(){var p,S;if(m.method!=="metamask_batch")throw new Error("Invalid usage");const C=[],O=(p=m==null?void 0:m.params)!==null&&p!==void 0?p:[];for(const W of O){const q=yield f==null?void 0:f.request({method:W.method,params:W.params});C.push(q)}const{id:N,from:U}=Zl(w);return g&&((S=w.analytics)===null||S===void 0||S.send({event:Te.SDK_RPC_REQUEST_DONE,params:{method:m.method,from:U,id:N}})),C}))({target:n,args:i,trackEvent:l,sdkInstance:e});if(c.toLowerCase()===ue.METAMASK_CONNECTSIGN.toLowerCase()&&Array.isArray(a))return(({target:f,params:m})=>X(void 0,void 0,void 0,function*(){const g=yield f.request({method:ue.ETH_REQUESTACCOUNTS,params:[]});if(!g.length)throw new Error("SDK state invalid -- undefined accounts");return yield f.request({method:ue.PERSONAL_SIGN,params:[m[0],g[0]]})}))({target:n,params:a});if(c.toLowerCase()===ue.METAMASK_CONNECTWITH.toLowerCase()&&Array.isArray(a))return(({target:f,params:m})=>X(void 0,void 0,void 0,function*(){const[g]=m,w=g.method,p=g.params,S=yield f.request({method:ue.ETH_REQUESTACCOUNTS,params:[]});if(!S.length)throw new Error("SDK state invalid -- undefined accounts");return(w==null?void 0:w.toLowerCase())===ue.PERSONAL_SIGN.toLowerCase()?yield f.request({method:w,params:[p[0],S[0]]}):(w==null?void 0:w.toLowerCase())===ue.ETH_SENDTRANSACTION.toLowerCase()?yield f.request({method:w,params:[Object.assign(Object.assign({},p[0]),{from:S[0]})]}):cf.includes(w.toLowerCase())?(console.warn(`MetaMaskSDK connectWith method=${w} -- not handled by the extension -- call separately`),S):yield f.request({method:w,params:p})}))({target:n,params:a});let h;try{return h=yield n.request(i),h}finally{l&&((s=e.analytics)===null||s===void 0||s.send({event:Te.SDK_RPC_REQUEST_DONE,params:{method:c,from:d,id:u}}))}})}:r==="getChainId"?function(){return t.chainId}:r==="getNetworkVersion"?function(){return t.networkVersion}:r==="getSelectedAddress"?function(){return t.selectedAddress}:r==="isConnected"?function(){return t._state.isConnected}:n[r]})};var lo;function V2({mustBeMetaMask:t,sdkInstance:e}){return X(this,void 0,void 0,function*(){if(typeof window>"u")throw new Error("window not available");try{const n=yield new Promise((r,i)=>{const o=setTimeout(()=>{i(new Error("eip6963RequestProvider timed out"))},500);window.addEventListener(lo.Announce,s=>{const c=s,{detail:{info:a,provider:l}={}}=c,{name:u,rdns:d,uuid:h}=a??{};N2.test(h)&&u.startsWith(Wl.NAME)&&d===Wl.RDNS&&(clearTimeout(o),r(l))}),window.dispatchEvent(new Event(lo.Request))});return Ys({provider:n,sdkInstance:e})}catch{if(!t&&window.ethereum)return Ys({provider:window.ethereum,sdkInstance:e});throw new Error("Provider not found")}})}(function(t){t.Announce="eip6963:announceProvider",t.Request="eip6963:requestProvider"})(lo||(lo={}));const W2=t=>X(void 0,void 0,void 0,function*(){const{options:e}=t,{infuraAPIKey:n}=e;if(!n)return;const r={"0x1":`https://mainnet.infura.io/v3/${n}`,"0x5":`https://goerli.infura.io/v3/${n}`,"0xaa36a7":`https://sepolia.infura.io/v3/${n}`,"0xe708":`https://linea-mainnet.infura.io/v3/${n}`,"0xe704":`https://linea-goerli.infura.io/v3/${n}`,"0x89":`https://polygon-mainnet.infura.io/v3/${n}`,"0x13881":`https://polygon-mumbai.infura.io/v3/${n}`,"0x45":`https://optimism-mainnet.infura.io/v3/${n}`,"0x1a4":`https://optimism-goerli.infura.io/v3/${n}`,"0xa4b1":`https://arbitrum-mainnet.infura.io/v3/${n}`,"0x66eed":`https://arbitrum-goerli.infura.io/v3/${n}`,"0x2a15c308d":`https://palm-mainnet.infura.io/v3/${n}`,"0x2a15c3083":`https://palm-testnet.infura.io/v3/${n}`,"0xa86a":`https://avalanche-mainnet.infura.io/v3/${n}`,"0xa869":`https://avalanche-fuji.infura.io/v3/${n}`,"0x4e454152":`https://aurora-mainnet.infura.io/v3/${n}`,"0x4e454153":`https://aurora-testnet.infura.io/v3/${n}`,"0x534e5f4d41494e":`https://starknet-mainnet.infura.io/v3/${n}`,"0x534e5f474f45524c49":`https://starknet-goerli.infura.io/v3/${n}`,"0x534e5f474f45524c4932":`https://starknet-goerli2.infura.io/v3/${n}`,"0xa4ec":`https://celo-mainnet.infura.io/v3/${n}`,"0xaef3":`https://celo-alfajores.infura.io/v3/${n}`};t.options.readonlyRPCMap?t.options.readonlyRPCMap=Object.assign(Object.assign({},t.options.readonlyRPCMap),r):t.options.readonlyRPCMap=r});var df={exports:{}};df.exports=function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(r,i,o){n.o(r,i)||Object.defineProperty(r,i,{enumerable:!0,get:o})},n.r=function(r){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(r,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(r,"__esModule",{value:!0})},n.t=function(r,i){if(1&i&&(r=n(r)),8&i||4&i&&typeof r=="object"&&r&&r.__esModule)return r;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:r}),2&i&&typeof r!="string")for(var s in r)n.d(o,s,(function(c){return r[c]}).bind(null,s));return o},n.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(i,"a",i),i},n.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},n.p="",n(n.s=90)}({17:function(t,e,n){e.__esModule=!0,e.default=void 0;var r=n(18),i=function(){function o(){}return o.getFirstMatch=function(s,c){var a=c.match(s);return a&&a.length>0&&a[1]||""},o.getSecondMatch=function(s,c){var a=c.match(s);return a&&a.length>1&&a[2]||""},o.matchAndReturnConst=function(s,c,a){if(s.test(c))return a},o.getWindowsVersionName=function(s){switch(s){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},o.getMacOSVersionName=function(s){var c=s.split(".").splice(0,2).map(function(a){return parseInt(a,10)||0});if(c.push(0),c[0]===10)switch(c[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},o.getAndroidVersionName=function(s){var c=s.split(".").splice(0,2).map(function(a){return parseInt(a,10)||0});if(c.push(0),!(c[0]===1&&c[1]<5))return c[0]===1&&c[1]<6?"Cupcake":c[0]===1&&c[1]>=6?"Donut":c[0]===2&&c[1]<2?"Eclair":c[0]===2&&c[1]===2?"Froyo":c[0]===2&&c[1]>2?"Gingerbread":c[0]===3?"Honeycomb":c[0]===4&&c[1]<1?"Ice Cream Sandwich":c[0]===4&&c[1]<4?"Jelly Bean":c[0]===4&&c[1]>=4?"KitKat":c[0]===5?"Lollipop":c[0]===6?"Marshmallow":c[0]===7?"Nougat":c[0]===8?"Oreo":c[0]===9?"Pie":void 0},o.getVersionPrecision=function(s){return s.split(".").length},o.compareVersions=function(s,c,a){a===void 0&&(a=!1);var l=o.getVersionPrecision(s),u=o.getVersionPrecision(c),d=Math.max(l,u),h=0,f=o.map([s,c],function(m){var g=d-o.getVersionPrecision(m),w=m+new Array(g+1).join(".0");return o.map(w.split("."),function(p){return new Array(20-p.length).join("0")+p}).reverse()});for(a&&(h=d-Math.min(l,u)),d-=1;d>=h;){if(f[0][d]>f[1][d])return 1;if(f[0][d]===f[1][d]){if(d===h)return 0;d-=1}else if(f[0][d]1?u-1:0),h=1;h0){var S=Object.keys(m),C=c.default.find(S,function(F){return f.isOS(F)});if(C){var O=this.satisfies(m[C]);if(O!==void 0)return O}var N=c.default.find(S,function(F){return f.isPlatform(F)});if(N){var U=this.satisfies(m[N]);if(U!==void 0)return U}}if(p>0){var W=Object.keys(w),q=c.default.find(W,function(F){return f.isBrowser(F,!0)});if(q!==void 0)return this.compareVersion(w[q])}},d.isBrowser=function(h,f){f===void 0&&(f=!1);var m=this.getBrowserName().toLowerCase(),g=h.toLowerCase(),w=c.default.getBrowserTypeByAlias(g);return f&&w&&(g=w.toLowerCase()),g===m},d.compareVersion=function(h){var f=[0],m=h,g=!1,w=this.getBrowserVersion();if(typeof w=="string")return h[0]===">"||h[0]==="<"?(m=h.substr(1),h[1]==="="?(g=!0,m=h.substr(2)):f=[],h[0]===">"?f.push(1):f.push(-1)):h[0]==="="?m=h.substr(1):h[0]==="~"&&(g=!0,m=h.substr(1)),f.indexOf(c.default.compareVersions(w,m,g))>-1},d.isOS=function(h){return this.getOSName(!0)===String(h).toLowerCase()},d.isPlatform=function(h){return this.getPlatformType(!0)===String(h).toLowerCase()},d.isEngine=function(h){return this.getEngineName(!0)===String(h).toLowerCase()},d.is=function(h,f){return f===void 0&&(f=!1),this.isBrowser(h,f)||this.isOS(h)||this.isPlatform(h)},d.some=function(h){var f=this;return h===void 0&&(h=[]),h.some(function(m){return f.is(m)})},u}();e.default=l,t.exports=e.default},92:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=/version\/(\d+(\.?_?\d+)+)/i,s=[{test:[/googlebot/i],describe:function(c){var a={name:"Googlebot"},l=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/opera/i],describe:function(c){var a={name:"Opera"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/opr\/|opios/i],describe:function(c){var a={name:"Opera"},l=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/SamsungBrowser/i],describe:function(c){var a={name:"Samsung Internet for Android"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/Whale/i],describe:function(c){var a={name:"NAVER Whale Browser"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/MZBrowser/i],describe:function(c){var a={name:"MZ Browser"},l=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/focus/i],describe:function(c){var a={name:"Focus"},l=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/swing/i],describe:function(c){var a={name:"Swing"},l=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/coast/i],describe:function(c){var a={name:"Opera Coast"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(c){var a={name:"Opera Touch"},l=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/yabrowser/i],describe:function(c){var a={name:"Yandex Browser"},l=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/ucbrowser/i],describe:function(c){var a={name:"UC Browser"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/Maxthon|mxios/i],describe:function(c){var a={name:"Maxthon"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/epiphany/i],describe:function(c){var a={name:"Epiphany"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/puffin/i],describe:function(c){var a={name:"Puffin"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/sleipnir/i],describe:function(c){var a={name:"Sleipnir"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/k-meleon/i],describe:function(c){var a={name:"K-Meleon"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/micromessenger/i],describe:function(c){var a={name:"WeChat"},l=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/qqbrowser/i],describe:function(c){var a={name:/qqbrowserlite/i.test(c)?"QQ Browser Lite":"QQ Browser"},l=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/msie|trident/i],describe:function(c){var a={name:"Internet Explorer"},l=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/\sedg\//i],describe:function(c){var a={name:"Microsoft Edge"},l=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/edg([ea]|ios)/i],describe:function(c){var a={name:"Microsoft Edge"},l=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/vivaldi/i],describe:function(c){var a={name:"Vivaldi"},l=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/seamonkey/i],describe:function(c){var a={name:"SeaMonkey"},l=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/sailfish/i],describe:function(c){var a={name:"Sailfish"},l=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,c);return l&&(a.version=l),a}},{test:[/silk/i],describe:function(c){var a={name:"Amazon Silk"},l=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/phantom/i],describe:function(c){var a={name:"PhantomJS"},l=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/slimerjs/i],describe:function(c){var a={name:"SlimerJS"},l=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(c){var a={name:"BlackBerry"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/(web|hpw)[o0]s/i],describe:function(c){var a={name:"WebOS Browser"},l=i.default.getFirstMatch(o,c)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/bada/i],describe:function(c){var a={name:"Bada"},l=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/tizen/i],describe:function(c){var a={name:"Tizen"},l=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/qupzilla/i],describe:function(c){var a={name:"QupZilla"},l=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/firefox|iceweasel|fxios/i],describe:function(c){var a={name:"Firefox"},l=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/electron/i],describe:function(c){var a={name:"Electron"},l=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/MiuiBrowser/i],describe:function(c){var a={name:"Miui"},l=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/chromium/i],describe:function(c){var a={name:"Chromium"},l=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,c)||i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/chrome|crios|crmo/i],describe:function(c){var a={name:"Chrome"},l=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/GSA/i],describe:function(c){var a={name:"Google Search"},l=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:function(c){var a=!c.test(/like android/i),l=c.test(/android/i);return a&&l},describe:function(c){var a={name:"Android Browser"},l=i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/playstation 4/i],describe:function(c){var a={name:"PlayStation 4"},l=i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/safari|applewebkit/i],describe:function(c){var a={name:"Safari"},l=i.default.getFirstMatch(o,c);return l&&(a.version=l),a}},{test:[/.*/i],describe:function(c){var a=c.search("\\(")!==-1?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(a,c),version:i.default.getSecondMatch(a,c)}}}];e.default=s,t.exports=e.default},93:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:[/Roku\/DVP/],describe:function(c){var a=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,c);return{name:o.OS_MAP.Roku,version:a}}},{test:[/windows phone/i],describe:function(c){var a=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.WindowsPhone,version:a}}},{test:[/windows /i],describe:function(c){var a=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,c),l=i.default.getWindowsVersionName(a);return{name:o.OS_MAP.Windows,version:a,versionName:l}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(c){var a={name:o.OS_MAP.iOS},l=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,c);return l&&(a.version=l),a}},{test:[/macintosh/i],describe:function(c){var a=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,c).replace(/[_\s]/g,"."),l=i.default.getMacOSVersionName(a),u={name:o.OS_MAP.MacOS,version:a};return l&&(u.versionName=l),u}},{test:[/(ipod|iphone|ipad)/i],describe:function(c){var a=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,c).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:a}}},{test:function(c){var a=!c.test(/like android/i),l=c.test(/android/i);return a&&l},describe:function(c){var a=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,c),l=i.default.getAndroidVersionName(a),u={name:o.OS_MAP.Android,version:a};return l&&(u.versionName=l),u}},{test:[/(web|hpw)[o0]s/i],describe:function(c){var a=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,c),l={name:o.OS_MAP.WebOS};return a&&a.length&&(l.version=a),l}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(c){var a=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,c)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,c)||i.default.getFirstMatch(/\bbb(\d+)/i,c);return{name:o.OS_MAP.BlackBerry,version:a}}},{test:[/bada/i],describe:function(c){var a=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.Bada,version:a}}},{test:[/tizen/i],describe:function(c){var a=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.Tizen,version:a}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(c){var a=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.PlayStation4,version:a}}}];e.default=s,t.exports=e.default},94:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(c){var a=i.default.getFirstMatch(/(can-l01)/i,c)&&"Nova",l={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return a&&(l.model=a),l}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(c){var a=c.test(/ipod|iphone/i),l=c.test(/like (ipod|iphone)/i);return a&&!l},describe:function(c){var a=i.default.getFirstMatch(/(ipod|iphone)/i,c);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:a}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(c){return c.getBrowserName(!0)==="blackberry"},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(c){return c.getBrowserName(!0)==="bada"},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(c){return c.getBrowserName()==="windows phone"},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(c){var a=Number(String(c.getOSVersion()).split(".")[0]);return c.getOSName(!0)==="android"&&a>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(c){return c.getOSName(!0)==="android"},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(c){return c.getOSName(!0)==="macos"},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(c){return c.getOSName(!0)==="windows"},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(c){return c.getOSName(!0)==="linux"},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(c){return c.getOSName(!0)==="playstation 4"},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(c){return c.getOSName(!0)==="roku"},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];e.default=s,t.exports=e.default},95:function(t,e,n){e.__esModule=!0,e.default=void 0;var r,i=(r=n(17))&&r.__esModule?r:{default:r},o=n(18),s=[{test:function(c){return c.getBrowserName(!0)==="microsoft edge"},describe:function(c){if(/\sedg\//i.test(c))return{name:o.ENGINE_MAP.Blink};var a=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,c);return{name:o.ENGINE_MAP.EdgeHTML,version:a}}},{test:[/trident/i],describe:function(c){var a={name:o.ENGINE_MAP.Trident},l=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:function(c){return c.test(/presto/i)},describe:function(c){var a={name:o.ENGINE_MAP.Presto},l=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:function(c){var a=c.test(/gecko/i),l=c.test(/like gecko/i);return a&&!l},describe:function(c){var a={name:o.ENGINE_MAP.Gecko},l=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(c){var a={name:o.ENGINE_MAP.WebKit},l=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,c);return l&&(a.version=l),a}}];e.default=s,t.exports=e.default}});var hf=go(df.exports);class G2{constructor({useDeepLink:e,preferredOpenLink:n,debug:r=!1}){this.state={platformType:void 0,useDeeplink:!1,preferredOpenLink:void 0,debug:!1},this.state.platformType=this.getPlatformType(),this.state.useDeeplink=e,this.state.preferredOpenLink=n,this.state.debug=r}openDeeplink(e,n,r){return function(i,o,s,c){const{state:a}=i;G(`[PlatfformManager: openDeeplink()] universalLink --> ${o}`),G(`[PlatfformManager: openDeeplink()] deepLink --> ${s}`);try{if(a.preferredOpenLink)return void a.preferredOpenLink(a.useDeeplink?s:o,c);if(G(`[PlatfformManager: openDeeplink()] open link now useDeepLink=${a.useDeeplink} link=${a.useDeeplink?s:o}`),a.useDeeplink)typeof window<"u"&&(window.location.href=s);else if(typeof document<"u"){const l=document.createElement("a");l.href=o,l.target="_self",l.rel="noreferrer noopener",l.click()}}catch(l){console.log("[PlatfformManager: openDeeplink()] can't open link",l)}}(this,e,n,r)}isReactNative(){var e;return this.isNotBrowser()&&typeof window<"u"&&(window==null?void 0:window.navigator)&&((e=window.navigator)===null||e===void 0?void 0:e.product)==="ReactNative"}isMetaMaskInstalled(){return function(){const e=_t.getProvider()||(window==null?void 0:window.ethereum);return G(`[PlatfformManager: isMetaMaskInstalled()] isMetaMask=${e==null?void 0:e.isMetaMask} isConnected=${e==null?void 0:e.isConnected()}`),(e==null?void 0:e.isMetaMask)&&(e==null?void 0:e.isConnected())}()}isDesktopWeb(){return this.isBrowser()&&!this.isMobileWeb()}isMobile(){var e,n;const r=hf.parse(window.navigator.userAgent);return((e=r==null?void 0:r.platform)===null||e===void 0?void 0:e.type)==="mobile"||((n=r==null?void 0:r.platform)===null||n===void 0?void 0:n.type)==="tablet"}isSecure(){return this.isReactNative()||this.isMobileWeb()}isMetaMaskMobileWebView(){return typeof window<"u"&&!!window.ReactNativeWebView&&!!navigator.userAgent.endsWith("MetaMaskMobile")}isMobileWeb(){return this.state.platformType===He.MobileWeb}isNotBrowser(){var e;return typeof window>"u"||!(window!=null&&window.navigator)||Ye!==void 0&&((e=Ye==null?void 0:Ye.navigator)===null||e===void 0?void 0:e.product)==="ReactNative"||(navigator==null?void 0:navigator.product)==="ReactNative"}isNodeJS(){return this.isNotBrowser()&&!this.isReactNative()}isBrowser(){return!this.isNotBrowser()}isUseDeepLink(){return this.state.useDeeplink}getPlatformType(){return function(e){const{state:n}=e;return n.platformType?n.platformType:e.isReactNative()?He.ReactNative:e.isNotBrowser()?He.NonBrowser:e.isMetaMaskMobileWebView()?He.MetaMaskMobileWebview:e.isMobile()?He.MobileWeb:He.DesktopWeb}(this)}}const Y2=t=>X(void 0,void 0,void 0,function*(){const{options:e}=t,{readonlyRPCMap:n}=e;if(n)try{G("[MetaMaskSDK: setupReadOnlyRPCProviders()] Setting up Readonly RPC Providers",n),t.setReadOnlyRPCCalls(!0)}catch{throw new Error("Invalid Infura Settings")}});function Z2(t,e,n,r){return new(n||(n=Promise))(function(i,o){function s(l){try{a(r.next(l))}catch(u){o(u)}}function c(l){try{a(r.throw(l))}catch(u){o(u)}}function a(l){var u;l.done?i(l.value):(u=l.value,u instanceof n?u:new n(function(d){d(u)})).then(s,c)}a((r=r.apply(t,[])).next())})}function J2(t,e){var n,r,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(a){return function(l){return function(u){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,r&&(i=2&u[0]?r.return:u[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,u[1])).done)return i;switch(r=0,i&&(u=[2&u[0],i.value]),u[0]){case 0:case 1:i=u;break;case 4:return s.label++,{value:u[1],done:!1};case 5:s.label++,r=u[1],u=[0];continue;case 7:u=s.ops.pop(),s.trys.pop();continue;default:if(i=s.trys,!((i=i.length>0&&i[i.length-1])||u[0]!==6&&u[0]!==2)){s=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]e.onClose(i)),r.addEventListener("connectWithExtension",e.connectWithExtension),e.parentElement.appendChild(r),setTimeout(()=>this.updateQRCode(e.link),100)})}renderPendingModal(e){var n;return X(this,void 0,void 0,function*(){this.containers.pending=e.parentElement,yield this.loadComponent("pending");const r=document.createElement("mm-pending-modal");r.sdkVersion=(n=e.sdkVersion)!==null&&n!==void 0?n:this.sdkVersion,r.displayOTP=e.displayOTP,r.addEventListener("close",e.onClose),r.addEventListener("updateOTPValue",({detail:{otpValue:i}})=>e.updateOTPValue(i)),e.onDisconnect&&r.addEventListener("disconnect",e.onDisconnect),e.parentElement.appendChild(r)})}updateOTPValue(e){const n=()=>{var r;const i=(r=this.containers.pending)===null||r===void 0?void 0:r.querySelector("mm-pending-modal");return!!i&&(i.otpCode=e,!0)};setTimeout(()=>{n()},800)}updateQRCode(e){var n,r;const i=(n=this.containers.install)===null||n===void 0?void 0:n.querySelector("mm-install-modal");if(i)i.link=e;else{const o=(r=this.containers.select)===null||r===void 0?void 0:r.querySelector("mm-select-modal");o&&(o.link=e)}}unmount(){Object.entries(this.containers).forEach(([e,n])=>{var r;(r=n==null?void 0:n.parentNode)===null||r===void 0||r.removeChild(n),this.containers[e]=void 0})}}const tg=({link:t,debug:e,installer:n,terminate:r,connectWithExtension:i,preferDesktop:o})=>{let s=null,c=null;G("[UI: InstallModal-web: sdkWebInstallModal()] ################## Installing Modal #################"),G(`[UI: InstallModal-web: sdkWebInstallModal()] link=${t}`),G(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open "${t}" --ios`),G(`[UI: InstallModal-web: sdkWebInstallModal()] npx uri-scheme open "${t}" --android`),G(`[UI: InstallModal-web: sdkWebInstallModal()] adb shell am start -a android.intent.action.VIEW -d "${t}"`);const a=l=>{var u;G("[UI: InstallModal-web: sdkWebInstallModal()] installModal-web unmounting install modal -- shouldTerminate:",l,c),c!=null&&c.parentNode&&((u=c.parentNode)===null||u===void 0||u.removeChild(c)),c=null,s=null,l===!0&&(r==null||r())};return{mount:l=>{if(G("[UI: InstallModal-web: sdkWebInstallModal()] installModal-web mounting install modal",c),c)return c.style.display="block",void(s==null||s.updateQRCode(l));s=new ff({debug:e,sdkVersion:Dn.version}),c=document.createElement("div"),document.body.appendChild(c),window.extension?s.renderSelectModal({parentElement:c,connectWithExtension:()=>{a(),i==null||i()},onClose:a,link:t,preferDesktop:o!=null&&o}).catch(u=>{console.error(u)}):s.renderInstallModal({parentElement:c,preferDesktop:o!=null&&o,link:t,metaMaskInstaller:n,onClose:a}).catch(u=>{console.error("[UI: InstallModal-web: sdkWebInstallModal()]",u)})},unmount:a}},ng=({onDisconnect:t,debug:e})=>{let n=null,r=null;const i=()=>{G("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web unmount",n),n!=null&&n.parentNode&&n.parentNode.removeChild(n),n=null,r=null},o=c=>{G("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web updateOTPValue",c),r&&r.updateOTPValue(c)},s=({displayOTP:c}={displayOTP:!0})=>{G("[UI: pendingModal-web: sdkWebPendingModal()] pendingModal-web mount",n),n?n.style.display="block":(r=new ff({debug:e,sdkVersion:Dn.version}),n=document.createElement("div"),document.body.appendChild(n),r.renderPendingModal({parentElement:n,onClose:i,onDisconnect:t,updateOTPValue:o,displayOTP:c}).catch(a=>{console.error("[UI: pendingModal-web: sdkWebPendingModal()]",a)}))};return s(),{mount:s,unmount:i,updateOTPValue:o}};function pf(t,e){var n,r,i,o;t.connector||(G("[RemoteConnection: initializeConnector()] initialize connector"),t.connector=new i1({platformType:e.platformManager.getPlatformType(),communicationLayerPreference:e.communicationLayerPreference,transports:e.transports,dappMetadata:Object.assign(Object.assign({},e.dappMetadata),{source:e._source}),analytics:e.enableAnalytics,communicationServerUrl:e.communicationServerUrl,sdkVersion:Dn.version,context:"dapp",ecies:e.ecies,storage:e.storage,logging:e.logging}),e.timer&&(G("[RemoteConnection: initializeConnector()] reset background timer",e.timer),(r=(n=e.timer)===null||n===void 0?void 0:n.stopBackgroundTimer)===null||r===void 0||r.call(n),(o=(i=e.timer)===null||i===void 0?void 0:i.runBackgroundTimer)===null||o===void 0||o.call(i,()=>!1,1e4)))}function Zs(t){t.listeners.forEach(({event:e,handler:n})=>{var r;(r=t.connector)===null||r===void 0||r.off(e,n)}),t.listeners=[]}function rg(t,e,n){return X(this,void 0,void 0,function*(){return new Promise((r,i)=>{if(!t.connector)return void i(new Error("No connector available"));G("[RemoteConnection: connectWithModalInstaller()]",{state:t,options:e,linkParams:n});const o=`${t.useDeeplink?Ur:Kr}?${n}`;(function(s,c,a){var l,u,d,h;s.installModal=(u=(l=c.modals).install)===null||u===void 0?void 0:u.call(l,{link:a,preferDesktop:s.preferDesktop,installer:c.getMetaMaskInstaller(),terminate:()=>{G("[RemoteConnection: showInstallModal() => terminate()] terminate connection"),c.sdk.terminate().catch(f=>{console.warn("[MMSDK] failed to terminate connection",f)})},debug:s.developerMode,connectWithExtension:()=>{var f;return(f=c.connectWithExtensionProvider)===null||f===void 0||f.call(c),!1}}),(h=(d=s.installModal)===null||d===void 0?void 0:d.mount)===null||h===void 0||h.call(d,a)})(t,e,o),e.sdk.once(te.PROVIDER_UPDATE,s=>X(this,void 0,void 0,function*(){G("[RemoteConnection: connectWithModalInstaller()] once provider_update -- resolving startConnection promise"),s!==Xt.TERMINATE?i(s):i({code:4001,message:"User rejected the request."})})),t.connector.once(te.AUTHORIZED,()=>{r()}),t.connector.once(te.REJECTED,()=>{i(te.REJECTED)}),t.connector.once(te.CLIENTS_READY,()=>X(this,void 0,void 0,function*(){G("[RemoteConnection: connectWithModalInstaller()] once clients_ready -- resolving startConnection promise"),r()}))})})}function gf(t,e){function n(r,i){var o;(o=t.connector)===null||o===void 0||o.on(r,i),t.listeners.push({event:r,handler:i})}t.connector&&(Zs(t),n(te.WALLET_INIT,({accounts:r,chainId:i})=>X(this,void 0,void 0,function*(){G(`[RemoteConnection: setupListeners() => EventType.WALLET_INIT] 'wallet_init' accounts=${r} chainId=${i}`);const o=_t.getProvider();o._setConnected();const s={accounts:r,chainId:i,isUnlocked:!1};o._initializeState(s),o.emit("chainChanged",i),o.emit("accountsChanged",r)})),n(te.AUTHORIZED,()=>X(this,void 0,void 0,function*(){var r,i,o,s;try{G("[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' closing modals",t.pendingModal,t.installModal);const c=_t.getProvider();c._setConnected(),(i=(r=t.pendingModal)===null||r===void 0?void 0:r.unmount)===null||i===void 0||i.call(r),(s=(o=t.installModal)===null||o===void 0?void 0:o.unmount)===null||s===void 0||s.call(o,!1),t.otpAnswer=void 0,t.authorized=!0,G("[RemoteConnection: setupListeners() => EventType.AUTHORIZED] 'authorized' provider.state",c.getState()),yield c.forceInitializeState()}catch{}})),n(te.TERMINATE,()=>{var r,i,o,s,c;(i=(r=t.pendingModal)===null||r===void 0?void 0:r.unmount)===null||i===void 0||i.call(r),(s=(o=t.installModal)===null||o===void 0?void 0:o.unmount)===null||s===void 0||s.call(o,!0),t.pendingModal=void 0,t.installModal=void 0,t.otpAnswer=void 0,(c=t.connector)===null||c===void 0||c.disconnect({terminate:!0}),t.authorized=!1,_t.getProvider().handleDisconnect({terminate:!0}),Zs(t),G("[RemoteConnection: setupListeners()] All listeners cleaned up")}))}function ig(t,e,{initialCheck:n,connectWith:r}={}){var i,o,s,c,a,l,u,d,h,f,m,g,w,p,S,C,O,N,U;return X(this,void 0,void 0,function*(){try{if(pf(t,e),!t.connector)throw new Error("no connector defined");gf(t);const W=_t.getProvider();t.authorized=!1,W.emit("connecting");const q=yield(i=t.connector)===null||i===void 0?void 0:i.originatorSessionConnect();G(`[RemoteConnection: startConnection()] after originatorSessionConnect initialCheck=${n}`,q);let F=(o=q==null?void 0:q.channelId)!==null&&o!==void 0?o:"",K=(c=(s=t.connector.getKeyInfo())===null||s===void 0?void 0:s.ecies.public)!==null&&c!==void 0?c:"",Y=(l=(a=t.connector.getKeyInfo())===null||a===void 0?void 0:a.ecies.private)!==null&&l!==void 0?l:"";if(n&&!q)return Promise.resolve();if(!q&&!n){const A=yield t.connector.generateChannelIdConnect();F=(u=A.channelId)!==null&&u!==void 0?u:"",K=(d=A.pubKey)!==null&&d!==void 0?d:"",Y=(h=A.privKey)!==null&&h!==void 0?h:"";const T=Date.now();(f=t.connector.state.storageManager)===null||f===void 0||f.persistChannelConfig({channelId:F,localKey:Y,lastActive:T,validUntil:T+ir})}if(n&&(q!=null&&q.channelId))return!((m=t.connector)===null||m===void 0)&&m.isConnected()||(G(`[RemoteConnection: startConnection()] reconnecting to channel initialCheck=${n}`,q),yield(g=t.connector)===null||g===void 0?void 0:g.connectToChannel({channelId:F})),Promise.resolve();q&&!(!((w=t.connector)===null||w===void 0)&&w.isConnected())&&(G("[RemoteConnection: startConnection()] reconnecting to channel",q),yield(p=t.connector)===null||p===void 0?void 0:p.connectToChannel({channelId:F}));const j=!((S=t.platformManager)===null||S===void 0)&&S.isSecure()?"":"&t=q",B=Dn.version,{iconUrl:R,name:_,url:P,scheme:$}=e.dappMetadata||{},y=(C=t.platformManager)===null||C===void 0?void 0:C.getPlatformType();let E="N/A";typeof window<"u"&&window.location&&window.location.hostname?E=window.location.hostname:_!==void 0?E=_:P!==void 0&&(E=P);const x={url:P??"",title:_??"",icon:R,scheme:$??"",apiVersion:B,dappId:E||P||"N/A",platform:y??"",source:(O=e._source)!==null&&O!==void 0?O:""},M=co(JSON.stringify(x));let b=`channelId=${F}&v=2&comm=${(N=t.communicationLayerPreference)!==null&&N!==void 0?N:""}&pubkey=${K}${j}&originatorInfo=${M}`;if(r){b+=`&rpc=${co(JSON.stringify(r))}`;const A=t.connector.getRPCMethodTracker();A&&(A[`${r.id}`]=Object.assign(Object.assign({},r),{id:`${r.id}`,timestamp:Date.now()}))}const v=encodeURI(b),k=`${t.useDeeplink?Ur:Kr}?${b}`;return t.qrcodeLink=k,t.developerMode&&G(`[RemoteConnection: startConnection()] qrcodeLink=${v}`),W.emit("display_uri",k),!((U=t.platformManager)===null||U===void 0)&&U.isSecure()?(yield function(A,T){var I,D;return X(this,void 0,void 0,function*(){const H=`${Kr}?${T}`,z=`${Ur}?${T}`;(D=(I=A.platformManager)===null||I===void 0?void 0:I.openDeeplink)===null||D===void 0||D.call(I,H,z,"_self")})}(t,v),new Promise((A,T)=>{var I,D,H;!((I=t.connector)===null||I===void 0)&&I.isAuthorized()?A():((D=t.connector)===null||D===void 0||D.once(te.AUTHORIZED,()=>{A()}),(H=t.connector)===null||H===void 0||H.once(te.REJECTED,()=>{T(te.REJECTED)}))})):rg(t,e,v)}catch(W){throw console.error("[startConnection] error",W),W}})}class og{constructor(e){var n,r,i;this.state={connector:void 0,qrcodeLink:void 0,analytics:void 0,developerMode:!1,authorized:!1,reconnection:!1,preferDesktop:!1,deeplinkProtocol:!1,listeners:[],communicationLayerPreference:void 0,platformManager:void 0,pendingModal:void 0,installModal:void 0,otpAnswer:void 0},this.options=e;const o=((n=e.logging)===null||n===void 0?void 0:n.developerMode)===!0||((r=e.logging)===null||r===void 0?void 0:r.sdk)===!0;this.state.developerMode=o,this.state.analytics=e.analytics,this.state.preferDesktop=(i=e.preferDesktop)!==null&&i!==void 0&&i,this.state.useDeeplink=e.sdk.options.useDeeplink,this.state.communicationLayerPreference=e.communicationLayerPreference,this.state.platformManager=e.platformManager,e.modals.install||(e.modals.install=tg),e.modals.otp||(e.modals.otp=ng)}startConnection(e){return X(this,void 0,void 0,function*(){return ig(this.state,this.options,e)})}initRemoteCommunication({sdkInstance:e}){var n,r,i;return X(this,void 0,void 0,function*(){const o=yield(r=(n=e.options.storage)===null||n===void 0?void 0:n.storageManager)===null||r===void 0?void 0:r.getPersistedChannelConfig();if(!this.options.ecies){const s={privateKey:o==null?void 0:o.localKey};this.options.ecies=s}pf(this.state,this.options),yield(i=this.getConnector())===null||i===void 0?void 0:i.initFromDappStorage(),gf(this.state,this.options)})}showActiveModal(){return function(e){var n,r,i,o;e.authorized?G("[RemoteConnection: showActiveModal()] already authorized"):e.pendingModal?(r=(n=e.pendingModal).mount)===null||r===void 0||r.call(n):e.installModal&&((o=(i=e.installModal).mount)===null||o===void 0||o.call(i,e.qrcodeLink||""))}(this.state)}closeModal(){var e,n,r,i;(n=(e=this.state.pendingModal)===null||e===void 0?void 0:e.unmount)===null||n===void 0||n.call(e),(i=(r=this.state.installModal)===null||r===void 0?void 0:r.unmount)===null||i===void 0||i.call(r,!1)}getUniversalLink(){if(!this.state.qrcodeLink)throw new Error("connection not started. run startConnection() first.");return this.state.qrcodeLink}getChannelConfig(){var e;return(e=this.state.connector)===null||e===void 0?void 0:e.getChannelConfig()}getKeyInfo(){var e;return(e=this.state.connector)===null||e===void 0?void 0:e.getKeyInfo()}getConnector(){if(!this.state.connector)throw new Error("invalid remote connector");return this.state.connector}getPlatformManager(){if(!this.state.platformManager)throw new Error("PlatformManager not available");return this.state.platformManager}isConnected(){var e;return((e=this.state.connector)===null||e===void 0?void 0:e.isReady())||!1}isAuthorized(){var e;return((e=this.state.connector)===null||e===void 0?void 0:e.isAuthorized())||!1}isPaused(){var e;return(e=this.state.connector)===null||e===void 0?void 0:e.isPaused()}disconnect(e){var n,r,i;G("[RemoteConnection: disconnect()]",e),e!=null&&e.terminate&&(_t.getProvider().handleDisconnect({terminate:!0}),(r=(n=this.state.pendingModal)===null||n===void 0?void 0:n.unmount)===null||r===void 0||r.call(n),this.state.otpAnswer=void 0),(i=this.state.connector)===null||i===void 0||i.disconnect(e),function(o){G("[RemoteConnection: cleanupConnector()] cleaning up connector"),o.connector&&(Zs(o),o.connector.disconnect({terminate:!0}).catch(s=>{G("[RemoteConnection: cleanupConnector()] error disconnecting connector",s)}))}(this.state)}}function sg(t){var e,n,r,i,o,s,c,a,l,u,d;return X(this,void 0,void 0,function*(){const{options:h}=t;if(h.logging=(e=h.logging)!==null&&e!==void 0?e:{},h.communicationLayerPreference=(n=h.communicationLayerPreference)!==null&&n!==void 0?n:Ln.SOCKET,h.enableDebug!==void 0&&(Ge.enable("MM_SDK"),console.warn("enableDebug is removed. Please use enableAnalytics instead.")),h.enableAnalytics=(r=h.enableAnalytics)===null||r===void 0||r,h.injectProvider=(i=h.injectProvider)===null||i===void 0||i,h.shouldShimWeb3=(o=h.shouldShimWeb3)===null||o===void 0||o,h.extensionOnly=(s=h.extensionOnly)===null||s===void 0||s,h.useDeeplink=(c=h.useDeeplink)===null||c===void 0||c,h.storage=(a=h.storage)!==null&&a!==void 0?a:{enabled:!0},h.headless){Ge("[MetaMaskSDK: performSDKInitialization()] headless mode enabled");const S=()=>{},C={install:()=>({mount:S,unmount:S})},O={installer:S};h.modals=C,h.ui=O}const f=((l=h.logging)===null||l===void 0?void 0:l.developerMode)===!0;t.debug=((u=h.logging)===null||u===void 0?void 0:u.sdk)||f,G("[MetaMaskSDK: performSDKInitialization()] options",t.options);const m=Object.assign({},h.logging);f&&(m.sdk=!0,m.eciesLayer=!0,m.keyExchangeLayer=!0,m.remoteLayer=!0,m.serviceLayer=!0,m.plaintext=!0),yield function(S){var C;return X(this,void 0,void 0,function*(){const{options:O}=S;S.platformManager=new G2({useDeepLink:(C=O.useDeeplink)!==null&&C!==void 0&&C,preferredOpenLink:O.openDeeplink,debug:S.debug})})}(t),yield function(S){var C,O,N,U,W,q,F,K,Y;return X(this,void 0,void 0,function*(){const{options:j}=S,B=(C=S.platformManager)===null||C===void 0?void 0:C.getPlatformType();S.analytics=new H2({serverUrl:(O=j.communicationServerUrl)!==null&&O!==void 0?O:rr,enabled:j.enableAnalytics,originatorInfo:{url:(N=j.dappMetadata.url)!==null&&N!==void 0?N:"",title:(U=j.dappMetadata.name)!==null&&U!==void 0?U:"",dappId:typeof window>"u"||window.location===void 0?(K=(q=(W=j.dappMetadata)===null||W===void 0?void 0:W.name)!==null&&q!==void 0?q:(F=j.dappMetadata)===null||F===void 0?void 0:F.url)!==null&&K!==void 0?K:"N/A":window.location.hostname,platform:B??"",source:(Y=j._source)!==null&&Y!==void 0?Y:""}})})}(t),yield function(S){var C;return X(this,void 0,void 0,function*(){const{options:O}=S;((C=O.storage)===null||C===void 0?void 0:C.enabled)!==!0||O.storage.storageManager||(O.storage.storageManager=lf(O.storage))})}(t),yield function(S){return X(this,void 0,void 0,function*(){const{options:C}=S,O=/^(http|https):\/\/[^\s]*$/;if(C.dappMetadata){C.dappMetadata.iconUrl&&!O.test(C.dappMetadata.iconUrl)&&(console.warn("Invalid dappMetadata.iconUrl: URL must start with http:// or https://"),C.dappMetadata.iconUrl=void 0),C.dappMetadata.base64Icon&&C.dappMetadata.base64Icon.length>q2&&(console.warn("Invalid dappMetadata.base64Icon: Base64-encoded icon string length must be less than 163400 characters"),C.dappMetadata.base64Icon=void 0),C.dappMetadata.url&&!O.test(C.dappMetadata.url)&&console.warn("Invalid dappMetadata.url: URL must start with http:// or https://");const N=z2();if(N&&!C.dappMetadata.iconUrl&&!C.dappMetadata.base64Icon){const U=`${window.location.protocol}//${window.location.host}${N}`;C.dappMetadata.iconUrl=U}}S.dappMetadata=C.dappMetadata})}(t),yield W2(t),yield Y2(t);const{metamaskBrowserExtension:g,preferExtension:w,shouldReturn:p}=yield function(S){var C,O,N,U;return X(this,void 0,void 0,function*(){const{options:W}=S;let q,F=!1,K=!1;if(typeof window<"u"&&window.ethereum&&!(!((C=S.platformManager)===null||C===void 0)&&C.isMetaMaskMobileWebView())){F=localStorage.getItem(ao)==="extension";try{q=yield V2({mustBeMetaMask:!0,sdkInstance:S}),window.extension=q,q.on(kt.CHAIN_CHANGED,Y=>{G(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE chainChanged chainId=${Y}`),S.sdkProvider&&S.getMobileProvider().emit(kt.CHAIN_CHANGED,Y)}),q.on(kt.ACCOUNTS_CHANGED,Y=>{G(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE accountsChanged accounts=${Y}`);const j=!!S.sdkProvider,B=!!S.extensionActive;j&&S.getMobileProvider().emit(kt.ACCOUNTS_CHANGED,Y),B&&(Y==null?void 0:Y.length)===0&&G("[MetaMaskSDK: setupExtensionPreferences()] permissions were revoked on extension or extension was locked")}),q.on(kt.DISCONNECT,Y=>{G(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE disconnect error=${Y}`),S.sdkProvider&&S.getMobileProvider().emit(kt.DISCONNECT,Y)}),q.on(kt.CONNECT,Y=>{G(`[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connect args=${Y}`),S.sdkProvider&&S.getMobileProvider().emit(kt.CONNECT,Y)}),q.on(kt.CONNECTED,Y=>{G("[MetaMaskSDK: setupExtensionPreferences()] PROPAGATE connected",Y),S.sdkProvider&&S.getMobileProvider().emit(kt.CONNECTED,Y)})}catch{window.extension=void 0}}else!((O=S.platformManager)===null||O===void 0)&&O.isMetaMaskMobileWebView()&&((N=S.analytics)===null||N===void 0||N.send({event:Te.SDK_USE_INAPP_BROWSER}),S.activeProvider=Ys({provider:window.ethereum,sdkInstance:S}),S._initialized=!0,K=!0);return q&&W.extensionOnly&&(G("[MetaMaskSDK: setupExtensionPreferences()] EXTENSION ONLY --- prevent sdk initialization"),(U=S.analytics)===null||U===void 0||U.send({event:Te.SDK_USE_EXTENSION}),S.activeProvider=q,S.extensionActive=!0,S.extension=q,S._initialized=!0,K=!0),{preferExtension:F,shouldReturn:K,metamaskBrowserExtension:q}})}(t);if(p)G("[MetaMaskSDK: performSDKInitialization()] shouldReturn=true --- prevent sdk initialization");else{yield function(S,C){var O,N,U,W,q;return X(this,void 0,void 0,function*(){const{options:F}=S,K=Object.assign({},F.logging);S.remoteConnection=new og({preferDesktop:(O=F.preferDesktop)!==null&&O!==void 0&&O,communicationLayerPreference:(N=F.communicationLayerPreference)!==null&&N!==void 0?N:Ln.SOCKET,analytics:S.analytics,dappMetadata:F.dappMetadata,_source:F._source,enableAnalytics:(U=F.enableAnalytics)===null||U===void 0||U,timer:F.timer,sdk:S,platformManager:S.platformManager,transports:F.transports,communicationServerUrl:F.communicationServerUrl,storage:(W=F.storage)!==null&&W!==void 0?W:{enabled:!0},getMetaMaskInstaller:()=>{if(!S.installer)throw new Error("Invalid SDK status -- installer not initialized");return S.installer},logging:K,connectWithExtensionProvider:C===void 0?void 0:()=>Gl(S),modals:Object.assign(Object.assign({},F.modals),{onPendingModalDisconnect:S.terminate.bind(S)})}),yield S.remoteConnection.initRemoteCommunication({sdkInstance:S}),S.installer=new eg({remote:S.remoteConnection,preferDesktop:(q=F.preferDesktop)!==null&&q!==void 0&&q,platformManager:S.platformManager,debug:S.debug})})}(t,g),yield U2(t),yield function(S,C){var O,N;return X(this,void 0,void 0,function*(){const{options:U}=S;C?(G("[MetaMaskSDK: handleAutoAndExtensionConnections()] preferExtension is detected -- connect with it."),(O=S.analytics)===null||O===void 0||O.send({event:Te.SDK_EXTENSION_UTILIZED}),Gl(S).catch(W=>{console.warn("Can't connect with MetaMask extension...",W),localStorage.removeItem(ao)})):U.checkInstallationImmediately&&(!((N=S.platformManager)===null||N===void 0)&&N.isDesktopWeb()?(G("[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately"),S.connect().catch(W=>{G(`[MetaMaskSDK: handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- error on autoconnect _err=${W}`)})):console.warn("[handleAutoAndExtensionConnections()] checkInstallationImmediately --- IGNORED --- only for web desktop")),S._initialized=!0})}(t,w);try{yield(d=t.remoteConnection)===null||d===void 0?void 0:d.startConnection({initialCheck:!0})}catch(S){console.error("[MetaMaskSDK: setupRemoteConnectionAndInstaller()] Error while checking installation",S)}t.emit(st.ProviderUpdate,Xt.INITIALIZED)}})}class Zg extends Gf{constructor(e={storage:{enabled:!0},injectProvider:!0,forceInjectProvider:!1,enableAnalytics:!0,shouldShimWeb3:!0,useDeeplink:!0,extensionOnly:!0,headless:!1,dappMetadata:{name:"",url:"",iconUrl:""},_source:Vl,i18nOptions:{enabled:!1}}){var n,r,i;super(),this.extensionActive=!1,this._initialized=!1,this.sdkInitPromise=void 0,this.debug=!1,this.readonlyRPCCalls=!1,this.availableLanguages=["en"],Ge.disable();const o=((n=e.logging)===null||n===void 0?void 0:n.developerMode)===!0;if((!((r=e.logging)===null||r===void 0)&&r.sdk||o)&&Ge.enable("MM_SDK"),G("[MetaMaskSDK: constructor()]: begin."),this.setMaxListeners(50),!(!((i=e.dappMetadata)===null||i===void 0)&&i.url)){if(typeof window>"u"||typeof document>"u")throw new Error("You must provide dAppMetadata url");e.dappMetadata=Object.assign(Object.assign({},e.dappMetadata),{url:`${window.location.protocol}//${window.location.host}`})}this.options=e,this.options._source||(e._source=Vl),this.init().then(()=>{G("[MetaMaskSDK: constructor()]: initialized successfully."),typeof window<"u"&&(window.mmsdk=this)}).catch(s=>{console.error("[MetaMaskSDK: constructor()] error during initialization",s)})}init(){return X(this,void 0,void 0,function*(){return function(e){var n;return X(this,void 0,void 0,function*(){if(typeof window<"u"&&(!((n=window.mmsdk)===null||n===void 0)&&n.isInitialized()))return G("[MetaMaskSDK: initializeMetaMaskSDK()] already initialized"),Promise.resolve(window.mmsdk);if(e._initialized)return G("[MetaMaskSDK: initializeMetaMaskSDK()] already initialized"),e.sdkInitPromise;if(e.sdkInitPromise)return G("[MetaMaskSDK: initializeMetaMaskSDK()] already initializing"),e.sdkInitPromise;try{e.sdkInitPromise=sg(e),yield e.sdkInitPromise}catch(r){throw console.error(r),r}return e.sdkInitPromise})}(this)})}isExtensionActive(){return this.extensionActive}checkExtensionAvailability(){var e;return typeof window<"u"&&!!(!((e=window.ethereum)===null||e===void 0)&&e.isMetaMask)}connect(){return X(this,void 0,void 0,function*(){return function(e){return X(this,void 0,void 0,function*(){if(e._initialized||(G("[MetaMaskSDK: connect()] provider not ready -- wait for init()"),yield e.init()),G(`[MetaMaskSDK: connect()] isExtensionActive=${e.isExtensionActive()} activeProvider`,e.activeProvider),!e.activeProvider)throw new Error("SDK state invalid -- undefined provider");const n=e.activeProvider.getSelectedAddress();return n?[n]:e.activeProvider.request({method:ue.ETH_REQUESTACCOUNTS,params:[]})})}(this)})}connectAndSign({msg:e}){return X(this,void 0,void 0,function*(){return D2({instance:this,msg:e})})}connectWith(e){return X(this,void 0,void 0,function*(){return function({instance:n,rpc:r}){return X(this,void 0,void 0,function*(){if(n._initialized||(G("[MetaMaskSDK: connectWith()] provider not ready -- wait for init()"),yield n.init()),G(`[MetaMaskSDK: connectWith()] method: ${r.method} rpc=${r}`),!n.activeProvider)throw new Error("SDK state invalid -- undefined provider");return n.activeProvider.request({method:ue.METAMASK_CONNECTWITH,params:[r]})})}({instance:this,rpc:e})})}resume(){return function(e){var n,r,i;return X(this,void 0,void 0,function*(){if(!(!((r=(n=e.remoteConnection)===null||n===void 0?void 0:n.getConnector())===null||r===void 0)&&r.isReady()))return G("[MetaMaskSDK: resume()] channel is not ready -- starting connection"),void((i=e.remoteConnection)===null||i===void 0||i.startConnection());G("[MetaMaskSDK: resume()] channel is ready")})}(this)}disconnect(){return console.warn("MetaMaskSDK.disconnect() is deprecated, use terminate()"),this.terminate()}isAuthorized(){var e;(e=this.remoteConnection)===null||e===void 0||e.isAuthorized()}terminate(){return function(e){var n,r,i;return X(this,void 0,void 0,function*(){if(!(!((n=e.platformManager)===null||n===void 0)&&n.isMetaMaskMobileWebView())){if(B2&&(window.localStorage.removeItem(ao),window.localStorage.removeItem(Gs),window.localStorage.removeItem(Ws)),e.extensionActive){try{yield(r=e.activeProvider)===null||r===void 0?void 0:r.request({method:ue.WALLET_REVOKEPERMISSIONS,params:[{eth_accounts:{}}]})}catch(o){G("[MetaMaskSDK: terminate()] error revoking permissions",o)}return e.options.extensionOnly?void G("[MetaMaskSDK: terminate()] extensionOnly --- prevent switching providers"):(e.activeProvider=e.sdkProvider,window.ethereum=e.activeProvider,e.extensionActive=!1,void e.emit(st.ProviderUpdate,Xt.TERMINATE))}e.emit(st.ProviderUpdate,Xt.TERMINATE),G(`[MetaMaskSDK: terminate()] remoteConnection=${e.remoteConnection}`),(i=e.remoteConnection)===null||i===void 0||i.disconnect({terminate:!0,sendMessage:!0})}})}(this)}isInitialized(){return this._initialized}setReadOnlyRPCCalls(e){this.readonlyRPCCalls=e}hasReadOnlyRPCCalls(){return this.readonlyRPCCalls}getProvider(){if(this.activeProvider)return this.activeProvider;console.warn("MetaMaskSDK: No active provider found")}getMobileProvider(){if(!this.sdkProvider)throw new Error("SDK state invalid -- undefined mobile provider");return this.sdkProvider}getUniversalLink(){var e;const n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getUniversalLink();if(!n)throw new Error("No Universal Link available, please call eth_requestAccounts first.");return n}getChannelId(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getChannelConfig())===null||n===void 0?void 0:n.channelId}getRPCHistory(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0?void 0:n.getRPCMethodTracker()}getVersion(){return Dn.version}getWalletStatus(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0?void 0:n.getConnectionStatus()}_getChannelConfig(){var e;return(e=this.remoteConnection)===null||e===void 0?void 0:e.getChannelConfig()}_ping(){var e,n;(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0||n.ping()}_keyCheck(){var e,n;(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0||n.keyCheck()}_getServiceStatus(){var e,n;return(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0?void 0:n.getServiceStatus()}_getRemoteConnection(){return this.remoteConnection}_getDappMetadata(){return this.dappMetadata}_getKeyInfo(){var e;return(e=this.remoteConnection)===null||e===void 0?void 0:e.getKeyInfo()}_resetKeys(){var e,n;(n=(e=this.remoteConnection)===null||e===void 0?void 0:e.getConnector())===null||n===void 0||n.resetKeys()}_getConnection(){return this.remoteConnection}emit(e,n){return super.emit(e,n)}on(e,n){return super.on(e,n)}}const ag="hydrated",cg=!1,lg=!1,ug=!0;var dg=Object.defineProperty,Ba=new WeakMap,vn=t=>Ba.get(t),Da=(t,e)=>Ba.set(e.$lazyInstance$=t,e),iu=(t,e)=>e in t,qt=(t,e)=>(0,console.error)(t,e),fs=new Map,Ni=new Map,mf="slot-fb{display:contents}slot-fb[hidden]{display:none}",Eo=typeof window<"u"?window:{},It=Eo.document||{head:{}},$e={$flags$:0,$resourcesUrl$:"",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,r)=>t.addEventListener(e,n,r),rel:(t,e,n,r)=>t.removeEventListener(e,n,r),ce:(t,e)=>new CustomEvent(t,e)},yf=(()=>{try{return new CSSStyleSheet,typeof new CSSStyleSheet().replaceSync=="function"}catch{}return!1})(),Js=!1,ou=[],vf=[],hg=(t,e)=>n=>{t.push(n),Js||(Js=!0,4&$e.$flags$?$a(Xs):$e.raf(Xs))},su=t=>{for(let e=0;e{su(ou),su(vf),(Js=ou.length>0)&&$e.raf(Xs)},$a=t=>(e=>Promise.resolve(e))().then(t),fg=hg(vf),au={},ja=t=>(t=typeof t)=="object"||t==="function";function bf(t){var e,n,r;return(r=(n=(e=t.head)==null?void 0:e.querySelector('meta[name="csp-nonce"]'))==null?void 0:n.getAttribute("content"))!=null?r:void 0}((t,e)=>{for(var n in e)dg(t,n,{get:e[n],enumerable:!0})})({},{err:()=>wf,map:()=>pg,ok:()=>Qs,unwrap:()=>gg,unwrapErr:()=>mg});var Qs=t=>({isOk:!0,isErr:!1,value:t}),wf=t=>({isOk:!1,isErr:!0,value:t});function pg(t,e){if(t.isOk){const n=e(t.value);return n instanceof Promise?n.then(r=>Qs(r)):Qs(n)}if(t.isErr){const n=t.value;return wf(n)}throw"should never get here"}var Bi,Ka,gg=t=>{if(t.isOk)return t.value;throw t.value},mg=t=>{if(t.isErr)return t.value;throw t.value},L=(t,e,...n)=>{let r=null,i=!1,o=!1;const s=[],c=l=>{for(let u=0;ul[u]).join(" "))}if(typeof t=="function")return t(e===null?{}:e,s,vg);const a=uo(t,null);return a.$attrs$=e,s.length>0&&(a.$children$=s),a},uo=(t,e)=>({$flags$:0,$tag$:t,$text$:e,$elm$:null,$children$:null,$attrs$:null}),yg={},vg={forEach:(t,e)=>t.map(cu).forEach(e),map:(t,e)=>t.map(cu).map(e).map(bg)},cu=t=>({vattrs:t.$attrs$,vchildren:t.$children$,vkey:t.$key$,vname:t.$name$,vtag:t.$tag$,vtext:t.$text$}),bg=t=>{if(typeof t.vtag=="function"){const n={...t.vattrs};return t.vkey&&(n.key=t.vkey),t.vname&&(n.name=t.vname),L(t.vtag,n,...t.vchildren||[])}const e=uo(t.vtag,t.vtext);return e.$attrs$=t.vattrs,e.$children$=t.vchildren,e.$key$=t.vkey,e.$name$=t.vname,e},Co=t=>vn(t).$hostElement$,On=(t,e,n)=>{const r=Co(t);return{emit:i=>Ef(r,e,{bubbles:!!(4&n),composed:!!(2&n),cancelable:!!(1&n),detail:i})}},Ef=(t,e,n)=>{const r=$e.ce(e,n);return t.dispatchEvent(r),r},lu=new WeakMap,wg=t=>{const e=t.$cmpMeta$,n=t.$hostElement$,r=e.$flags$;e.$tagName$;const i=((o,s,c)=>{var a;const l=Cf(s),u=Ni.get(l);if(o=o.nodeType===11?o:It,u)if(typeof u=="string"){o=o.head||o;let d,h=lu.get(o);if(h||lu.set(o,h=new Set),!h.has(l)){{d=It.createElement("style"),d.innerHTML=u;const f=(a=$e.$nonce$)!=null?a:bf(It);if(f!=null&&d.setAttribute("nonce",f),!(1&s.$flags$))if(o.nodeName==="HEAD"){const m=o.querySelectorAll("link[rel=preconnect]"),g=m.length>0?m[m.length-1].nextSibling:o.querySelector("style");o.insertBefore(d,g)}else if("host"in o)if(yf){const m=new CSSStyleSheet;m.replaceSync(u),o.adoptedStyleSheets=[m,...o.adoptedStyleSheets]}else{const m=o.querySelector("style");m?m.innerHTML=u+m.innerHTML:o.prepend(d)}else o.append(d);1&s.$flags$&&o.nodeName!=="HEAD"&&o.insertBefore(d,null)}4&s.$flags$&&(d.innerHTML+=mf),h&&h.add(l)}}else o.adoptedStyleSheets.includes(u)||(o.adoptedStyleSheets=[...o.adoptedStyleSheets,u]);return l})(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);10&r&&2&r&&(n["s-sc"]=i,n.classList.add(i+"-h"))},Cf=(t,e)=>"sc-"+t.$tagName$,uu=(t,e,n,r,i,o)=>{if(n!==r){let s=iu(t,e),c=e.toLowerCase();if(e==="class"){const a=t.classList,l=du(n),u=du(r);a.remove(...l.filter(d=>d&&!u.includes(d))),a.add(...u.filter(d=>d&&!l.includes(d)))}else if(e==="style"){for(const a in n)r&&r[a]!=null||(a.includes("-")?t.style.removeProperty(a):t.style[a]="");for(const a in r)n&&r[a]===n[a]||(a.includes("-")?t.style.setProperty(a,r[a]):t.style[a]=r[a])}else if(s||e[0]!=="o"||e[1]!=="n"){const a=ja(r);if((s||a&&r!==null)&&!i)try{if(t.tagName.includes("-"))t[e]=r;else{const l=r??"";e==="list"?s=!1:n!=null&&t[e]==l||(typeof t.__lookupSetter__(e)=="function"?t[e]=l:t.setAttribute(e,l))}}catch{}r==null||r===!1?r===!1&&t.getAttribute(e)!==""||t.removeAttribute(e):(!s||4&o||i)&&!a&&(r=r===!0?"":r,t.setAttribute(e,r))}else if(e=e[2]==="-"?e.slice(3):iu(Eo,c)?c.slice(2):c[2]+e.slice(3),n||r){const a=e.endsWith(_f);e=e.replace(Cg,""),n&&$e.rel(t,e,n,a),r&&$e.ael(t,e,r,a)}}},Eg=/\s/,du=t=>t?t.split(Eg):[],_f="Capture",Cg=new RegExp(_f+"$"),Sf=(t,e,n)=>{const r=e.$elm$.nodeType===11&&e.$elm$.host?e.$elm$.host:e.$elm$,i=t&&t.$attrs$||au,o=e.$attrs$||au;for(const s of hu(Object.keys(i)))s in o||uu(r,s,i[s],void 0,n,e.$flags$);for(const s of hu(Object.keys(o)))uu(r,s,i[s],o[s],n,e.$flags$)};function hu(t){return t.includes("ref")?[...t.filter(e=>e!=="ref"),"ref"]:t}var kf=!1,gt=!1,Ua=(t,e,n,r)=>{const i=e.$children$[n];let o,s,c=0;if(i.$text$!==null)o=i.$elm$=It.createTextNode(i.$text$);else{if(gt||(gt=i.$tag$==="svg"),o=i.$elm$=It.createElementNS(gt?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",!kf&&lg&&2&i.$flags$?"slot-fb":i.$tag$),gt&&i.$tag$==="foreignObject"&&(gt=!1),Sf(null,i,gt),o.getRootNode().querySelector("body")&&cg&&(a=>a!=null)(Bi)&&o["s-si"]!==Bi&&o.classList.add(o["s-si"]=Bi),i.$children$)for(c=0;c{let s,c=t;for(c.shadowRoot&&c.tagName===Ka&&(c=c.shadowRoot);i<=o;++i)r[i]&&(s=Ua(null,n,i),s&&(r[i].$elm$=s,Di(c,s,e)))},pu=(t,e,n)=>{for(let r=e;r<=n;++r){const i=t[r];if(i){const o=i.$elm$;o&&o.remove()}}},yi=(t,e,n=!1)=>t.$tag$===e.$tag$,Er=(t,e,n=!1)=>{const r=e.$elm$=t.$elm$,i=t.$children$,o=e.$children$,s=e.$tag$,c=e.$text$;c===null?(Sf(t,e,gt=s==="svg"||s!=="foreignObject"&>),i!==null&&o!==null?((a,l,u,d,h=!1)=>{let f,m=0,g=0,w=l.length-1,p=l[0],S=l[w],C=d.length-1,O=d[0],N=d[C];for(;m<=w&&g<=C;)p==null?p=l[++m]:S==null?S=l[--w]:O==null?O=d[++g]:N==null?N=d[--C]:yi(p,O,h)?(Er(p,O,h),p=l[++m],O=d[++g]):yi(S,N,h)?(Er(S,N,h),S=l[--w],N=d[--C]):yi(p,N,h)?(Er(p,N,h),Di(a,p.$elm$,S.$elm$.nextSibling),p=l[++m],N=d[--C]):yi(S,O,h)?(Er(S,O,h),Di(a,S.$elm$,p.$elm$),S=l[--w],O=d[++g]):(f=Ua(l&&l[g],u,g),O=d[++g],f&&Di(p.$elm$.parentNode,f,p.$elm$));m>w?fu(a,d[C+1]==null?null:d[C+1].$elm$,u,d,g,C):g>C&&pu(l,m,w)})(r,i,e,o,n):o!==null?(t.$text$!==null&&(r.textContent=""),fu(r,null,e,o,0,o.length-1)):!n&&ug&&i!==null&&pu(i,0,i.length-1),gt&&s==="svg"&&(gt=!1)):t.$text$!==c&&(r.data=c)},Di=(t,e,n)=>t==null?void 0:t.insertBefore(e,n),_g=(t,e,n=!1)=>{const r=t.$hostElement$,i=t.$cmpMeta$,o=t.$vnode$||uo(null,null),s=(c=e)&&c.$tag$===yg?e:L(null,null,e);var c;if(Ka=r.tagName,n&&s.$attrs$)for(const a of Object.keys(s.$attrs$))r.hasAttribute(a)&&!["key","ref","style","class"].includes(a)&&(s.$attrs$[a]=r[a]);s.$tag$=null,s.$flags$|=4,t.$vnode$=s,s.$elm$=o.$elm$=r.shadowRoot||r,Bi=r["s-sc"],kf=(1&i.$flags$)!=0,Er(o,s,n)},xf=(t,e)=>{e&&!t.$onRenderResolve$&&e["s-p"]&&e["s-p"].push(new Promise(n=>t.$onRenderResolve$=n))},Fa=(t,e)=>(t.$flags$|=16,4&t.$flags$?void(t.$flags$|=512):(xf(t,t.$ancestorComponent$),fg(()=>Sg(t,e)))),Sg=(t,e)=>{const n=t.$hostElement$;t.$cmpMeta$.$tagName$;const r=t.$lazyInstance$;if(!r)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);return kg(void 0,()=>Ag(t,r,e))},kg=(t,e)=>xg(t)?t.then(e).catch(n=>{console.error(n),e()}):e(),xg=t=>t instanceof Promise||t&&t.then&&typeof t.then=="function",Ag=async(t,e,n)=>{var r;const i=t.$hostElement$;t.$cmpMeta$.$tagName$;const o=i["s-rc"];n&&wg(t),t.$cmpMeta$.$tagName$,Mg(t,e,i,n),o&&(o.map(s=>s()),i["s-rc"]=void 0);{const s=(r=i["s-p"])!=null?r:[],c=()=>Tg(t);s.length===0?c():(Promise.all(s).then(c),t.$flags$|=4,s.length=0)}},Mg=(t,e,n,r)=>{try{e=e.render(),t.$flags$&=-17,t.$flags$|=2,_g(t,e,r)}catch(i){qt(i,t.$hostElement$)}return null},Tg=t=>{t.$cmpMeta$.$tagName$;const e=t.$hostElement$,n=()=>{},r=t.$ancestorComponent$;64&t.$flags$?n():(t.$flags$|=64,Tf(e),t.$onReadyResolve$(e),r||Af()),t.$onRenderResolve$&&(t.$onRenderResolve$(),t.$onRenderResolve$=void 0),512&t.$flags$&&$a(()=>Fa(t,!1)),t.$flags$&=-517},Af=t=>{Tf(It.documentElement),$a(()=>Ef(Eo,"appload",{detail:{namespace:"sdk-install-modal-web"}}))},Mf=(t,e,n)=>{if(t&&t[e])try{return t[e](n)}catch(r){qt(r)}},Tf=t=>{var e;return t.classList.add((e=ag)!=null?e:"hydrated")},Rg=(t,e,n,r)=>{const i=vn(t);if(!i)throw new Error(`Couldn't find host element for "${r.$tagName$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const o=i.$hostElement$,s=i.$instanceValues$.get(e),c=i.$flags$,a=i.$lazyInstance$;var l,u;l=n,u=r.$members$[e][0],n=l==null||ja(l)?l:4&u?l!=="false"&&(l===""||!!l):1&u?String(l):l;const d=Number.isNaN(s)&&Number.isNaN(n);if((!(8&c)||s===void 0)&&n!==s&&!d&&(i.$instanceValues$.set(e,n),a)){if(r.$watchers$&&128&c){const h=r.$watchers$[e];h&&h.map(f=>{try{a[f](n,s,e)}catch(m){qt(m,o)}})}(18&c)==2&&Fa(i,!1)}},Rf=(t,e,n)=>{var r,i;const o=t.prototype;if(e.$members$||e.$watchers$||t.watchers){t.watchers&&!e.$watchers$&&(e.$watchers$=t.watchers);const s=Object.entries((r=e.$members$)!=null?r:{});if(s.map(([c,[a]])=>{(31&a||2&n&&32&a)&&Object.defineProperty(o,c,{get(){return l=c,vn(this).$instanceValues$.get(l);var l},set(l){Rg(this,c,l,e)},configurable:!0,enumerable:!0})}),1&n){const c=new Map;o.attributeChangedCallback=function(a,l,u){$e.jmp(()=>{var d;const h=c.get(a);if(this.hasOwnProperty(h))u=this[h],delete this[h];else{if(o.hasOwnProperty(h)&&typeof this[h]=="number"&&this[h]==u)return;if(h==null){const f=vn(this),m=f==null?void 0:f.$flags$;if(m&&!(8&m)&&128&m&&u!==l){const g=f.$lazyInstance$,w=(d=e.$watchers$)==null?void 0:d[a];w==null||w.forEach(p=>{g[p]!=null&&g[p].call(g,u,l,a)})}return}}this[h]=(u!==null||typeof this[h]!="boolean")&&u})},t.observedAttributes=Array.from(new Set([...Object.keys((i=e.$watchers$)!=null?i:{}),...s.filter(([a,l])=>15&l[0]).map(([a,l])=>{const u=l[1]||a;return c.set(u,a),u})]))}}return t},Og=async(t,e,n,r)=>{let i;if(!(32&e.$flags$)){if(e.$flags$|=32,n.$lazyBundleId$){const c=((a,l,u)=>{const d=a.$tagName$.replace(/-/g,"_"),h=a.$lazyBundleId$;if(!h)return;const f=fs.get(h);if(f)return f[d];{const m=g=>(fs.set(h,g),g[d]);switch(h){case"mm-install-modal":return Promise.resolve().then(function(){return zg}).then(m,qt);case"mm-pending-modal":return Promise.resolve().then(function(){return qg}).then(m,qt);case"mm-select-modal":return Promise.resolve().then(function(){return Gg}).then(m,qt)}}return Ff(()=>import(`./${h}.entry.js`),[],import.meta.url).then(m=>(fs.set(h,m),m[d]),qt)})(n);if(c&&"then"in c?i=await c:i=c,!i)throw new Error(`Constructor for "${n.$tagName$}#${e.$modeName$}" was not found`);i.isProxied||(n.$watchers$=i.watchers,Rf(i,n,2),i.isProxied=!0),n.$tagName$,e.$flags$|=8;try{new i(e)}catch(a){qt(a)}e.$flags$&=-9,e.$flags$|=128,ea(e.$lazyInstance$)}else{i=t.constructor;const c=t.localName;customElements.whenDefined(c).then(()=>e.$flags$|=128)}if(i&&i.style){let c;typeof i.style=="string"&&(c=i.style);const a=Cf(n);Ni.has(a)||(n.$tagName$,((l,u,d)=>{let h=Ni.get(l);yf&&d?(h=h||new CSSStyleSheet,typeof h=="string"?h=u:h.replaceSync(u)):h=u,Ni.set(l,h)})(a,c,!!(1&n.$flags$)))}}const o=e.$ancestorComponent$,s=()=>Fa(e,!0);o&&o["s-rc"]?o["s-rc"].push(s):s()},ea=t=>{Mf(t,"connectedCallback")},gu=t=>{Mf(t,"disconnectedCallback")},Lg=(t,e={})=>{var n;const r=[],i=e.exclude||[],o=Eo.customElements,s=It.head,c=s.querySelector("meta[charset]"),a=It.createElement("style"),l=[];let u,d=!0;Object.assign($e,e),$e.$resourcesUrl$=new URL(e.resourcesUrl||"./",It.baseURI).href;let h=!1;if(t.map(f=>{f[1].map(m=>{var g;const w={$flags$:m[0],$tagName$:m[1],$members$:m[2],$listeners$:m[3]};4&w.$flags$&&(h=!0),w.$members$=m[2],w.$watchers$=(g=m[4])!=null?g:{};const p=w.$tagName$,S=class extends HTMLElement{constructor(C){if(super(C),this.hasRegisteredEventListeners=!1,((O,N)=>{const U={$flags$:0,$hostElement$:O,$cmpMeta$:N,$instanceValues$:new Map};U.$onReadyPromise$=new Promise(W=>U.$onReadyResolve$=W),O["s-p"]=[],O["s-rc"]=[],Ba.set(O,U)})(C=this,w),1&w.$flags$)if(C.shadowRoot){if(C.shadowRoot.mode!=="open")throw new Error(`Unable to re-use existing shadow root for ${w.$tagName$}! Mode is set to ${C.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else C.attachShadow({mode:"open"})}connectedCallback(){vn(this),this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),u&&(clearTimeout(u),u=null),d?l.push(this):$e.jmp(()=>(C=>{if(!(1&$e.$flags$)){const O=vn(C),N=O.$cmpMeta$;if(N.$tagName$,1&O.$flags$)O!=null&&O.$lazyInstance$?ea(O.$lazyInstance$):O!=null&&O.$onReadyPromise$&&O.$onReadyPromise$.then(()=>ea(O.$lazyInstance$));else{O.$flags$|=1;{let U=C;for(;U=U.parentNode||U.host;)if(U["s-p"]){xf(O,O.$ancestorComponent$=U);break}}N.$members$&&Object.entries(N.$members$).map(([U,[W]])=>{if(31&W&&C.hasOwnProperty(U)){const q=C[U];delete C[U],C[U]=q}}),Og(C,O,N)}}})(this))}disconnectedCallback(){$e.jmp(()=>(async C=>{if(!(1&$e.$flags$)){const O=vn(C);O!=null&&O.$lazyInstance$?gu(O.$lazyInstance$):O!=null&&O.$onReadyPromise$&&O.$onReadyPromise$.then(()=>gu(O.$lazyInstance$))}})(this))}componentOnReady(){return vn(this).$onReadyPromise$}};w.$lazyBundleId$=f[0],i.includes(p)||o.get(p)||(r.push(p),o.define(p,Rf(S,w,1)))})}),r.length>0&&(h&&(a.textContent+=mf),a.textContent+=r.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",a.innerHTML.length)){a.setAttribute("data-styles","");const f=(n=$e.$nonce$)!=null?n:bf(It);f!=null&&a.setAttribute("nonce",f),s.insertBefore(a,c?c.nextSibling:s.firstChild)}d=!1,l.length?l.map(f=>f.connectedCallback()):$e.jmp(()=>u=setTimeout(Af,30))};(function(){if(typeof window<"u"&&window.Reflect!==void 0&&window.customElements!==void 0){var t=HTMLElement;window.HTMLElement=function(){return Reflect.construct(t,[],this.constructor)},HTMLElement.prototype=t.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,t)}})();var Pg=Object.freeze({__proto__:null,defineCustomElements:async(t,e)=>{if(typeof window<"u")return await void 0,Lg([["mm-install-modal",[[1,"mm-install-modal",{link:[1],sdkVersion:[1,"sdk-version"],preferDesktop:[4,"prefer-desktop"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:["updatePreferDesktop"]}]]],["mm-pending-modal",[[1,"mm-pending-modal",{displayOTP:[4,"display-o-t-p"],sdkVersion:[1,"sdk-version"],otpCode:[1,"otp-code"],translationsLoaded:[32]}]]],["mm-select-modal",[[1,"mm-select-modal",{link:[1],sdkVersion:[1,"sdk-version"],preferDesktop:[4,"prefer-desktop"],tab:[32],isDefaultTab:[32],translationsLoaded:[32]},null,{preferDesktop:["updatePreferDesktop"]}]]]],e)},setNonce:t=>$e.$nonce$=t});const Ig={fontFamily:"Roboto, sans-serif"},Ha=({className:t},e)=>L("div",{style:Ig,class:t},e);function za({version:t}){return L("div",{style:{textAlign:"center",color:"#BBC0C5",fontSize:"12"}},"SDK Version ",t?`v${t}`:"unknown")}const qa=()=>L("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("rect",{width:"16",height:"16",fill:"white"}),L("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M2.40554 2.40554C2.94627 1.86482 3.82296 1.86482 4.36369 2.40554L8 6.04186L11.6363 2.40554C12.177 1.86482 13.0537 1.86482 13.5945 2.40554C14.1352 2.94627 14.1352 3.82296 13.5945 4.36369L9.95814 8L13.5945 11.6363C14.1352 12.177 14.1352 13.0537 13.5945 13.5945C13.0537 14.1352 12.177 14.1352 11.6363 13.5945L8 9.95814L4.36369 13.5945C3.82296 14.1352 2.94627 14.1352 2.40554 13.5945C1.86482 13.0537 1.86482 12.177 2.40554 11.6363L6.04186 8L2.40554 4.36369C1.86482 3.82296 1.86482 2.94627 2.40554 2.40554Z",fill:"#BBC0C5"})),Va=()=>L("svg",{width:"273",height:"51",viewBox:"0 0 273 51",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M240.882 25.9263C239.472 24.997 237.916 24.3361 236.443 23.5101C235.489 22.9731 234.473 22.4982 233.643 21.8167C232.233 20.6602 232.524 18.3885 233.996 17.3973C236.112 15.993 239.617 16.7777 239.99 19.6483C239.99 19.7102 240.052 19.7515 240.114 19.7515H243.308C243.391 19.7515 243.454 19.6896 243.433 19.607C243.267 17.6244 242.5 15.9723 241.089 14.9191C239.741 13.9072 238.206 13.3702 236.568 13.3702C228.127 13.3702 227.359 22.271 231.901 25.0796C232.42 25.41 236.879 27.6404 238.455 28.611C240.032 29.5816 240.529 31.3576 239.845 32.7619C239.223 34.0423 237.605 34.9303 235.987 34.8271C234.224 34.7238 232.855 33.7738 232.378 32.2869C232.295 32.0185 232.254 31.5022 232.254 31.275C232.254 31.2131 232.192 31.1511 232.129 31.1511H228.666C228.604 31.1511 228.541 31.2131 228.541 31.275C228.541 33.7738 229.164 35.1575 230.864 36.4172C232.461 37.615 234.203 38.1106 236.008 38.1106C240.737 38.1106 243.184 35.4466 243.682 32.6793C244.117 29.974 243.308 27.5371 240.882 25.9263Z",fill:"#24292E"}),L("path",{d:"M90.4943 13.8246H88.9595H87.2795C87.2173 13.8246 87.1758 13.8659 87.1551 13.9072L84.3137 23.2416C84.2722 23.3655 84.1063 23.3655 84.0648 23.2416L81.2234 13.9072C81.2026 13.8452 81.1612 13.8246 81.0989 13.8246H79.419H77.8842H75.8102C75.748 13.8246 75.6857 13.8865 75.6857 13.9485V37.7802C75.6857 37.8422 75.748 37.9041 75.8102 37.9041H79.2738C79.336 37.9041 79.3982 37.8422 79.3982 37.7802V19.6689C79.3982 19.5244 79.6056 19.5037 79.6471 19.6276L82.5093 29.024L82.7167 29.6849C82.7374 29.7468 82.7789 29.7675 82.8411 29.7675H85.4959C85.5581 29.7675 85.5996 29.7262 85.6203 29.6849L85.8277 29.024L88.6899 19.6276C88.7313 19.4831 88.9387 19.5244 88.9387 19.6689V37.7802C88.9387 37.8422 89.001 37.9041 89.0632 37.9041H92.5268C92.589 37.9041 92.6513 37.8422 92.6513 37.7802V13.9485C92.6513 13.8865 92.589 13.8246 92.5268 13.8246H90.4943Z",fill:"#24292E"}),L("path",{d:"M187.849 13.8246C187.787 13.8246 187.745 13.8659 187.725 13.9072L184.883 23.2416C184.842 23.3655 184.676 23.3655 184.634 23.2416L181.793 13.9072C181.772 13.8452 181.731 13.8246 181.668 13.8246H176.4C176.338 13.8246 176.276 13.8865 176.276 13.9485V37.7802C176.276 37.8422 176.338 37.9041 176.4 37.9041H179.864C179.926 37.9041 179.988 37.8422 179.988 37.7802V19.6689C179.988 19.5244 180.196 19.5037 180.237 19.6276L183.099 29.024L183.307 29.6849C183.328 29.7468 183.369 29.7675 183.431 29.7675H186.086C186.148 29.7675 186.19 29.7262 186.211 29.6849L186.418 29.024L189.28 19.6276C189.322 19.4831 189.529 19.5244 189.529 19.6689V37.7802C189.529 37.8422 189.591 37.9041 189.653 37.9041H193.117C193.179 37.9041 193.241 37.8422 193.241 37.7802V13.9485C193.241 13.8865 193.179 13.8246 193.117 13.8246H187.849Z",fill:"#24292E"}),L("path",{d:"M143.174 13.8246H136.724H133.261H126.81C126.748 13.8246 126.686 13.8865 126.686 13.9485V16.9223C126.686 16.9843 126.748 17.0462 126.81 17.0462H133.136V37.7802C133.136 37.8422 133.198 37.9041 133.261 37.9041H136.724C136.786 37.9041 136.849 37.8422 136.849 37.7802V17.0462H143.174C143.237 17.0462 143.299 16.9843 143.299 16.9223V13.9485C143.299 13.8865 143.257 13.8246 143.174 13.8246Z",fill:"#24292E"}),L("path",{d:"M163.604 37.9041H166.756C166.839 37.9041 166.901 37.8215 166.881 37.7389L160.368 13.8245C160.347 13.7626 160.306 13.7419 160.244 13.7419H159.041H156.925H155.722C155.66 13.7419 155.619 13.7832 155.598 13.8245L149.085 37.7389C149.065 37.8215 149.127 37.9041 149.21 37.9041H152.362C152.425 37.9041 152.466 37.8628 152.487 37.8215L154.374 30.862C154.395 30.8 154.436 30.7794 154.499 30.7794H161.467C161.53 30.7794 161.571 30.8207 161.592 30.862L163.479 37.8215C163.5 37.8628 163.562 37.9041 163.604 37.9041ZM155.328 27.3719L157.859 18.0581C157.9 17.9342 158.066 17.9342 158.107 18.0581L160.638 27.3719C160.659 27.4545 160.596 27.5371 160.513 27.5371H155.453C155.37 27.5371 155.308 27.4545 155.328 27.3719Z",fill:"#24292E"}),L("path",{d:"M217.362 37.9041H220.515C220.598 37.9041 220.66 37.8215 220.639 37.7389L214.127 13.8245C214.106 13.7626 214.065 13.7419 214.002 13.7419H212.8H210.684H209.481C209.419 13.7419 209.377 13.7832 209.357 13.8245L202.844 37.7389C202.823 37.8215 202.886 37.9041 202.969 37.9041H206.121C206.183 37.9041 206.225 37.8628 206.246 37.8215L208.133 30.862C208.154 30.8 208.195 30.7794 208.257 30.7794H215.226C215.288 30.7794 215.33 30.8207 215.351 30.862L217.238 37.8215C217.259 37.8628 217.3 37.9041 217.362 37.9041ZM209.087 27.3719L211.617 18.0581C211.659 17.9342 211.825 17.9342 211.866 18.0581L214.397 27.3719C214.417 27.4545 214.355 27.5371 214.272 27.5371H209.211C209.129 27.5371 209.066 27.4545 209.087 27.3719Z",fill:"#24292E"}),L("path",{d:"M106.713 34.3727V26.9795C106.713 26.9176 106.775 26.8556 106.837 26.8556H116.067C116.129 26.8556 116.191 26.7936 116.191 26.7317V23.7579C116.191 23.6959 116.129 23.634 116.067 23.634H106.837C106.775 23.634 106.713 23.572 106.713 23.5101V17.1907C106.713 17.1288 106.775 17.0668 106.837 17.0668H117.332C117.394 17.0668 117.457 17.0049 117.457 16.9429V13.9691C117.457 13.9072 117.394 13.8452 117.332 13.8452H106.713H103.125C103.063 13.8452 103.001 13.9072 103.001 13.9691V17.0668V23.6546V26.8763V34.5173V37.7802C103.001 37.8422 103.063 37.9041 103.125 37.9041H106.713H117.768C117.83 37.9041 117.892 37.8422 117.892 37.7802V34.6412C117.892 34.5792 117.83 34.5173 117.768 34.5173H106.817C106.755 34.4966 106.713 34.4553 106.713 34.3727Z",fill:"#24292E"}),L("path",{d:"M272.532 37.6976L260.544 25.3687C260.502 25.3274 260.502 25.2448 260.544 25.2035L271.329 14.0517C271.412 13.9691 271.349 13.8452 271.246 13.8452H266.828C266.787 13.8452 266.766 13.8659 266.745 13.8865L257.599 23.3449C257.516 23.4275 257.391 23.3655 257.391 23.2623V13.9691C257.391 13.9072 257.329 13.8452 257.267 13.8452H253.803C253.741 13.8452 253.679 13.9072 253.679 13.9691V37.8009C253.679 37.8628 253.741 37.9248 253.803 37.9248H257.267C257.329 37.9248 257.391 37.8628 257.391 37.8009V27.3099C257.391 27.2067 257.536 27.1447 257.599 27.2273L267.969 37.8835C267.989 37.9041 268.031 37.9248 268.052 37.9248H272.469C272.552 37.9041 272.615 37.7596 272.532 37.6976Z",fill:"#24292E"}),L("path",{d:"M52.021 1L31.0526 16.4886L34.9517 7.36063L52.021 1Z",fill:"#E17726",stroke:"#E17726","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M3.65491 1L24.4366 16.6331L20.7241 7.36063L3.65491 1Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M44.4716 36.9127L38.8925 45.4211L50.8389 48.7047L54.261 37.0986L44.4716 36.9127Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M1.43555 37.0986L4.83695 48.7047L16.7626 45.4211L11.2042 36.9127L1.43555 37.0986Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M16.1197 22.5395L12.8013 27.5371L24.6232 28.074L24.2292 15.3734L16.1197 22.5395Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M39.5561 22.5394L31.3222 15.2288L31.0526 28.0739L42.8746 27.537L39.5561 22.5394Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M16.7626 45.4212L23.918 41.9724L17.7582 37.1813L16.7626 45.4212Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M31.7578 41.9724L38.8925 45.4212L37.9177 37.1813L31.7578 41.9724Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M38.8923 45.4212L31.7577 41.9724L32.3384 46.5983L32.2762 48.5602L38.8923 45.4212Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M16.7625 45.4212L23.3994 48.5602L23.3579 46.5983L23.9179 41.9724L16.7625 45.4212Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M23.5239 34.1249L17.5922 32.3902L21.7818 30.4696L23.5239 34.1249Z",fill:"#233447",stroke:"#233447","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M32.1517 34.1249L33.8939 30.4696L38.1042 32.3902L32.1517 34.1249Z",fill:"#233447",stroke:"#233447","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M16.7626 45.4212L17.7996 36.9128L11.2042 37.0987L16.7626 45.4212Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M37.8761 36.9128L38.8924 45.4212L44.4715 37.0987L37.8761 36.9128Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M42.8745 27.5371L31.0526 28.074L32.1518 34.1249L33.894 30.4696L38.1042 32.3902L42.8745 27.5371Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M17.5922 32.3902L21.7817 30.4696L23.5239 34.1249L24.6232 28.074L12.8012 27.5371L17.5922 32.3902Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M12.8013 27.5371L17.7582 37.1813L17.5923 32.3902L12.8013 27.5371Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M38.1044 32.3902L37.9177 37.1813L42.8746 27.5371L38.1044 32.3902Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M24.6232 28.0741L23.524 34.125L24.9136 41.2703L25.2247 31.8533L24.6232 28.0741Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M31.0526 28.0741L30.4719 31.8327L30.7623 41.2703L32.1519 34.125L31.0526 28.0741Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M32.1519 34.1249L30.7623 41.2702L31.7578 41.9724L37.9177 37.1813L38.1043 32.3901L32.1519 34.1249Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M17.5922 32.3901L17.7581 37.1813L23.918 41.9724L24.9135 41.2702L23.5239 34.1249L17.5922 32.3901Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M32.2763 48.5602L32.3385 46.5983L31.7993 46.1439H23.8765L23.358 46.5983L23.3995 48.5602L16.7626 45.4211L19.0855 47.3211L23.7935 50.5633H31.8615L36.5903 47.3211L38.8924 45.4211L32.2763 48.5602Z",fill:"#C0AC9D",stroke:"#C0AC9D","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M31.7578 41.9724L30.7622 41.2703H24.9135L23.918 41.9724L23.358 46.5983L23.8765 46.144H31.7993L32.3385 46.5983L31.7578 41.9724Z",fill:"#24292E",stroke:"#24292E","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M52.9128 17.5005L54.6757 8.95079L52.021 1L31.7578 15.9723L39.5561 22.5394L50.5692 25.7404L52.9958 22.9111L51.938 22.147L53.618 20.6188L52.3321 19.6276L54.0121 18.3472L52.9128 17.5005Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M1 8.95079L2.78366 17.5005L1.64295 18.3472L3.34365 19.6276L2.05775 20.6188L3.73771 22.147L2.67996 22.9111L5.10657 25.7404L16.1196 22.5394L23.918 15.9723L3.65475 1L1 8.95079Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M50.5692 25.7404L39.5561 22.5394L42.8746 27.5371L37.9177 37.1813L44.4716 37.0987H54.261L50.5692 25.7404Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M16.1196 22.5394L5.10651 25.7404L1.43549 37.0987H11.2041L17.7581 37.1813L12.8011 27.5371L16.1196 22.5394Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M31.0526 28.0741L31.7578 15.9724L34.9518 7.36072H20.7239L23.9179 15.9724L24.6231 28.0741L24.8927 31.8739L24.9135 41.2703H30.7622L30.783 31.8739L31.0526 28.0741Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.5","stroke-linecap":"round","stroke-linejoin":"round"})),ps={DESKTOP:"Desktop",MOBILE:"Mobile",META_MASK_MOBILE_APP:"MetaMask mobile app",SCAN_TO_CONNECT:"Scan to connect and sign with",CONNECT_WITH_EXTENSION:"Connect With MetaMask Extension",INSTALL_MODAL:{TRUSTED_BY_USERS:"Trusted by over 30 million users to buy, store, send and swap crypto securely",LEADING_CRYPTO_WALLET:"The leading crypto wallet & gateway to blockchain apps built on Ethereum Mainnet, Polygon, Optimism, and many other networks",CONTROL_DIGITAL_INTERACTIONS:"Puts you in control of your digital interactions by making power of cryptography more accessible",INSTALL_META_MASK_EXTENSION:"Install MetaMask Extension"},PENDING_MODAL:{OPEN_META_MASK_SELECT_CODE:"Please open the MetaMask wallet app and select the code on the screen OR disconnect",OPEN_META_MASK_CONTINUE:"Open the MetaMask app to continue with your session.",NUMBER_AFTER_OPEN_NOTICE:"If a number doesn't appear after opening MetaMask, please click disconnect and re-scan the QRCode.",DISCONNECT:"Disconnect"},SELECT_MODAL:{CRYPTO_TAKE_CONTROL_TEXT:"Take control of your crypto and explore the blockchain with the wallet trusted by over 30 million people worldwide"},META_MASK_MODAL:{ADDRESS_COPIED:"Address copied to clipboard!",DISCONNECT:"Disconnect",ACTIVE_NETWORK:"Active Network"}};class Wa{constructor(e){var n;this.translations=ps,this.supportedLocales=["es","fr","he","it","pt","tr"],this.baseUrl=(n=e==null?void 0:e.baseUrl)!==null&&n!==void 0?n:"https://raw.githubusercontent.com/MetaMask/metamask-sdk/refs/heads/gh-pages/locales"}getBrowserLanguage(){if((navigator.languages||[navigator.language]).some(n=>n.toLowerCase().startsWith("en")))return"en";const e=navigator.language.toLowerCase().split("-")[0];return this.supportedLocales.includes(e)?e:"en"}async init(e){const n=this.getBrowserLanguage()||e.fallbackLng;await this.loadTranslations(n)}async loadTranslations(e){const n=e.split("-")[0];if(n!=="en"&&this.supportedLocales.includes(n))try{const r=`${this.baseUrl}/${n}.json`,i=await fetch(r);if(!i.ok)throw new Error(`HTTP error! status: ${i.status}`);this.translations=await i.json()}catch(r){console.warn(`❌ Failed to load ${n} translations, falling back to English:`,r),this.translations=ps}else this.translations=ps}t(e){return this.getNestedTranslation(e,this.translations)||e}getNestedTranslation(e,n){const r=e.split(".");let i=n;for(const o of r){if(typeof i!="object")return"";i=i[o]}return typeof i=="string"?i:""}}function Sn(t,e){return t.toString(2).padStart(e,"0")}function mu(t,e){const n=t%e;return n>=0?n:e+n}function ot(t,e){return new Array(t).fill(e)}function yu(...t){let e=0;for(const r of t)e=Math.max(e,r.length);const n=[];for(let r=0;r=i.length||n.push(i[r]);return new Uint8Array(n)}function vu(t,e,n){if(n<0||n+e.length>t.length)return!1;for(let r=0;rt.includes(e),decode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="string")throw new Error("alphabet.decode input should be array of strings");return e.map(n=>{if(typeof n!="string")throw new Error(`alphabet.decode: not string element=${n}`);const r=t.indexOf(n);if(r===-1)throw new Error(`Unknown letter: "${n}". Allowed: ${t}`);return r})},encode:e=>{if(!Array.isArray(e)||e.length&&typeof e[0]!="number")throw new Error("alphabet.encode input should be an array of numbers");return e.map(n=>{if(function(r){if(!Number.isSafeInteger(r))throw new Error(`Wrong integer: ${r}`)}(n),n<0||n>=t.length)throw new Error(`Digit index outside alphabet: ${n} (alphabet: ${t.length})`);return t[n]})}}}class rt{static size(e,n){if(typeof e=="number"&&(e={height:e,width:e}),!Number.isSafeInteger(e.height)&&e.height!==1/0)throw new Error(`Bitmap: wrong height=${e.height} (${typeof e.height})`);if(!Number.isSafeInteger(e.width)&&e.width!==1/0)throw new Error(`Bitmap: wrong width=${e.width} (${typeof e.width})`);return n!==void 0&&(e={width:Math.min(e.width,n.width),height:Math.min(e.height,n.height)}),e}static fromString(e){const n=(e=e.replace(/^\n+/g,"").replace(/\n+$/g,"")).split(` +`),r=n.length,i=new Array(r);let o;for(const s of n){const c=s.split("").map(a=>{if(a==="X")return!0;if(a===" ")return!1;if(a!=="?")throw new Error(`Bitmap.fromString: unknown symbol=${a}`)});if(o&&c.length!==o)throw new Error(`Bitmap.fromString different row sizes: width=${o} cur=${c.length}`);o=c.length,i.push(c)}return o||(o=0),new rt({height:r,width:o},i)}constructor(e,n){const{height:r,width:i}=rt.size(e);this.data=n||Array.from({length:r},()=>ot(i,void 0)),this.height=r,this.width=i}point(e){return this.data[e.y][e.x]}isInside(e){return 0<=e.x&&e.x(r(i,o),o))}hLine(e,n,r){return this.rect(e,{width:n,height:1},r)}vLine(e,n,r){return this.rect(e,{width:1,height:n},r)}border(e=2,n){const r=this.height+2*e,i=this.width+2*e,o=ot(e,n),s=Array.from({length:e},()=>ot(i,n));return new rt({height:r,width:i},[...s,...this.data.map(c=>[...o,...c,...o]),...s])}embed(e,n){return this.rect(e,n.size(),({x:r,y:i})=>n.data[i][r])}rectSlice(e,n=this.size()){const r=new rt(rt.size(n,this.size(this.xy(e))));return this.rect(e,n,({x:i,y:o},s)=>r.data[o][i]=s),r}inverse(){const{height:e,width:n}=this;return new rt({height:n,width:e}).rect({x:0,y:0},1/0,({x:r,y:i})=>this.data[r][i])}scale(e){if(!Number.isSafeInteger(e)||e>1024)throw new Error(`Wrong scale factor: ${e}`);const{height:n,width:r}=this;return new rt({height:e*n,width:e*r}).rect({x:0,y:0},1/0,({x:i,y:o})=>this.data[Math.floor(o/e)][Math.floor(i/e)])}clone(){return new rt(this.size()).rect({x:0,y:0},this.size(),({x:e,y:n})=>this.data[n][e])}assertDrawn(){this.rectRead(0,1/0,(e,n)=>{if(typeof n!="boolean")throw new Error("Invalid color type="+typeof n)})}toString(){return this.data.map(e=>e.map(n=>n===void 0?"?":n?"X":" ").join("")).join(` +`)}toASCII(){const{height:e,width:n,data:r}=this;let i="";for(let o=0;o=e||r[o+1][s];c||a?!c&&a?i+="▀":c&&!a?i+="▄":c&&a&&(i+=" "):i+="█"}i+=` +`}return i}toTerm(){const e="\x1B[0m",n=`\x1B[1;47m ${e}`,r=`\x1B[40m ${e}`;return this.data.map(i=>i.map(o=>o?r:n).join("")).join(` +`)}toSVG(){let e=``;return this.rectRead(0,1/0,({x:n,y:r},i)=>{i&&(e+=``)}),e+="",e}toGIF(){const e=c=>[255&c,c>>>8&255],n=[...e(this.width),...e(this.height)],r=[];this.rectRead(0,1/0,(c,a)=>r.push(+(a===!0)));const i=126,o=[71,73,70,56,55,97,...n,246,0,0,255,255,255,...ot(381,0),44,0,0,0,0,...n,0,7],s=Math.floor(r.length/i);for(let c=0;c+a));return o.push(r.length%i+1,128,...r.slice(s*i).map(c=>+c)),o.push(1,129,0,59),new Uint8Array(o)}toImage(e=!1){const{height:n,width:r}=this.size(),i=new Uint8Array(n*r*(e?3:4));let o=0;for(let s=0;s21+4*(t-1),decode:t=>(t-17)/4},sizeType:t=>Math.floor((t+7)/17),alignmentPatterns(t){if(t===1)return[];const e=ze.size.encode(t)-6-1,n=e-6,r=Math.ceil(n/28);let i=Math.floor(n/r);i%2?i+=1:n%r*2>=r&&(i+=2);const o=[6];for(let s=1;s>9);return(n<<10|r)^ze.formatMask},versionBits(t){let e=t;for(let n=0;n<12;n++)e=e<<1^7973*(e>>11);return t<<12|e},alphabet:{numeric:bu("0123456789"),alphanumerc:bu("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:")},lengthBits:(t,e)=>({numeric:[10,12,14],alphanumeric:[9,11,13],byte:[8,16,16],kanji:[8,10,12],eci:[0,0,0]})[e][ze.sizeType(t)],modeBits:{numeric:"0001",alphanumeric:"0010",byte:"0100",kanji:"1000",eci:"0111"},capacity(t,e){const n=Ng[t-1],r=Bg[e][t-1],i=Dg[e][t-1],o=Math.floor(n/i)-r,s=i-n%i;return{words:r,numBlocks:i,shortBlocks:s,blockLen:o,capacity:8*(n-r*i),total:(r+o)*i+i-s}}},ta=[(t,e)=>(t+e)%2==0,(t,e)=>e%2==0,(t,e)=>t%3==0,(t,e)=>(t+e)%3==0,(t,e)=>(Math.floor(e/2)+Math.floor(t/3))%2==0,(t,e)=>t*e%2+t*e%3==0,(t,e)=>(t*e%2+t*e%3)%2==0,(t,e)=>((t+e)%2+t*e%3)%2==0],oe={tables:(t=>{const e=ot(256,0),n=ot(256,0);for(let r=0,i=1;r<256;r++)e[r]=i,n[i]=r,i<<=1,256&i&&(i^=285);return{exp:e,log:n}})(),exp:t=>oe.tables.exp[t],log(t){if(t===0)throw new Error(`GF.log: wrong arg=${t}`);return oe.tables.log[t]%255},mul:(t,e)=>t===0||e===0?0:oe.tables.exp[(oe.tables.log[t]+oe.tables.log[e])%255],add:(t,e)=>t^e,pow:(t,e)=>oe.tables.exp[oe.tables.log[t]*e%255],inv(t){if(t===0)throw new Error(`GF.inverse: wrong arg=${t}`);return oe.tables.exp[255-oe.tables.log[t]]},polynomial(t){if(t.length==0)throw new Error("GF.polymomial: wrong length");if(t[0]!==0)return t;let e=0;for(;et.length-1,coefficient:(t,e)=>t[oe.degree(t)-e],mulPoly(t,e){if(t[0]===0||e[0]===0)return[0];const n=ot(t.length+e.length-1,0);for(let r=0;rr.length&&([n,r]=[r,n]);let i=ot(r.length,0),o=r.length-n.length,s=r.slice(0,o);for(let c=0;c=n;){let l=r,u=o;if(r=i,o=s,r[0]===0)throw new Error("rLast[0] === 0");i=l;let d=[0];const h=oe.inv(r[0]);for(;oe.degree(i)>=oe.degree(r)&&i[0]!==0;){const f=oe.degree(i)-oe.degree(r),m=oe.mul(i[0],h);d=oe.addPoly(d,oe.monomial(f,m)),i=oe.addPoly(i,oe.mulPolyMonomial(r,f,m))}if(d=oe.mulPoly(d,o),s=oe.addPoly(d,u),oe.degree(i)>=oe.degree(r))throw new Error(`Division failed r: ${i}, rLast: ${r}`)}const c=oe.coefficient(s,0);if(c==0)throw new Error("sigmaTilde(0) was zero");const a=oe.inv(c);return[oe.mulPolyScalar(s,a),oe.mulPolyScalar(i,a)]}};function $g(t,e){const{words:n,shortBlocks:r,numBlocks:i,blockLen:o,total:s}=ze.capacity(t,e),c=(a=n,{encode(l){const u=oe.divisorPoly(a),d=Array.from(l);return d.push(...u.slice(0,-1).fill(0)),Uint8Array.from(oe.remainderPoly(d,u))},decode(l){const u=l.slice(),d=oe.polynomial(Array.from(l));let h=ot(a,0),f=!1;for(let C=0;CSn(h,8)).join("")}}const{capacity:s}=ze.capacity(t,e),c=Sn(o,ze.lengthBits(t,r));let a=ze.modeBits[r]+c+i;if(a.length>s)throw new Error("Capacity overflow");a+="0".repeat(Math.min(4,Math.max(0,s-a.length))),a.length%8&&(a+="0".repeat(8-a.length%8));const l="1110110000010001";for(let d=0;a.length!==s;d++)a+=l[d%16];const u=Uint8Array.from(a.match(/(.{8})/g).map(d=>+`0b${d}`));return $g(t,e).encode(u)}function _u(t,e,n,r,i=!1){const o=function(a,l,u,d=!1){const h=ze.size.encode(a);let f=new rt(h+2);const m=new rt(3).rect(0,3,!0).border(1,!1).border(1,!0).border(1,!1);f=f.embed(0,m).embed({x:-m.width,y:0},m).embed({x:0,y:-m.height},m),f=f.rectSlice(1,h);const g=new rt(1).rect(0,1,!0).border(1,!1).border(1,!0),w=ze.alignmentPatterns(a);for(const p of w)for(const S of w)f.data[p][S]===void 0&&f.embed({x:S-2,y:p-2},g);f=f.hLine({x:0,y:6},1/0,({x:p},S)=>S===void 0?p%2==0:S).vLine({x:6,y:0},1/0,({y:p},S)=>S===void 0?p%2==0:S);{const p=ze.formatBits(l,u),S=C=>!d&&(p>>C&1)==1;for(let C=0;C<6;C++)f.data[C][8]=S(C);for(let C=6;C<8;C++)f.data[C+1][8]=S(C);for(let C=8;C<15;C++)f.data[h-15+C][8]=S(C);for(let C=0;C<8;C++)f.data[8][h-C-1]=S(C);for(let C=8;C<9;C++)f.data[8][15-C-1+1]=S(C);for(let C=9;C<15;C++)f.data[8][15-C-1]=S(C);f.data[h-8][8]=!d}if(a>=7){const p=ze.versionBits(a);for(let S=0;S<18;S+=1){const C=!d&&(p>>S&1)==1,O=Math.floor(S/3),N=S%3+h-8-3;f.data[O][N]=C,f.data[N][O]=C}}return f}(t,e,r,i);let s=0;const c=8*n.length;if(function(a,l,u){const d=a.height,h=ta[l];let f=-1,m=d-1;for(let g=d-1;g>0;g-=2){for(g==6&&(g=5);;m+=f){for(let w=0;w<2;w+=1){const p=g-w;a.data[m][p]===void 0&&u(p,m,h(p,m))}if(m+f<0||m+f>=d)break}f=-f}}(o,r,(a,l,u)=>{let d=!1;s>>3]>>(7-s&7)&1)!=0,s++),o.data[l][a]=d!==u}),s!==c)throw new Error("QR: bytes left after draw");return o}function jg(t){const e=t.inverse(),n=f=>{let m=0;for(let g,w=0,p=1;w=5&&(m+=p-5+3),g=f[w],p=1);return m};let r=0;t.data.forEach(f=>r+=n(f)),e.data.forEach(f=>r+=n(f));let i=0,o=t.data;const s=t.width-1,c=t.height-1;for(let f=0;f{const m=[!0,!1,!0,!0,!0,!1,!0],g=[!1,!1,!1,!1],w=[...m,...g],p=[...g,...m];let S=0;for(let C=0;Cu+=m?1:0);const d=u/(t.height*t.width)*100,h=10*Math.floor(Math.abs(d-50)/5);return r+i+l+h}function Of(t,e="raw",n={}){const r=n.ecc!==void 0?n.ecc:"medium";(function(u){if(!wu.includes(u))throw new Error(`Invalid error correction mode=${u}. Expected: ${wu}`)})(r);const i=n.encoding!==void 0?n.encoding:function(u){let d="numeric";for(let h of u)if(!ze.alphabet.numeric.has(h)&&(d="alphanumeric",!ze.alphabet.alphanumerc.has(h)))return"byte";return d}(t);(function(u){if(!Eu.includes(u))throw new Error(`Encoding: invalid mode=${u}. Expected: ${Eu}`);if(u==="kanji"||u==="eci")throw new Error(`Encoding: ${u} is not supported (yet?).`)})(i),n.mask!==void 0&&function(u){if(![0,1,2,3,4,5,6,7].includes(u)||!ta[u])throw new Error(`Invalid mask=${u}. Expected number [0..7]`)}(n.mask);let o,s=n.version,c=new Error("Unknown error");if(s!==void 0)(function(u){if(!Number.isSafeInteger(u)||u<1||u>40)throw new Error(`Invalid version=${u}. Expected number [1..40]`)})(s),o=Cu(s,r,t,i);else for(let u=1;u<=40;u++)try{o=Cu(u,r,t,i),s=u;break}catch(d){c=d}if(!s||!o)throw c;let a=function(u,d,h,f){if(f===void 0){const m=function(){let g,w=1/0;return{add(p,S){p>=w||(g=S,w=p)},get:()=>g,score:()=>w}}();for(let g=0;gL("div",{class:"flexContainer",style:{padding:"6",flexDirection:"row"}},L("div",{class:"flexItem1"},L(t,null)),L("div",{class:"flexItem11"},L("span",{style:{lineHeight:"2",color:"black"}},e))),Kg=()=>L("svg",{width:"20",height:"18",viewBox:"0 0 20 18",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M20.0002 7.9702V10.0302C20.0002 10.5802 19.5602 11.0302 19.0002 11.0502H17.0402C15.9602 11.0502 14.9702 10.2602 14.8802 9.1802C14.8202 8.5502 15.0602 7.9602 15.4802 7.5502C15.8502 7.1702 16.3602 6.9502 16.9202 6.9502H19.0002C19.5602 6.9702 20.0002 7.4202 20.0002 7.9702Z",fill:"#037DD6"}),L("path",{d:"M18.47 12.55H17.04C15.14 12.55 13.54 11.12 13.38 9.3C13.29 8.26 13.67 7.22 14.43 6.48C15.07 5.82 15.96 5.45 16.92 5.45H18.47C18.76 5.45 19 5.21 18.97 4.92C18.75 2.49 17.14 0.83 14.75 0.55C14.51 0.51 14.26 0.5 14 0.5H5C4.72 0.5 4.45 0.52 4.19 0.56C1.64 0.88 0 2.78 0 5.5V12.5C0 15.26 2.24 17.5 5 17.5H14C16.8 17.5 18.73 15.75 18.97 13.08C19 12.79 18.76 12.55 18.47 12.55ZM11 6.75H5C4.59 6.75 4.25 6.41 4.25 6C4.25 5.59 4.59 5.25 5 5.25H11C11.41 5.25 11.75 5.59 11.75 6C11.75 6.41 11.41 6.75 11 6.75Z",fill:"#037DD6"})),Ug=()=>L("svg",{width:"20",height:"18",viewBox:"0 0 20 18",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M14.44 0.0999756C12.63 0.0999756 11.01 0.979976 10 2.32998C8.99 0.979976 7.37 0.0999756 5.56 0.0999756C2.49 0.0999756 0 2.59998 0 5.68998C0 6.87998 0.19 7.97998 0.52 8.99998C2.1 14 6.97 16.99 9.38 17.81C9.72 17.93 10.28 17.93 10.62 17.81C13.03 16.99 17.9 14 19.48 8.99998C19.81 7.97998 20 6.87998 20 5.68998C20 2.59998 17.51 0.0999756 14.44 0.0999756Z",fill:"#037DD6"})),Fg=()=>L("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M16.28 7.53V6.28C16.28 3.58 15.63 0 10 0C4.37 0 3.72 3.58 3.72 6.28V7.53C0.92 7.88 0 9.3 0 12.79V14.65C0 18.75 1.25 20 5.35 20H14.65C18.75 20 20 18.75 20 14.65V12.79C20 9.3 19.08 7.88 16.28 7.53ZM10 16.74C8.33 16.74 6.98 15.38 6.98 13.72C6.98 12.05 8.34 10.7 10 10.7C11.66 10.7 13.02 12.06 13.02 13.72C13.02 15.39 11.67 16.74 10 16.74ZM5.35 7.44C5.27 7.44 5.2 7.44 5.12 7.44V6.28C5.12 3.35 5.95 1.4 10 1.4C14.05 1.4 14.88 3.35 14.88 6.28V7.45C14.8 7.45 14.73 7.45 14.65 7.45H5.35V7.44Z",fill:"#037DD6"})),Hg=()=>L("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M16.4405 8.8999C20.0405 9.2099 21.5105 11.0599 21.5105 15.1099V15.2399C21.5105 19.7099 19.7205 21.4999 15.2505 21.4999H8.74047C4.27047 21.4999 2.48047 19.7099 2.48047 15.2399V15.1099C2.48047 11.0899 3.93047 9.2399 7.47047 8.9099",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M12 2V14.88",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M15.3504 12.6499L12.0004 15.9999L8.65039 12.6499",stroke:"white","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),Lf=class{constructor(t){Da(this,t),this.close=On(this,"close",7),this.startDesktopOnboarding=On(this,"startDesktopOnboarding",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.onClose=this.onClose.bind(this),this.onStartDesktopOnboardingHandler=this.onStartDesktopOnboardingHandler.bind(this),this.setTab=this.setTab.bind(this),this.render=this.render.bind(this),this.setTab(this.preferDesktop?1:2),this.i18nInstance=new Wa}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}updatePreferDesktop(t){t?this.setTab(1):this.setTab(2)}onClose(){this.close.emit()}onStartDesktopOnboardingHandler(){this.startDesktopOnboarding.emit()}setTab(t){this.tab=t,this.isDefaultTab=!1}render(){if(!this.translationsLoaded)return null;const t=r=>this.i18nInstance.t(r),e=this.isDefaultTab?this.preferDesktop?1:2:this.tab,n=Of(this.link,"svg",{ecc:"medium",scale:2});return console.log(`Showing modal with link ${this.link} and SVG QRCode ${n}`),L(Ha,{className:"install-model"},L("div",{class:"backdrop",onClick:this.onClose}),L("div",{class:"modal"},L("div",{class:"closeButtonContainer"},L("div",{class:"right"},L("span",{class:"closeButton",onClick:this.onClose},L(qa,null)))),L("div",{class:"logoContainer"},L(Va,null)),L("div",null,L("div",{class:"tabcontainer"},L("div",{class:"flexContainer"},L("div",{onClick:()=>this.setTab(1),class:"tab flexItem "+(e===1?"tabactive":"")},t("DESKTOP")),L("div",{onClick:()=>this.setTab(2),class:"tab flexItem "+(e===2?"tabactive":"")},t("MOBILE")))),L("div",{style:{display:e===1?"none":"block"}},L("div",{class:"flexContainer"},L("div",{class:"flexItem",style:{textAlign:"center",marginTop:"4"}},n&&L("div",{id:"sdk-mm-qrcode",class:"center",innerHTML:n}),L("div",{class:"connectMobileText"},t("SCAN_TO_CONNECT")," ",L("br",null),L("span",{class:"blue"},L("b",null,t("META_MASK_MOBILE_APP"))))))),L("div",{style:{display:e===2?"none":"block"}},L("div",{class:"item"},L(gs,{Icon:Ug,text:t("INSTALL_MODAL.TRUSTED_BY_USERS")})),L("div",{class:"item"},L(gs,{Icon:Kg,text:t("INSTALL_MODAL.LEADING_CRYPTO_WALLET")})),L("div",{class:"item"},L(gs,{Icon:Fg,text:t("INSTALL_MODAL.CONTROL_DIGITAL_INTERACTIONS")})),L("button",{class:"button",onClick:this.onStartDesktopOnboardingHandler},L(Hg,null),L("span",{class:"installExtensionText"},t("INSTALL_MODAL.INSTALL_META_MASK_EXTENSION"))))),L(za,{version:this.sdkVersion})))}get el(){return Co(this)}static get watchers(){return{preferDesktop:["updatePreferDesktop"]}}};Lf.style=`.flexContainer { + display: flex; + justify-content: center; + align-items: center; + flex-direction: row; +} + +.flexItem { + flex: 1; + justify-content: center; + align-items: center; +} + +.flexItem11 { + flex: 11; + justify-content: center; + align-items: center; +} + +.flexItem1 { + flex: 1; + justify-content: center; + align-items: center; +} + +.tab { + padding: 8px; + cursor: pointer; + background-color: #F2F4F6; + font-size: 12px; + text-align: center; + color: #24292E; +} + +.tabcontainer { + padding: 4px; + background-color: #F2F4F6; + border-radius: 8px; + margin-bottom: 30px; + margin-top: 30px; +} + +.tabactive { + background-color: white; + -webkit-transition: background-color 300ms linear; + -ms-transition: background-color 300ms linear; + transition: background-color 300ms linear; + border-radius: 8px; +} + +.item { + font-size: 12px; + margin-bottom: 16px; + border-radius: 8px; + padding: 10px; + border: 2px #F2F4F6 solid; + color: #24292E; +} + +.extensionLabel { + font-style: normal; + font-weight: bold; + font-size: 14px; + text-align: cetner; + color: #24272A; +} + +.notice { + font-size: 12px; + margin-left: 10px; + margin-right: 10px; + color: grey; +} + +.button { + margin-top: 41.5px; + margin-bottom: 20px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 12px 20px; + background: #037DD6; + border-radius: 32px; + color: white; + border: 0; + font-size: 14px; + cursor: pointer; +} + +.backdrop { + visibility: visible; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + z-index: 99998; + background: rgba(0, 0, 0, 0.87); + opacity: 0.3; +} + +.modal { + visibility: visible; + position: fixed; + left: 50%; + transform: translate(-50%, -50%); + z-index: 99999; + background: white; + padding: 20px; + border-radius: 8px; + top: 50%; + max-width: 100%; + width: 460px; + min-width: 300px; + box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px; + -webkit-font-smoothing: antialiased; +} + +.closeButton { + color: #BBC0C5; + cursor: pointer; +} + +.logoContainer { + margin-left: 24px; + margin-right: 24px; + margin-top: 24px; + display: flex; + align-items: center; + justify-content: center; +} + +.connectMobileText { + font-size: 14px; + color: black; + margin-top: 28px; + margin-bottom: 28px; + line-height: 2; +} + +.blue { + color: #037DD6; + font-weight: 700; +} + +.installExtensionText { + margin-left: 10px; +} + +.center { + display: flex; + justify-content: center; + align-items: center; +} + +.right { + display: flex; + align-items: center; + justify-content: right; +} + +#sdk-mm-qrcode { + svg { + width: 50%; + } +}`;var zg=Object.freeze({__proto__:null,mm_install_modal:Lf});const Pf=class{constructor(t){Da(this,t),this.close=On(this,"close",7),this.disconnect=On(this,"disconnect",7),this.updateOTPValue=On(this,"updateOTPValue",7),this.displayOTP=void 0,this.sdkVersion=void 0,this.otpCode=void 0,this.translationsLoaded=!1,this.i18nInstance=new Wa}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}onClose(){this.close.emit()}onDisconnect(){this.disconnect.emit()}onUpdateOTPValueHandler(t){this.updateOTPValue.emit({otpValue:t})}disconnectedCallback(){this.onClose()}render(){var t;if(!this.translationsLoaded)return null;const e=(t=this.displayOTP)===null||t===void 0||t,n=this.sdkVersion,r=i=>this.i18nInstance.t(i);return L(Ha,{className:"pending-modal"},L("div",{class:"backdrop",onClick:()=>this.onClose()}),L("div",{class:"modal"},L("div",{class:"closeButtonContainer"},L("div",{class:"right"},L("span",{class:"closeButton",onClick:()=>this.onClose()},L(qa,null)))),L("div",{class:"logoContainer"},L(Va,null)),L("div",null,L("div",{class:"flexContainer",style:{flexDirection:"column",color:"black"}},L("div",{class:"flexItem",style:{textAlign:"center",marginTop:"30px",marginBottom:"30px",fontSize:"16px"}},r(e?"PENDING_MODAL.OPEN_META_MASK_SELECT_CODE":"PENDING_MODAL.OPEN_META_MASK_CONTINUE")),L("div",{id:"sdk-mm-otp-value",style:{padding:"10px",fontSize:"32px",display:this.otpCode?"block":"none"}},this.otpCode),e&&L("div",{class:"notice"},"* ",r("PENDING_MODAL.NUMBER_AFTER_OPEN_NOTICE"))),L("div",{style:{marginTop:"20px"}},L("button",{class:"button blue",style:{marginTop:"5px",color:"#0376C9",borderColor:"#0376C9",borderWidth:"1px",borderStyle:"solid",backgroundColor:"white"},onClick:()=>this.onDisconnect()},r("PENDING_MODAL.DISCONNECT")))),L(za,{version:n})))}get el(){return Co(this)}};Pf.style=`.flexContainer { + display: flex; + justify-content: center; + align-items: center; + flex-direction: row; +} + +.flexItem { + flex: 1; + justify-content: center; + align-items: center; +} + +.flexItem11 { + flex: 11; + justify-content: center; + align-items: center; +} + +.flexItem1 { + flex: 1; + justify-content: center; + align-items: center; +} + +.tab { + padding: 8px; + cursor: pointer; + background-color: #F2F4F6; + font-size: 12px; + text-align: center; + color: #24292E; +} + +.tabcontainer { + padding: 4px; + background-color: #F2F4F6; + border-radius: 8px; + margin-bottom: 30px; + margin-top: 30px; +} + +.tabactive { + background-color: white; + -webkit-transition: background-color 300ms linear; + -ms-transition: background-color 300ms linear; + transition: background-color 300ms linear; + border-radius: 8px; +} + +.item { + font-size: 12px; + margin-bottom: 16px; + border-radius: 8px; + padding: 10px; + border: 2px #F2F4F6 solid; + color: #24292E; +} + +.extensionLabel { + font-style: normal; + font-weight: bold; + font-size: 14px; + text-align: cetner; + color: #24272A; +} + +.notice { + font-size: 12px; + margin-left: 10px; + margin-right: 10px; + color: grey; +} + +.button { + margin-top: 41.5px; + margin-bottom: 20px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 12px 20px; + background: #037DD6; + border-radius: 32px; + color: white; + border: 0; + font-size: 14px; + cursor: pointer; +} + +.backdrop { + visibility: visible; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + z-index: 99998; + background: rgba(0, 0, 0, 0.87); + opacity: 0.3; +} + +.modal { + visibility: visible; + position: fixed; + left: 50%; + transform: translate(-50%, -50%); + z-index: 99999; + background: white; + padding: 20px; + border-radius: 8px; + top: 50%; + max-width: 100%; + width: 460px; + min-width: 300px; + box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px; + -webkit-font-smoothing: antialiased; +} + +.closeButton { + color: #BBC0C5; + cursor: pointer; +} + +.logoContainer { + margin-left: 24px; + margin-right: 24px; + margin-top: 24px; + display: flex; + align-items: center; + justify-content: center; +} + +.connectMobileText { + font-size: 14px; + color: black; + margin-top: 28px; + margin-bottom: 28px; + line-height: 2; +} + +.blue { + color: #037DD6; + font-weight: 700; +} + +.installExtensionText { + margin-left: 10px; +} + +.center { + display: flex; + justify-content: center; + align-items: center; +} + +.right { + display: flex; + align-items: center; + justify-content: right; +} + +#sdk-mm-qrcode { + svg { + width: 50%; + } +}`;var qg=Object.freeze({__proto__:null,mm_pending_modal:Pf});const Vg=()=>L("svg",{width:"21",height:"15",viewBox:"0 0 21 15",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M14.1364 14.9851C13.5909 14.9851 13.2273 14.5851 13.2273 13.9851C13.2273 13.3851 13.5909 12.9851 14.1364 12.9851C16.6818 12.9851 18.6818 10.7851 18.6818 7.98508C18.6818 5.18508 16.6818 2.98508 14.1364 2.98508C11.5909 2.98508 9.59091 5.18508 9.59091 7.98508C9.59091 8.58508 9.22727 8.98508 8.68182 8.98508C8.13636 8.98508 7.77273 8.58508 7.77273 7.98508C7.77273 4.08508 10.5909 0.985077 14.1364 0.985077C17.6818 0.985077 20.5 4.08508 20.5 7.98508C20.5 11.8851 17.6818 14.9851 14.1364 14.9851ZM6.68182 14.7851C3.22727 14.7851 0.5 11.6851 0.5 7.98508C0.5 4.28508 3.22727 1.18508 6.68182 1.18508C7.22727 1.18508 7.59091 1.58508 7.59091 2.18508C7.59091 2.78508 7.22727 3.18508 6.68182 3.18508C4.22727 3.18508 2.31818 5.38508 2.31818 7.98508C2.31818 10.5851 4.22727 12.7851 6.68182 12.7851C9.13636 12.7851 11.0455 10.6851 11.0455 7.98508C11.0455 7.38508 11.4091 6.98508 11.9545 6.98508C12.5 6.98508 12.8636 7.38508 12.8636 7.98508C12.7727 11.6851 10.0455 14.7851 6.68182 14.7851Z",fill:"white"})),Wg=()=>L("svg",{width:"400",height:"300",viewBox:"0 0 467 300",fill:"none",xmlns:"http://www.w3.org/2000/svg"},L("path",{d:"M312.387 280.629C312.549 280.583 312.247 280.735 312.387 280.629L339.678 260.425C340.088 260.118 340.132 259.156 340.07 258.647C340.008 258.138 339.573 258.257 339.106 258.084L311.712 247.455C311.292 247.301 311.308 247.402 310.939 247.673C310.569 247.944 310.356 248.21 310.356 248.672L310.459 279.504C310.461 280.025 311.163 280.619 311.614 280.847C311.913 280.996 312.072 280.718 312.387 280.629ZM336.204 259.736L312.979 276.292L313.439 251.139L336.204 259.736Z",fill:"url(#paint0_linear_1356_14057)"}),L("path",{d:"M324.639 260.342C324.358 259.547 323.485 258.91 322.707 259.215C319.6 260.432 318.17 262.313 317.287 264.066C316.482 265.665 316.197 267.482 314.188 268.269C312.178 269.055 310.763 268.663 309.162 268.007C307.406 267.287 305.504 266.182 302.397 267.399C299.289 268.616 297.859 270.497 296.976 272.25C296.171 273.849 295.697 274.886 293.685 275.673C291.675 276.459 290.261 276.067 288.659 275.411C286.903 274.691 284.999 273.587 281.894 274.803C278.789 276.019 277.549 278.681 276.666 280.434C275.861 282.034 275.386 283.07 273.374 283.857C272.596 284.161 271.931 285.055 272.211 285.849C272.492 286.644 273.365 287.281 274.143 286.977C277.25 285.76 278.68 283.879 279.563 282.125C280.368 280.526 280.65 278.71 282.662 277.923C284.672 277.136 286.087 277.528 287.688 278.184C289.444 278.904 291.348 280.009 294.453 278.793C297.561 277.576 298.991 275.695 299.874 273.941C300.679 272.342 301.153 271.306 303.165 270.519C305.175 269.732 306.589 270.124 308.191 270.78C309.947 271.5 311.849 272.605 314.956 271.388C318.063 270.172 319.301 267.511 320.184 265.757C320.989 264.158 321.466 263.121 323.476 262.335C324.254 262.032 324.919 261.137 324.639 260.342Z",fill:"url(#paint1_linear_1356_14057)"}),L("path",{d:"M389.034 111.124C388.968 112.406 387.342 113.113 386.324 113.549C384.297 114.419 382.089 114.493 379.942 114.5C376.607 114.509 373.215 114.163 369.89 113.976C366.712 113.798 363.156 113.311 360.03 114.232C357.705 114.919 355.667 116.762 353.452 117.739C351.129 118.765 348.957 119.198 346.489 119.687C335.569 121.85 323.587 120.825 312.656 119.977C311.92 119.92 312.539 118.997 313.237 118.981C313.207 118.815 313.001 118.394 313.045 118.201C313.086 118.029 312.781 117.586 312.853 117.421C312.67 117.198 313.316 117.427 313.626 117.204C315.912 115.557 318.721 114.79 321.363 115.041C324.677 115.355 327.293 116.04 330.641 115.781C334.392 115.491 338.125 114.787 341.857 114.312C345.142 113.892 349.09 113.941 352.106 112.28C352.916 111.834 353.137 111.262 353.269 110.287C353.331 109.828 353.672 108.969 353.658 108.511C353.629 107.529 354.191 107.886 355.013 107.298C356.857 105.981 358.274 105.516 360.428 105.784C362.841 106.083 365.264 107.273 367.578 107.953C370.761 108.888 374.328 108.646 377.631 108.477C380.517 108.329 383.141 107.901 385.944 108.653C387.013 108.941 389.104 109.745 389.034 111.124Z",fill:"url(#paint2_linear_1356_14057)"}),L("path",{d:"M278.118 85.4414C280.313 83.8186 283.302 83.9 285.853 83.2728C290.501 82.127 295.644 78.4476 300.549 79.1524C301.299 79.2595 300.904 81.0355 300.159 80.9295C300.131 80.9256 300.187 80.9333 300.159 80.9295C300.089 81.0185 299.516 81.1051 299.385 81.1463C294.999 82.515 292.895 87.5083 289.126 89.8598C287.799 90.688 286.771 90.8351 285.258 90.9441C283.515 91.0691 280.964 90.5775 279.269 90.1219C277.15 89.5532 275.965 87.034 278.118 85.4414Z",fill:"url(#paint3_linear_1356_14057)"}),L("path",{d:"M122.567 166.093C113.597 172.832 104.535 179.836 99.517 190.092C98.5342 192.099 97.519 195.019 97.9533 197.204C98.9699 202.316 105.76 203.049 110.691 201.96C113.468 201.347 116.325 199.231 115.921 196.319C115.576 193.81 113.158 192.986 112.072 190.73C110.779 188.04 112.35 184.97 114.218 182.62C128.134 165.099 150.074 157.394 171.093 151.607C175.385 150.425 180.897 147.69 180.581 143.099C180.372 140.072 177.118 137.683 174.221 137.383C171.324 137.082 168.481 138.773 165.715 139.776C158.416 142.419 151.17 143.799 143.489 143.526C136.865 143.29 130.976 143.316 129.562 150.781C128.138 158.276 129.53 160.863 122.567 166.093Z",fill:"url(#paint4_linear_1356_14057)"}),L("path",{d:"M79.1056 153.531C60.3932 164.378 43.7478 178.354 32.8214 197.415C30.3313 201.76 27.9216 206.554 27.1821 211.512C26.4448 216.47 27.7591 222.525 30.8133 226.337C34.908 231.446 41.6938 232.915 48.1811 233.125C50.7248 233.208 53.0035 233.066 55.3316 231.947C57.6602 230.83 59.7548 228.359 59.5978 225.742C59.3303 221.315 54.5491 219.665 50.9271 217.34C42.6566 212.037 40.4958 199.493 44.2381 190.032C47.9803 180.57 55.8228 173.173 63.2316 166.338C67.229 162.651 71.5194 158.372 76.777 157.522C79.9167 157.015 83.4706 157.589 86.6295 157.252C93.9004 156.479 99.64 151.404 105.588 146.912C115.048 139.765 126.045 134.283 137.501 132.093C141.913 131.248 146.293 130.493 149.682 127.831C151.37 126.507 150.803 123.567 148.726 123.93C138.542 125.713 128.652 131.135 119.142 134.758C105.627 139.914 91.7133 146.223 79.1056 153.531Z",fill:"url(#paint5_linear_1356_14057)"}),L("path",{d:"M96.3677 117.321C96.0315 116.64 95.2914 116.612 94.6293 116.975C91.9858 118.417 91.5452 120.509 90.9466 122.178C90.4004 123.702 89.3647 124.67 87.6542 125.604C85.9437 126.538 85.0983 126.316 83.5956 125.91C81.9481 125.465 79.8603 125.424 77.2168 126.866C74.5734 128.309 74.1348 130.401 73.5341 132.07C72.9879 133.593 71.9522 134.562 70.2417 135.496C68.5313 136.43 67.6859 136.208 66.1832 135.801C64.5357 135.357 62.2569 134.538 59.6128 135.978C56.9694 137.42 56.5308 139.512 55.9301 141.181C55.3839 142.705 54.5398 144.454 52.8293 145.388C52.1667 145.748 52.1006 146.485 52.439 147.165C52.7752 147.845 53.5153 147.874 54.1773 147.511C56.8208 146.069 57.2594 143.977 57.86 142.307C58.4062 140.784 59.4419 139.815 61.1524 138.881C62.8629 137.948 63.7083 138.17 65.211 138.576C66.8585 139.021 68.9458 139.059 71.5898 137.619C74.2333 136.177 74.6718 134.085 75.2725 132.416C75.8187 130.892 76.8544 129.924 78.5649 128.99C80.2754 128.056 81.1207 128.278 82.6235 128.684C84.2709 129.129 86.5503 129.95 89.1938 128.507C91.8373 127.065 92.2779 124.973 92.8765 123.304C93.4227 121.78 94.2663 120.03 95.9773 119.098C96.6378 118.738 96.7039 118.001 96.3677 117.321Z",fill:"#FBC49D"}),L("path",{d:"M391.827 164.699C392.04 164.639 392.39 164.573 392.6 164.481C393.87 163.921 395.363 162.429 395.893 161.051C396.421 159.673 396.237 158.321 395.712 156.931C394.629 154.061 391.777 152.62 389.155 153.775C386.531 154.931 384.962 158.455 386.042 161.325C387.038 163.963 389.369 165.392 391.827 164.699ZM394.166 157.367C394.529 158.332 394.52 159.751 394.156 160.706C393.792 161.662 393.1 162.534 392.218 162.921C390.398 163.723 388.338 162.878 387.589 160.889C387.226 159.925 387.234 158.506 387.599 157.55C387.963 156.594 388.654 155.723 389.536 155.336C391.356 154.534 393.416 155.376 394.166 157.367Z",fill:"#86E29B"}),L("path",{d:"M62.7198 108.691C64.4912 108.191 66.6152 106.609 67.5596 104.824C68.4273 103.187 68.465 101.455 67.9609 99.7066C67.4547 97.9586 66.0792 96.5141 64.4963 95.6786C62.9135 94.843 61.2077 94.8578 59.4756 95.4255C57.7435 95.9933 56.2768 97.4364 55.409 99.074C53.6185 102.456 55.2032 106.494 58.4723 108.22C60.0142 109.035 61.1315 109.138 62.7198 108.691ZM60.6304 96.7682C61.819 96.4332 63.0232 96.8871 64.1048 97.4571C65.2463 98.0603 66.0495 98.8796 66.4145 100.142C66.7791 101.403 66.4488 103.299 65.8224 104.48C64.5299 106.919 61.2212 107.686 58.8638 106.441C56.5063 105.197 55.8538 101.858 57.1462 99.4185C57.7726 98.2375 58.6059 97.3957 59.8573 96.9862C59.9214 96.9635 60.5631 96.7872 60.6304 96.7682Z",fill:"#FFB0EB"}),L("path",{d:"M77.0217 242.979C75.9542 243.28 75.1664 242.151 74.9029 241.074C74.6394 239.996 75 239.378 76.0676 239.077C77.1351 238.776 78.5053 238.907 78.7688 239.984C79.0323 241.061 78.0893 242.678 77.0217 242.979Z",fill:"url(#paint6_linear_1356_14057)"}),L("path",{d:"M380.506 184.577C379.439 184.878 378.651 183.749 378.387 182.672C378.124 181.594 378.484 180.976 379.552 180.675C380.619 180.374 381.99 180.505 382.253 181.582C382.517 182.659 381.574 184.276 380.506 184.577Z",fill:"url(#paint7_linear_1356_14057)"}),L("path",{d:"M348.82 246.969C347.752 247.27 346.382 247.14 346.119 246.063C345.855 244.985 346.798 243.369 347.866 243.068C348.933 242.767 349.721 243.896 349.985 244.973C350.248 246.05 349.888 246.669 348.82 246.969Z",fill:"url(#paint8_linear_1356_14057)"}),L("path",{d:"M140.419 282.412C139.351 282.713 138.754 282.365 138.491 281.288C138.227 280.21 138.397 278.812 139.464 278.511C140.532 278.21 142.093 279.121 142.357 280.198C142.62 281.275 141.486 282.111 140.419 282.412Z",fill:"url(#paint9_linear_1356_14057)"}),L("path",{d:"M121.462 101.679C120.395 101.979 119.798 101.631 119.534 100.554C119.271 99.4764 119.44 98.0779 120.508 97.777C121.575 97.4761 123.136 98.3868 123.4 99.4642C123.663 100.542 122.53 101.378 121.462 101.679Z",fill:"url(#paint10_linear_1356_14057)"}),L("path",{d:"M370.749 159.005C369.682 159.306 368.311 159.175 368.048 158.098C367.784 157.021 368.727 155.404 369.795 155.103C370.863 154.802 371.65 155.931 371.914 157.008C372.177 158.086 371.817 158.704 370.749 159.005Z",fill:"url(#paint11_linear_1356_14057)"}),L("path",{d:"M384.211 245.345C383.143 245.646 381.773 245.515 381.51 244.438C381.246 243.361 382.189 241.744 383.257 241.443C384.324 241.142 385.112 242.271 385.376 243.348C385.639 244.426 385.278 245.044 384.211 245.345Z",fill:"url(#paint12_linear_1356_14057)"}),L("path",{d:"M364.771 41.3873C363.063 41.8687 361.337 40.8616 360.915 39.1378C360.493 37.414 361.536 35.6263 363.244 35.1449C364.953 34.6634 366.679 35.6706 367.101 37.3944C367.522 39.1182 366.479 40.9059 364.771 41.3873Z",fill:"url(#paint13_linear_1356_14057)"}),L("path",{d:"M404.311 77.905C404.602 77.8231 404.875 77.9236 405.084 77.6871C405.437 77.2908 404.814 76.6385 404.703 76.1265L401.277 58.7418C401.149 58.163 400.687 57.5371 400.123 57.3991C399.558 57.2611 398.969 57.3812 398.576 57.835L385.784 73.1179C385.395 73.564 385.199 74.3453 385.393 74.8964C385.585 75.4481 385.978 76.1646 386.548 76.2391L403.538 78.123C403.744 78.1479 404.114 77.9607 404.311 77.905ZM398.948 62.7348L401.811 74.4394L389.841 72.8085L398.948 62.7348Z",fill:"#FFB0EB"}),L("path",{d:"M97.5393 295.311C97.7108 295.263 97.4284 295.461 97.5393 295.311L108.785 280.464C108.975 280.211 108.718 279.972 108.594 279.684C108.47 279.396 108.124 279.917 107.821 279.902L88.5106 278.672C88.2101 278.659 87.895 278.62 87.7374 278.89C87.5798 279.159 87.7755 279.402 87.9283 279.67L96.5753 294.749C96.7102 294.99 97.2696 295.297 97.5393 295.311C97.6283 295.319 97.4556 295.335 97.5393 295.311ZM106.465 281.118L96.9667 292.97L90.6295 280.577L106.465 281.118Z",fill:"#86E29B"}),L("path",{d:"M393.699 108.848C389.518 104.446 414.629 114.366 413.945 120.659C413.259 126.952 401.355 129.102 403.894 123.491C406.042 118.747 400.376 115.876 393.699 108.848Z",fill:"#FBC49D"}),L("path",{d:"M139.414 115.959C139.434 115.953 139.392 115.965 139.414 115.959C141.963 115.2 143.436 111.976 142.717 109.189C142.37 107.839 141.526 107.199 140.408 106.504C139.289 105.808 138.171 105.449 136.933 105.815C135.698 106.182 134.85 107.033 134.222 108.247C133.595 109.461 133.282 111.234 133.63 112.585C133.978 113.935 134.821 114.574 135.94 115.27C137.04 115.952 138.199 116.301 139.414 115.959ZM137.315 107.375C138.222 107.12 139.005 106.994 139.825 107.502C140.661 108.02 140.912 108.618 141.171 109.625C141.708 111.704 140.935 113.834 139.032 114.398C138.11 114.675 137.356 114.791 136.522 114.272C135.686 113.753 135.436 113.155 135.176 112.149C134.917 111.142 134.718 109.714 135.186 108.81C135.654 107.905 136.394 107.649 137.315 107.375C137.329 107.371 137.299 107.38 137.315 107.375Z",fill:"#75C4FD"}),L("path",{d:"M308.981 78.7519C310.052 78.4043 311.158 78.7096 312.265 78.6613C313.655 78.6006 314.936 78.517 316.323 78.3531C319.497 77.9795 322.798 77.4906 325.984 77.3012C329.309 77.1025 332.514 76.8551 335.836 77.0295C338.809 77.1842 342.163 77.3405 345.105 77.7558C352.129 78.7468 359.331 79.0578 366.347 80.1158C372.252 81.008 377.93 82.1319 383.722 83.5644C385.925 84.0054 388.267 85.0754 389.126 85.3792C389.421 85.4833 389.37 85.8347 389.317 86.1595C389.306 86.2271 389.353 86.1146 389.317 86.1595C388.269 87.414 386.564 86.8124 385.259 86.4677C384.406 86.241 381.488 85.9494 381.011 85.9957C380.14 86.0815 379.277 86.014 379.656 87.2114C380.122 88.6824 382.391 89.7375 383.704 90.2419C385.883 91.0803 388.771 91.2561 390.845 92.4015C392.968 92.821 395.425 93.5002 397.022 93.9986C402.83 95.8103 407.806 98.8678 413.033 102.002C415.503 103.482 417.829 104.764 419.973 106.72C421.647 108.248 423.771 109.882 424.595 112.091C425.113 113.482 424.451 115.471 422.848 115.085C420.353 114.488 419.638 111.665 418.227 109.714C415.003 105.251 410.067 102.067 405.118 100.06C402.64 99.0556 399.803 98.729 397.204 98.1176C394.411 97.4613 391.597 97.0442 388.707 97.1736C385.646 97.3097 382.846 97.5534 379.819 98.0078C377.027 98.4264 374.252 98.4441 371.514 97.8441C368.766 97.2421 366.276 96.7553 363.6 95.9021C361.662 95.2848 359.013 94.5583 357.232 93.5247C355.699 92.6339 355.631 91.2381 357.241 90.186C359.87 88.4656 362.778 89.8021 365.546 90.3497C365.561 90.3527 365.532 90.3468 365.546 90.3497C367.858 90.804 369.649 90.098 371.923 89.3884C372.489 89.2128 373.255 89.0482 373.47 88.953C374.383 88.5432 375.895 87.8227 375.407 86.7394C374.868 85.5457 372.659 84.8846 371.55 84.4891C369.74 83.8428 368.053 82.9215 366.147 82.6743C365.654 82.6095 365.109 83.1606 364.6 83.1097C363.36 83.1121 361.769 83.348 360.543 83.418C357.43 83.5916 354.583 83.6228 351.464 83.4719C348.714 83.3377 346.432 82.8542 343.741 82.3102C340.773 81.7101 337.52 81.5879 334.471 81.5839C331.393 81.5811 328.6 81.7214 325.583 82.4181C322.758 83.0702 319.757 83.6198 316.887 84.0326C314.698 84.3481 312.467 84.6054 310.319 84.2137C309.079 83.9871 306.994 83.3394 306.461 81.9635C305.846 80.3659 307.736 79.1556 308.981 78.7519Z",fill:"url(#paint14_linear_1356_14057)"}),L("path",{d:"M242.269 242.95C242.295 242.947 242.244 242.955 242.269 242.95C244.934 242.606 247.53 241.858 250.2 241.574C253.133 241.264 256.006 240.56 258.906 239.982C263.26 239.117 268.026 238.52 272.254 237.097C274.429 236.365 276.067 235.298 278.251 234.592C280.361 233.909 283.058 233.12 285.216 232.652C289.317 231.764 293.049 231.66 297.016 230.198C301.109 228.69 305.088 226.673 308.819 224.409C312.645 222.086 316.282 219.769 320.622 218.62C322.381 218.154 323.919 218.219 325.65 218.886C327.016 219.413 327.739 220.337 327.196 221.79C326.557 223.504 324.659 224.7 323.131 225.423C320.854 226.5 319.53 227.184 317.134 227.927C314.619 228.707 311.888 229.24 309.395 230.083C308.226 230.947 307.17 232.522 306.105 233.501C303.996 235.441 301.666 237.03 298.945 237.996C292.934 240.129 286.354 238.602 280.183 239.056C279.661 239.095 279.162 239.442 278.635 239.487C275.592 240.135 272.2 240.63 269.156 241.294C264.546 242.299 260.456 243.409 255.808 244.179C251.971 244.814 243.815 245.854 243.815 245.854L242.074 245.505C240.575 245.281 240.751 243.152 242.269 242.95Z",fill:"url(#paint15_linear_1356_14057)"}),L("path",{d:"M432.985 171.626C438.212 165.465 445.109 153.64 442.906 144.649C442.162 137.999 433.671 132.912 424.963 135.518C420.16 136.957 416.435 142.146 419.724 144.498C420.656 145.164 422.187 145.591 423.391 145.969C434.204 149.375 434.925 162.538 425.069 169.683C421.087 172.569 416.347 174.292 411.914 176.719C400.151 183.162 399.887 196.847 387.7 202.712C382.326 205.298 375.761 206.838 370.297 209.275C359.98 213.88 352.555 221.733 342.241 226.341C337.225 228.584 330.266 231.632 323.483 234.12C321.475 234.855 321.999 237.058 324.056 236.46C324.098 236.449 324.017 236.474 324.056 236.46C329.079 234.971 334.437 233.161 339.331 231.33C352.278 226.48 365.28 220.971 377.43 214.775C401.78 202.367 416.881 190.609 432.985 171.626Z",fill:"url(#paint16_linear_1356_14057)"}),L("path",{d:"M343.644 241.104C348.002 234.144 357.126 232.455 364.343 231.134C368.176 230.431 372.406 229.878 376.137 228.662C380.691 227.175 384.558 224.095 388.327 221.077C389.452 220.177 391.204 218.466 392.393 217.436C393.185 216.748 393.644 216.026 394.33 215.225C396 213.275 399.599 209.812 401.687 208.16C403.263 206.914 407.779 204.758 408.259 207.986C408.611 210.359 406.379 213.087 404.961 214.747C402.224 217.953 398.998 221.079 395.475 223.243C391.749 225.531 387.701 227.439 383.674 229.051C381.672 229.853 379.519 230.073 377.486 230.785C376.001 231.307 374.486 232.236 373.037 232.866C371.034 233.738 368.99 234.28 367.041 235.38C364.436 236.849 361.782 238.783 359.108 240.105C356.331 241.477 353.823 242.691 350.791 243.27C348.6 243.687 345.501 243.641 343.836 241.884C343.526 241.554 343.389 241.51 343.644 241.104Z",fill:"url(#paint17_linear_1356_14057)"}),L("path",{d:"M190.163 273.219C222.905 268.849 232.64 262.943 213.962 259.057C195.285 255.172 187.5 262.08 188.434 266.2C189.366 270.32 180.381 271.326 169.286 272.39C158.193 273.454 157.141 276.354 190.163 273.219Z",fill:"url(#paint18_linear_1356_14057)"}),L("path",{d:"M295.952 95.4242L241.395 135.226L251.54 111.77L295.952 95.4242Z",fill:"#E17726",stroke:"#E17726","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M170.111 95.4242L224.181 135.598L214.522 111.77L170.111 95.4242Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M276.309 187.712L261.793 209.576L292.876 218.014L301.78 188.189L276.309 187.712Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M164.336 188.189L173.186 218.014L204.215 209.576L189.753 187.712L164.336 188.189Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M202.542 150.776L193.908 163.618L224.667 164.998L223.642 132.36L202.542 150.776Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M263.52 150.775L242.097 131.989L241.395 164.998L272.154 163.618L263.52 150.775Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M204.215 209.576L222.832 200.714L206.805 188.402L204.215 209.576Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M243.23 200.714L261.793 209.576L259.257 188.402L243.23 200.714Z",fill:"#E27625",stroke:"#E27625","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M261.793 209.576L243.23 200.714L244.741 212.601L244.579 217.643L261.793 209.576Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M204.215 209.576L221.483 217.643L221.375 212.601L222.832 200.714L204.215 209.576Z",fill:"#D5BFB2",stroke:"#D5BFB2","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M221.807 180.547L206.373 176.09L217.274 171.154L221.807 180.547Z",fill:"#233447",stroke:"#233447","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M244.255 180.547L248.788 171.154L259.742 176.09L244.255 180.547Z",fill:"#233447",stroke:"#233447","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M204.215 209.576L206.913 187.712L189.753 188.189L204.215 209.576Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M259.149 187.712L261.793 209.576L276.309 188.189L259.149 187.712Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M272.154 163.618L241.395 164.998L244.255 180.547L248.788 171.154L259.742 176.09L272.154 163.618Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M206.373 176.09L217.274 171.154L221.807 180.547L224.667 164.998L193.908 163.618L206.373 176.09Z",fill:"#CC6228",stroke:"#CC6228","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M193.908 163.618L206.805 188.402L206.373 176.09L193.908 163.618Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M259.743 176.09L259.257 188.402L272.154 163.618L259.743 176.09Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M224.667 164.998L221.807 180.548L225.422 198.909L226.232 174.71L224.667 164.998Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M241.395 164.998L239.884 174.657L240.64 198.909L244.255 180.548L241.395 164.998Z",fill:"#E27525",stroke:"#E27525","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M244.255 180.547L240.64 198.909L243.23 200.714L259.257 188.402L259.743 176.09L244.255 180.547Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M206.373 176.09L206.805 188.402L222.832 200.714L225.422 198.909L221.807 180.547L206.373 176.09Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M244.579 217.643L244.741 212.601L243.338 211.434H222.724L221.375 212.601L221.483 217.643L204.215 209.576L210.259 214.459L222.508 222.791H243.5L255.803 214.459L261.793 209.576L244.579 217.643Z",fill:"#C0AC9D",stroke:"#C0AC9D","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M243.23 200.714L240.64 198.909H225.422L222.832 200.714L221.375 212.601L222.724 211.434H243.338L244.741 212.601L243.23 200.714Z",fill:"#161616",stroke:"#161616","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M298.272 137.827L302.859 115.856L295.952 95.4242L243.23 133.899L263.52 150.775L292.174 159.001L298.488 151.731L295.736 149.767L300.107 145.84L296.761 143.293L301.132 140.002L298.272 137.827Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M163.203 115.856L167.844 137.827L164.876 140.002L169.301 143.293L165.955 145.84L170.326 149.767L167.574 151.731L173.888 159.001L202.542 150.775L222.832 133.899L170.11 95.4242L163.203 115.856Z",fill:"#763E1A",stroke:"#763E1A","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M292.175 159.001L263.52 150.775L272.154 163.618L259.257 188.402L276.309 188.189H301.78L292.175 159.001Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M202.542 150.775L173.888 159.001L164.336 188.189H189.753L206.805 188.402L193.908 163.618L202.542 150.775Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("path",{d:"M241.395 164.998L243.23 133.9L251.54 111.77H214.522L222.832 133.9L224.667 164.998L225.368 174.763L225.422 198.909H240.64L240.694 174.763L241.395 164.998Z",fill:"#F5841F",stroke:"#F5841F","stroke-width":"0.94513","stroke-linecap":"round","stroke-linejoin":"round"}),L("defs",null,L("linearGradient",{id:"paint0_linear_1356_14057",x1:"335.991",y1:"250.487",x2:"303.873",y2:"266.801",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})),L("linearGradient",{id:"paint1_linear_1356_14057",x1:"276.993",y1:"303.722",x2:"205.254",y2:"401.574",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"0.0929","stop-color":"#81C2F6"}),L("stop",{offset:"1","stop-color":"#F0B8BD"})),L("linearGradient",{id:"paint2_linear_1356_14057",x1:"271.074",y1:"119.924",x2:"553.077",y2:"104.53",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})),L("linearGradient",{id:"paint3_linear_1356_14057",x1:"264.209",y1:"91.0943",x2:"357.834",y2:"72.8792",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})),L("linearGradient",{id:"paint4_linear_1356_14057",x1:"212.46",y1:"121.997",x2:"92.6119",y2:"183.406",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})),L("linearGradient",{id:"paint5_linear_1356_14057",x1:"23.0498",y1:"204.411",x2:"161.86",y2:"163.003",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"0.0929","stop-color":"#81C2F6"}),L("stop",{offset:"1","stop-color":"#F0B8BD"})),L("linearGradient",{id:"paint6_linear_1356_14057",x1:"78.8647",y1:"240.375",x2:"74.9655",y2:"241.328",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint7_linear_1356_14057",x1:"382.349",y1:"181.971",x2:"378.45",y2:"182.925",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint8_linear_1356_14057",x1:"349.889",y1:"244.583",x2:"345.99",y2:"245.537",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint9_linear_1356_14057",x1:"142.262",y1:"279.808",x2:"138.362",y2:"280.762",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint10_linear_1356_14057",x1:"123.305",y1:"99.0746",x2:"119.406",y2:"100.028",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint11_linear_1356_14057",x1:"371.818",y1:"156.617",x2:"367.919",y2:"157.571",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint12_linear_1356_14057",x1:"385.281",y1:"242.958",x2:"381.382",y2:"243.911",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint13_linear_1356_14057",x1:"367.125",y1:"37.5052",x2:"360.843",y2:"38.8076",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"1","stop-color":"#75C3FC"})),L("linearGradient",{id:"paint14_linear_1356_14057",x1:"300.182",y1:"91.321",x2:"479.464",y2:"104.041",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})),L("linearGradient",{id:"paint15_linear_1356_14057",x1:"363.434",y1:"201.232",x2:"102.977",y2:"302.269",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})),L("linearGradient",{id:"paint16_linear_1356_14057",x1:"447.962",y1:"165.159",x2:"313.049",y2:"197.95",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"0.0929","stop-color":"#81C2F6"}),L("stop",{offset:"1","stop-color":"#F0B8BD"})),L("linearGradient",{id:"paint17_linear_1356_14057",x1:"410.211",y1:"215.859",x2:"341.378",y2:"232.788",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#75C3FC"}),L("stop",{offset:"0.0929","stop-color":"#81C2F6"}),L("stop",{offset:"1","stop-color":"#F0B8BD"})),L("linearGradient",{id:"paint18_linear_1356_14057",x1:"222.282",y1:"258.986",x2:"162.257",y2:"273.774",gradientUnits:"userSpaceOnUse"},L("stop",{"stop-color":"#FFE466"}),L("stop",{offset:"1","stop-color":"#FFAFEA"})))),If=class{constructor(t){Da(this,t),this.close=On(this,"close",7),this.connectWithExtension=On(this,"connectWithExtension",7),this.link=void 0,this.sdkVersion=void 0,this.preferDesktop=void 0,this.tab=1,this.isDefaultTab=!0,this.translationsLoaded=!1,this.i18nInstance=new Wa,this.setTab(this.preferDesktop?1:2)}async connectedCallback(){await this.i18nInstance.init({fallbackLng:"en"}),this.translationsLoaded=!0}onClose(t=!1){this.close.emit({shouldTerminate:t})}connectWithExtensionHandler(){this.connectWithExtension.emit()}setTab(t){this.tab=t,this.isDefaultTab=!1}disconnectedCallback(){this.onClose()}updatePreferDesktop(t){t?this.setTab(1):this.setTab(2)}render(){if(!this.translationsLoaded)return null;const t=i=>this.i18nInstance.t(i),e=this.sdkVersion,n=this.isDefaultTab?this.preferDesktop?1:2:this.tab,r=Of(this.link,"svg",{ecc:"medium",scale:2});return L(Ha,{className:"select-modal"},L("div",{class:"backdrop",onClick:()=>this.onClose(!0)}),L("div",{class:"modal"},L("div",{class:"closeButtonContainer"},L("div",{class:"right"},L("span",{class:"closeButton",onClick:()=>this.onClose(!0)},L(qa,null)))),L("div",{class:"logoContainer"},L(Va,null)),L("div",null,L("div",{class:"tabcontainer"},L("div",{class:"flexContainer"},L("div",{onClick:()=>this.setTab(1),class:"tab flexItem "+(n===1?"tabactive":"")},t("DESKTOP")),L("div",{onClick:()=>this.setTab(2),class:"tab flexItem "+(n===2?"tabactive":"")},t("MOBILE")))),L("div",{style:{display:n===1?"none":"block"}},L("div",{class:"flexContainer"},L("div",{class:"flexItem",style:{textAlign:"center",marginTop:"4"}},L("div",{class:"center",id:"sdk-mm-qrcode",innerHTML:r}),L("div",{class:"connectMobileText"},t("SCAN_TO_CONNECT"),L("br",null),L("span",{class:"blue"},L("b",null,t("META_MASK_MOBILE_APP"))))))),L("div",{style:{display:n===2?"none":"block"}},L("div",{style:{display:"flex",justifyContent:"center",height:"300",marginTop:"-20"}},L(Wg,null)),L("div",{class:"extensionLabel"},t("SELECT_MODAL.CRYPTO_TAKE_CONTROL_TEXT")),L("button",{class:"button",onClick:this.connectWithExtensionHandler},L(Vg,null),L("span",{class:"installExtensionText"},t("CONNECT_WITH_EXTENSION"))))),L(za,{version:e})))}get el(){return Co(this)}static get watchers(){return{preferDesktop:["updatePreferDesktop"]}}};If.style=`.flexContainer { + display: flex; + justify-content: center; + align-items: center; + flex-direction: row; +} + +.flexItem { + flex: 1; + justify-content: center; + align-items: center; +} + +.flexItem11 { + flex: 11; + justify-content: center; + align-items: center; +} + +.flexItem1 { + flex: 1; + justify-content: center; + align-items: center; +} + +.tab { + padding: 8px; + cursor: pointer; + background-color: #F2F4F6; + font-size: 12px; + text-align: center; + color: #24292E; +} + +.tabcontainer { + padding: 4px; + background-color: #F2F4F6; + border-radius: 8px; + margin-bottom: 30px; + margin-top: 30px; +} + +.tabactive { + background-color: white; + -webkit-transition: background-color 300ms linear; + -ms-transition: background-color 300ms linear; + transition: background-color 300ms linear; + border-radius: 8px; +} + +.item { + font-size: 12px; + margin-bottom: 16px; + border-radius: 8px; + padding: 10px; + border: 2px #F2F4F6 solid; + color: #24292E; +} + +.extensionLabel { + font-style: normal; + font-weight: bold; + font-size: 14px; + text-align: cetner; + color: #24272A; +} + +.notice { + font-size: 12px; + margin-left: 10px; + margin-right: 10px; + color: grey; +} + +.button { + margin-top: 41.5px; + margin-bottom: 20px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 12px 20px; + background: #037DD6; + border-radius: 32px; + color: white; + border: 0; + font-size: 14px; + cursor: pointer; +} + +.backdrop { + visibility: visible; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + z-index: 99998; + background: rgba(0, 0, 0, 0.87); + opacity: 0.3; +} + +.modal { + visibility: visible; + position: fixed; + left: 50%; + transform: translate(-50%, -50%); + z-index: 99999; + background: white; + padding: 20px; + border-radius: 8px; + top: 50%; + max-width: 100%; + width: 460px; + min-width: 300px; + box-shadow: rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px; + -webkit-font-smoothing: antialiased; +} + +.closeButton { + color: #BBC0C5; + cursor: pointer; +} + +.logoContainer { + margin-left: 24px; + margin-right: 24px; + margin-top: 24px; + display: flex; + align-items: center; + justify-content: center; +} + +.connectMobileText { + font-size: 14px; + color: black; + margin-top: 28px; + margin-bottom: 28px; + line-height: 2; +} + +.blue { + color: #037DD6; + font-weight: 700; +} + +.installExtensionText { + margin-left: 10px; +} + +.center { + display: flex; + justify-content: center; + align-items: center; +} + +.right { + display: flex; + align-items: center; + justify-content: right; +} + +#sdk-mm-qrcode { + svg { + width: 50%; + } +}`;var Gg=Object.freeze({__proto__:null,mm_select_modal:If});export{Ln as CommunicationLayerPreference,je as ConnectionStatus,rr as DEFAULT_SERVER_URL,te as EventType,xe as MessageType,Zg as MetaMaskSDK,st as MetaMaskSDKEvent,Xt as PROVIDER_UPDATE_TYPE,He as PlatformType,I2 as SDKProvider,Zg as default}; diff --git a/main/packages/examples/with-web3onboard/build/assets/number-84aafe0c.js b/main/packages/examples/with-web3onboard/build/assets/number-84aafe0c.js new file mode 100644 index 000000000..83dc62b7d --- /dev/null +++ b/main/packages/examples/with-web3onboard/build/assets/number-84aafe0c.js @@ -0,0 +1,7 @@ +import{f as D,n as ce,t as h,B as u,J as He,s as B,V as ue,Y as ke,N as Ne,E as Se,x as T,o as P,C as j,D as L,A as te}from"./index-c9f1dfa0.js";function z(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function fe(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function rn(e){if(typeof e!="function"||typeof e.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");z(e.outputLen),z(e.blockLen)}function H(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function le(e,t){fe(e);const n=t.outputLen;if(e.length>ne&C)}:{h:Number(e>>ne&C)|0,l:Number(e&C)|0}}function Me(e,t=!1){let n=new Uint32Array(e.length),s=new Uint32Array(e.length);for(let i=0;ie<>>32-n,Re=(e,t,n)=>t<>>32-n,De=(e,t,n)=>t<>>64-n,Ke=(e,t,n)=>e<>>64-n,V=typeof globalThis=="object"&&"crypto"in globalThis?globalThis.crypto:void 0;/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */const he=e=>e instanceof Uint8Array,We=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4)),M=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),m=(e,t)=>e<<32-t|e>>>t,Xe=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!Xe)throw new Error("Non little-endian hardware is not supported");function Ye(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function K(e){if(typeof e=="string"&&(e=Ye(e)),!he(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}function on(...e){const t=new Uint8Array(e.reduce((s,i)=>s+i.length,0));let n=0;return e.forEach(s=>{if(!he(s))throw new Error("Uint8Array expected");t.set(s,n),n+=s.length}),t}class de{clone(){return this._cloneInto()}}function be(e){const t=s=>e().update(K(s)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function an(e=32){if(V&&typeof V.getRandomValues=="function")return V.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}const[pe,me,xe]=[[],[],[]],Je=BigInt(0),O=BigInt(1),Qe=BigInt(2),Ze=BigInt(7),qe=BigInt(256),et=BigInt(113);for(let e=0,t=O,n=1,s=0;e<24;e++){[n,s]=[s,(2*n+3*s)%5],pe.push(2*(5*s+n)),me.push((e+1)*(e+2)/2%64);let i=Je;for(let o=0;o<7;o++)t=(t<>Ze)*et)%qe,t&Qe&&(i^=O<<(O<n>32?De(e,t,n):_e(e,t,n),ie=(e,t,n)=>n>32?Ke(e,t,n):Re(e,t,n);function st(e,t=24){const n=new Uint32Array(10);for(let s=24-t;s<24;s++){for(let r=0;r<10;r++)n[r]=e[r]^e[r+10]^e[r+20]^e[r+30]^e[r+40];for(let r=0;r<10;r+=2){const a=(r+8)%10,c=(r+2)%10,l=n[c],d=n[c+1],f=se(l,d,1)^n[a],p=ie(l,d,1)^n[a+1];for(let b=0;b<50;b+=10)e[r+b]^=f,e[r+b+1]^=p}let i=e[2],o=e[3];for(let r=0;r<24;r++){const a=me[r],c=se(i,o,a),l=ie(i,o,a),d=pe[r];i=e[d],o=e[d+1],e[d]=c,e[d+1]=l}for(let r=0;r<50;r+=10){for(let a=0;a<10;a++)n[a]=e[r+a];for(let a=0;a<10;a++)e[r+a]^=~n[(a+2)%10]&n[(a+4)%10]}e[0]^=tt[s],e[1]^=nt[s]}n.fill(0)}class W extends de{constructor(t,n,s,i=!1,o=24){if(super(),this.blockLen=t,this.suffix=n,this.outputLen=s,this.enableXOF=i,this.rounds=o,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,z(s),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=We(this.state)}keccak(){st(this.state32,this.rounds),this.posOut=0,this.pos=0}update(t){H(this);const{blockLen:n,state:s}=this;t=K(t);const i=t.length;for(let o=0;o=s&&this.keccak();const r=Math.min(s-this.posOut,o-i);t.set(n.subarray(this.posOut,this.posOut+r),i),this.posOut+=r,i+=r}return t}xofInto(t){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(t)}xof(t){return z(t),this.xofInto(new Uint8Array(t))}digestInto(t){if(le(t,this),this.finished)throw new Error("digest() was already called");return this.writeInto(t),this.destroy(),t}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(t){const{blockLen:n,suffix:s,outputLen:i,rounds:o,enableXOF:r}=this;return t||(t=new W(n,s,i,r,o)),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=o,t.suffix=s,t.outputLen=i,t.enableXOF=r,t.destroyed=this.destroyed,t}}const it=(e,t,n)=>be(()=>new W(t,e,n)),rt=it(1,136,256/8);function ot(e,t){const n=t||"hex",s=rt(D(e,{strict:!1})?ce(e):e);return n==="bytes"?s:h(s)}class F extends u{constructor({address:t}){super(`Address "${t}" is invalid.`,{metaMessages:["- Address must be a hex value of 20 bytes (40 hex characters).","- Address must match its checksum counterpart."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidAddressError"})}}class ge extends Map{constructor(t){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=t}set(t,n){return super.set(t,n),this.maxSize&&this.size>this.maxSize&&this.delete(this.keys().next().value),this}}const _=new ge(8192);function ye(e,t){if(_.has(`${e}.${t}`))return _.get(`${e}.${t}`);const n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),s=ot(He(n),"bytes"),i=(t?n.substring(`${t}0x`.length):n).split("");for(let r=0;r<40;r+=2)s[r>>1]>>4>=8&&i[r]&&(i[r]=i[r].toUpperCase()),(s[r>>1]&15)>=8&&i[r+1]&&(i[r+1]=i[r+1].toUpperCase());const o=`0x${i.join("")}`;return _.set(`${e}.${t}`,o),o}function cn(e,t){if(!G(e,{strict:!1}))throw new F({address:e});return ye(e,t)}const at=/^0x[a-fA-F0-9]{40}$/,R=new ge(8192);function G(e,t){const{strict:n=!0}=t??{};if(R.has(e))return R.get(e);const s=(()=>at.test(e)?e.toLowerCase()===e?!0:n?ye(e)===e:!0:!1)();return R.set(e,s),s}function un(e){return typeof e[0]=="string"?k(e):ct(e)}function ct(e){let t=0;for(const i of e)t+=i.length;const n=new Uint8Array(t);let s=0;for(const i of e)n.set(i,s),s+=i.length;return n}function k(e){return`0x${e.reduce((t,n)=>t+n.replace("0x",""),"")}`}function ut(e,t,n,{strict:s}={}){return D(e,{strict:!1})?lt(e,t,n,{strict:s}):ft(e,t,n,{strict:s})}function we(e,t){if(typeof t=="number"&&t>0&&t>B(e)-1)throw new ue({offset:t,position:"start",size:B(e)})}function Pe(e,t,n){if(typeof t=="number"&&typeof n=="number"&&B(e)!==n-t)throw new ue({offset:n,position:"end",size:B(e)})}function ft(e,t,n,{strict:s}={}){we(e,t);const i=e.slice(t,n);return s&&Pe(i,t,n),i}function lt(e,t,n,{strict:s}={}){we(e,t);const i=`0x${e.replace("0x","").slice((t??0)*2,(n??e.length)*2)}`;return s&&Pe(i,t,n),i}class re extends u{constructor({offset:t}){super(`Offset \`${t}\` cannot be negative.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"NegativeOffsetError"})}}class ht extends u{constructor({length:t,position:n}){super(`Position \`${n}\` is out of bounds (\`0 < position < ${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PositionOutOfBoundsError"})}}class dt extends u{constructor({count:t,limit:n}){super(`Recursive read limit of \`${n}\` exceeded (recursive read count: \`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"RecursiveReadLimitExceededError"})}}const bt={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:Number.POSITIVE_INFINITY,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new dt({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new ht({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new re({offset:e});const t=this.position-e;this.assertPosition(t),this.position=t},getReadCount(e){return this.positionReadCount.get(e||this.position)||0},incrementPosition(e){if(e<0)throw new re({offset:e});const t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){const n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){const t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){const t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){const t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){const t=e??this.position;return this.assertPosition(t+3),this.dataView.getUint32(t)},pushByte(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushBytes(e){this.assertPosition(this.position+e.length-1),this.bytes.set(e,this.position),this.position+=e.length},pushUint8(e){this.assertPosition(this.position),this.bytes[this.position]=e,this.position++},pushUint16(e){this.assertPosition(this.position+1),this.dataView.setUint16(this.position,e),this.position+=2},pushUint24(e){this.assertPosition(this.position+2),this.dataView.setUint16(this.position,e>>8),this.dataView.setUint8(this.position+2,e&255),this.position+=3},pushUint32(e){this.assertPosition(this.position+3),this.dataView.setUint32(this.position,e),this.position+=4},readByte(){this.assertReadLimit(),this._touch();const e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();const n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();const e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();const e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();const e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();const e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){const t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===Number.POSITIVE_INFINITY)return;const e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Ie(e,{recursiveReadLimit:t=8192}={}){const n=Object.create(bt);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}function I(e,t="wei"){return ke(e,Ne[t])}function ve(e){const t=Object.entries(e).map(([s,i])=>i===void 0||i===!1?null:[s,i]).filter(Boolean),n=t.reduce((s,[i])=>Math.max(s,i.length),0);return t.map(([s,i])=>` ${`${s}:`.padEnd(n+1)} ${i}`).join(` +`)}class fn extends u{constructor(){super(["Cannot specify both a `gasPrice` and a `maxFeePerGas`/`maxPriorityFeePerGas`.","Use `maxFeePerGas`/`maxPriorityFeePerGas` for EIP-1559 compatible networks, and `gasPrice` for others."].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"FeeConflictError"})}}class pt extends u{constructor({v:t}){super(`Invalid \`v\` value "${t}". Expected 27 or 28.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidLegacyVError"})}}class mt extends u{constructor({transaction:t}){super("Cannot infer a transaction type from provided transaction.",{metaMessages:["Provided Transaction:","{",ve(t),"}","","To infer the type, either provide:","- a `type` to the Transaction, or","- an EIP-1559 Transaction with `maxFeePerGas`, or","- an EIP-2930 Transaction with `gasPrice` & `accessList`, or","- an EIP-4844 Transaction with `blobs`, `blobVersionedHashes`, `sidecars`, or","- a Legacy Transaction with `gasPrice`"]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSerializableTransactionError"})}}class ln extends u{constructor({serializedType:t}){super(`Serialized transaction type "${t}" is invalid.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSerializedTransactionType"}),Object.defineProperty(this,"serializedType",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=t}}class hn extends u{constructor({attributes:t,serializedTransaction:n,type:s}){const i=Object.entries(t).map(([o,r])=>typeof r>"u"?o:void 0).filter(Boolean);super(`Invalid serialized transaction of type "${s}" was provided.`,{metaMessages:[`Serialized Transaction: "${n}"`,i.length>0?`Missing Attributes: ${i.join(", ")}`:""].filter(Boolean)}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidSerializedTransactionError"}),Object.defineProperty(this,"serializedTransaction",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedTransaction=n,this.type=s}}class xt extends u{constructor({storageKey:t}){super(`Size for storage key "${t}" is invalid. Expected 32 bytes. Got ${Math.floor((t.length-2)/2)} bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidStorageKeySizeError"})}}class dn extends u{constructor(t,{account:n,docsPath:s,chain:i,data:o,gas:r,gasPrice:a,maxFeePerGas:c,maxPriorityFeePerGas:l,nonce:d,to:f,value:p}){var y;const b=ve({chain:i&&`${i==null?void 0:i.name} (id: ${i==null?void 0:i.id})`,from:n==null?void 0:n.address,to:f,value:typeof p<"u"&&`${Se(p)} ${((y=i==null?void 0:i.nativeCurrency)==null?void 0:y.symbol)||"ETH"}`,data:o,gas:r,gasPrice:typeof a<"u"&&`${I(a)} gwei`,maxFeePerGas:typeof c<"u"&&`${I(c)} gwei`,maxPriorityFeePerGas:typeof l<"u"&&`${I(l)} gwei`,nonce:d});super(t.shortMessage,{cause:t,docsPath:s,metaMessages:[...t.metaMessages?[...t.metaMessages," "]:[],"Request Arguments:",b].filter(Boolean)}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TransactionExecutionError"}),this.cause=t}}class bn extends u{constructor({blockHash:t,blockNumber:n,blockTag:s,hash:i,index:o}){let r="Transaction";s&&o!==void 0&&(r=`Transaction at block time "${s}" at index "${o}"`),t&&o!==void 0&&(r=`Transaction at block hash "${t}" at index "${o}"`),n&&o!==void 0&&(r=`Transaction at block number "${n}" at index "${o}"`),i&&(r=`Transaction with hash "${i}"`),super(`${r} could not be found.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TransactionNotFoundError"})}}class pn extends u{constructor({hash:t}){super(`Transaction receipt with hash "${t}" could not be found. The Transaction may not be processed on a block yet.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TransactionReceiptNotFoundError"})}}class mn extends u{constructor({hash:t}){super(`Timed out while waiting for transaction with hash "${t}" to be confirmed.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WaitForTransactionReceiptTimeoutError"})}}class Te extends u{constructor({cause:t,message:n}={}){var i;const s=(i=n==null?void 0:n.replace("execution reverted: ",""))==null?void 0:i.replace("execution reverted","");super(`Execution reverted ${s?`with reason: ${s}`:"for an unknown reason"}.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ExecutionRevertedError"})}}Object.defineProperty(Te,"code",{enumerable:!0,configurable:!0,writable:!0,value:3});Object.defineProperty(Te,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted/});class N extends u{constructor({cause:t,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${I(n)} gwei`:""}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"FeeCapTooHigh"})}}Object.defineProperty(N,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\^256-1|fee cap higher than 2\^256-1/});class gt extends u{constructor({cause:t,maxFeePerGas:n}={}){super(`The fee cap (\`maxFeePerGas\`${n?` = ${I(n)}`:""} gwei) cannot be lower than the block base fee.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"FeeCapTooLow"})}}Object.defineProperty(gt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas less than block base fee|fee cap less than block base fee|transaction is outdated/});class yt extends u{constructor({cause:t,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}is higher than the next one expected.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"NonceTooHighError"})}}Object.defineProperty(yt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/});class wt extends u{constructor({cause:t,nonce:n}={}){super([`Nonce provided for the transaction ${n?`(${n}) `:""}is lower than the current nonce of the account.`,"Try increasing the nonce or find the latest nonce with `getTransactionCount`."].join(` +`),{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"NonceTooLowError"})}}Object.defineProperty(wt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/});class Pt extends u{constructor({cause:t,nonce:n}={}){super(`Nonce provided for the transaction ${n?`(${n}) `:""}exceeds the maximum allowed nonce.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"NonceMaxValueError"})}}Object.defineProperty(Pt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/});class It extends u{constructor({cause:t}={}){super(["The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account."].join(` +`),{cause:t,metaMessages:["This error could arise when the account does not have enough funds to:"," - pay for the total gas fee,"," - pay for the value to send."," ","The cost of the transaction is calculated as `gas * gas fee + value`, where:"," - `gas` is the amount of gas needed for transaction to execute,"," - `gas fee` is the gas fee,"," - `value` is the amount of ether to send to the recipient."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InsufficientFundsError"})}}Object.defineProperty(It,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds/});class vt extends u{constructor({cause:t,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:""}provided for the transaction exceeds the limit allowed for the block.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"IntrinsicGasTooHighError"})}}Object.defineProperty(vt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/});class Tt extends u{constructor({cause:t,gas:n}={}){super(`The amount of gas ${n?`(${n}) `:""}provided for the transaction is too low.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"IntrinsicGasTooLowError"})}}Object.defineProperty(Tt,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/});class Et extends u{constructor({cause:t}){super("The transaction type is not supported for this chain.",{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TransactionTypeNotSupportedError"})}}Object.defineProperty(Et,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/});class Ee extends u{constructor({cause:t,maxPriorityFeePerGas:n,maxFeePerGas:s}={}){super([`The provided tip (\`maxPriorityFeePerGas\`${n?` = ${I(n)} gwei`:""}) cannot be higher than the fee cap (\`maxFeePerGas\`${s?` = ${I(s)} gwei`:""}).`].join(` +`),{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"TipAboveFeeCapError"})}}Object.defineProperty(Ee,"nodeMessage",{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/});class xn extends u{constructor({cause:t}){super(`An error occurred while executing: ${t==null?void 0:t.shortMessage}`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"UnknownNodeError"})}}function S(e,t){return({exclude:n,format:s})=>({exclude:n,format:i=>{const o=t(i);if(n)for(const r of n)delete o[r];return{...o,...s(i)}},type:e})}const Bt={legacy:"0x0",eip2930:"0x1",eip1559:"0x2",eip4844:"0x3"};function Ut(e){const t={};return typeof e.accessList<"u"&&(t.accessList=e.accessList),typeof e.blobVersionedHashes<"u"&&(t.blobVersionedHashes=e.blobVersionedHashes),typeof e.blobs<"u"&&(typeof e.blobs[0]!="string"?t.blobs=e.blobs.map(n=>T(n)):t.blobs=e.blobs),typeof e.data<"u"&&(t.data=e.data),typeof e.from<"u"&&(t.from=e.from),typeof e.gas<"u"&&(t.gas=P(e.gas)),typeof e.gasPrice<"u"&&(t.gasPrice=P(e.gasPrice)),typeof e.maxFeePerBlobGas<"u"&&(t.maxFeePerBlobGas=P(e.maxFeePerBlobGas)),typeof e.maxFeePerGas<"u"&&(t.maxFeePerGas=P(e.maxFeePerGas)),typeof e.maxPriorityFeePerGas<"u"&&(t.maxPriorityFeePerGas=P(e.maxPriorityFeePerGas)),typeof e.nonce<"u"&&(t.nonce=P(e.nonce)),typeof e.to<"u"&&(t.to=e.to),typeof e.type<"u"&&(t.type=Bt[e.type]),typeof e.value<"u"&&(t.value=P(e.value)),t}const gn=S("transactionRequest",Ut),Be={"0x0":"legacy","0x1":"eip2930","0x2":"eip1559","0x3":"eip4844"};function Ue(e){const t={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?j(e.chainId):void 0,gas:e.gas?BigInt(e.gas):void 0,gasPrice:e.gasPrice?BigInt(e.gasPrice):void 0,maxFeePerBlobGas:e.maxFeePerBlobGas?BigInt(e.maxFeePerBlobGas):void 0,maxFeePerGas:e.maxFeePerGas?BigInt(e.maxFeePerGas):void 0,maxPriorityFeePerGas:e.maxPriorityFeePerGas?BigInt(e.maxPriorityFeePerGas):void 0,nonce:e.nonce?j(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Be[e.type]:void 0,typeHex:e.type?e.type:void 0,value:e.value?BigInt(e.value):void 0,v:e.v?BigInt(e.v):void 0};return t.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof t.v=="bigint"){if(t.v===0n||t.v===27n)return 0;if(t.v===1n||t.v===28n)return 1;if(t.v>=35n)return t.v%2n===0n?1:0}})(),t.type==="legacy"&&(delete t.accessList,delete t.maxFeePerBlobGas,delete t.maxFeePerGas,delete t.maxPriorityFeePerGas,delete t.yParity),t.type==="eip2930"&&(delete t.maxFeePerBlobGas,delete t.maxFeePerGas,delete t.maxPriorityFeePerGas),t.type==="eip1559"&&delete t.maxFeePerBlobGas,t}const yn=S("transaction",Ue);function $t(e){var n;const t=(n=e.transactions)==null?void 0:n.map(s=>typeof s=="string"?s:Ue(s));return{...e,baseFeePerGas:e.baseFeePerGas?BigInt(e.baseFeePerGas):null,blobGasUsed:e.blobGasUsed?BigInt(e.blobGasUsed):void 0,difficulty:e.difficulty?BigInt(e.difficulty):void 0,excessBlobGas:e.excessBlobGas?BigInt(e.excessBlobGas):void 0,gasLimit:e.gasLimit?BigInt(e.gasLimit):void 0,gasUsed:e.gasUsed?BigInt(e.gasUsed):void 0,hash:e.hash?e.hash:null,logsBloom:e.logsBloom?e.logsBloom:null,nonce:e.nonce?e.nonce:null,number:e.number?BigInt(e.number):null,size:e.size?BigInt(e.size):void 0,timestamp:e.timestamp?BigInt(e.timestamp):void 0,transactions:t,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}const wn=S("block",$t);function $e(e){const{kzg:t}=e,n=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),s=typeof e.blobs[0]=="string"?e.blobs.map(o=>L(o)):e.blobs,i=[];for(const o of s)i.push(Uint8Array.from(t.blobToKzgCommitment(o)));return n==="bytes"?i:i.map(o=>T(o))}function Oe(e){const{kzg:t}=e,n=e.to??(typeof e.blobs[0]=="string"?"hex":"bytes"),s=typeof e.blobs[0]=="string"?e.blobs.map(r=>L(r)):e.blobs,i=typeof e.commitments[0]=="string"?e.commitments.map(r=>L(r)):e.commitments,o=[];for(let r=0;rT(r))}function Ot(e,t,n,s){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,n,s);const i=BigInt(32),o=BigInt(4294967295),r=Number(n>>i&o),a=Number(n&o),c=s?4:0,l=s?0:4;e.setUint32(t+c,r,s),e.setUint32(t+l,a,s)}class Lt extends de{constructor(t,n,s,i){super(),this.blockLen=t,this.outputLen=n,this.padOffset=s,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=M(this.buffer)}update(t){H(this);const{view:n,buffer:s,blockLen:i}=this;t=K(t);const o=t.length;for(let r=0;ri-r&&(this.process(s,0),r=0);for(let f=r;fd.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;fe&t^~e&n,Gt=(e,t,n)=>e&t^e&n^t&n,At=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),x=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),g=new Uint32Array(64);class Ct extends Lt{constructor(){super(64,32,8,!1),this.A=x[0]|0,this.B=x[1]|0,this.C=x[2]|0,this.D=x[3]|0,this.E=x[4]|0,this.F=x[5]|0,this.G=x[6]|0,this.H=x[7]|0}get(){const{A:t,B:n,C:s,D:i,E:o,F:r,G:a,H:c}=this;return[t,n,s,i,o,r,a,c]}set(t,n,s,i,o,r,a,c){this.A=t|0,this.B=n|0,this.C=s|0,this.D=i|0,this.E=o|0,this.F=r|0,this.G=a|0,this.H=c|0}process(t,n){for(let f=0;f<16;f++,n+=4)g[f]=t.getUint32(n,!1);for(let f=16;f<64;f++){const p=g[f-15],b=g[f-2],y=m(p,7)^m(p,18)^p>>>3,E=m(b,17)^m(b,19)^b>>>10;g[f]=E+g[f-7]+y+g[f-16]|0}let{A:s,B:i,C:o,D:r,E:a,F:c,G:l,H:d}=this;for(let f=0;f<64;f++){const p=m(a,6)^m(a,11)^m(a,25),b=d+p+Ft(a,c,l)+At[f]+g[f]|0,E=(m(s,2)^m(s,13)^m(s,22))+Gt(s,i,o)|0;d=l,l=c,c=a,a=r+b|0,r=o,o=i,i=s,s=b+E|0}s=s+this.A|0,i=i+this.B|0,o=o+this.C|0,r=r+this.D|0,a=a+this.E|0,c=c+this.F|0,l=l+this.G|0,d=d+this.H|0,this.set(s,i,o,r,a,c,l,d)}roundClean(){g.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}const jt=be(()=>new Ct);function zt(e,t){const n=t||"hex",s=jt(D(e,{strict:!1})?ce(e):e);return n==="bytes"?s:h(s)}function Ht(e){const{commitment:t,version:n=1}=e,s=e.to??(typeof t=="string"?"hex":"bytes"),i=zt(t,"bytes");return i.set([n],0),s==="bytes"?i:T(i)}function kt(e){const{commitments:t,version:n}=e,s=e.to??(typeof t[0]=="string"?"hex":"bytes"),i=[];for(const o of t)i.push(Ht({commitment:o,to:s,version:n}));return i}const oe=6,Le=32,X=4096,Fe=Le*X,ae=Fe*oe-1-1*X*oe,Ge=1;class Nt extends u{constructor({maxSize:t,size:n}){super("Blob size is too large.",{metaMessages:[`Max: ${t} bytes`,`Given: ${n} bytes`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BlobSizeTooLargeError"})}}class Ae extends u{constructor(){super("Blob data must not be empty."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"EmptyBlobError"})}}class St extends u{constructor({hash:t,size:n}){super(`Versioned hash "${t}" size is invalid.`,{metaMessages:["Expected: 32",`Received: ${n}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidVersionedHashSizeError"})}}class Vt extends u{constructor({hash:t,version:n}){super(`Versioned hash "${t}" version is invalid.`,{metaMessages:[`Expected: ${Ge}`,`Received: ${n}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidVersionedHashVersionError"})}}function Mt(e){const t=e.to??(typeof e.data=="string"?"hex":"bytes"),n=typeof e.data=="string"?L(e.data):e.data,s=B(n);if(!s)throw new Ae;if(s>ae)throw new Nt({maxSize:ae,size:s});const i=[];let o=!0,r=0;for(;o;){const a=Ie(new Uint8Array(Fe));let c=0;for(;ca.bytes):i.map(a=>T(a.bytes))}function _t(e){const{data:t,kzg:n,to:s}=e,i=e.blobs??Mt({data:t,to:s}),o=e.commitments??$e({blobs:i,kzg:n,to:s}),r=e.proofs??Oe({blobs:i,commitments:o,kzg:n,to:s}),a=[];for(let c=0;ct?[`- The contract "${s.name}" was not deployed until block ${s.blockCreated} (current block ${t}).`]:[`- The chain does not have the contract "${s.name}" configured.`]]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ChainDoesNotSupportContract"})}}class In extends u{constructor({chain:t,currentChainId:n}){super(`The current chain of the wallet (id: ${n}) does not match the target chain for the transaction (id: ${t.id} – ${t.name}).`,{metaMessages:[`Current Chain ID: ${n}`,`Expected Chain ID: ${t.id} – ${t.name}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ChainMismatchError"})}}class vn extends u{constructor(){super(["No chain was provided to the request.","Please provide a chain with the `chain` argument on the Action, or by supplying a `chain` to WalletClient."].join(` +`)),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ChainNotFoundError"})}}class Tn extends u{constructor(){super("No chain was provided to the Client."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ClientChainNotConfiguredError"})}}class Y extends u{constructor({chainId:t}){super(typeof t=="number"?`Chain ID "${t}" is invalid.`:"Chain ID is invalid."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"InvalidChainIdError"})}}function En(e){return{formatters:void 0,fees:void 0,serializers:void 0,...e}}function v(e,t="hex"){const n=Ce(e),s=Ie(new Uint8Array(n.length));return n.encode(s),t==="hex"?T(s.bytes):s.bytes}function Bn(e,t="bytes"){return v(e,t)}function Un(e,t="hex"){return v(e,t)}function Ce(e){return Array.isArray(e)?Kt(e.map(t=>Ce(t))):Wt(e)}function Kt(e){const t=e.reduce((i,o)=>i+o.length,0),n=je(t);return{length:(()=>t<=55?1+t:1+n+t)(),encode(i){t<=55?i.pushByte(192+t):(i.pushByte(192+55+n),n===1?i.pushUint8(t):n===2?i.pushUint16(t):n===3?i.pushUint24(t):i.pushUint32(t));for(const{encode:o}of e)o(i)}}}function Wt(e){const t=typeof e=="string"?L(e):e,n=je(t.length);return{length:(()=>t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length)(),encode(i){t.length===1&&t[0]<128?i.pushBytes(t):t.length<=55?(i.pushByte(128+t.length),i.pushBytes(t)):(i.pushByte(128+55+n),n===1?i.pushUint8(t.length):n===2?i.pushUint16(t.length):n===3?i.pushUint24(t.length):i.pushUint32(t.length),i.pushBytes(t))}}}function je(e){if(e<2**8)return 1;if(e<2**16)return 2;if(e<2**24)return 3;if(e<2**32)return 4;throw new u("Length is too large.")}const Xt={"0x0":"reverted","0x1":"success"};function Yt(e){const t={...e,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,contractAddress:e.contractAddress?e.contractAddress:null,cumulativeGasUsed:e.cumulativeGasUsed?BigInt(e.cumulativeGasUsed):null,effectiveGasPrice:e.effectiveGasPrice?BigInt(e.effectiveGasPrice):null,gasUsed:e.gasUsed?BigInt(e.gasUsed):null,logs:e.logs?e.logs.map(n=>Dt(n)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?j(e.transactionIndex):null,status:e.status?Xt[e.status]:null,type:e.type?Be[e.type]||e.type:null};return e.blobGasPrice&&(t.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(t.blobGasUsed=BigInt(e.blobGasUsed)),t}const $n=S("transactionReceipt",Yt);function Jt(e){const{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Ae;for(const n of t){const s=B(n),i=j(ut(n,0,1));if(s!==32)throw new St({hash:n,size:s});if(i!==Ge)throw new Vt({hash:n,version:i})}}ze(e)}function ze(e){const{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:s,to:i}=e;if(t<=0)throw new Y({chainId:t});if(i&&!G(i))throw new F({address:i});if(s&&s>2n**256n-1n)throw new N({maxFeePerGas:s});if(n&&s&&n>s)throw new Ee({maxFeePerGas:s,maxPriorityFeePerGas:n})}function Qt(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:s,maxFeePerGas:i,to:o}=e;if(t<=0)throw new Y({chainId:t});if(o&&!G(o))throw new F({address:o});if(n||i)throw new u("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.");if(s&&s>2n**256n-1n)throw new N({maxFeePerGas:s})}function Zt(e){const{chainId:t,maxPriorityFeePerGas:n,gasPrice:s,maxFeePerGas:i,to:o,accessList:r}=e;if(o&&!G(o))throw new F({address:o});if(typeof t<"u"&&t<=0)throw new Y({chainId:t});if(n||i)throw new u("`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.");if(s&&s>2n**256n-1n)throw new N({maxFeePerGas:s});if(r)throw new u("`accessList` is not a valid Legacy Transaction attribute.")}function J(e){if(!e||e.length===0)return[];const t=[];for(let n=0;n"u"||typeof b>"u")){const w=typeof e.blobs[0]=="string"?e.blobs:e.blobs.map($=>T($)),A=e.kzg,U=$e({blobs:w,kzg:A});if(typeof p>"u"&&(p=kt({commitments:U})),typeof b>"u"){const $=Oe({blobs:w,commitments:U,kzg:A});b=_t({blobs:w,commitments:U,proofs:$})}}const y=J(d),E=[h(n),i?h(i):"0x",l?h(l):"0x",c?h(c):"0x",s?h(s):"0x",o??"0x",r?h(r):"0x",f??"0x",y,a?h(a):"0x",p??[],...Q(e,t)],Z=[],q=[],ee=[];if(b)for(let w=0;w{if(t.v>=35n)return(t.v-35n)/2n>0?t.v:27n+(t.v===35n?0n:1n);if(n>0)return BigInt(n*2)+BigInt(35n+t.v-27n);const f=27n+(t.v===27n?0n:1n);if(t.v!==f)throw new pt({v:t.v});return f})();l=[...l,h(d),t.r,t.s]}else n>0&&(l=[...l,h(n),"0x","0x"]);return v(l)}function Q(e,t){const{r:n,s,v:i,yParity:o}=t??e;return typeof n>"u"?[]:typeof s>"u"?[]:typeof i>"u"&&typeof o>"u"?[]:[(()=>typeof o=="number"?o?h(1):"0x":i===0n?"0x":i===1n?h(1):i===27n?"0x":h(1))(),te(n),te(s)]}const Ln=2n**(8n-1n)-1n,Fn=2n**(16n-1n)-1n,Gn=2n**(24n-1n)-1n,An=2n**(32n-1n)-1n,Cn=2n**(40n-1n)-1n,jn=2n**(48n-1n)-1n,zn=2n**(56n-1n)-1n,Hn=2n**(64n-1n)-1n,kn=2n**(72n-1n)-1n,Nn=2n**(80n-1n)-1n,Sn=2n**(88n-1n)-1n,Vn=2n**(96n-1n)-1n,Mn=2n**(104n-1n)-1n,_n=2n**(112n-1n)-1n,Rn=2n**(120n-1n)-1n,Dn=2n**(128n-1n)-1n,Kn=2n**(136n-1n)-1n,Wn=2n**(144n-1n)-1n,Xn=2n**(152n-1n)-1n,Yn=2n**(160n-1n)-1n,Jn=2n**(168n-1n)-1n,Qn=2n**(176n-1n)-1n,Zn=2n**(184n-1n)-1n,qn=2n**(192n-1n)-1n,es=2n**(200n-1n)-1n,ts=2n**(208n-1n)-1n,ns=2n**(216n-1n)-1n,ss=2n**(224n-1n)-1n,is=2n**(232n-1n)-1n,rs=2n**(240n-1n)-1n,os=2n**(248n-1n)-1n,as=2n**(256n-1n)-1n,cs=-(2n**(8n-1n)),us=-(2n**(16n-1n)),fs=-(2n**(24n-1n)),ls=-(2n**(32n-1n)),hs=-(2n**(40n-1n)),ds=-(2n**(48n-1n)),bs=-(2n**(56n-1n)),ps=-(2n**(64n-1n)),ms=-(2n**(72n-1n)),xs=-(2n**(80n-1n)),gs=-(2n**(88n-1n)),ys=-(2n**(96n-1n)),ws=-(2n**(104n-1n)),Ps=-(2n**(112n-1n)),Is=-(2n**(120n-1n)),vs=-(2n**(128n-1n)),Ts=-(2n**(136n-1n)),Es=-(2n**(144n-1n)),Bs=-(2n**(152n-1n)),Us=-(2n**(160n-1n)),$s=-(2n**(168n-1n)),Os=-(2n**(176n-1n)),Ls=-(2n**(184n-1n)),Fs=-(2n**(192n-1n)),Gs=-(2n**(200n-1n)),As=-(2n**(208n-1n)),Cs=-(2n**(216n-1n)),js=-(2n**(224n-1n)),zs=-(2n**(232n-1n)),Hs=-(2n**(240n-1n)),ks=-(2n**(248n-1n)),Ns=-(2n**(256n-1n)),Ss=2n**8n-1n,Vs=2n**16n-1n,Ms=2n**24n-1n,_s=2n**32n-1n,Rs=2n**40n-1n,Ds=2n**48n-1n,Ks=2n**56n-1n,Ws=2n**64n-1n,Xs=2n**72n-1n,Ys=2n**80n-1n,Js=2n**88n-1n,Qs=2n**96n-1n,Zs=2n**104n-1n,qs=2n**112n-1n,ei=2n**120n-1n,ti=2n**128n-1n,ni=2n**136n-1n,si=2n**144n-1n,ii=2n**152n-1n,ri=2n**160n-1n,oi=2n**168n-1n,ai=2n**176n-1n,ci=2n**184n-1n,ui=2n**192n-1n,fi=2n**200n-1n,li=2n**208n-1n,hi=2n**216n-1n,di=2n**224n-1n,bi=2n**232n-1n,pi=2n**240n-1n,mi=2n**248n-1n,xi=2n**256n-1n;export{Yt as $,Tn as A,vn as B,Pn as C,In as D,Te as E,N as F,dn as G,cn as H,F as I,v as J,be as K,lt as L,ln as M,yt as N,hn as O,ht as P,Jt as Q,ze as R,Lt as S,Et as T,xn as U,Qt as V,Zt as W,pt as X,bn as Y,Ue as Z,pn as _,k as a,oi as a$,de as a0,rn as a1,K as a2,H as a3,fe as a4,on as a5,an as a6,jt as a7,mn as a8,On as a9,ts as aA,ns as aB,ss as aC,is as aD,rs as aE,os as aF,as as aG,Ss as aH,Vs as aI,Ms as aJ,_s as aK,Rs as aL,Ds as aM,Ks as aN,Ws as aO,Xs as aP,Ys as aQ,Js as aR,Qs as aS,Zs as aT,qs as aU,ei as aV,ti as aW,ni as aX,si as aY,ii as aZ,ri as a_,Ht as aa,Ln as ab,Fn as ac,Gn as ad,An as ae,Cn as af,jn as ag,zn as ah,Hn as ai,kn as aj,Nn as ak,Sn as al,Vn as am,Mn as an,_n as ao,Rn as ap,Dn as aq,Kn as ar,Wn as as,Xn as at,Yn as au,Jn as av,Qn as aw,Zn as ax,qn as ay,es as az,Ie as b,ai as b0,ci as b1,ui as b2,fi as b3,li as b4,hi as b5,di as b6,bi as b7,pi as b8,mi as b9,As as bA,Cs as bB,js as bC,zs as bD,Hs as bE,ks as bF,Ns as bG,Y as bH,mt as bI,xt as bJ,wn as bK,yn as bL,Be as bM,$n as bN,gn as bO,Bt as bP,Bn as bQ,Un as bR,Mt as bS,ct as bT,En as bU,zt as bV,J as bW,Q as bX,xi as ba,cs as bb,us as bc,fs as bd,ls as be,hs as bf,ds as bg,bs as bh,ps as bi,ms as bj,xs as bk,gs as bl,ys as bm,ws as bn,Ps as bo,Is as bp,vs as bq,Ts as br,Es as bs,Bs as bt,Us as bu,$s as bv,Os as bw,Ls as bx,Fs as by,Gs as bz,un as c,ye as d,ft as e,I as f,gt as g,wt as h,G as i,Pt as j,ot as k,It as l,vt as m,Tt as n,Ee as o,ve as p,fn as q,$t as r,ut as s,$e as t,kt as u,Oe as v,_t as w,Rt as x,Ut as y,Dt as z}; diff --git a/main/packages/examples/with-web3onboard/build/index.html b/main/packages/examples/with-web3onboard/build/index.html index 42af9d27c..a11809612 100644 --- a/main/packages/examples/with-web3onboard/build/index.html +++ b/main/packages/examples/with-web3onboard/build/index.html @@ -5,7 +5,7 @@ Vite + React + TS - +