mppx 0.6.14 → 0.6.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- export declare const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t){return e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}let v={height:440,width:360};function y(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function b(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function x(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let S,ee,te,ne=[];function C(){return typeof window>`u`?ie():y({name:`iframe`},e=>{let{host:t}=e;if(S&&S.host===t){let t=ee;return ee=e.store,t&&t!==ee&&!ne.includes(t)&&ne.push(t),te?.destroy(),te=re()(e),S.instance}S?.instance.destroy(),ee=e.store,te=re()(e);let n=!1,r=le(),i=new URL(t);i.searchParams.set(`chainId`,String(ee.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark)));let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Auth`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Auth`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(ee,ne,e.id),e)}),e.waitForReady().then(e=>{c=e,e.colorScheme&&(o.style.colorScheme=e.colorScheme)}),e.on(`switch-mode`,()=>{fe(),C(),n=!1,l=!0;let e=ee?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&te?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,v=()=>se(ee),y=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});y.observe(a,{attributeOldValue:!0,attributes:!0});let b=!1,C=()=>{b&&(b=!1,a.removeEventListener(`cancel`,v),a.removeEventListener(`click`,v),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{b||(b=!0,a.addEventListener(`cancel`,v),a.addEventListener(`click`,v),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},ue=!1,de=()=>{ue||(ue=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},fe=()=>{if(ue){ue=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},pe={close(){te.close(),n=!1,fe(),C()},destroy(){S?.instance===pe&&(S=void 0),te?.close(),n=!1,C(),fe(),te?.destroy(),f.destroy(),a.remove(),y.disconnect(),ee=void 0,te=void 0,ne=[]},open(){n||(n=!0,de(),ie())},async syncRequests(e){if(l){te.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(x()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){te.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),te.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:ce(ee),chainId:ee.getState().chainId,requests:e})}}};return S={host:t,instance:pe},pe})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=v}=e;return y({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let e=le(),a=new URL(n);a.searchParams.set(`chainId`,String(r.getState().chainId)),a.searchParams.set(`mode`,`popup`),e.icon&&(typeof e.icon==`string`?a.searchParams.set(`icon`,e.icon):(a.searchParams.set(`icon`,e.icon.light),a.searchParams.set(`iconDark`,e.icon.dark)));let c=(window.innerWidth-t.width)/2+window.screenX,l=window.screenY+100;if(i=window.open(a.toString(),`_blank`,`width=${t.width},height=${t.height},left=${c},top=${l}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:a.origin}),to:p(i,{targetOrigin:a.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:ce(r),chainId:r.getState().chainId,requests:e})}}})}function ie(){return y({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function le(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var ue,de=o((()=>{ue=`1.2.3`})),fe,pe=o((()=>{de(),fe=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${ue}`].join(`\n`);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=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function me(e,t){return e.exec(t)?.groups}var he,ge,_e,ve=o((()=>{he=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ge=/^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)?$/,_e=/^\\(.+?\\).*?$/}));function ye(e){let t=e.type;if(be.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=ye(i),r<n-1&&(t+=`, `)}let r=me(be,e.type);return t+=`)${r?.array||``}`,ye({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var be,xe=o((()=>{ve(),be=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function Se(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ye(i),r!==n-1&&(t+=`, `)}return t}var Ce=o((()=>{xe()}));function we(e){return e.type===`function`?`function ${e.name}(${Se(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Se(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Se(e.inputs)})`:e.type===`error`?`error ${e.name}(${Se(e.inputs)})`:e.type===`constructor`?`constructor(${Se(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var Te=o((()=>{Ce()}));function Ee(e){return ze.test(e)}function De(e){return me(ze,e)}function Oe(e){return Be.test(e)}function ke(e){return me(Be,e)}function Ae(e){return Ve.test(e)}function je(e){return me(Ve,e)}function Me(e){return He.test(e)}function Ne(e){return me(He,e)}function Pe(e){return Ue.test(e)}function Fe(e){return me(Ue,e)}function Ie(e){return We.test(e)}function Le(e){return me(We,e)}function Re(e){return Ge.test(e)}var ze,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye=o((()=>{ve(),ze=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Be=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Ve=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,He=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,Ue=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,We=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Ge=/^receive\\(\\) external payable$/,Ke=new Set([`memory`,`indexed`,`storage`,`calldata`]),qe=new Set([`indexed`]),Je=new Set([`calldata`,`memory`,`storage`])})),Xe,Ze,Qe=o((()=>{pe(),Xe=class extends fe{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" 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`})}},Ze=class extends fe{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),$e,et,tt,nt,rt,it,at=o((()=>{pe(),$e=class extends fe{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},et=class extends fe{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},tt=class extends fe{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" 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`})}},nt=class extends fe{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},rt=class extends fe{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},it=class extends fe{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),ot,st,ct,lt=o((()=>{pe(),ot=class extends fe{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},st=class extends fe{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},ct=class extends fe{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),ut,dt=o((()=>{pe(),ut=class extends fe{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),ft,pt=o((()=>{pe(),ft=class extends fe{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function mt(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var ht,gt=o((()=>{ht=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 _t(e,t={}){if(Ae(e))return vt(e,t);if(Oe(e))return yt(e,t);if(Ee(e))return bt(e,t);if(Pe(e))return xt(e,t);if(Ie(e))return St(e);if(Re(e))return{type:`receive`,stateMutability:`payable`};throw new st({signature:e})}function vt(e,t={}){let n=je(e);if(!n)throw new ot({signature:e,type:`function`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{modifiers:Je,structs:t,type:`function`}));let o=[];if(n.returns){let e=wt(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(Ct(e[n],{modifiers:Je,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function yt(e,t={}){let n=ke(e);if(!n)throw new ot({signature:e,type:`event`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{modifiers:qe,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function bt(e,t={}){let n=De(e);if(!n)throw new ot({signature:e,type:`error`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function xt(e,t={}){let n=Fe(e);if(!n)throw new ot({signature:e,type:`constructor`});let r=wt(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(Ct(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function St(e){let t=Le(e);if(!t)throw new ot({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function Ct(e,t){let n=mt(e,t?.type,t?.structs);if(ht.has(n))return ht.get(n);let r=_e.test(e),i=me(r?kt:Ot,e);if(!i)throw new et({param:e});if(i.name&&Et(i.name))throw new tt({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=wt(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Ct(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(At.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Tt(c))throw new Ze({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new nt({param:e,type:t?.type,modifier:i.modifier});if(Je.has(i.modifier)&&!Dt(c,!!i.array))throw new rt({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return ht.set(n,u),u}function wt(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?wt(o,[...t,n.trim()]):wt(o,t,`${n}${i}`,r);case`(`:return wt(o,t,`${n}${i}`,r+1);case`)`:return wt(o,t,`${n}${i}`,r-1);default:return wt(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new ft({current:n,depth:r});return t.push(n.trim()),t}function Tt(e){return e===`address`||e===`bool`||e===`function`||e===`string`||he.test(e)||ge.test(e)}function Et(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||he.test(e)||ge.test(e)||jt.test(e)}function Dt(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var Ot,kt,At,jt,Mt=o((()=>{ve(),Qe(),at(),lt(),pt(),gt(),Ye(),Ot=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,kt=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,At=/^u?int$/,jt=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function Nt(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Me(n))continue;let i=Ne(n);if(!i)throw new ot({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=Ct(t,{type:`struct`});o.push(n)}if(!o.length)throw new ct({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Pt(a,t)}return r}function Pt(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(_e.test(i.type))r.push(i);else{let e=me(Ft,i.type);if(!e?.type)throw new it({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new ut({type:o});r.push({...i,type:`tuple${a??``}`,components:Pt(t[o],t,new Set([...n,o]))})}else if(Tt(o))r.push(i);else throw new Xe({type:o})}}return r}var Ft,It=o((()=>{ve(),Qe(),at(),lt(),dt(),Ye(),Mt(),Ft=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function Lt(e){let t=Nt(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];Me(r)||n.push(_t(r,t))}return n}var Rt=o((()=>{Ye(),It(),Mt()}));function zt(e){let t=[];if(typeof e==`string`){let n=wt(e),r=n.length;for(let e=0;e<r;e++)t.push(Ct(n[e],{modifiers:Ke}))}else{let n=Nt(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(Me(r))continue;let a=wt(r),o=a.length;for(let e=0;e<o;e++)t.push(Ct(a[e],{modifiers:Ke,structs:n}))}}if(t.length===0)throw new $e({params:e});return t}var Bt=o((()=>{at(),Ye(),It(),Mt()})),Vt=o((()=>{pe(),Te(),xe(),Ce(),Rt(),Qe(),Ye(),It(),Mt(),at(),Bt(),lt(),pt(),dt()})),Ht,Ut=o((()=>{Ht=`0.1.1`}));function Wt(){return Ht}var Gt=o((()=>{Ut()}));function Kt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?Kt(e.cause,t):t?null:e}var w,T=o((()=>{Gt(),w=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return Kt(this,e)}},Object.defineProperty(w,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${Wt()}`}}),w.setStaticOptions(w.defaultStaticOptions)})),qt,Jt=o((()=>{qt=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function Yt(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Xt(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Zt(e,...t){if(!Yt(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function Qt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);Xt(e.outputLen),Xt(e.blockLen)}function $t(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function en(e,t){Zt(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function tn(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function nn(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function rn(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function an(e,t){return e<<32-t|e>>>t}function on(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function sn(e){for(let t=0;t<e.length;t++)e[t]=on(e[t]);return e}function cn(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ln(e){return typeof e==`string`&&(e=cn(e)),Zt(e),e}function un(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Zt(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function dn(e){let t=t=>e().update(ln(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function fn(e){let t=(t,n)=>e(n).update(ln(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function pn(e=32){if(qt&&typeof qt.getRandomValues==`function`)return qt.getRandomValues(new Uint8Array(e));if(qt&&typeof qt.randomBytes==`function`)return Uint8Array.from(qt.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var mn,hn,gn,_n=o((()=>{Jt(),mn=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,hn=mn?e=>e:sn,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,gn=class{}})),vn,yn,bn=o((()=>{_n(),vn=class extends gn{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Qt(e);let n=ln(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),nn(i)}update(e){return $t(this),this.iHash.update(e),this}digestInto(e){$t(this),Zt(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},yn=(e,t,n)=>new vn(e,t).update(n).digest(),yn.create=(e,t)=>new vn(e,t)}));function xn(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Sn(e,t,n){return e&t^~e&n}function Cn(e,t,n){return e&t^e&n^t&n}var wn,Tn,En,Dn,On=o((()=>{_n(),wn=class extends gn{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=rn(this.buffer)}update(e){$t(this),e=ln(e),Zt(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=rn(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){$t(this),en(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,nn(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;xn(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=rn(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Tn=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),En=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Dn=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function kn(e,t=!1){return t?{h:Number(e&Mn),l:Number(e>>Nn&Mn)}:{h:Number(e>>Nn&Mn)|0,l:Number(e&Mn)|0}}function An(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=kn(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function jn(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn,Hn,Un,Wn,Gn,Kn,qn,Jn,Yn,Xn=o((()=>{Mn=BigInt(2**32-1),Nn=BigInt(32),Pn=(e,t,n)=>e>>>n,Fn=(e,t,n)=>e<<32-n|t>>>n,In=(e,t,n)=>e>>>n|t<<32-n,Ln=(e,t,n)=>e<<32-n|t>>>n,Rn=(e,t,n)=>e<<64-n|t>>>n-32,zn=(e,t,n)=>e>>>n-32|t<<64-n,Bn=(e,t,n)=>e<<n|t>>>32-n,Vn=(e,t,n)=>t<<n|e>>>32-n,Hn=(e,t,n)=>t<<n-32|e>>>64-n,Un=(e,t,n)=>e<<n-32|t>>>64-n,Wn=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),Gn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,Kn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),qn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Jn=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Yn=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function Zn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=ur(a,o,1)^n[r],c=dr(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=ar[n],a=ur(t,i,r),o=dr(t,i,r),s=ir[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=cr[r],e[1]^=lr[r]}nn(n)}var Qn,$n,er,tr,nr,rr,ir,ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr=o((()=>{Xn(),_n(),Qn=BigInt(0),$n=BigInt(1),er=BigInt(2),tr=BigInt(7),nr=BigInt(256),rr=BigInt(113),ir=[],ar=[],or=[];for(let e=0,t=$n,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ir.push(2*(5*r+n)),ar.push((e+1)*(e+2)/2%64);let i=Qn;for(let e=0;e<7;e++)t=(t<<$n^(t>>tr)*rr)%nr,t&er&&(i^=$n<<($n<<BigInt(e))-$n);or.push(i)}sr=An(or,!0),cr=sr[0],lr=sr[1],ur=(e,t,n)=>n>32?Hn(e,t,n):Bn(e,t,n),dr=(e,t,n)=>n>32?Un(e,t,n):Vn(e,t,n),fr=class e extends gn{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,Xt(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=tn(this.state)}clone(){return this._cloneInto()}keccak(){hn(this.state32),Zn(this.state32,this.rounds),hn(this.state32),this.posOut=0,this.pos=0}update(e){$t(this),e=ln(e),Zt(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){$t(this,!1),Zt(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return Xt(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(en(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,nn(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},pr=(e,t,n)=>dn(()=>new fr(t,e,n)),pr(6,144,224/8),pr(6,136,256/8),pr(6,104,384/8),pr(6,72,512/8),pr(1,144,224/8),mr=pr(1,136,256/8),pr(1,104,384/8),pr(1,72,512/8),hr=(e,t,n)=>fn((r={})=>new fr(t,e,r.dkLen===void 0?n:r.dkLen,!0)),hr(31,168,128/8),hr(31,136,256/8)})),_r,vr,yr,br,xr,Sr,Cr,wr,Tr,Er,Dr,Or,kr,Ar=o((()=>{On(),Xn(),_n(),_r=Uint32Array.from([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]),vr=new Uint32Array(64),yr=class extends wn{constructor(e=32){super(64,e,8,!1),this.A=Tn[0]|0,this.B=Tn[1]|0,this.C=Tn[2]|0,this.D=Tn[3]|0,this.E=Tn[4]|0,this.F=Tn[5]|0,this.G=Tn[6]|0,this.H=Tn[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)vr[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=vr[e-15],n=vr[e-2],r=an(t,7)^an(t,18)^t>>>3;vr[e]=(an(n,17)^an(n,19)^n>>>10)+vr[e-7]+r+vr[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=an(o,6)^an(o,11)^an(o,25),u=l+t+Sn(o,s,c)+_r[e]+vr[e]|0,d=(an(n,2)^an(n,13)^an(n,22))+Cn(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){nn(vr)}destroy(){this.set(0,0,0,0,0,0,0,0),nn(this.buffer)}},br=An(`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`.split(`.`).map(e=>BigInt(e))),xr=br[0],Sr=br[1],Cr=new Uint32Array(80),wr=new Uint32Array(80),Tr=class extends wn{constructor(e=64){super(128,e,16,!1),this.Ah=Dn[0]|0,this.Al=Dn[1]|0,this.Bh=Dn[2]|0,this.Bl=Dn[3]|0,this.Ch=Dn[4]|0,this.Cl=Dn[5]|0,this.Dh=Dn[6]|0,this.Dl=Dn[7]|0,this.Eh=Dn[8]|0,this.El=Dn[9]|0,this.Fh=Dn[10]|0,this.Fl=Dn[11]|0,this.Gh=Dn[12]|0,this.Gl=Dn[13]|0,this.Hh=Dn[14]|0,this.Hl=Dn[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Cr[n]=e.getUint32(t),wr[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Cr[e-15]|0,n=wr[e-15]|0,r=In(t,n,1)^In(t,n,8)^Pn(t,n,7),i=Ln(t,n,1)^Ln(t,n,8)^Fn(t,n,7),a=Cr[e-2]|0,o=wr[e-2]|0,s=In(a,o,19)^Rn(a,o,61)^Pn(a,o,6),c=Ln(a,o,19)^zn(a,o,61)^Fn(a,o,6),l=Kn(i,c,wr[e-7],wr[e-16]);Cr[e]=qn(l,r,s,Cr[e-7],Cr[e-16])|0,wr[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=In(u,d,14)^In(u,d,18)^Rn(u,d,41),v=Ln(u,d,14)^Ln(u,d,18)^zn(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Jn(_,v,b,Sr[e],wr[e]),S=Yn(x,g,t,y,xr[e],Cr[e]),ee=x|0,te=In(n,r,28)^Rn(n,r,34)^Rn(n,r,39),ne=Ln(n,r,28)^zn(n,r,34)^zn(n,r,39),C=n&i^n&o^i&o,re=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=jn(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let ie=Wn(ee,ne,re);n=Gn(ie,S,te,C),r=ie|0}({h:n,l:r}=jn(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=jn(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=jn(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=jn(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=jn(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=jn(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=jn(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=jn(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){nn(Cr,wr)}destroy(){nn(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Er=class extends Tr{constructor(){super(48),this.Ah=En[0]|0,this.Al=En[1]|0,this.Bh=En[2]|0,this.Bl=En[3]|0,this.Ch=En[4]|0,this.Cl=En[5]|0,this.Dh=En[6]|0,this.Dl=En[7]|0,this.Eh=En[8]|0,this.El=En[9]|0,this.Fh=En[10]|0,this.Fl=En[11]|0,this.Gh=En[12]|0,this.Gl=En[13]|0,this.Hh=En[14]|0,this.Hl=En[15]|0}},Dr=dn(()=>new yr),Or=dn(()=>new Tr),kr=dn(()=>new Er)}));Ar();let jr=Dr;function Mr(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Nr(e){if(!Mr(e))throw Error(`Uint8Array expected`)}function Pr(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Fr(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Ir(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?ei:BigInt(`0x`+e)}function Lr(e){if(Nr(e),ni)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=ri[e[n]];return t}function Rr(e){if(e>=ii._0&&e<=ii._9)return e-ii._0;if(e>=ii.A&&e<=ii.F)return e-(ii.A-10);if(e>=ii.a&&e<=ii.f)return e-(ii.a-10)}function zr(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(ni)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Rr(e.charCodeAt(i)),a=Rr(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Br(e){return Ir(Lr(e))}function Vr(e){return Nr(e),Ir(Lr(Uint8Array.from(e).reverse()))}function Hr(e,t){return zr(e.toString(16).padStart(t*2,`0`))}function Ur(e,t){return Hr(e,t).reverse()}function Wr(e,t,n){let r;if(typeof t==`string`)try{r=zr(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Mr(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function Gr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Nr(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function Kr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function qr(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function Jr(e,t,n){return ai(e)&&ai(t)&&ai(n)&&t<=e&&e<n}function Yr(e,t,n,r){if(!Jr(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function Xr(e){let t;for(t=0;e>ei;e>>=ti,t+=1);return t}function Zr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=si(e),i=si(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=si(0))=>{i=s(ci([0]),e),r=s(),e.length!==0&&(i=s(ci([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return Gr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function Qr(e,t,n={}){let r=(t,n,r)=>{let i=li[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function $r(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui=o((()=>{ei=BigInt(0),ti=BigInt(1),ni=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,ri=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ii={_0:48,_9:57,A:65,F:70,a:97,f:102},ai=e=>typeof e==`bigint`&&ei<=e,oi=e=>(ti<<BigInt(e))-ti,si=e=>new Uint8Array(e),ci=e=>Uint8Array.from(e),li={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`||Mr(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)}}));function di(e,t){if(ca(e)>t)throw new xa({givenSize:ca(e),maxSize:t})}function fi(e,t){if(typeof t==`number`&&t>0&&t>ca(e)-1)throw new Sa({offset:t,position:`start`,size:ca(e)})}function pi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&ca(e)!==n-t)throw new Sa({offset:n,position:`end`,size:ca(e)})}function mi(e){if(e>=_i.zero&&e<=_i.nine)return e-_i.zero;if(e>=_i.A&&e<=_i.F)return e-(_i.A-10);if(e>=_i.a&&e<=_i.f)return e-(_i.a-10)}function hi(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Ca({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function gi(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var _i,vi=o((()=>{wa(),_i={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function yi(e,t){if(Li(e)>t)throw new Xi({givenSize:Li(e),maxSize:t})}function bi(e,t){if(typeof t==`number`&&t>0&&t>Li(e)-1)throw new Zi({offset:t,position:`start`,size:Li(e)})}function xi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Li(e)!==n-t)throw new Zi({offset:n,position:`end`,size:Li(e)})}function Si(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new Qi({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Ci(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var wi=o((()=>{A()}));function Ti(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>Ti(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${Ti(r)}`),t},[]).join(`,`)}}`}function Ei(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Oi)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Di(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Oi:n,n)}var Oi,ki=o((()=>{Oi=`#__bigint`}));function Ai(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new qi(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new Ji(e)}function E(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function ji(e){return e instanceof Uint8Array?D(e):Array.isArray(e)?D(new Uint8Array(e)):e}function Mi(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(yi(n,t.size),Pi(n,t.size)):n}function D(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Gi[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(yi(r,t.size),Fi(r,t.size)):r}function O(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new Ki({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Pi(s,r):s}function Ni(e,t={}){return D(Wi.encode(e),t)}function Pi(e,t){return Si(e,{dir:`left`,size:t})}function Fi(e,t){return Si(e,{dir:`right`,size:t})}function Ii(e){return D(sa(e))}function k(e,t,n,r={}){let{strict:i}=r;bi(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&xi(a,t,n),a}function Li(e){return Math.ceil((e.length-2)/2)}function Ri(e){return Ci(e,{dir:`left`})}function zi(e,t={}){let{signed:n}=t;t.size&&yi(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Bi(e,t={}){return ra(e,t)}function Vi(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:zi(e,t))}function Hi(e,t={}){let{size:n}=t,r=ra(e);return n&&(di(r,n),r=ha(r)),new TextDecoder().decode(r)}function Ui(e,t={}){let{strict:n=!1}=t;try{return Ai(e,{strict:n}),!0}catch{return!1}}var Wi,Gi,Ki,qi,Ji,Yi,Xi,Zi,Qi,A=o((()=>{wa(),T(),vi(),wi(),ki(),Wi=new TextEncoder,Gi=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Ki=class extends w{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},qi=class extends w{constructor(e){super(`Value \\`${typeof e==`object`?Di(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},Ji=class extends w{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},Yi=class extends w{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},Xi=class extends w{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},Zi=class extends w{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},Qi=class extends w{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function $i(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new ba(e)}function ea(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function ta(e){return e instanceof Uint8Array?e:typeof e==`string`?ra(e):na(e)}function na(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function ra(e,t={}){let{size:n}=t,r=e;n&&(yi(e,n),r=Fi(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=mi(i.charCodeAt(t++)),r=mi(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new w(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function ia(e,t={}){let{size:n}=t,r=va.encode(e);return typeof n==`number`?(di(r,n),oa(r,n)):r}function aa(e,t){return Kr(e,t)}function oa(e,t){return hi(e,{dir:`right`,size:t})}function sa(e){return crypto.getRandomValues(new Uint8Array(e))}function ca(e){return e.length}function la(e,t,n,r={}){let{strict:i}=r;fi(e,t);let a=e.slice(t,n);return i&&pi(a,t,n),a}function ua(e,t={}){let{size:n}=t;return n!==void 0&&di(e,n),zi(D(e,t),t)}function da(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(di(r,n),r=ma(r)),r.length>1||r[0]>1)throw new ya(r);return!!r[0]}function fa(e,t={}){let{size:n}=t;return n!==void 0&&di(e,n),Vi(D(e,t),t)}function pa(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(di(r,n),r=ha(r)),_a.decode(r)}function ma(e){return gi(e,{dir:`left`})}function ha(e){return gi(e,{dir:`right`})}function ga(e){try{return $i(e),!0}catch{return!1}}var _a,va,ya,ba,xa,Sa,Ca,wa=o((()=>{ui(),T(),A(),vi(),wi(),ki(),_a=new TextDecoder,va=new TextEncoder,ya=class extends w{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},ba=class extends w{constructor(e){super(`Value \\`${typeof e==`object`?Di(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},xa=class extends w{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Sa=class extends w{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Ca=class extends w{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));bn(),gr(),wa(),A();function Ta(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=mr(ta(e));return n===`Bytes`?r:D(r)}function Ea(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=yn(jr,ta(e),ta(t));return r===`Bytes`?i:D(i)}function Da(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=jr(ta(e));return n===`Bytes`?r:D(r)}function Oa(e){return Ui(e)&&Li(e)===32}let ka={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;wa(),T(),A(),ki();function Aa(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new La({prefix:r,cause:new za});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new La({prefix:r,cause:new Ra});return}throw new Ia({publicKey:e})}function ja(e){let t=(()=>{if(Ui(e))return Na(e);if(ga(e))return Ma(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return Aa(t),t}function Ma(e){return Na(D(e))}function Na(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Ba({publicKey:e});return e.length===130?{prefix:4,x:BigInt(k(e,0,32)),y:BigInt(k(e,32,64))}:e.length===132?{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33)),y:BigInt(k(e,33,65))}:{prefix:Number(k(e,0,1)),x:BigInt(k(e,1,33))}}function Pa(e,t={}){return ra(Fa(e,t))}function Fa(e,t={}){Aa(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return E(a?O(n,{size:1}):`0x`,O(r,{size:32}),typeof i==`bigint`?O(i,{size:32}):`0x`)}var Ia=class extends w{constructor({publicKey:e}){super(`Value \\`${Di(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},La=class extends w{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},Ra=class extends w{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},za=class extends w{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Ba=class extends w{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Li(ji(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};wa(),T();let Va=/^0x[a-fA-F0-9]{40}$/;function Ha(e,t={}){let{strict:n=!0}=t;if(!Va.test(e))throw new Ja({address:e,cause:new Ya});if(n){if(e.toLowerCase()===e)return;if(Ua(e)!==e)throw new Ja({address:e,cause:new Xa})}}function Ua(e){if(ka.has(e))return ka.get(e);Ha(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Ta(ia(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return ka.set(e,i),i}function Wa(e,t={}){let{checksum:n=!1}=t;return Ha(e),n?Ua(e):e}function Ga(e,t={}){return Wa(`0x${Ta(`0x${Fa(e).slice(4)}`).substring(26)}`,t)}function Ka(e,t){return Ha(e,{strict:!1}),Ha(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function qa(e,t={}){let{strict:n=!0}=t??{};try{return Ha(e,{strict:n}),!0}catch{return!1}}var Ja=class extends w{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},Ya=class extends w{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},Xa=class extends w{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};T();function Za(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new w(`Unable to normalize signature.`);return i}function Qa(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return qa(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((t,n)=>Qa(Object.values(e)[n],t)):/^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(e=>Qa(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function $a(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return $a(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&qa(n[r],{strict:!1}))return o}}Vt(),T(),A();function eo(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=Ui(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?to(e)===k(t,0,4):e.type===`event`?ro(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ao({name:t});if(o.length===1)return{...o[0],...i?{hash:ro(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:ro(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Qa(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=$a(e.inputs,s.inputs,r);if(t)throw new io({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new ao({name:t});return{...c,...i?{hash:ro(c)}:{}}}function to(...e){return k(ro((()=>{if(Array.isArray(e[0])){let[t,n]=e;return eo(t,n)}return e[0]})()),0,4)}function no(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return eo(t,n)}return e[0]})();return Za(typeof t==`string`?t:we(t))}function ro(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return eo(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Ta(Ni(no(t)))}var io=class extends w{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Za(we(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${Za(we(t.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:`AbiItem.AmbiguityError`})}},ao=class extends w{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let oo=/^(.*)\\[([0-9]*)\\]$/,so=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,co=/^(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)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let lo=2n**256n-1n;wa(),T(),A();function uo(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=ko(t.type);if(a){let[n,o]=a;return po(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return _o(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return fo(e,{checksum:r});if(t.type===`bool`)return mo(e);if(t.type.startsWith(`bytes`))return ho(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return go(e,t);if(t.type===`string`)return vo(e,{staticPosition:i});throw new Ko(t.type)}function fo(e,t={}){let{checksum:n=!1}=t;return[(e=>n?Ua(e):e)(D(la(e.readBytes(32),-20))),32]}function po(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+fa(e.readBytes(32)),i=n+32;e.setPosition(n);let o=fa(e.readBytes(32)),s=Ao(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=uo(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ao(t)){let n=a+fa(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=uo(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=uo(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function mo(e){return[da(e.readBytes(32),{size:32}),32]}function ho(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=fa(e.readBytes(32));e.setPosition(n+t);let r=fa(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[D(i),32]}return[D(e.readBytes(Number.parseInt(i,10),32)),32]}function go(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?ua(i,{signed:n}):fa(i,{signed:n}),32]}function _o(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(Ao(t)){let n=i+fa(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=uo(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=uo(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function vo(e,{staticPosition:t}){let n=t+fa(e.readBytes(32));e.setPosition(n);let r=fa(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=pa(ma(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function yo({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(bo({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function bo({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=ko(r.type);if(i){let[t,a]=i;return Co(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Oo(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return So(n,{checksum:e});if(r.type===`bool`)return To(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=co.exec(r.type)??[];return Eo(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return wo(n,{type:r.type});if(r.type===`string`)return Do(n);throw new Ko(r.type)}function xo(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Li(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(O(t+i,{size:32})),r.push(s),i+=Li(s)):n.push(s)}return E(...n,...r)}function So(e,t){let{checksum:n=!1}=t;return Ha(e,{strict:n}),{dynamic:!1,encoded:Pi(e.toLowerCase())}}function Co(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new Go(e);if(!a&&e.length!==r)throw new Ho({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=bo({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=xo(s);if(a){let t=O(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?E(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:E(...s.map(({encoded:e})=>e))}}function wo(e,{type:t}){let[,n]=t.split(`bytes`),r=Li(e);if(!n){let t=e;return r%32!=0&&(t=Fi(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:E(Pi(O(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Uo({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Fi(e)}}function To(e){if(typeof e!=`boolean`)throw new w(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Pi(Mi(e))}}function Eo(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new Ki({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:O(e,{size:32,signed:t})}}function Do(e){let t=Ni(e),n=Math.ceil(Li(t)/32),r=[];for(let e=0;e<n;e++)r.push(Fi(k(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:E(Fi(O(Li(t),{size:32})),...r)}}function Oo(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=bo({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?xo(a):E(...a.map(({encoded:e})=>e))}}function ko(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ao(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ao);let n=ko(e.type);return!!(n&&Ao({...e,type:n[1]}))}T();let jo={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Fo({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Po({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new No({offset:e});let 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 No({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let 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();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Mo(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(jo);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var No=class extends w{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Po=class extends w{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Fo=class extends w{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Vt(),wa(),T(),A();function Io(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?ra(t):t,o=Mo(a);if(ca(a)===0&&e.length>0)throw new Vo;if(ca(a)&&ca(a)<32)throw new Bo({data:typeof t==`string`?t:D(t),parameters:e,size:ca(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=uo(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Lo(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Wo({expectedLength:e.length,givenLength:t.length});let i=xo(yo({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ro(e,t){if(e.length!==t.length)throw new Wo({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(Ro.encode(i,a))}return E(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return Ha(e),Pi(e.toLowerCase(),r?32:0)}if(e===`string`)return Ni(n);if(e===`bytes`)return n;if(e===`bool`)return Pi(Mi(n),r?32:1);let i=e.match(co);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return O(n,{size:r?32:o,signed:t===`int`})}let a=e.match(so);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Uo({expectedSize:Number.parseInt(t,10),value:n});return Fi(n,r?32:0)}let o=e.match(oo);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:E(...i)}throw new Ko(e)}e.encode=t})(Ro||={});function zo(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?zt(e):e}var Bo=class extends w{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${Se(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Vo=class extends w{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Ho=class extends w{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},Uo=class extends w{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Li(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Wo=class extends w{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},Go=class extends w{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},Ko=class extends w{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};T(),A();function qo(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&Ha(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Oa(e)?e:Ri(e))})}return t}function Jo(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Li(r[e])!==32)throw new Yo({storageKey:r[e]});n&&Ha(n,{strict:!1}),t.push([n,r])}return t}var Yo=class extends w{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Li(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};wa(),T(),A();function Xo(e){return Zo(e,`Hex`)}function Zo(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return Qo(Mo((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Yi(e);return ra(e)}return e})(),{recursiveReadLimit:1/0}),n)}function Qo(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?D(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=$o(e,n,128),i=e.readBytes(r);return t===`Hex`?D(i):i}return es(e,$o(e,n,192),t)}function $o(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 w(`Invalid RLP prefix`)}function es(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Qo(e,n));return i}function ts(e,t){let{as:n}=t,r=rs(e),i=Mo(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}function ns(e,t={}){let{as:n=`Hex`}=t;return ts(e,{as:n})}function rs(e){return Array.isArray(e)?is(e.map(e=>rs(e))):as(e)}function is(e){let t=e.reduce((e,t)=>e+t.length,0),n=os(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function as(e){let t=typeof e==`string`?ra(e):e,n=os(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function os(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new w(`Length is too large.`)}function ss(e,t){let n=e%t;return n>=Cs?n:t+n}function cs(e,t,n){let r=e;for(;t-- >Cs;)r*=r,r%=n;return r}function ls(e,t){if(e===Cs)throw Error(`invert: expected non-zero number`);if(t<=Cs)throw Error(`invert: expected positive modulus, got `+t);let n=ss(e,t),r=t,i=Cs,a=ws,o=ws,s=Cs;for(;n!==Cs;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==ws)throw Error(`invert: does not exist`);return ss(i,t)}function us(e,t){let n=(e.ORDER+ws)/Ds,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function ds(e,t){let n=(e.ORDER-Os)/ks,r=e.mul(t,Ts),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Ts),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function fs(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-ws,n=0;for(;t%Ts===Cs;)t/=Ts,n++;let r=Ts,i=ys(e);for(;_s(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return us;let a=i.pow(r,t),o=(t+ws)/Ts;return function(e,r){if(e.is0(r))return r;if(_s(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=ws<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function ps(e){return e%Ds===Es?us:e%ks===Os?ds:fs(e)}function ms(e){return Qr(e,As.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function hs(e,t,n){if(n<Cs)throw Error(`invalid exponent, negatives unsupported`);if(n===Cs)return e.ONE;if(n===ws)return t;let r=e.ONE,i=t;for(;n>Cs;)n&ws&&(r=e.mul(r,i)),i=e.sqr(i),n>>=ws;return r}function gs(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function _s(e,t){let n=(e.ORDER-ws)/Ts,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function vs(e,t){t!==void 0&&Xt(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function ys(e,t,n=!1,r={}){if(e<=Cs)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=vs(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:oi(i),ZERO:Cs,ONE:ws,create:t=>ss(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Cs<=t&&t<e},is0:e=>e===Cs,isOdd:e=>(e&ws)===ws,neg:t=>ss(-t,e),eql:(e,t)=>e===t,sqr:t=>ss(t*t,e),add:(t,n)=>ss(t+n,e),sub:(t,n)=>ss(t-n,e),mul:(t,n)=>ss(t*n,e),pow:(e,t)=>hs(s,e,t),div:(t,n)=>ss(t*ls(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>ls(t,e),sqrt:r.sqrt||(t=>(o||=ps(e),o(s,t))),toBytes:e=>n?Ur(e,a):Hr(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Vr(e):Br(e)},invertBatch:e=>gs(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function bs(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function xs(e){let t=bs(e);return t+Math.ceil(t/2)}function Ss(e,t,n=!1){let r=e.length,i=bs(t),a=xs(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=ss(n?Vr(e):Br(e),t-ws)+ws;return n?Ur(o,i):Hr(o,i)}var Cs,ws,Ts,Es,Ds,Os,ks,As,js=o((()=>{_n(),ui(),Cs=BigInt(0),ws=BigInt(1),Ts=BigInt(2),Es=BigInt(3),Ds=BigInt(4),Os=BigInt(5),ks=BigInt(8),As=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Ms(e,t){let n=t.negate();return e?n:t}function Ns(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Ps(e,t){Ns(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:oi(e),maxNumber:i,shiftBy:BigInt(e)}}function Fs(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=Us);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function Is(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function Ls(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function Rs(e){return Gs.get(e)||1}function zs(e,t){return{constTimeNegate:Ms,hasPrecomputes(e){return Rs(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>Hs;)n&Us&&(r=r.add(i)),i=i.double(),n>>=Us;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Ps(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Ps(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Fs(i,e,s);i=t,c?o=o.add(Ms(u,r[d])):a=a.add(Ms(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Ps(n,t);for(let e=0;e<o.windows&&i!==Hs;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=Fs(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=Ws.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&Ws.set(t,n(r))),r},wNAFCached(e,t,n){let r=Rs(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Rs(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Ns(n,t),Gs.set(e,n),Ws.delete(e)}}}function Bs(e,t,n,r){Is(n,e),Ls(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=Xr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=oi(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function Vs(e){return ms(e.Fp),Qr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...vs(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Hs,Us,Ws,Gs,Ks=o((()=>{js(),ui(),Hs=BigInt(0),Us=BigInt(1),Ws=new WeakMap,Gs=new WeakMap}));function qs(e){e.lowS!==void 0&&Pr(`lowS`,e.lowS),e.prehash!==void 0&&Pr(`prehash`,e.prehash)}function Js(e){let t=Vs(e);Qr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function Ys(e,t){return Lr(Hr(e,t))}function Xs(e){let t=Js(e),{Fp:n}=t,r=ys(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return Gr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,ac),oc),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return Jr(e,j,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Mr(e)&&(e=Lr(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Br(Wr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=ss(o,a)),Yr(`private key`,o,j,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=$r((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=$r(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=gs(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(Wr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Bs(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,ac),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,ac),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;Yr(`scalar`,e,rc,i);let a=h.ZERO;if(e===rc)return a;if(this.is0()||e===j)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>rc||l>rc;)s&j&&(u=u.add(f)),l&j&&(d=d.add(f)),f=f.double(),s>>=j,l>>=j;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;Yr(`scalar`,e,j,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===rc||t===j||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===j)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===j?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Pr(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Pr(`isCompressed`,e),Lr(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=zs(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function Zs(e){let t=Vs(e);return Qr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function Qs(e){let t=Zs(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return ss(e,r)}function l(e){return ls(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=Xs({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=Gr;return Pr(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Br(i);if(!Jr(e,j,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&j)===j;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>j}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Br(e.slice(t,n));class _{constructor(e,t,n){Yr(`r`,e,j,r),Yr(`s`,t,j,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=Wr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=nc.toSig(Wr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(Wr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+Ys(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return zr(this.toDERHex())}toDERHex(){return nc.hexFromSig(this)}toCompactRawBytes(){return zr(this.toCompactHex())}toCompactHex(){let e=i;return Ys(this.r,e)+Ys(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=xs(t.n);return Ss(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=Wr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Br(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},te=oi(a);function ne(e){return Yr(`num < 2^`+a,e,rc,te),Hr(e,i)}function C(e,r,i=re){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=Wr(`msgHash`,e),qs(i),f&&(e=Wr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[ne(y),ne(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(Wr(`extraEntropy`,e))}let x=Gr(...b),te=v;function C(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===rc)return;let a=c(n*c(te+i*y));if(a===rc)return;let o=(r.x===i?0:2)|Number(r.y&j),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:C}}let re={lowS:t.lowS,prehash:!1},ie={lowS:t.lowS,prehash:!1};function ae(e,n,r=re){let{seed:i,k2sig:a}=C(e,n,r),o=t;return Zr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function oe(e,n,r,i=ie){let a=e;n=Wr(`msgHash`,n),r=Wr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(qs(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Mr(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof nc.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),te=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return te?c(te.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ae,verify:oe,ProjectivePoint:u,Signature:_,utils:v}}function $s(e,t){let n=e.ORDER,r=rc;for(let e=n-j;e%ic===rc;e/=ic)r+=j;let i=r,a=ic<<i-j-j,o=a*ic,s=(n-j)/o,c=(s-j)/ic,l=o-j,u=a,d=e.pow(t,s),f=e.pow(t,(s+j)/ic),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>j;t--){let n=t-ic;n=ic<<n-j;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%oc===ac){let n=(e.ORDER-ac)/oc,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function ec(e,t){if(ms(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=$s(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=gs(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var tc,nc,rc,j,ic,ac,oc,sc=o((()=>{Ks(),js(),ui(),tc=class extends Error{constructor(e=``){super(e)}},nc={Err:tc,_tlv:{encode:(e,t)=>{let{Err:n}=nc;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Fr(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Fr(i.length/2|128):``;return Fr(e)+a+i+t},decode(e,t){let{Err:n}=nc,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=nc;if(e<rc)throw new t(`integer: negative integers are not allowed`);let n=Fr(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=nc;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Br(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=nc,i=Wr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=nc,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},rc=BigInt(0),j=BigInt(1),ic=BigInt(2),ac=BigInt(3),oc=BigInt(4)}));function cc(e){return{hash:e,hmac:(t,...n)=>yn(e,t,un(...n)),randomBytes:pn}}function lc(e,t){let n=t=>Qs({...e,...cc(t)});return{...n(t),create:n}}var uc=o((()=>{bn(),_n(),sc()}));function dc(e,t){if(pc(e),pc(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let 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 fc(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function pc(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function mc(e,t,n,r){Nr(e),Nr(t),pc(n),t.length>255&&(t=r(Gr(qr(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=Gr(t,dc(t.length,1)),c=dc(0,a),l=dc(n,2),u=Array(o),d=r(Gr(c,e,l,dc(0,1),s));u[0]=r(Gr(d,dc(1,1),s));for(let e=1;e<=o;e++)u[e]=r(Gr(fc(d,u[e-1]),dc(e+1,1),s));return Gr(...u).slice(0,n)}function hc(e,t,n,r,i){if(Nr(e),Nr(t),pc(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(qr(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(dc(n,2)).update(t).update(dc(t.length,1)).digest()}function gc(e,t,n){Qr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Nr(e),pc(t);let l=typeof c==`string`?qr(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=mc(e,l,f,o);else if(s===`xof`)p=hc(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=ss(yc(p.subarray(i,i+d)),r)}m[e]=t}return m}function _c(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=gs(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function vc(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=gc(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(gc(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var yc,bc=o((()=>{js(),ui(),yc=Br})),xc=c({encodeToCurve:()=>Zc,hashToCurve:()=>Xc,schnorr:()=>Kc,secp256k1:()=>Lc,secp256k1_hasher:()=>Yc});function Sc(e){let t=Ac,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=cs(cs(cs(u,n,t)*u%t,n,t)*u%t,Pc,t)*l%t,f=cs(d,i,t)*d%t,p=cs(f,a,t)*f%t,m=cs(p,s,t)*p%t,h=cs(cs(cs(cs(cs(cs(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Pc,t);if(!Ic.eql(Ic.sqr(h),e))throw Error(`Cannot find square root`);return h}function Cc(e,...t){let n=Rc[e];if(n===void 0){let t=Dr(Uint8Array.from(e,e=>e.charCodeAt(0)));n=Gr(t,t),Rc[e]=n}return Dr(Gr(n,...t))}function wc(e){let t=Lc.utils.normPrivateKeyToScalar(e),n=Uc.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:Hc(-t),bytes:zc(n)}}function Tc(e){Yr(`x`,e,Nc,Ac);let t=Sc(Vc(Vc(e*e)*e+BigInt(7)));t%Pc!==Mc&&(t=Vc(-t));let n=new Uc(e,t,Nc);return n.assertValidity(),n}function Ec(...e){return Hc(Gc(Cc(`BIP0340/challenge`,...e)))}function Dc(e){return wc(e).bytes}function Oc(e,t,n=pn(32)){let r=Wr(`message`,e),{bytes:i,scalar:a}=wc(t),o=Hc(Gc(Cc(`BIP0340/nonce`,Bc(a^Gc(Cc(`BIP0340/aux`,Wr(`auxRand`,n,32)))),i,r)));if(o===Mc)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=wc(o),l=Ec(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Bc(Hc(c+l*a)),32),!kc(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function kc(e,t,n){let r=Wr(`signature`,e,64),i=Wr(`message`,t),a=Wr(`publicKey`,n,32);try{let e=Tc(Gc(a)),t=Gc(r.subarray(0,32));if(!Jr(t,Nc,Ac))return!1;let n=Gc(r.subarray(32,64));if(!Jr(n,Nc,jc))return!1;let o=Wc(e,n,Hc(-Ec(Bc(t),zc(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Ac,jc,Mc,Nc,Pc,Fc,Ic,Lc,Rc,zc,Bc,Vc,Hc,Uc,Wc,Gc,Kc,qc,Jc,Yc,Xc,Zc,Qc=o((()=>{Ar(),_n(),uc(),bc(),js(),ui(),sc(),Ac=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),jc=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Mc=BigInt(0),Nc=BigInt(1),Pc=BigInt(2),Fc=(e,t)=>(e+t/Pc)/t,Ic=ys(Ac,void 0,void 0,{sqrt:Sc}),Lc=lc({a:Mc,b:BigInt(7),Fp:Ic,n:jc,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=jc,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Nc*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=Fc(a*e,t),c=Fc(-r*e,t),l=ss(e-s*n-c*i,t),u=ss(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Dr),Rc={},zc=e=>e.toRawBytes(!0).slice(1),Bc=e=>Hr(e,32),Vc=e=>ss(e,Ac),Hc=e=>ss(e,jc),Uc=Lc.ProjectivePoint,Wc=(e,t,n)=>Uc.BASE.multiplyAndAddUnsafe(e,t,n),Gc=Br,Kc={getPublicKey:Dc,sign:Oc,verify:kc,utils:{randomPrivateKey:Lc.utils.randomPrivateKey,lift_x:Tc,pointToBytes:zc,numberToBytesBE:Hr,bytesToNumberBE:Br,taggedHash:Cc,mod:ss}},qc=_c(Ic,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),Jc=ec(Ic,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:Ic.create(BigInt(`-11`))}),Yc=vc(Lc.ProjectivePoint,e=>{let{x:t,y:n}=Jc(Ic.create(e[0]));return qc(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:Ic.ORDER,m:1,k:128,expand:`xmd`,hash:Dr}),Xc=Yc.hashToCurve,Zc=Yc.encodeToCurve}));T(),A(),ki();function $c(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new pl({signature:e});if(e.r<0n||e.r>lo)throw new ml({value:e.r});if(e.s<0n||e.s>lo)throw new hl({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new gl({value:e.yParity})}function el(e){return tl(D(e))}function tl(e){if(e.length!==130&&e.length!==132)throw new fl({signature:e});let t=BigInt(k(e,0,32)),n=BigInt(k(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return ul(t)}catch{throw new gl({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function nl(e){if(e.r!==void 0&&e.s!==void 0)return rl(e)}function rl(e){let t=typeof e==`string`?tl(e):e instanceof Uint8Array?el(e):typeof e.r==`string`?al(e):e.v?il(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return $c(t),t}function il(e){return{r:e.r,s:e.s,yParity:ul(e.v)}}function al(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=ul(t)),typeof n!=`number`)throw new gl({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function ol(e){let[t,n,r]=e;return rl({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function sl(e){$c(e);let t=e.r,n=e.s;return E(O(t,{size:32}),O(n,{size:32}),typeof e.yParity==`number`?O(dl(e.yParity),{size:1}):`0x`)}function cl(e){let{r:t,s:n,yParity:r}=e;return{r:O(t,{size:32}),s:O(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function ll(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Ri(O(t)),n===0n?`0x`:Ri(O(n))]}function ul(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new _l({value:e})}function dl(e){if(e===0)return 27;if(e===1)return 28;throw new gl({value:e})}var fl=class extends w{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Li(ji(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},pl=class extends w{constructor({signature:e}){super(`Signature \\`${Di(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},ml=class extends w{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},hl=class extends w{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},gl=class extends w{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},_l=class extends w{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};A();function vl(e,t={}){return typeof e.chainId==`string`?yl(e):{...e,...t.signature}}function yl(e){let{address:t,chainId:n,nonce:r}=e,i=nl(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function bl(e){return e.map(yl)}function xl(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:O(n),nonce:O(r),...cl(i)}}function Sl(e){return e.map(xl)}wa();let Cl=new TextEncoder,wl=new TextDecoder,Tl=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),El={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function Dl(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=Tl[r>>18],i[t+1]=Tl[r>>12&63],i[t+2]=Tl[r>>6&63],i[t+3]=Tl[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=wl.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function Ol(e,t={}){return Dl(ra(e),t)}function kl(e,t={}){return Dl(ia(e),t)}function Al(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Cl.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(El[r[e]]<<18)+(El[r[e+1]]<<12)+(El[r[e+2]]<<6)+El[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function jl(e){return pa(Al(e))}let Ml={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Nl={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Pl(e,t={}){if(!e)return null;let n=nl(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=bl(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Nl[e.type]??e.type),n&&(r.v=dl(n.yParity)),r}function Fl(e){return{address:e.address,amount:O(e.amount),index:O(e.index),validatorIndex:O(e.validatorIndex)}}var Il=o((()=>{A()}));function Ll(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:O(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:O(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:O(e.gasLimit)},...typeof e.number==`bigint`&&{number:O(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:O(e.prevRandao)},...typeof e.time==`bigint`&&{time:O(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Fl)}}}var Rl=o((()=>{A(),Il()}));wa(),T(),A();function zl(e,t={}){let{as:n=`Hex`}=t,r=$l(e),i=Mo(new Uint8Array(r.length));return r.encode(i),n===`Hex`?D(i.bytes):i.bytes}var Bl=class extends w{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},Vl=class extends w{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},Hl=class extends w{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},Ul=class extends w{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},Wl=class extends w{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},Gl=class extends w{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},Kl=class extends w{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},ql=class extends w{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},Jl=class extends w{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},Yl=class extends w{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},Xl=class extends w{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},Zl=class extends w{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},Ql=class extends w{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function $l(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return $l.number(e);if(typeof e==`bigint`)throw new Kl;if(typeof e==`string`)return $l.string(e);if(Array.isArray(e))return $l.array(e);if(e instanceof Uint8Array)return $l.byteString(e);if(e instanceof ArrayBuffer)return $l.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return $l.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return $l.map(e);if(typeof e==`object`)return $l.object(e);throw new ql({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new Jl({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new Jl({number:e.toString(10)})}e.number=t;function n(e){let t=ia(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new Yl({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new Xl({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new Ql({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new Zl({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new Zl({size:i})}e.map=o})($l||={});function eu(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return eu.readUnsignedInteger(e,r);case 1:return eu.readNegativeInteger(e,r);case 2:return eu.readByteString(e,r);case 3:return eu.readTextString(e,r);case 4:return eu.readArray(e,r);case 5:return eu.readMap(e,r);case 6:throw new Ul({tag:r});case 7:return eu.readSimpleOrFloat(e,r);default:throw new Bl({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new Hl:new Vl({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new Wl({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new Wl({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return pa(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new Gl({value:t});return}throw new Vl({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(eu||={}),T();function tu(e){let t=Pa(e),n=t.slice(1,33),r=t.slice(33,65);return zl(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}Qc(),wa(),A();function nu(e){let{privateKey:t}=e;return ja(Lc.ProjectivePoint.fromPrivateKey(ji(t).slice(2)))}function ru(e){return Ga(iu(e))}function iu(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return ja(new Lc.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(ji(t).substring(2)))}function au(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Lc.sign(ta(r),ta(i),{extraEntropy:typeof t==`boolean`?t:ji(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function ou(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?Ka(t,ru({payload:r,signature:a})):Lc.verify(a,ta(r),Pa(i),...n?[{prehash:!0,lowS:!0}]:[])}Ar(),uc(),bc(),js(),sc();let su=ys(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),cu=su.create(BigInt(`-3`)),lu=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),uu=lc({a:cu,b:lu,Fp:su,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Dr),du=uu,fu=ec(su,{A:cu,B:lu,Z:su.create(BigInt(`-10`))}),pu=vc(du.ProjectivePoint,e=>fu(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:su.ORDER,m:1,k:128,expand:`xmd`,hash:Dr}),mu=ys(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),hu=mu.create(BigInt(`-3`)),gu=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),_u=lc({a:hu,b:gu,Fp:mu,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},kr),vu=ec(mu,{A:hu,B:gu,Z:mu.create(BigInt(`-12`))});vc(_u.ProjectivePoint,e=>vu(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:mu.ORDER,m:1,k:192,expand:`xmd`,hash:kr});let yu=ys(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),bu=yu.create(BigInt(`-3`)),xu=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Su=lc({a:bu,b:xu,Fp:yu,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Or),Cu=ec(yu,{A:bu,B:xu,Z:yu.create(BigInt(`-4`))});vc(Su.ProjectivePoint,e=>Cu(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:yu.ORDER,m:1,k:256,expand:`xmd`,hash:Or});let wu=uu,Tu=uu;pu.hashToCurve,pu.encodeToCurve,wa(),A();function Eu(e){let{privateKey:t}=e;return ja(Tu.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):D(t).slice(2)))}function Du(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Tu.sign(r instanceof Uint8Array?r:ra(r),i instanceof Uint8Array?i:ra(i),{extraEntropy:typeof t==`boolean`?t:ji(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Ou(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Tu.verify(i,n instanceof Uint8Array?n:ra(n),Fa(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var ku=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function Au(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw ju(r.error);return r.result}function ju(e){let t=e;if(t instanceof Error&&!(`code`in t))return new Uu({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===Uu.code?new Uu(t):n===Nu.code?new Nu(t):n===Hu.code?new Hu(t):n===Bu.code?new Bu(t):n===Ru.code?new Ru(t):n===Vu.code?new Vu(t):n===Lu.code?new Lu(t):n===Wu.code?new Wu(t):n===Pu.code?new Pu(t):n===Fu.code?new Fu(t):n===Iu.code?new Iu(t):n===zu.code?new zu(t):new Uu({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Mu=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},Nu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(Nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Pu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(Pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Fu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(Fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Iu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(Iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Lu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(Lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var Ru=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(Ru,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var zu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(zu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Bu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(Bu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var Vu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty(Vu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var Hu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(Hu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var Uu=class e extends Mu{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(Uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var Wu=class e extends Mu{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty(Wu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),T();var Gu=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},Ku=class extends Gu{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(Ku,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var qu=class extends Gu{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(qu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var Ju=class extends Gu{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(Ju,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var Yu=class extends Gu{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(Yu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var Xu=class extends Gu{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(Xu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var Zu=class extends Gu{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(Zu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var Qu=class extends Gu{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(Qu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var $u=class extends Gu{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty($u,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var ed=class extends Gu{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(ed,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var td=class extends Gu{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(td,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var nd=class extends Gu{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(nd,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var rd=class extends Gu{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(rd,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var id=class extends Gu{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(id,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function ad(){let e=new ku.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function od(e,t={}){if(!e)throw new cd;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?Au(n):n}catch(e){throw sd(e)}}}}function sd(e){let t=ju(e);if(t instanceof Uu){if(!t.data)return t;let{code:e}=t.data;if(e===Yu.code)return new Yu(t);if(e===Xu.code)return new Xu(t);if(e===Ku.code)return new Ku(t);if(e===qu.code)return new qu(t);if(e===Ju.code)return new Ju(t);if(e===Zu.code)return new Zu(t);if(e===rd.code)return new rd(t);if(e===id.code)return new id(t);if(e===nd.code)return new nd(t);if(e===td.code)return new td(t);if(e===ed.code)return new ed(t);if(e===$u.code)return new $u(t);if(e===Qu.code)return new Qu(t)}return t}var cd=class extends w{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function ld(e={}){let t=e.id??0;return{prepare(e){return ud({id:t++,...e})},get id(){return t}}}function ud(e){return{...e,jsonrpc:`2.0`}}function dd(){return null}A();function fd(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Sl(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=O(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=O(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=O(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=O(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=O(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=O(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=O(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Ml[e.type]||e.type),e.value!==void 0&&(t.value=O(e.value)),t}T();let pd={wei:0,gwei:9,szabo:12,finney:15,ether:18};function md(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function hd(e,t=`wei`){return md(e,pd.gwei-pd[t])}T();var gd=class extends w{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${hd(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},_d=class extends w{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},vd=class extends w{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},yd=class extends w{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${hd(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${hd(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function bd(e){let t=wu.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}A();function xd(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=E(Da(Ni(r)),O(n,{size:1}),O(i,{size:4}));if(!t)return a;let o=D(new Uint8Array(16)),s=D(t.id);return E(a,o,O(t.id.length,{size:2}),s,tu(t.publicKey))}function Sd(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:Ol(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}wa(),T(),A();function Cd(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:Al(e),type:`public-key`})):[{id:Al(t),type:`public-key`}]}:{},challenge:ra(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function wd(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=xd({flag:i,rpId:o,signCount:s}),u=Sd({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Da(Ni(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:E(l,d)}}async function Td(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Cd(n);try{let e=await t(r);if(!e)throw new Ed;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=bd(o);return{id:s,metadata:{authenticatorData:D(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Ed({cause:e})}}var Ed=class extends w{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function Dd(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=ra(s);if(u.length<37||a!==void 0&&!aa(u.slice(0,32),Da(Ni(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||D(Al(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Ou({hash:!0,payload:ea(u,Da(ia(c),{as:`Bytes`})),publicKey:i,signature:o})}let Od=wd;async function kd(e){return Td(e)}function Ad(e){return Dd(e)}wa();async function jd(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=ja(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Md(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,ta(t)),i=na(new Uint8Array(r)),a=ua(la(i,0,32)),o=ua(la(i,32,64));return o>wu.CURVE.n/2n&&(o=wu.CURVE.n-o),{r:a,s:o}}function M(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function Nd(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new ff(e.type);return`${e.name}(${Pd(e.inputs,{includeName:t})})`}function Pd(e,{includeName:t=!1}={}){return e?e.map(e=>Fd(e,{includeName:t})).join(t?`, `:`,`):``}function Fd(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Pd(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Id=o((()=>{pf()}));function N(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Ld=o((()=>{}));function P(e){return N(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Rd=o((()=>{Ld()})),zd,Bd=o((()=>{zd=`2.47.6`}));function Vd(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Vd(e.cause,t):t?null:e}var Hd,F,I=o((()=>{Bd(),Hd={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${zd}`},F=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=Hd.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Hd.version?[`Version: ${Hd.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=zd}walk(e){return Vd(this,e)}}})),Ud,Wd,Gd,Kd,qd,Jd,Yd,Xd,Zd,Qd,$d,ef,tf,nf,rf,af,of,sf,cf,lf,uf,df,ff,pf=o((()=>{Id(),Rd(),I(),Ud=class extends F{constructor({docsPath:e}){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(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},Wd=class extends F{constructor({docsPath:e}){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(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},Gd=class extends F{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${Pd(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`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=e,this.params=t,this.size=n}},Kd=class extends F{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},qd=class extends F{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Jd=class extends F{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${P(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},Yd=class extends F{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},Xd=class extends F{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" 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(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Zd=class extends F{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},Qd=class extends F{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},$d=class extends F{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},ef=class extends F{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},tf=class extends F{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},nf=class extends F{constructor(e,{docsPath:t}){super([`Function \"${e}\" 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(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},rf=class extends F{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},af=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Nd(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${Nd(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},of=class extends F{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},sf=class extends F{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${Pd(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`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=e,this.data=t,this.params=n,this.size=r}},cf=class extends F{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${Nd(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},lf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},uf=class extends F{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},df=class extends F{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},ff=class extends F{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),mf,hf,gf,_f=o((()=>{I(),mf=class extends F{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},hf=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},gf=class extends F{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function vf(e,{dir:t,size:n=32}={}){return typeof e==`string`?yf(e,{dir:t,size:n}):bf(e,{dir:t,size:n})}function yf(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new hf({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function bf(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new hf({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var xf=o((()=>{_f()})),Sf,Cf,wf,Tf,Ef,Df=o((()=>{I(),Sf=class extends F{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},Cf=class extends F{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},wf=class extends F{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},Tf=class extends F{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},Ef=class extends F{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function Of(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var kf=o((()=>{}));function Af(e,{size:t}){if(P(e)>t)throw new Ef({givenSize:P(e),maxSize:t})}function L(e,t={}){let{signed:n}=t;t.size&&Af(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function jf(e,t={}){let n=e;if(t.size&&(Af(n,{size:t.size}),n=Of(n)),Of(n)===`0x00`)return!1;if(Of(n)===`0x01`)return!0;throw new wf(n)}function Mf(e,t={}){let n=L(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new Sf({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var Nf=o((()=>{Df(),Rd(),kf()}));function Pf(e,t={}){return typeof e==`number`||typeof e==`bigint`?R(e,t):typeof e==`string`?Lf(e,t):typeof e==`boolean`?Ff(e,t):If(e,t)}function Ff(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Af(n,{size:t.size}),vf(n,{size:t.size})):n}function If(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Rf[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Af(r,{size:t.size}),vf(r,{dir:`right`,size:t.size})):r}function R(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new Sf({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?vf(s,{size:r}):s}function Lf(e,t={}){return If(zf.encode(e),t)}var Rf,zf,z=o((()=>{Df(),xf(),Nf(),Rf=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),zf=new TextEncoder}));function Bf(e,t={}){return typeof e==`number`||typeof e==`bigint`?Wf(e,t):typeof e==`boolean`?Vf(e,t):N(e)?Uf(e,t):Gf(e,t)}function Vf(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(Af(n,{size:t.size}),vf(n,{size:t.size})):n}function Hf(e){if(e>=qf.zero&&e<=qf.nine)return e-qf.zero;if(e>=qf.A&&e<=qf.F)return e-(qf.A-10);if(e>=qf.a&&e<=qf.f)return e-(qf.a-10)}function Uf(e,t={}){let n=e;t.size&&(Af(n,{size:t.size}),n=vf(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=Hf(r.charCodeAt(t++)),i=Hf(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new F(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Wf(e,t){return Uf(R(e,t))}function Gf(e,t={}){let n=Kf.encode(e);return typeof t.size==`number`?(Af(n,{size:t.size}),vf(n,{dir:`right`,size:t.size})):n}var Kf,qf,Jf=o((()=>{I(),Ld(),xf(),Nf(),z(),Kf=new TextEncoder,qf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Yf(e,t){let n=t||`hex`,r=mr(N(e,{strict:!1})?Bf(e):e);return n===`bytes`?r:Pf(r)}var Xf=o((()=>{gr(),Ld(),Jf(),z()}));function Zf(e){return Qf(e)}var Qf,$f=o((()=>{Jf(),Xf(),Qf=e=>Yf(Bf(e))}));function ep(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new F(`Unable to normalize signature.`);return i}var tp=o((()=>{I()})),np,rp=o((()=>{Vt(),tp(),np=e=>ep(typeof e==`string`?e:we(e))}));function ip(e){return Zf(np(e))}var ap=o((()=>{$f(),rp()})),op,sp=o((()=>{ap(),op=ip})),cp,lp=o((()=>{I(),cp=class extends F{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),up,dp=o((()=>{up=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function fp(e,t){if(mp.has(`${e}.${t}`))return mp.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Yf(Gf(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return mp.set(`${e}.${t}`,a),a}function pp(e,t){if(!gp(e,{strict:!1}))throw new cp({address:e});return fp(e,t)}var mp,hp=o((()=>{lp(),Jf(),Xf(),dp(),yp(),mp=new up(8192)}));function gp(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(vp.has(r))return vp.get(r);let i=_p.test(e)?e.toLowerCase()===e?!0:n?fp(e)===e:!0:!1;return vp.set(r,i),i}var _p,vp,yp=o((()=>{dp(),hp(),_p=/^0x[a-fA-F0-9]{40}$/,vp=new up(8192)}));function bp(e){return typeof e[0]==`string`?Sp(e):xp(e)}function xp(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function Sp(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var Cp=o((()=>{}));function wp(e,t,n,{strict:r}={}){return N(e,{strict:!1})?Op(e,t,n,{strict:r}):Dp(e,t,n,{strict:r})}function Tp(e,t){if(typeof t==`number`&&t>0&&t>P(e)-1)throw new mf({offset:t,position:`start`,size:P(e)})}function Ep(e,t,n){if(typeof t==`number`&&typeof n==`number`&&P(e)!==n-t)throw new mf({offset:n,position:`end`,size:P(e)})}function Dp(e,t,n,{strict:r}={}){Tp(e,t);let i=e.slice(t,n);return r&&Ep(i,t,n),i}function Op(e,t,n,{strict:r}={}){Tp(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&Ep(i,t,n),i}var kp=o((()=>{_f(),Ld(),Rd()})),Ap,jp,Mp=o((()=>{Ap=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,jp=/^(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)?$/}));function Np(e,t){if(e.length!==t.length)throw new Yd({expectedLength:e.length,givenLength:t.length});let n=Ip(Pp({params:e,values:t}));return n.length===0?`0x`:n}function Pp({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(Fp({param:e[r],value:t[r]}));return n}function Fp({param:e,value:t}){let n=Wp(e.type);if(n){let[r,i]=n;return Rp(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return Up(t,{param:e});if(e.type===`address`)return Lp(t);if(e.type===`bool`)return Bp(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=jp.exec(e.type)??[];return Vp(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return zp(t,{param:e});if(e.type===`string`)return Hp(t);throw new lf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Ip(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=P(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(R(t+i,{size:32})),r.push(s),i+=P(s)):n.push(s)}return bp([...n,...r])}function Lp(e){if(!gp(e))throw new cp({address:e});return{dynamic:!1,encoded:yf(e.toLowerCase())}}function Rp(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new df(e);if(!r&&e.length!==t)throw new qd({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=Fp({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Ip(a);if(r){let t=R(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?bp([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:bp(a.map(({encoded:e})=>e))}}function zp(e,{param:t}){let[,n]=t.type.split(`bytes`),r=P(e);if(!n){let t=e;return r%32!=0&&(t=yf(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:bp([yf(R(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Jd({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:yf(e,{dir:`right`})}}function Bp(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:yf(Ff(e))}}function Vp(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new Sf({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:R(e,{size:32,signed:t})}}function Hp(e){let t=Lf(e),n=Math.ceil(P(t)/32),r=[];for(let e=0;e<n;e++)r.push(yf(wp(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:bp([yf(R(P(t),{size:32})),...r])}}function Up(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=Fp({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Ip(r):bp(r.map(({encoded:e})=>e))}}function Wp(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Gp=o((()=>{pf(),lp(),I(),Df(),yp(),Cp(),xf(),Rd(),kp(),z(),Mp()})),Kp,qp=o((()=>{kp(),ap(),Kp=e=>wp(ip(e),0,4)}));function Jp(e){let{abi:t,args:n=[],name:r}=e,i=N(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Kp(e)===r:e.type===`event`?op(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Yp(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Xp(e.inputs,o.inputs,n);if(t)throw new af({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Yp(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return gp(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((t,r)=>n===`object`&&Yp(Object.values(e)[r],t)):/^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(e=>Yp(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Xp(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Xp(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&gp(n[r],{strict:!1}))return o}}var Zp=o((()=>{pf(),Ld(),yp(),sp(),qp()}));function Qp(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var $p=o((()=>{}));function em(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Jp({abi:t,args:n,name:r});if(!e)throw new tf(r,{docsPath:tm});i=e}if(i.type!==`function`)throw new tf(void 0,{docsPath:tm});return{abi:[i],functionName:Kp(Nd(i))}}var tm,nm=o((()=>{pf(),qp(),Id(),Zp(),tm=`/docs/contract/encodeFunctionData`}));function rm(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:em(e),i=n[0];return Sp([r,(`inputs`in i&&i.inputs?Np(i.inputs,t??[]):void 0)??`0x`])}var im=o((()=>{Cp(),Gp(),nm()})),am,om,sm,cm=o((()=>{am={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.`},om={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},sm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),lm,um,dm,fm=o((()=>{I(),lm=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},um=class extends F{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},dm=class extends F{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function pm(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(mm);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var mm,hm=o((()=>{fm(),mm={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new dm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new um({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new lm({offset:e});let 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 lm({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let 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();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function gm(e,t={}){return t.size!==void 0&&Af(e,{size:t.size}),L(If(e,t),t)}function _m(e,t={}){let n=e;if(t.size!==void 0&&(Af(n,{size:t.size}),n=Of(n)),n.length>1||n[0]>1)throw new Cf(n);return!!n[0]}function vm(e,t={}){return t.size!==void 0&&Af(e,{size:t.size}),Mf(If(e,t),t)}function ym(e,t={}){let n=e;return t.size!==void 0&&(Af(n,{size:t.size}),n=Of(n,{dir:`right`})),new TextDecoder().decode(n)}var bm=o((()=>{Df(),kf(),Nf(),z()}));function xm(e,t){let n=typeof t==`string`?Uf(t):t,r=pm(n);if(P(n)===0&&e.length>0)throw new Kd;if(P(t)&&P(t)<32)throw new Gd({data:typeof t==`string`?t:If(t),params:e,size:P(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=Sm(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function Sm(e,t,{staticPosition:n}){let r=Wp(t.type);if(r){let[i,a]=r;return wm(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return Om(e,t,{staticPosition:n});if(t.type===`address`)return Cm(e);if(t.type===`bool`)return Tm(e);if(t.type.startsWith(`bytes`))return Em(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Dm(e,t);if(t.type===`string`)return km(e,{staticPosition:n});throw new uf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function Cm(e){return[fp(If(Dp(e.readBytes(32),-20))),32]}function wm(e,t,{length:n,staticPosition:r}){if(!n){let n=r+vm(e.readBytes(Mm)),i=n+jm;e.setPosition(n);let a=vm(e.readBytes(jm)),o=Am(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=Sm(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(Am(t)){let i=r+vm(e.readBytes(Mm)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=Sm(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=Sm(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function Tm(e){return[_m(e.readBytes(32),{size:32}),32]}function Em(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=vm(e.readBytes(32));e.setPosition(n+t);let r=vm(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[If(i),32]}return[If(e.readBytes(Number.parseInt(i,10),32)),32]}function Dm(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?gm(i,{signed:n}):vm(i,{signed:n}),32]}function Om(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(Am(t)){let o=n+vm(e.readBytes(Mm));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=Sm(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=Sm(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function km(e,{staticPosition:t}){let n=t+vm(e.readBytes(32));e.setPosition(n);let r=vm(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=ym(Of(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Am(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Am);let n=Wp(e.type);return!!(n&&Am({...e,type:n[1]}))}var jm,Mm,Nm=o((()=>{pf(),hp(),hm(),Rd(),kp(),kf(),bm(),Jf(),z(),Gp(),jm=32,Mm=32}));function Pm(e){let{abi:t,data:n,cause:r}=e,i=wp(n,0,4);if(i===`0x`)throw new Kd({cause:r});let a=[...t||[],om,sm].find(e=>e.type===`error`&&i===Kp(Nd(e)));if(!a)throw new Qd(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?xm(a.inputs,wp(n,4)):void 0,errorName:a.name}}var Fm=o((()=>{cm(),pf(),kp(),qp(),Nm(),Id()})),Im,Lm=o((()=>{Im=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function Rm({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((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?Im(t[n]):t[n]}`).join(`, `)})`}var zm=o((()=>{Lm()})),Bm,Vm,Hm=o((()=>{Bm={gwei:9,wei:18},Vm={ether:-9,wei:9}}));function Um(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var Wm=o((()=>{}));function Gm(e,t=`wei`){return Um(e,Bm[t])}var Km=o((()=>{Hm(),Wm()}));function qm(e,t=`wei`){return Um(e,Vm[t])}var Jm=o((()=>{Hm(),Wm()}));function Ym(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Xm(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=Ym(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Ym(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Zm,Qm,$m=o((()=>{I(),Zm=class extends F{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},Qm=class extends F{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function eh(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var th,nh,rh,ih,ah,oh,sh=o((()=>{Km(),Jm(),I(),th=class extends F{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},nh=class extends F{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,eh(e),`}`,``,`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\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},rh=class extends F{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},ih=class extends F{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`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=t,this.type=n}},ah=class extends F{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},oh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=eh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${Gm(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${qm(o)} gwei`,maxFeePerGas:s!==void 0&&`${qm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${qm(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),ch,lh,uh=o((()=>{ch=e=>e,lh=e=>e})),dh,fh,ph,mh,hh,gh,_h=o((()=>{$p(),cm(),Fm(),Id(),zm(),Zp(),Km(),Jm(),pf(),I(),$m(),sh(),uh(),dh=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=eh({from:(t?Qp(t):void 0)?.address,to:u,value:d!==void 0&&`${Gm(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${qm(o)} gwei`,maxFeePerGas:s!==void 0&&`${qm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${qm(c)} gwei`,nonce:l});f&&(p+=`\\n${Xm(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},fh=class extends F{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Jp({abi:t,args:n,name:a}),c=s?Rm({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?Nd(s,{includeName:!0}):void 0,u=eh({address:r&&ch(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),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}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},ph=class extends F{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=Pm({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=am[e]}else{let e=n?Nd(n,{includeName:!0}):void 0,t=n&&a?Rm({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof Qd&&(l=a.signature,s=[`Unable to decode signature \"${l}\" 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://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{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.raw=t,this.reason=c,this.signature=l}},mh=class extends F{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},hh=class extends F{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},gh=class extends F{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),vh,yh,bh,xh=o((()=>{Lm(),I(),uh(),vh=class extends F{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${lh(a)}`,e&&`Request body: ${Im(e)}`].filter(Boolean),name:`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=e,this.headers=r,this.status=i,this.url=a}},yh=class extends F{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${lh(n)}`,`Request body: ${Im(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{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,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},bh=class extends F{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${lh(t)}`,`Request body: ${Im(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),Sh,Ch,wh,Th,Eh,Dh,Oh,kh,Ah,jh,Mh,Nh,Ph,Fh,Ih,Lh,Rh,zh,Bh,Vh,Hh,Uh,Wh,Gh,Kh,qh,Jh,Yh,Xh,Zh,Qh=o((()=>{I(),xh(),Sh=-1,Ch=class extends F{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof yh?e.code:t??Sh}},wh=class extends Ch{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},Th=class e extends Ch{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(Th,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Eh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(Eh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Dh=class e extends Ch{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(Dh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Oh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(Oh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),kh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(kh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Ah=class e extends Ch{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(Ah,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),jh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(jh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Mh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(Mh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Nh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(Nh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Ph=class e extends Ch{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(Ph,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Fh=class e extends Ch{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(Fh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Ih=class e extends Ch{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Ih,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Lh=class e extends wh{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(Lh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Rh=class e extends wh{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(Rh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),zh=class e extends wh{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(zh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Bh=class e extends wh{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Bh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Vh=class e extends wh{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Vh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Hh=class e extends wh{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(Hh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Uh=class e extends wh{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(Uh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Wh=class e extends wh{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(Wh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Gh=class e extends wh{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(Gh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Kh=class e extends wh{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Kh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),qh=class e extends wh{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(qh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Jh=class e extends wh{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(Jh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Yh=class e extends wh{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Yh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Xh=class e extends wh{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Xh,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Zh=class extends Ch{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));pf(),I(),_h(),xh(),Qh();function $h(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof gh?e:e instanceof F?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new fh(e instanceof Kd?new mh({functionName:a,cause:e}):[3,kh.code].includes(c)&&(l||u||d||f)||c===Ah.code&&u===`execution reverted`&&l?new ph({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof yh?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}hp(),Xf();function eg(e){return fp(`0x${Yf(`0x${e.substring(4)}`).substring(26)}`)}Ld(),Rd(),Nf(),z();async function tg({hash:e,signature:t}){let n=N(e)?e:Pf(e),{secp256k1:r}=await Promise.resolve().then(()=>(Qc(),xc));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=ng(Number(a??i));return new r.Signature(L(e),L(n)).addRecoveryBit(o)}let e=N(t)?t:Pf(t);if(P(e)!==65)throw Error(`invalid signature length`);let n=ng(Mf(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function ng(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function rg({hash:e,signature:t}){return eg(await tg({hash:e,signature:t}))}I(),hm(),Jf(),z();function ig(e,t=`hex`){let n=ag(e),r=pm(new Uint8Array(n.length));return n.encode(r),t===`hex`?If(r.bytes):r.bytes}function ag(e){return Array.isArray(e)?og(e.map(e=>ag(e))):sg(e)}function og(e){let t=e.reduce((e,t)=>e+t.length,0),n=cg(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function sg(e){let t=typeof e==`string`?Uf(e):e,n=cg(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function cg(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 F(`Length is too large.`)}Cp(),Jf(),z(),Xf();function lg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Yf(Sp([`0x05`,ig([t?R(t):`0x`,i,n?R(n):`0x`])]));return r===`bytes`?Uf(a):a}async function ug(e){let{authorization:t,signature:n}=e;return rg({hash:lg(t),signature:n??t})}Km(),Jm(),I(),sh();var dg=class extends F{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=eh({from:t?.address,to:u,value:d!==void 0&&`${Gm(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${qm(o)} gwei`,maxFeePerGas:s!==void 0&&`${qm(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${qm(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg=o((()=>{Jm(),I(),fg=class extends F{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(fg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),pg=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${qm(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(pg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),mg=class extends F{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${qm(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(mg,`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/}),hg=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(hg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),gg=class extends F{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(gg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),_g=class extends F{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(_g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),vg=class extends F{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,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.\"],name:`InsufficientFundsError`})}},Object.defineProperty(vg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),yg=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(yg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),bg=class extends F{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(bg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),xg=class extends F{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(xg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),Sg=class extends F{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${qm(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${qm(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(Sg,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),Cg=class extends F{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function Tg(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof F?e.walk(e=>e?.code===fg.code):e;return r instanceof F?new fg({cause:e,message:r.details}):fg.nodeMessage.test(n)?new fg({cause:e,message:e.details}):pg.nodeMessage.test(n)?new pg({cause:e,maxFeePerGas:t?.maxFeePerGas}):mg.nodeMessage.test(n)?new mg({cause:e,maxFeePerGas:t?.maxFeePerGas}):hg.nodeMessage.test(n)?new hg({cause:e,nonce:t?.nonce}):gg.nodeMessage.test(n)?new gg({cause:e,nonce:t?.nonce}):_g.nodeMessage.test(n)?new _g({cause:e,nonce:t?.nonce}):vg.nodeMessage.test(n)?new vg({cause:e}):yg.nodeMessage.test(n)?new yg({cause:e,gas:t?.gas}):bg.nodeMessage.test(n)?new bg({cause:e,gas:t?.gas}):xg.nodeMessage.test(n)?new xg({cause:e}):Sg.nodeMessage.test(n)?new Sg({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new Cg({cause:e})}var Eg=o((()=>{I(),wg()}));wg(),Eg();function Dg(e,{docsPath:t,...n}){return new dg((()=>{let t=Tg(e,n);return t instanceof Cg?e:t})(),{docsPath:t,...n})}function Og(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var kg=o((()=>{}));function Ag(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var jg=o((()=>{}));function Mg(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=Ng(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>If(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=R(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=R(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=R(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=R(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=R(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=Pg[e.type]),e.value!==void 0&&(n.value=R(e.value)),n}function Ng(e){return e.map(e=>({address:e.address,r:e.r?R(BigInt(e.r)):e.r,s:e.s?R(BigInt(e.s)):e.s,chainId:R(e.chainId),nonce:R(e.nonce),...e.yParity===void 0?{}:{yParity:R(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:R(e.v)}:{}}))}var Pg,Fg,Ig=o((()=>{z(),jg(),Pg={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Fg=Ag(`transactionRequest`,Mg)}));function Lg(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new gf({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new gf({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function Rg(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=R(t)),n!==void 0&&(o.nonce=R(n)),r!==void 0&&(o.state=Lg(r)),i!==void 0){if(o.state)throw new Qm;o.stateDiff=Lg(i)}return o}function zg(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!gp(n,{strict:!1}))throw new cp({address:n});if(t[n])throw new Zm({address:n});t[n]=Rg(r)}return t}var Bg=o((()=>{lp(),_f(),$m(),yp(),z()})),Vg,Hg=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),Vg=2n**256n-1n}));function Ug(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?Qp(t):void 0;if(a&&!gp(a.address))throw new cp({address:a.address});if(i&&!gp(i))throw new cp({address:i});if(n&&n>Vg)throw new pg({maxFeePerGas:n});if(r&&n&&r>n)throw new Sg({maxFeePerGas:n,maxPriorityFeePerGas:r})}var Wg=o((()=>{$p(),Hg(),lp(),wg(),yp()}));Jm(),I();var Gg=class extends F{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},Kg=class extends F{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},qg=class extends F{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${qm(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};I();var Jg=class extends F{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};Nf(),jg();let Yg={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Xg(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Mf(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?Mf(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?Yg[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 e.authorizationList&&(n.authorizationList=Qg(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let Zg=Ag(`transaction`,Xg);function Qg(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function $g(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:Xg(e));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:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}z();async function e_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:R(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new Jg({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||$g)(s,`getBlock`)}async function t_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}Nf();async function n_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await M(e,e_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?L(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):M(e,e_,`getBlock`)({}),M(e,t_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new Kg;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function r_(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new Gg;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await M(e,e_,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new Kg;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await n_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await M(e,t_,`getGasPrice`)({}))}}Nf(),z();async function i_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return Mf(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?R(r):n]},{dedupe:!!r}))}Jf(),z();function a_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Uf(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>If(e))}Jf(),z();function o_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Uf(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Uf(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>If(e))}Ld(),Jf(),z();function s_(e,t){let n=t||`hex`,r=jr(N(e,{strict:!1})?Bf(e):e);return n===`bytes`?r:Pf(r)}z();function c_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=s_(t,`bytes`);return i.set([n],0),r===`bytes`?i:If(i)}function l_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(c_({commitment:e,to:r,version:n}));return i}let u_=4096,d_=32*u_;d_*6-1-1*u_*6,I();var f_=class extends F{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},p_=class extends F{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},m_=class extends F{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},h_=class extends F{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};hm(),Rd(),Jf(),z();function g_(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Uf(e.data):e.data,r=P(n);if(!r)throw new p_;if(r>761855)throw new f_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=pm(new Uint8Array(d_)),t=0;for(;t<u_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>If(e.bytes))}function __(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??g_({data:t,to:r}),a=e.commitments??a_({blobs:i,kzg:n,to:r}),o=e.proofs??o_({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}sh();function v_(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new nh({transaction:e})}wg(),sh(),Eg();function y_(e,{docsPath:t,...n}){return new oh((()=>{let t=Tg(e,n);return t instanceof Cg?e:t})(),{docsPath:t,...n})}Nf();async function b_(e){return Mf(await e.request({method:`eth_chainId`},{dedupe:!0}))}$p(),kg(),Ig(),Wg();async function x_(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=Qp(n),r=a?a.id:await M(e,b_,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();Ug(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Mg)({...Og(y,{format:x}),account:n?Qp(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||Xg)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await M(e,e_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new Gg;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw y_(n,{...t,chain:e.chain})}}$p(),dp(),Wg();let S_=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],C_=new Map,w_=new up(128);async function T_(e,t){let n=t;n.account??=e.account,n.parameters??=S_;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await M(e,b_,`getChainId`)({}),c):n.chainId)}let u=r&&Qp(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||w_.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await M(e,x_,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return w_.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&w_.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await M(e,e_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await M(e,i_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=a_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=l_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=__({blobs:p,commitments:e,proofs:o_({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=v_(n)}catch{let t=C_.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,C_.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await r_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new qg({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new Kg;if(n.gasPrice===void 0){let{gasPrice:t}=await r_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await M(e,E_,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),Ug(n),delete n.parameters,n}$p(),I(),z(),kg(),Ig(),Bg(),Wg();async function E_(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?Qp(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await ug({authorization:t.authorizationList[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await T_(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?R(u):void 0)||d,ee=zg(b);Ug(t);let te=e.chain?.formatters?.transactionRequest?.format,ne=(te||Mg)({...Og(x,{format:te}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[ne,S??e.experimental_blockTag??`latest`,ee]:S?[ne,S]:[ne]}))}catch(n){throw Dg(n,{...t,account:i,chain:e.chain})}}function D_(e,t){if(!gp(e,{strict:!1}))throw new cp({address:e});if(!gp(t,{strict:!1}))throw new cp({address:t});return e.toLowerCase()===t.toLowerCase()}var O_=o((()=>{lp(),yp()}));function k_(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}pf(),fm(),Rd(),sp(),Nm(),Id();let A_=`/docs/contract/decodeEventLog`;function j_(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new $d({docsPath:A_});let c=t.find(e=>e.type===`event`&&o===op(Nd(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new ef(o,{docsPath:A_});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new cf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=M_({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=xm(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof Gd||e instanceof um?new sf({abiItem:c,data:n,params:g,size:P(n)}):e}else if(a)throw new sf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function M_({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(xm([e],t)||[])[0]}O_(),Jf(),Xf(),sp();function N_(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:op(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?k_(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=j_({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=j_({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!P_({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function P_(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?D_(t,n):e.type===`string`||e.type===`bytes`?Yf(Bf(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function F_(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Jp({abi:t,args:n,name:r});if(!e)throw new tf(r,{docsPath:I_});a=e}if(a.type!==`function`)throw new tf(void 0,{docsPath:I_});if(!a.outputs)throw new nf(a.name,{docsPath:I_});let o=xm(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var I_,L_=o((()=>{pf(),Nm(),Zp(),I_=`/docs/contract/decodeFunctionResult`})),R_,z_,B_,V_,H_,U_=o((()=>{R_=[{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`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],z_=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],B_=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...B_],[...B_],V_=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],H_=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),W_=o((()=>{})),G_,K_,q_,J_,Y_=o((()=>{G_=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,K_=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,q_=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,J_=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),X_,Z_,Q_,$_,ev,tv=o((()=>{I(),X_=class extends F{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Z_=class extends F{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} \u2013 ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} \u2013 ${e.name}`],name:`ChainMismatchError`})}},Q_=class extends F{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(`\n`),{name:`ChainNotFoundError`})}},$_=class extends F{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},ev=class extends F{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function nv(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new Ud({docsPath:rv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Wd({docsPath:rv});return Sp([r,Np(i.inputs,n)])}var rv,iv=o((()=>{pf(),Cp(),Gp(),rv=`/docs/contract/encodeDeployData`}));function av({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new X_({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new X_({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var ov=o((()=>{tv()}));function sv(e,{docsPath:t,...n}){return new dh((()=>{let t=Tg(e,n);return t instanceof Cg?e:t})(),{docsPath:t,...n})}var cv=o((()=>{_h(),wg(),Eg()}));function lv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var uv=o((()=>{}));function dv({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>fv.delete(t),s=()=>c().map(({args:e})=>e),c=()=>fv.get(t)||[],l=e=>fv.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=lv();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var fv,pv=o((()=>{uv(),fv=new Map})),mv,hv,gv,_v=o((()=>{Lm(),I(),uh(),mv=class extends F{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${lh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},hv=class extends F{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${lh(t)}`,`Response: ${Im(e)}`],name:`OffchainLookupResponseMalformedError`})}},gv=class extends F{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function vv(e){let{abi:t,data:n}=e,r=wp(n,0,4),i=t.find(e=>e.type===`function`&&r===Kp(Nd(e)));if(!i)throw new rf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?xm(i.inputs,wp(n,4)):void 0}}var yv=o((()=>{pf(),kp(),qp(),Nm(),Id()}));function bv(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Jp({abi:t,args:r,name:n});if(!e)throw new Zd(n,{docsPath:xv});i=e}if(i.type!==`error`)throw new Zd(void 0,{docsPath:xv});let a=Kp(Nd(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new Xd(i.name,{docsPath:xv});o=Np(i.inputs,r)}return Sp([a,o])}var xv,Sv=o((()=>{pf(),Cp(),qp(),Gp(),Id(),Zp(),xv=`/docs/contract/encodeErrorResult`}));function Cv(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Jp({abi:t,name:n});if(!e)throw new tf(n,{docsPath:wv});i=e}if(i.type!==`function`)throw new tf(void 0,{docsPath:wv});if(!i.outputs)throw new nf(i.name,{docsPath:wv});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new df(r)})();return Np(i.outputs,a)}var wv,Tv=o((()=>{pf(),Gp(),Zp(),wv=`/docs/contract/encodeFunctionResult`}));async function Ev(e){let{data:t,ccipRequest:n}=e,{args:[r]}=vv({abi:z_,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await Ev({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=Dv(e)}})),Cv({abi:z_,functionName:`query`,result:[i,a]})}function Dv(e){return e.name===`HttpRequestError`&&e.status?bv({abi:z_,errorName:`HttpError`,args:[e.status,e.shortMessage]}):bv({abi:[om],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var Ov=o((()=>{U_(),cm(),yv(),Sv(),Tv()})),kv=c({ccipRequest:()=>jv,offchainLookup:()=>Av,offchainLookupAbiItem:()=>Nv,offchainLookupSignature:()=>Mv});async function Av(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=Pm({data:r,abi:[Nv]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:jv;try{if(!D_(i,o))throw new gv({sender:o,to:i});let{data:r}=await Fv(e,{blockNumber:t,blockTag:n,data:bp([l,Np([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await Ev({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new mv({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function jv({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new vh({body:s,details:i?.error?Im(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!N(i)){r=new hv({result:i,url:a});continue}return i}catch(e){r=new vh({body:s,details:e.message,url:a})}}throw r}var Mv,Nv,Pv=o((()=>{Vv(),_v(),xh(),Fm(),Gp(),O_(),Cp(),Ld(),Ov(),Lm(),Mv=`0x556f1830`,Nv={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 Fv(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,te=n?Qp(n):void 0;if(u&&(f||p))throw new F(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new F(\"Cannot provide both `code` & `to` as parameters.\");let ne=u&&d,C=f&&p&&b&&d,re=ne||C,ie=ne?Rv({code:u,data:d}):C?zv({data:d,factory:f,factoryData:p,to:b}):d;try{Ug(t);let n=(typeof a==`bigint`?R(a):void 0)||o,u=l?Ll(l):void 0,d=zg(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Mg)({...Og(ee,{format:f}),accessList:s,account:te,authorizationList:r,blobs:c,data:ie,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:re?void 0:b,value:x},`call`);if(i&&Iv({request:p})&&!d&&!u)try{return await Lv(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof $_)&&!(e instanceof X_))throw e}let ne=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),C=await e.request({method:`eth_call`,params:ne});return C===`0x`?{data:void 0}:{data:C}}catch(n){let r=Bv(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Pv(),kv));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw re&&r?.slice(0,10)===`0x101bb98d`?new hh({factory:f}):sv(n,{...t,account:te,chain:e.chain})}}function Iv({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function Lv(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return av({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new $_})(),u=(typeof a==`bigint`?R(a):void 0)||o,{schedule:d}=dv({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=rm({abi:R_,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Rv({code:J_,data:r})}:{to:l,data:r}},u]});return F_({abi:R_,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new gh({data:f});return f===`0x`?{data:void 0}:{data:f}}function Rv(e){let{code:t,data:n}=e;return nv({abi:Lt([`constructor(bytes, bytes)`]),bytecode:G_,args:[t,n]})}function zv(e){let{data:t,factory:n,factoryData:r,to:i}=e;return nv({abi:Lt([`constructor(address, bytes, address, bytes)`]),bytecode:K_,args:[i,t,n,r]})}function Bv(e){if(!(e instanceof F))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Vv=o((()=>{Vt(),Rl(),$p(),U_(),W_(),Y_(),I(),tv(),_h(),L_(),iv(),im(),ov(),z(),cv(),kg(),Ig(),pv(),Bg(),Wg()}));L_(),im(),Vv();async function Hv(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=rm({abi:n,args:i,functionName:a});try{let{data:t}=await M(e,Fv,`call`)({...o,data:s,to:r});return F_({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw $h(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let Uv=new Map,Wv=new Map,Gv=0;function Kv(e,t,n){let r=++Gv,i=()=>Uv.get(e)||[],a=()=>{let t=i();Uv.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Wv.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(Uv.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&Wv.set(e,l),o}async function qv(e){return new Promise(t=>setTimeout(t,e))}function Jv(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await qv(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await qv(r),s())};s()})(),a}I();var Yv=class extends F{constructor({docsPath:e}={}){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 Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},Xv=class extends F{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};tv();function Zv({chain:e,currentChainId:t}){if(!e)throw new Q_;if(t!==e.id)throw new Z_({chain:e,currentChainId:t})}async function Qv(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}$p(),I(),Cp(),kg(),Ig(),dp(),Wg();let $v=new up(128);async function ey(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new Yv({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?Qp(n):null;try{Ug(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await ug({authorization:o[0]}).catch(()=>{throw new F(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await M(e,b_,`getChainId`)({}),r&&Zv({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Mg)({...Og(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?bp([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=$v.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>($v.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?($v.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await M(e,T_,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?bp([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...S_,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await M(e,Qv,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Xv({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Xv({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Xv?e:y_(e,{...t,account:y,chain:t.chain||void 0})}}$p(),im();async function B(e,t){return B.internal(e,ey,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new Yv({docsPath:`/docs/contract/writeContract`});let u=a?Qp(a):null,d=rm({abi:i,args:s,functionName:c});try{return await M(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw $h(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(B||={}),I();var ty=class extends F{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function ny(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await qv(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}Nf(),jg();let ry={\"0x0\":`reverted`,\"0x1\":`success`};function iy(e,t){let n={...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(e=>k_(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Mf(e.transactionIndex):null,status:e.status?ry[e.status]:null,type:e.type?Yg[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let ay=Ag(`transactionReceipt`,iy);$p(),I(),Qh(),im(),Cp(),Nf(),z();let oy=R(0,{size:32});async function sy(e,t){let{account:n=e.account,chain:r=e.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:s,version:c=`2.0.0`}=t,l=n?Qp(n):null,u=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(u=typeof e.dataSuffix==`string`?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});let d=t.calls.map(e=>{let t=e,n=t.abi?rm({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?bp([n,t.dataSuffix]):n,to:t.to,value:t.value?R(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:R(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new Uh(new F(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new Yh(new F(e,{details:e}))}let t=[];for(let n of d){let i=ey(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?L(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:bp([...n.map(e=>e.status===`fulfilled`?e.value:oy),R(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw y_(n,{...t,account:l,chain:t.chain})}}kp(),kf(),Nf();async function cy(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=Of(Op(t,-64,-32)),r=Op(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>oy.slice(2)===t?void 0:e.request({method:`eth_getTransactionReceipt`,params:[`0x${t}`]},{dedupe:!0}))),a=i.some(e=>e===null)?100:i.every(e=>e?.status===`0x1`)?200:i.every(e=>e?.status===`0x0`)?500:600;return{atomic:!1,chainId:Mf(n),receipts:i.filter(Boolean),status:a,version:`2.0.0`}}return e.request({method:`wallet_getCallsStatus`,params:[t]})}let{atomic:r=!1,chainId:i,receipts:a,version:o=`2.0.0`,...s}=await n(t.id),[c,l]=(()=>{let e=s.status;return e>=100&&e<200?[`pending`,e]:e>=200&&e<300?[`success`,e]:e>=300&&e<700?[`failure`,e]:e===`CONFIRMED`?[`success`,200]:e===`PENDING`?[`pending`,100]:[void 0,e]})();return{...s,atomic:r,chainId:i?Mf(i):void 0,receipts:a?.map(e=>({...e,blockNumber:L(e.blockNumber),gasUsed:L(e.gasUsed),status:ry[e.status]}))??[],statusCode:l,status:c,version:o}}I(),uv(),Lm();async function ly(e,t){let{id:n,pollingInterval:r=e.pollingInterval,status:i=({statusCode:e})=>e===200||e>=300,retryCount:a=4,retryDelay:o=({count:e})=>~~(1<<e)*200,timeout:s=6e4,throwOnFailure:c=!1}=t,l=Im([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=lv(),p,m=Kv(l,{resolve:d,reject:f},t=>{let s=Jv(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await ny(async()=>{let t=await M(e,cy,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new ty(t);return t},{retryCount:a,delay:o});if(!i(s))return;r(()=>t.resolve(s))}catch(e){r(()=>t.reject(e))}},{interval:r,emitOnBegin:!0});return s});return p=s?setTimeout(()=>{m(),clearTimeout(p),f(new uy({id:n}))},s):void 0,await u}var uy=class extends F{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let dy=256,fy;function py(e=11){if(!fy||dy+e>256*2){fy=``,dy=0;for(let e=0;e<256;e++)fy+=(256+Math.random()*256|0).toString(16).substring(1)}return fy.substring(dy,dy+++e)}$p();function my(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?Qp(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:py(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}z();async function hy(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:R(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}Hg(),lp(),I(),tv(),wg(),yp(),Rd(),kp(),Nf();function gy(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!gp(n))throw new cp({address:n});if(t<0)throw new ev({chainId:t})}vy(e)}function _y(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new p_;for(let e of t){let t=P(e),n=Mf(wp(e,0,1));if(t!==32)throw new m_({hash:e,size:t});if(n!==1)throw new h_({hash:e,version:n})}}vy(e)}function vy(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new ev({chainId:t});if(i&&!gp(i))throw new cp({address:i});if(r&&r>Vg)throw new pg({maxFeePerGas:r});if(n&&r&&n>r)throw new Sg({maxFeePerGas:r,maxPriorityFeePerGas:n})}function yy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new ev({chainId:t});if(a&&!gp(a))throw new cp({address:a});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>Vg)throw new pg({maxFeePerGas:r})}function by(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!gp(a))throw new cp({address:a});if(t!==void 0&&t<=0)throw new ev({chainId:t});if(n||i)throw new F(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>Vg)throw new pg({maxFeePerGas:r})}lp(),sh(),yp();function xy(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new ah({storageKey:i[e]});if(!gp(r,{strict:!1}))throw new cp({address:r});t.push([r,i])}return t}sh(),Cp(),kf(),z();function Sy(e,t){let n=v_(e);return n===`eip1559`?Ty(e,t):n===`eip2930`?Ey(e,t):n===`eip4844`?wy(e,t):n===`eip7702`?Cy(e,t):Dy(e,t)}function Cy(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;gy(e);let f=xy(u),p=ky(n);return Sp([`0x04`,ig([R(r),a?R(a):`0x`,l?R(l):`0x`,c?R(c):`0x`,i?R(i):`0x`,o??`0x`,s?R(s):`0x`,d??`0x`,f,p,...Oy(e,t)])])}function wy(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;_y(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>If(e)),n=e.kzg,r=a_({blobs:t,kzg:n});f===void 0&&(f=l_({commitments:r})),p===void 0&&(p=__({blobs:t,commitments:r,proofs:o_({blobs:t,commitments:r,kzg:n})}))}let m=xy(u),h=[R(n),i?R(i):`0x`,l?R(l):`0x`,c?R(c):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,d??`0x`,m,s?R(s):`0x`,f??[],...Oy(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return Sp([`0x03`,ig(p?[h,g,_,v]:h)])}function Ty(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;vy(e);let d=xy(l);return Sp([`0x02`,ig([R(n),i?R(i):`0x`,c?R(c):`0x`,s?R(s):`0x`,r?R(r):`0x`,a??`0x`,o?R(o):`0x`,u??`0x`,d,...Oy(e,t)])])}function Ey(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;yy(e);let u=xy(c);return Sp([`0x01`,ig([R(n),a?R(a):`0x`,l?R(l):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`,u,...Oy(e,t)])])}function Dy(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;by(e);let l=[a?R(a):`0x`,c?R(c):`0x`,r?R(r):`0x`,o??`0x`,s?R(s):`0x`,i??`0x`];if(t){let e=(()=>{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);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new th({v:t.v});return e})(),r=Of(t.r),i=Of(t.s);l=[...l,R(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,R(n),`0x`,`0x`]);return ig(l)}function Oy(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=Of(n.r),o=Of(n.s);return[typeof i==`number`?i?R(1):`0x`:r===0n?`0x`:r===1n?R(1):r===27n?`0x`:R(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}z();function ky(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?Pf(e):`0x`,a,r?Pf(r):`0x`,...Oy({},i)])}return t}hp(),O_();async function Ay({address:e,authorization:t,signature:n}){return D_(pp(e),await ug({authorization:t,signature:n}))}dp();let jy=new up(8192);function My(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(jy.get(n))return jy.get(n);let r=e().finally(()=>jy.delete(n));return jy.set(n,r),r}I(),xh(),Qh(),z(),Lm();function Ny(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new Ph(Error(`method not supported`),{method:l});return My(()=>ny(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case Th.code:throw new Th(t);case Eh.code:throw new Eh(t);case Dh.code:throw new Dh(t,{method:n.method});case Oh.code:throw new Oh(t);case kh.code:throw new kh(t);case Ah.code:throw new Ah(t);case jh.code:throw new jh(t);case Mh.code:throw new Mh(t);case Nh.code:throw new Nh(t);case Ph.code:throw new Ph(t,{method:n.method});case Fh.code:throw new Fh(t);case Ih.code:throw new Ih(t);case Lh.code:throw new Lh(t);case Rh.code:throw new Rh(t);case zh.code:throw new zh(t);case Bh.code:throw new Bh(t);case Vh.code:throw new Vh(t);case Hh.code:throw new Hh(t);case Uh.code:throw new Uh(t);case Wh.code:throw new Wh(t);case Gh.code:throw new Gh(t);case Kh.code:throw new Kh(t);case qh.code:throw new qh(t);case Jh.code:throw new Jh(t);case Yh.code:throw new Yh(t);case 5e3:throw new Lh(t);case Xh.code:throw new Xh(t);default:throw e instanceof F?e:new Zh(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof vh){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>Py(e)}),{enabled:i,id:i?Lf(`${c}.${Im(n)}`):void 0})}}function Py(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===Fh.code||e.code===kh.code:e instanceof vh&&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 Fy(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function Iy(){return{}}I(),Df(),hm(),Jf(),z();function Ly(e,t=`hex`){return Ry(pm((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Tf(e);return Uf(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Ry(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?If(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=zy(e,n,128),i=e.readBytes(r);return t===`hex`?If(i):i}return By(e,zy(e,n,192),t)}function zy(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 F(`Invalid RLP prefix`)}function By(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Ry(e,n));return i}Ld(),Rd();function Vy(e){return N(e)&&P(e)===32}function Hy(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function Uy(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Wy=Uy();xh(),Lm();function Gy(e,t={}){let{url:n,headers:r}=Ky(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await Hy(async({signal:e})=>{let t={...l,body:Im(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Wy.take(),...e})):{jsonrpc:`2.0`,id:i.id??Wy.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new bh({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new vh({body:i,details:Im(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof vh||e instanceof bh?e:new vh({body:i,cause:e,url:n})}}}}function Ky(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}Cp(),Rd(),z();function qy(e){let t=typeof e==`string`?Lf(e):typeof e.raw==`string`?e.raw:If(e.raw);return bp([Lf(`\u0019Ethereum Signed Message:\n${P(t)}`),t])}Xf();function Jy(e,t){return Yf(qy(e),t)}Lm(),I();var Yy=class extends F{constructor({domain:e}){super(`Invalid domain \"${Im(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Xy=class extends F{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Zy=class extends F{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};pf(),lp(),yp(),Rd(),z(),Mp(),Lm();function Qy(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{let n={...t};for(let t of e){let{name:e,type:r}=t;r===`address`&&(n[e]=n[e].toLowerCase())}return n};return Im({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function $y(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(jp);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;R(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!gp(o))throw new cp({address:o});let c=r.match(Ap);if(c){let[e,t]=c;if(t&&P(o)!==Number.parseInt(t,10))throw new of({expectedSize:Number.parseInt(t,10),givenSize:P(o)})}let l=i[r];l&&(tb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Yy({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Xy({primaryType:r,types:i})}function eb({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function tb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Zy({type:e})}Gp(),Cp(),z(),Xf();function nb(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:eb({domain:t}),...e.types};$y({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(rb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(ib({data:n,primaryType:r,types:i})),Yf(bp(a))}function rb({domain:e,types:t}){return ib({data:e,primaryType:`EIP712Domain`,types:t})}function ib({data:e,primaryType:t,types:n}){return Yf(ab({data:e,primaryType:t,types:n}))}function ab({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[ob({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=lb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return Np(r,i)}function ob({primaryType:e,types:t}){return Yf(Pf(sb({primaryType:e,types:t})))}function sb({primaryType:e,types:t}){let n=``,r=cb({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function cb({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])cb({primaryType:e.type,types:t},n);return n}function lb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Yf(ab({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Yf(r)];if(n===`string`)return[{type:`bytes32`},Yf(Pf(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>lb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Yf(Np(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}T(),A();let ub=zo(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function db(e){if(typeof e==`string`){if(k(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new mb(e)}else $c(e.authorization)}function fb(e){db(e);let t=Vi(k(e,-64,-32)),n=k(e,-t-64,-64),r=k(e,0,-t-64),[i,a,o]=Io(ub,n);return{authorization:vl({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function pb(e){try{return db(e),!0}catch{return!1}}var mb=class extends w{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};sh(),kp(),Nf();function hb(e){let t=Op(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&Mf(t)>=192)return`legacy`;throw new rh({serializedType:t})}lp(),sh(),yp(),Ld(),xf(),kf(),Nf();function gb(e){let t=hb(e);return t===`eip1559`?yb(e):t===`eip2930`?bb(e):t===`eip4844`?vb(e):t===`eip7702`?_b(e):xb(e)}function _b(e){let t=Sb(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new ih({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:Mf(n),type:`eip7702`};return N(s)&&s!==`0x`&&(h.to=s),N(o)&&o!==`0x`&&(h.gas=L(o)),N(l)&&l!==`0x`&&(h.data=l),N(r)&&(h.nonce=r===`0x`?0:Mf(r)),N(c)&&c!==`0x`&&(h.value=L(c)),N(a)&&a!==`0x`&&(h.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(h.accessList=Cb(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=wb(d)),gy(h),{...t.length===13?Tb(t):void 0,...h}}function vb(e){let t=Sb(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new ih({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:Mf(a),to:u,type:`eip4844`};return N(l)&&l!==`0x`&&(S.gas=L(l)),N(f)&&f!==`0x`&&(S.data=f),N(o)&&(S.nonce=o===`0x`?0:Mf(o)),N(d)&&d!==`0x`&&(S.value=L(d)),N(m)&&m!==`0x`&&(S.maxFeePerBlobGas=L(m)),N(c)&&c!==`0x`&&(S.maxFeePerGas=L(c)),N(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=L(s)),p.length!==0&&p!==`0x`&&(S.accessList=Cb(p)),y&&b&&x&&(S.sidecars=__({blobs:y,commitments:b,proofs:x})),_y(S),{...r.length===14?Tb(r):void 0,...S}}function yb(e){let t=Sb(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new ih({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:Mf(n),type:`eip1559`};return N(s)&&s!==`0x`&&(m.to=s),N(o)&&o!==`0x`&&(m.gas=L(o)),N(l)&&l!==`0x`&&(m.data=l),N(r)&&(m.nonce=r===`0x`?0:Mf(r)),N(c)&&c!==`0x`&&(m.value=L(c)),N(a)&&a!==`0x`&&(m.maxFeePerGas=L(a)),N(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=L(i)),u.length!==0&&u!==`0x`&&(m.accessList=Cb(u)),vy(m),{...t.length===12?Tb(t):void 0,...m}}function bb(e){let t=Sb(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new ih({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:Mf(n),type:`eip2930`};return N(o)&&o!==`0x`&&(p.to=o),N(a)&&a!==`0x`&&(p.gas=L(a)),N(c)&&c!==`0x`&&(p.data=c),N(r)&&(p.nonce=r===`0x`?0:Mf(r)),N(s)&&s!==`0x`&&(p.value=L(s)),N(i)&&i!==`0x`&&(p.gasPrice=L(i)),l.length!==0&&l!==`0x`&&(p.accessList=Cb(l)),yy(p),{...t.length===11?Tb(t):void 0,...p}}function xb(e){let t=Ly(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new ih({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(N(a)&&a!==`0x`&&(d.to=a),N(i)&&i!==`0x`&&(d.gas=L(i)),N(s)&&s!==`0x`&&(d.data=s),N(n)&&(d.nonce=n===`0x`?0:Mf(n)),N(o)&&o!==`0x`&&(d.value=L(o)),N(r)&&r!==`0x`&&(d.gasPrice=L(r)),by(d),t.length===6)return d;let f=N(c)&&c!==`0x`?L(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new th({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Sb(e){return Ly(`0x${e.slice(4)}`,`hex`)}function Cb(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!gp(r,{strict:!1}))throw new cp({address:r});t.push({address:r,storageKeys:i.map(e=>Vy(e)?e:Of(e))})}return t}function wb(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:Mf(r),nonce:a===`0x`?0:Mf(a),...Tb([o,s,c])})}return t}function Tb(e){let t=e.slice(-3),n=t[0]===`0x`||L(t[0])===0n?27n:28n;return{r:yf(t[1],{size:32}),s:yf(t[2],{size:32}),v:n,yParity:n===27n?0:1}}I();var Eb=class extends F{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function Db(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new Eb({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,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}`)}U_(),Y_(),pf(),I(),_h(),L_(),im(),ov();async function Ob(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return av({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=rm({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=$h(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>M(e,Hv,`readContract`)({...f===null?{code:J_}:{address:f},abi:R_,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new Kd;if(!a)throw new gh({data:r});let e=F_({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=$h(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new F(`multicall results mismatch`);return _}T(),A();function kb(e){if(k(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new Mb(e)}function Ab(e){let{data:t,signature:n,to:r}=e;return E(Lo(zo(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function jb(e){try{return kb(e),!0}catch{return!1}}var Mb=class extends w{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};Qc(),Nf(),Jf();function Nb({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Lc.Signature(L(e),L(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Uf(o)}U_(),Y_(),_h(),iv(),im(),hp(),O_(),Cp(),Ld(),Nf(),z(),Vv();async function Pb(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return N(e)?e:typeof e==`object`&&`r`in e&&`s`in e?Nb(e):If(e)})();try{if(s===`eoa`)try{if(D_(pp(n),await rg({hash:i,signature:c})))return!0}catch{}return pb(c)?await Fb(e,{...t,multicallAddress:o,signature:c}):await Ib(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(D_(pp(n),await rg({hash:i,signature:c})))return!0}catch{}if(e instanceof Rb)return!1;throw e}}async function Fb(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=fb(t.signature);if(await hy(e,{address:n,blockNumber:r,blockTag:i})===Sp([`0xef0100`,s.address]))return await Lb(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:R(s.r,{size:32}),s:R(s.s,{size:32}),yParity:s.yParity};if(!await Ay({address:n,authorization:d}))throw new Rb;let f=await M(e,Hv,`readContract`)({...o?{address:o}:{code:J_},authorizationList:[d],abi:R_,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:rm({abi:V_,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Rb}async function Ib(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||jb(o)?o:Ab({data:i,signature:o,to:r}))(),u=s?{to:s,data:rm({abi:H_,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:nv({abi:H_,args:[n,a,l],bytecode:q_}),...c},{data:d}=await M(e,Fv,`call`)(u).catch(e=>{throw e instanceof dh?new Rb:e});if(jf(d??`0x0`))return!0;throw new Rb}async function Lb(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await M(e,Hv,`readContract`)({address:n,abi:V_,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof fh?new Rb:e})).startsWith(`0x1626ba7e`))return!0;throw new Rb}var Rb=class extends Error{};async function zb(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await M(e,sy,`sendCalls`)(t);return await M(e,ly,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}$p(),z(),Ig(),Wg();async function Bb(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Yv({docsPath:`/docs/actions/wallet/signTransaction`});let a=Qp(n);Ug({account:a,...t});let o=await M(e,b_,`getChainId`)({});r!==null&&Zv({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Mg;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:R(o),from:a.address}]},{retryCount:0})}$p();async function Vb(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Yv({docsPath:`/docs/actions/wallet/signTypedData`});let o=Qp(n),s={EIP712Domain:eb({domain:r}),...t.types};if($y({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Qy({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function Hb({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=py();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:Ny(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Ub(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>Hb({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}I();var Wb=class extends F{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};xh(),pv();function Gb(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new Wb;let b=Gy(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return Hb({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=dv({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new yh({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Object.freeze({status:`aborted`});function V(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var Kb=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},qb=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};let Jb={};function Yb(e){return e&&Object.assign(Jb,e),Jb}function Xb(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Zb(e,t){return typeof t==`bigint`?t.toString():t}function Qb(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function $b(e){return e==null}function ex(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let tx=Symbol(`evaluating`);function H(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==tx)return r===void 0&&(r=tx,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let nx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function rx(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ix(e){if(rx(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(rx(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let ax=new Set([`string`,`number`,`symbol`]),ox=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function sx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function cx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function lx(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function ux(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function dx(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function fx(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function px(e){return typeof e==`string`?e:e?.message}function mx(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=px(e.inst?._zod.def?.error?.(e))??px(t?.error?.(e))??px(n.customError?.(e))??px(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function hx(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function gx(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let _x=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Zb,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},vx=V(`$ZodError`,_x),yx=V(`$ZodError`,_x,{Parent:Error}),bx=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Kb;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>mx(e,a,Yb())));throw nx(t,i?.callee),t}return o.value},xx=bx(yx),Sx=(e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>mx(e,a,Yb())));throw nx(t,i?.callee),t}return o.value})(yx),Cx=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Kb;return a.issues.length?{success:!1,error:new(e??vx)(a.issues.map(e=>mx(e,i,Yb())))}:{success:!0,data:a.value}})(yx),wx=(e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>mx(e,i,Yb())))}:{success:!0,data:a.value}})(yx),Tx=(e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return bx(e)(t,n,i)})(yx),Ex=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},Dx=/^-?\\d+n?$/,Ox=/^-?\\d+(?:\\.\\d+)?$/,kx=/^(?:true|false)$/i,Ax=V(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),jx=V(`$ZodCheckMaxLength`,(e,t)=>{var n;Ax.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!$b(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=hx(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Mx=V(`$ZodCheckMinLength`,(e,t)=>{var n;Ax.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!$b(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=hx(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Nx=V(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Ax.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),Px=V(`$ZodCheckRegex`,(e,t)=>{Nx.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Fx={major:4,minor:3,patch:6},U=V(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Fx;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=dx(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new Kb;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=dx(e,t))});else{if(e.issues.length===t)continue;r||=dx(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(dx(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Kb;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Kb;return o.then(e=>t(e,r,a))}return t(o,r,a)}}H(e,`~standard`,()=>({validate:t=>{try{let n=Cx(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return wx(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Ix=V(`$ZodString`,(e,t)=>{U.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Ex(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),Lx=V(`$ZodNumber`,(e,t)=>{U.init(e,t),e._zod.pattern=e._zod.bag.pattern??Ox,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Rx=V(`$ZodBoolean`,(e,t)=>{U.init(e,t),e._zod.pattern=kx,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),zx=V(`$ZodBigInt`,(e,t)=>{U.init(e,t),e._zod.pattern=Dx,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),Bx=V(`$ZodAny`,(e,t)=>{U.init(e,t),e._zod.parse=e=>e}),Vx=V(`$ZodUnknown`,(e,t)=>{U.init(e,t),e._zod.parse=e=>e}),Hx=V(`$ZodVoid`,(e,t)=>{U.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function Ux(e,t,n){e.issues.length&&t.issues.push(...fx(n,e.issues)),t.value[n]=e.value}let Wx=V(`$ZodArray`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Ux(t,n,e))):Ux(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Gx(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...fx(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function Kx(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=ux(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function qx(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Gx(e,n,i,t,u))):Gx(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let Jx=V(`$ZodObject`,(e,t)=>{if(U.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Qb(()=>Kx(t));H(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=rx,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>Gx(n,t,e,s,r))):Gx(i,t,e,s,r)}return i?qx(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function Yx(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!dx(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>mx(e,r,Yb())))}),t)}let Xx=V(`$ZodUnion`,(e,t)=>{U.init(e,t),H(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),H(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),H(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),H(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>ex(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>Yx(t,i,e,a)):Yx(s,i,e,a)}}),Zx=V(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,Xx.init(e,t);let n=e._zod.parse;H(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Qb(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!rx(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),Qx=V(`$ZodTuple`,(e,t)=>{U.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=[...n].reverse().findIndex(e=>e._zod.optin!==`optional`),c=s===-1?0:n.length-s;if(!t.rest){let t=a.length>n.length,i=a.length<c-1;if(t||i)return r.issues.push({...t?{code:`too_big`,maximum:n.length,inclusive:!0}:{code:`too_small`,minimum:n.length},input:a,inst:e,origin:`array`}),r}let l=-1;for(let e of n){if(l++,l>=a.length&&l>=c)continue;let t=e._zod.run({value:a[l],issues:[]},i);t instanceof Promise?o.push(t.then(e=>$x(e,r,l))):$x(t,r,l)}if(t.rest){let e=a.slice(n.length);for(let n of e){l++;let e=t.rest._zod.run({value:n,issues:[]},i);e instanceof Promise?o.push(e.then(e=>$x(e,r,l))):$x(e,r,l)}}return o.length?Promise.all(o).then(()=>r):r}});function $x(e,t,n){e.issues.length&&t.issues.push(...fx(n,e.issues)),t.value[n]=e.value}let eS=V(`$ZodRecord`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!ix(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...fx(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...fx(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Ox.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>mx(e,r,Yb())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...fx(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...fx(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),tS=V(`$ZodEnum`,(e,t)=>{U.init(e,t);let n=Xb(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>ax.has(typeof e)).map(e=>typeof e==`string`?sx(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),nS=V(`$ZodLiteral`,(e,t)=>{if(U.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?sx(e):e?sx(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),rS=V(`$ZodTransform`,(e,t)=>{U.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new qb(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new Kb;return n.value=i,n}});function iS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let aS=V(`$ZodOptional`,(e,t)=>{U.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,H(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),H(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ex(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>iS(t,e.value)):iS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),oS=V(`$ZodNullable`,(e,t)=>{U.init(e,t),H(e._zod,`optin`,()=>t.innerType._zod.optin),H(e._zod,`optout`,()=>t.innerType._zod.optout),H(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ex(e.source)}|null)$`):void 0}),H(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),sS=V(`$ZodPipe`,(e,t)=>{U.init(e,t),H(e._zod,`values`,()=>t.in._zod.values),H(e._zod,`optin`,()=>t.in._zod.optin),H(e._zod,`optout`,()=>t.out._zod.optout),H(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>cS(e,t.in,n)):cS(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>cS(e,t.out,n)):cS(r,t.out,n)}});function cS(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let lS=V(`$ZodCodec`,(e,t)=>{U.init(e,t),H(e._zod,`values`,()=>t.in._zod.values),H(e._zod,`optin`,()=>t.in._zod.optin),H(e._zod,`optout`,()=>t.out._zod.optout),H(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>uS(e,t,n)):uS(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>uS(e,t,n)):uS(r,t,n)}}});function uS(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>dS(e,r,t.out,n)):dS(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>dS(e,r,t.in,n)):dS(e,r,t.in,n)}}function dS(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let fS=V(`$ZodReadonly`,(e,t)=>{U.init(e,t),H(e._zod,`propValues`,()=>t.innerType._zod.propValues),H(e._zod,`values`,()=>t.innerType._zod.values),H(e._zod,`optin`,()=>t.innerType?._zod?.optin),H(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(pS):pS(r)}});function pS(e){return e.value=Object.freeze(e.value),e}let mS=V(`$ZodTemplateLiteral`,(e,t)=>{U.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||ox.has(typeof e))n.push(sx(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),hS=V(`$ZodCustom`,(e,t)=>{Ax.init(e,t),U.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>gS(t,n,r,e));gS(i,n,r,e)}});function gS(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(gx(e))}}function _S(e,t){return new e({type:`string`,...lx(t)})}function vS(e,t){return new e({type:`number`,checks:[],...lx(t)})}function yS(e,t){return new e({type:`boolean`,...lx(t)})}function bS(e,t){return new e({type:`bigint`,...lx(t)})}function xS(e){return new e({type:`any`})}function SS(e){return new e({type:`unknown`})}function CS(e,t){return new e({type:`void`,...lx(t)})}function wS(e,t){return new jx({check:`max_length`,...lx(t),maximum:e})}function TS(e,t){return new Mx({check:`min_length`,...lx(t),minimum:e})}function ES(e,t){return new Px({check:`string_format`,format:`regex`,...lx(t),pattern:e})}function DS(e,t,n){let r=lx(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function OS(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...lx(n)})}let kS=V(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);U.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>xx(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Cx(e,t,n),e.parseAsync=async(t,n)=>Sx(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>wx(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>cx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),AS=V(`ZodMiniString`,(e,t)=>{Ix.init(e,t),kS.init(e,t)});function W(e){return _S(AS,e)}let jS=V(`ZodMiniNumber`,(e,t)=>{Lx.init(e,t),kS.init(e,t)});function MS(e){return vS(jS,e)}let NS=V(`ZodMiniBoolean`,(e,t)=>{Rx.init(e,t),kS.init(e,t)});function PS(e){return yS(NS,e)}let FS=V(`ZodMiniBigInt`,(e,t)=>{zx.init(e,t),kS.init(e,t)});function IS(e){return bS(FS,e)}let LS=V(`ZodMiniAny`,(e,t)=>{Bx.init(e,t),kS.init(e,t)});function RS(){return xS(LS)}let zS=V(`ZodMiniUnknown`,(e,t)=>{Vx.init(e,t),kS.init(e,t)});function BS(){return SS(zS)}let VS=V(`ZodMiniVoid`,(e,t)=>{Hx.init(e,t),kS.init(e,t)});function HS(e){return CS(VS,e)}let US=V(`ZodMiniArray`,(e,t)=>{Wx.init(e,t),kS.init(e,t)});function WS(e,t){return new US({type:`array`,element:e,...lx(t)})}let GS=V(`ZodMiniObject`,(e,t)=>{Jx.init(e,t),kS.init(e,t),H(e,`shape`,()=>t.shape)});function G(e,t){return new GS({type:`object`,shape:e??{},...lx(t)})}let KS=V(`ZodMiniUnion`,(e,t)=>{Xx.init(e,t),kS.init(e,t)});function qS(e,t){return new KS({type:`union`,options:e,...lx(t)})}let JS=V(`ZodMiniDiscriminatedUnion`,(e,t)=>{Zx.init(e,t),kS.init(e,t)});function YS(e,t,n){return new JS({type:`union`,options:t,discriminator:e,...lx(n)})}let XS=V(`ZodMiniTuple`,(e,t)=>{Qx.init(e,t),kS.init(e,t)});function ZS(e,t,n){let r=t instanceof U;return new XS({type:`tuple`,items:e,rest:r?t:null,...lx(r?n:t)})}let QS=V(`ZodMiniRecord`,(e,t)=>{eS.init(e,t),kS.init(e,t)});function $S(e,t,n){return new QS({type:`record`,keyType:e,valueType:t,...lx(n)})}let eC=V(`ZodMiniEnum`,(e,t)=>{tS.init(e,t),kS.init(e,t),e.options=Object.values(t.entries)});function tC(e,t){return new eC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...lx(t)})}let nC=V(`ZodMiniLiteral`,(e,t)=>{nS.init(e,t),kS.init(e,t)});function K(e,t){return new nC({type:`literal`,values:Array.isArray(e)?e:[e],...lx(t)})}let rC=V(`ZodMiniTransform`,(e,t)=>{rS.init(e,t),kS.init(e,t)});function iC(e){return new rC({type:`transform`,transform:e})}let aC=V(`ZodMiniOptional`,(e,t)=>{aS.init(e,t),kS.init(e,t)});function q(e){return new aC({type:`optional`,innerType:e})}let oC=V(`ZodMiniNullable`,(e,t)=>{oS.init(e,t),kS.init(e,t)});function sC(e){return new oC({type:`nullable`,innerType:e})}function cC(e){return q(sC(e))}let lC=V(`ZodMiniPipe`,(e,t)=>{sS.init(e,t),kS.init(e,t)});function uC(e,t){return new lC({type:`pipe`,in:e,out:t})}let dC=V(`ZodMiniCodec`,(e,t)=>{lC.init(e,t),lS.init(e,t)});function fC(e,t,n){return new dC({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let pC=V(`ZodMiniReadonly`,(e,t)=>{fS.init(e,t),kS.init(e,t)});function J(e){return new pC({type:`readonly`,innerType:e})}let mC=V(`ZodMiniTemplateLiteral`,(e,t)=>{mS.init(e,t),kS.init(e,t)});function hC(e,t){return new mC({type:`template_literal`,parts:e,...lx(t)})}let gC=V(`ZodMiniCustom`,(e,t)=>{hS.init(e,t),kS.init(e,t)});function _C(e,t){return DS(gC,e??(()=>!0),t)}function vC(e,t={}){return OS(gC,e,t)}function yC(e){return e}function bC(e){return e}let Y=()=>hC([`0x`,W()],`Expected address`),xC=()=>fC(qS([X(),IS()]),IS(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:zi(e),encode:e=>O(e)}),X=()=>hC([`0x`,W()],`Expected hex value`),SC=()=>fC(qS([X(),MS()]),MS(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Vi(e),encode:e=>O(e)}),CC=G({address:Y(),blockHash:X(),blockNumber:xC(),data:X(),logIndex:SC(),removed:PS(),topics:J(WS(X())),transactionHash:X(),transactionIndex:SC()}),wC=G({blobGasPrice:q(xC()),blobGasUsed:q(xC()),blockHash:X(),blockNumber:xC(),contractAddress:sC(Y()),cumulativeGasUsed:xC(),effectiveGasPrice:xC(),feePayer:q(Y()),feeToken:q(Y()),from:Y(),gasUsed:xC(),logs:WS(CC),logsBloom:X(),root:q(X()),status:fC(X(),tC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:sC(Y()),transactionHash:X(),transactionIndex:SC(),type:X()}),TC=_C(),EC=qS([K(`secp256k1`),K(`p256`),K(`webAuthn`)]),DC=G({address:Y(),chainId:xC(),expiry:cC(SC()),keyId:Y(),keyType:EC,limits:q(J(WS(G({token:Y(),limit:xC()})))),signature:TC}),OC=G({data:q(X()),to:q(Y()),value:q(xC())}),kC=G({accessList:q(WS(G({address:Y(),storageKeys:WS(X())}))),calls:q(J(WS(OC))),chainId:q(SC()),data:q(X()),feePayer:q(qS([PS(),W()])),feeToken:q(Y()),from:q(Y()),gas:q(xC()),keyAuthorization:q(DC),maxFeePerGas:q(xC()),maxPriorityFeePerGas:q(xC()),nonce:q(SC()),nonceKey:q(xC()),to:q(Y()),validAfter:q(SC()),validBefore:q(SC()),value:q(xC())});var AC;(function(e){e.schema=yC({method:K(`eth_accounts`),params:void 0,returns:J(WS(Y()))})})(AC||={});var jC;(function(e){e.schema=yC({method:K(`eth_chainId`),params:void 0,returns:X()})})(jC||={});var MC;(function(e){e.schema=yC({method:K(`eth_requestAccounts`),params:void 0,returns:J(WS(Y()))})})(MC||={});var NC;(function(e){e.schema=yC({method:K(`eth_sendTransaction`),params:J(ZS([kC])),returns:X()})})(NC||={});var PC;(function(e){e.schema=yC({method:K(`eth_fillTransaction`),params:J(ZS([kC])),returns:RS()})})(PC||={});var FC;(function(e){e.schema=yC({method:K(`eth_signTransaction`),params:J(ZS([kC])),returns:X()})})(FC||={});var IC;(function(e){e.schema=yC({method:K(`eth_sendTransactionSync`),params:J(ZS([kC])),returns:wC})})(IC||={});var LC;(function(e){e.schema=yC({method:K(`eth_signTypedData_v4`),params:J(ZS([Y(),W()])),returns:X()})})(LC||={});var RC;(function(e){e.schema=yC({method:K(`personal_sign`),params:J(ZS([X(),Y()])),returns:X()})})(RC||={});let zC=q(G({feePayer:q(qS([PS(),W()])),sync:q(PS())}));var BC;(function(e){e.schema=yC({method:K(`wallet_sendCalls`),params:q(J(ZS([G({atomicRequired:q(PS()),calls:J(WS(OC)),capabilities:zC,chainId:q(SC()),from:q(Y()),version:q(W())})]))),returns:G({atomic:q(PS()),capabilities:zC,chainId:q(SC()),id:W(),receipts:q(WS(wC)),status:q(MS()),version:q(W())})})})(BC||={});var VC;(function(e){e.schema=yC({method:K(`wallet_getBalances`),params:q(J(ZS([G({account:q(Y()),chainId:q(SC()),tokens:q(J(WS(Y())))})]))),returns:J(WS(G({address:Y(),balance:xC(),decimals:MS(),display:W(),name:W(),symbol:W()})))})})(VC||={});var HC;(function(e){e.schema=yC({method:K(`wallet_getCapabilities`),params:q(J(qS([ZS([Y()]),ZS([Y(),J(WS(X()))])]))),returns:$S(X(),G({accessKeys:q(G({status:qS([K(`supported`),K(`unsupported`)])})),atomic:G({status:qS([K(`supported`),K(`ready`),K(`unsupported`)])}),feePayer:q(G({status:qS([K(`supported`),K(`unsupported`)])}))}))})})(HC||={});var UC;(function(e){e.parameters=G({address:q(Y()),expiry:MS(),keyType:q(EC),limits:q(J(WS(G({token:Y(),limit:xC()})))),publicKey:q(X())});let t=G({keyAuthorization:DC,rootAddress:Y()});e.schema=yC({method:K(`wallet_authorizeAccessKey`),params:J(ZS([e.parameters])),returns:t})})(UC||={});var WC;(function(e){e.parameters=G({address:q(Y()),expiry:MS(),keyType:q(EC),limits:J(WS(G({token:Y(),limit:xC()}))),publicKey:q(X())})})(WC||={});var GC;(function(e){e.schema=yC({method:K(`wallet_revokeAccessKey`),params:J(ZS([G({address:Y(),accessKeyAddress:Y()})])),returns:void 0})})(GC||={});var KC;(function(e){e.authorizeAccessKey=q(UC.parameters),e.capabilities={request:q(qS([G({digest:q(X()),authorizeAccessKey:e.authorizeAccessKey,method:K(`register`),name:q(W()),userId:q(W())}),G({digest:q(X()),credentialId:q(W()),authorizeAccessKey:e.authorizeAccessKey,method:q(K(`login`)),selectAccount:q(PS())})])),result:G({keyAuthorization:q(DC),signature:q(X())})},e.schema=yC({method:K(`wallet_connect`),params:q(J(ZS([G({capabilities:e.capabilities.request,chainId:q(SC()),version:q(W())})]))),returns:G({accounts:J(WS(G({address:Y(),capabilities:e.capabilities.result})))})})})(KC||={});var qC;(function(e){let t=q(WC.parameters);e.parameters=G({capabilities:q(qS([G({digest:q(X()),authorizeAccessKey:t,method:K(`register`),name:q(W()),userId:q(W())}),G({digest:q(X()),credentialId:q(W()),authorizeAccessKey:t,method:q(K(`login`)),selectAccount:q(PS())})])),chainId:q(SC()),version:q(W())})})(qC||={});var JC;(function(e){e.schema=yC({method:K(`wallet_disconnect`),params:void 0,returns:void 0})})(JC||={});var YC;(function(e){e.schema=yC({method:K(`wallet_getCallsStatus`),params:q(J(ZS([W()]))),returns:G({atomic:PS(),chainId:SC(),id:W(),receipts:q(WS(wC)),status:MS(),version:W()})})})(YC||={});var XC;(function(e){e.schema=yC({method:K(`wallet_switchEthereumChain`),params:J(ZS([G({chainId:SC()})])),returns:void 0})})(XC||={});var ZC;(function(e){e.schema=yC({method:K(`wallet_deposit`),params:J(ZS([G({address:q(Y()),chainId:q(SC()),token:q(Y()),value:q(W())})])),returns:HS()})})(ZC||={}),WC.parameters,qC.parameters;let QC=bC([AC.schema,jC.schema,PC.schema,MC.schema,NC.schema,IC.schema,FC.schema,LC.schema,RC.schema,UC.schema,KC.schema,ZC.schema,JC.schema,VC.schema,YC.schema,HC.schema,GC.schema,BC.schema,XC.schema]),$C=dd();function ew(e){return e.params?G({method:e.method,params:e.params}):G({method:e.method})}let tw=YS(`method`,QC.map(ew));function nw(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}function rw(e){let t=jl(e);return JSON.parse(t)}function iw(e){return kl(Ti(e),{pad:!1,url:!0})}function aw(){return W().check(ES(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function ow(){return W().check(ES(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function sw(){return W().check(ES(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function cw(){return W().check(ES(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let lw=G({description:q(W()),digest:q(W().check(ES(/^sha-256=/,`Invalid digest format`))),expires:q(ow()),id:W(),intent:W(),method:W(),opaque:q($S(W(),W())),realm:W(),request:$S(W(),BS())});function uw(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=l?Cw({...e,expires:u,...i&&{opaque:i}},{secretKey:l}):e.id;return lw.parse({id:d,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i&&{opaque:i}})}function dw(e,t){let n=fw(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=pw(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return uw({...a,request:rw(r),...i&&{meta:rw(i)}},t)}function fw(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!gw(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function pw(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=mw(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function mw(e,t){if(e[t]===`\"`)return hw(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function hw(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function gw(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function _w(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return dw(n,t)}function vw(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return _w(e.headers,t)}function yw(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return bw(e.headers,t)}function bw(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return xw(n,t)}function xw(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return dw(e.slice(r,a).replace(/,\\s*$/,``),t)})}function Sw(e){return[e.realm,e.method,e.intent,iw(e.request),e.expires??``,e.digest??``,e.opaque?iw(e.opaque):``].join(`|`)}function Cw(e,t){let n=Sw(e);return Dl(Ea(ia(t.secretKey),ia(n),{as:`Bytes`}),{url:!0,pad:!1})}function ww(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=Aw(n)}return t}function Tw(e,t){let n=ww(e),r=Iw(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[Aw(e)]??1,index:t}));return{definition:r,entries:i,header:Dw(i),keys:n}}function Ew(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>Pw(e,t))}function Dw(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${Bw(n)}`}).join(`, `)}function Ow(e,t){return e.map((e,n)=>{let r=jw(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function kw(e,t,n){let r=new Map;for(let e of t){let t=Aw(e);r.has(t)||r.set(t,e)}let i=Ow(e.filter(e=>r.has(Aw(e))),n)[0];if(i)return{challenge:i,method:r.get(Aw(i))}}function Aw(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function jw(e,t){let n;for(let r of t){if(!Mw(e,r))continue;let t={...r,specificity:Nw(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function Mw(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function Nw(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function Pw(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);Vw(r,`method`),Vw(i,`intent`);let a=1;for(let t of Fw(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=Rw(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function Fw(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function Iw(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>Aw(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=Lw(t,`payment preference \"${e}\"`)}return a}function Lw(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return zw(e,t)}function Rw(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return zw(Number(e),t)}function zw(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function Bw(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function Vw(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let Hw=Symbol.for(`mppx.fetch.wrapper`),Uw;function Ww(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??Tw(i),s=Xw(r),c=async(e,t)=>{let r=Yw(e,t?.headers),c=r.has(`Accept-Payment`),l=$w(r,o),u=Jw(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=yw(d),g=kw(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g,y=(a?await a(_,{createCredential:async e=>Qw(_,v,e??f)}):void 0)??await Qw(_,v,f);return Zw(y),s(u.input,{...m,headers:qw(u.headers,y)})};return c[Hw]=s,c}function Gw(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);Uw||=globalThis.fetch,globalThis.fetch=Ww({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(nT()?`same-origin`:`always`),fetch:globalThis.fetch})}function Kw(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function qw(e,t){let n=Kw(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function Jw(e,t,n,r,i,a){let o=!!r&&!i&&eT(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function Yw(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function Xw(e){let t=e;for(;t[Hw];)t=t[Hw];return t}function Zw(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function Qw(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function $w(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:Ew(n),header:n}}catch{return t}}function eT(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=rT(e);return t===`same-origin`?nT()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>tT(n,e))}function tT(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function nT(){return globalThis.location!==void 0}function rT(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,nT()?globalThis.location.href:void 0)}var iT=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},aT=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function oT(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new iT;try{let e=jl(t[1]),n=JSON.parse(e);return{challenge:lw.parse({...n.challenge,...n.challenge.opaque!==void 0&&{opaque:typeof n.challenge.opaque==`string`?rw(n.challenge.opaque):n.challenge.opaque},request:rw(n.challenge.request)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new aT}}function sT(e){let{opaque:t,request:n,...r}=e.challenge,i={challenge:{...r,...t!==void 0&&{opaque:iw(t)},request:iw(n)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${kl(JSON.stringify(i),{pad:!1,url:!0})}`}function cT(e){return e}function lT(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}T(),A(),ki();let uT=`0x01`,dT=`0x02`,fT=`0x03`,pT=`0x04`,mT=`0x7777777777777777777777777777777777777777777777777777777777777777`;function hT(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:hT({...e,signature:t.inner}):Ga(gT(e))}function gT(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return iu({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return gT({payload:t,signature:n.inner})}}function _T(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?k(e,0,-Li(mT)):e;if(Li(t)===65){let e=tl(t);return $c(e),{signature:e,type:`secp256k1`}}let n=k(t,0,1),r=k(t,1),i=Li(r);if(n===uT){if(i!==129)throw new TT({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:zi(k(r,64,96)),y:zi(k(r,96,128))},prehash:Vi(k(r,128,129))!==0,signature:{r:zi(k(r,0,32)),s:zi(k(r,32,64))},type:`p256`}}if(n===dT){if(i<128)throw new TT({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=k(r,0,e),a,o;for(let t=37;t<e;t++){let e=Hi(k(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=k(n,0,t),o=e;break}catch{}}if(!a||!o)throw new TT({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:zi(k(r,e+64,e+96)),y:zi(k(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:zi(k(r,e,e+32)),s:zi(k(r,e+32,e+64))},type:`webAuthn`}}if(n===fT||n===pT)return{userAddress:k(r,0,20),inner:_T(k(r,20)),type:`keychain`,version:n===pT?`v2`:`v1`};throw new TT({reason:`Unknown signature type identifier: ${n}. Expected ${uT} (P256), ${dT} (WebAuthn), ${fT} (Keychain V1), or ${pT} (Keychain V2)`,serialized:t})}function vT(e,t){if(typeof e==`string`)return _T(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=bT(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:Ga(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:Ga(iu({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function yT(e){if(e.type===`secp256k1`)return{signature:al(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:zi(e.pubKeyX),y:zi(e.pubKeyY)},signature:{r:zi(e.r),s:zi(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Li(t),r,i;for(let e=37;e<n;e++){let n=Hi(k(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=k(t,0,e),i=n;break}catch{}}if(!r||!i)throw new TT({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:zi(e.pubKeyX),y:zi(e.pubKeyY)},signature:{r:zi(e.r),s:zi(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:yT(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new wT({envelope:e})}function bT(e){if(typeof e!=`object`||!e)throw new wT({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new wT({envelope:e})}function xT(e,t={}){let n=bT(e);if(n===`secp256k1`)return E(sl(e.signature),t.magic?mT:`0x`);if(n===`p256`){let n=e;return E(uT,O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),O(+!!n.prehash,{size:1}),t.magic?mT:`0x`)}if(n===`webAuthn`){let n=e;return E(dT,E(n.metadata.authenticatorData,Ni(n.metadata.clientDataJSON)),O(n.signature.r,{size:32}),O(n.signature.s,{size:32}),O(n.publicKey.x,{size:32}),O(n.publicKey.y,{size:32}),t.magic?mT:`0x`)}if(n===`keychain`){let n=e;return E(n.version===`v1`?fT:pT,n.userAddress,xT(n.inner),t.magic?mT:`0x`)}throw new wT({envelope:e})}function ST(e){let t=bT(e);if(t===`secp256k1`)return{...cl(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=E(t.metadata.authenticatorData,Ni(t.metadata.clientDataJSON));return{pubKeyX:O(t.publicKey.x,{size:32}),pubKeyY:O(t.publicKey.y,{size:32}),r:O(t.signature.r,{size:32}),s:O(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:ST(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new wT({envelope:e})}function CT(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return Ga(t.publicKey)})();if(!r)return!1;let i=vT(e);if(i.type===`secp256k1`)return r?ou({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return Ka(Ga(i.publicKey),r)?Ou({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return Ka(Ga(i.publicKey),r)?Ad({challenge:ji(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new ET(`Unable to verify signature envelope of type \"${i.type}\".`)}var wT=class extends w{constructor({envelope:e}){super(`Unable to coerce value (\\`${Di(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},TT=class extends w{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},ET=class extends w{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};T(),A();function DT(e){return e.startsWith(`tempo`)?OT(e).address:e}function OT(e){if(!e.startsWith(`tempox`))throw new kT({address:e});let t=e.slice(6);return Ai(t,{strict:!0}),{address:Ua(t)}}var kT=class extends w{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};A();function AT(e,t={}){if(typeof e.chainId==`string`)return jT(e);let n={...e,address:DT(e.address)};return t.signature?{...n,signature:t.signature}:n}function jT(e){let{address:t,chainId:n,nonce:r}=e,i=yT(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function MT(e){return e.map(e=>jT(e))}function NT(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=_T(i)),AT(a)}function PT(e){let t=[];for(let n of e)t.push(NT(n));return t}function FT(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:O(n),nonce:O(r),signature:ST(i)}}function IT(e){return e.map(e=>FT(e))}function LT(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?xT(e.signature):void 0;return[n?O(n):`0x`,t,r?O(r):`0x`,...i?[i]:[]]}function RT(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(LT(n));return t}A();function zT(e,t={}){if(`keyId`in e)return BT(e);let n=e,r={...n,address:DT(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:DT(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:DT(e.address),selector:ZT(e.selector),...e.recipients?{recipients:e.recipients.map(e=>DT(e))}:{}}))}:{}};return t.signature?{...r,signature:vT(t.signature)}:r}function BT(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=yT(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:XT(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:zi(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&YT(e.period)>0?{period:YT(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function VT(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:YT(o)||void 0,type:l,chainId:r===`0x`?0n:zi(r),...o===void 0?{}:{expiry:YT(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:JT(n),...r===void 0?{}:{period:YT(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=_T(n)),zT(u)}function HT(e){return UT(e)}function UT(e){let[t]=GT(e);return Ta(ns(t))}function WT(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:ZT(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:O(r),expiry:typeof i==`number`?O(i):null,keyId:DT(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:O(t),...n?{period:qT(n)}:{}})),signature:ST(s),...c?{allowedCalls:c}:{}}}function GT(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?xT(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,KT(e.limit)];return e.period&&e.period>0&&t.push(qT(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([ZT(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[KT(n),s,t,i!=null&&i!==0||c||l?qT(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function KT(e){return e===0n?`0x`:O(e)}function qT(e){return e===0?`0x`:O(e)}function JT(e){return e===`0x`?0n:BigInt(e)}function YT(e){return e===`0x`?0:Vi(e)}function XT(e){return typeof e==`string`?e:Array.isArray(e)?D(new Uint8Array(e)):e}function ZT(e){if(e)return e.startsWith(`0x`)?e:to(e)}A();let QT=`0x20c0`;function $T(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):eE(e)}function eE(e){let t=DT(e);if(!t.toLowerCase().startsWith(QT))throw Error(`invalid tip20 address.`);return zi(k(t,6))}function Z(e){if(typeof e==`string`){let t=DT(e);return Ha(t),t}return E(QT,O(e,{size:18}))}A();let tE={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function nE(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Ta(Ni(tE[e]??e))}let rE={...Ml,tempo:`0x76`},iE={...Nl,\"0x76\":`tempo`};function aE(e,t={}){if(!e)return null;let n=Pl(e);return n.type=iE[e.type],e.aaAuthorizationList&&(n.authorizationList=MT(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=yT(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=BT(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=al(e.feePayerSignature),n.feePayerSignature.v=dl(n.feePayerSignature.yParity)),n}A();function oE(e){let t=fd({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=IT(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?DT(e.to):e.to,value:e.value?O(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?DT(e.to):void 0,value:e.value?O(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=Z(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=WT(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=O(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=O(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return Ii(6);if(typeof e.nonceKey==`bigint`)return O(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=rE.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}T(),A();let sE=`tempo`;function cE(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new hE;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new gE({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&Ha(e.to,{strict:!1});if(n<=0)throw new _d({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new gd({feeCap:r});if(i&&r&&i>r)throw new yd({maxFeePerGas:r,maxPriorityFeePerGas:i})}function lE(e){let t=Xo(k(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new vd({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:sE});let y={chainId:Number(n),type:sE};Ui(a)&&a!==`0x`&&(y.gas=BigInt(a)),Ui(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),Ui(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),Ui(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),Ui(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),Ui(u)&&u!==`0x`&&(y.validBefore=Number(u)),Ui(d)&&d!==`0x`&&(y.validAfter=Number(d)),Ui(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=qo(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=PT(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||qa(p)?(y.feePayerSignature=null,qa(p)&&(y.from=p)):y.feePayerSignature=ol(p)),_&&(y.keyAuthorization=VT(_));let b=v?_T(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=hT({payload:fE(uE(y)),signature:b,root:!0})}catch{}return cE(y),y}function uE(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?lE(e):e;return i.from&&=DT(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:DT(e.to)}:{}})),cE(i),{...i,...r?{signature:vT(r)}:{},...n?{feePayerSignature:rl(n)}:{},type:`tempo`}}function dE(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;cE(e);let h=Jo(n),g=t.signature||e.signature,_=RT(r),v=i.map(e=>[e.to?DT(e.to):`0x`,e.value?O(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=vT(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return Ga(t.publicKey);if(t.type===`secp256k1`)return ru({payload:fE(uE(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?ll(n):`0x`})(),x=[O(a),f?O(f):`0x`,d?O(d):`0x`,s?O(s):`0x`,v,h,u?O(u):`0x`,l?O(l):`0x`,typeof p==`number`?O(p):`0x`,typeof m==`number`?O(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?Z(o):`0x`,b,_,...c?[GT(c)]:[],...g?[xT(vT(g))]:[]];return E(t.format===`feePayer`?`0x78`:`0x76`,ns(x))}function fE(e,t={}){let n=pE(e,{presign:!0});return t.from?Ta(E(`0x04`,n,DT(t.from))):n}function pE(e,t={}){return Ta(dE({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function mE(e,t){let n=DT(t.sender);return Ta(dE({...e,signature:void 0},{sender:n,format:`feePayer`}))}var hE=class extends w{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},gE=class extends w{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};A();function _E(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:v_(e)}function vE(e){try{return _E(e)===`tempo`}catch{return!1}}function yE(e){let t=k(e,0,1);return t===`0x76`||t===`0x78`?xE(e):gb(e)}async function bE(e,t){if(!vE(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return Sy(e,{r:O(n,{size:32}),s:O(r,{size:32}),yParity:i})}return Sy(e,t)}if(_E(e)===`tempo`)return SE(e,t);throw Error(`Unsupported transaction type`)}function xE(e){let{feePayerSignature:t,nonce:n,...r}=lE(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:O(t.r,{size:32}),s:O(t.s,{size:32}),yParity:t.yParity}}}async function SE(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return vT({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=uE(c,{signature:n}),r=mE(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return ru({payload:fE(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return dE(t,{feePayerSignature:rl(await e.feePayer.sign({hash:r}))})}return i===!0?n?dE(c,{format:`feePayer`,sender:e.from,signature:n}):dE(c,{feePayerSignature:null}):dE({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}A(),$p(),Ig();function CE(e){if(!vE(e))return Xg(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=aE(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:O(t.r,{size:32}),s:O(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:rE[i.type],type:i.type}}function wE(e){return iy(e)}function TE(e,t){let n=e,r=n.account?Qp(n.account):void 0;if(!vE(n))return Mg(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=oE({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?Qp(n.feePayer):n.feePayer}:{}}}let EE=new Map;async function DE(e){EE.set(e,(EE.get(e)??0)+1),await Promise.resolve();let t=(EE.get(e)??0)>1;return queueMicrotask(()=>{let t=EE.get(e)??0;t<=1?EE.delete(e):EE.set(e,t-1)}),t}Hg(),Ig();let OE={blockTime:1e3,extendSchema:Iy(),formatters:{transaction:Zg({exclude:[`aaAuthorizationList`],format:CE}),transactionReceipt:ay({format:wE}),transactionRequest:Fg({format:TE})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await DE(e):!1})()?(n.nonceKey=Vg,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>bE(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=_T(i);if(a.type!==`keychain`){let i=await hy(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return CT(a,{address:n,payload:r})}}return await M(e,Pb,`verifyHash`)({...t,chain:null})}},kE=Fy({...OE,id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),AE=Fy({...OE,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),jE=Fy({...OE,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),Q=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],ME=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]}],NE=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];A(),$p(),Xf();function PE(e){let{access:t}=e;return t?HE(e):VE(e)}function FE(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Eu({privateKey:e});return PE({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Od({...t,challenge:n,rpId:r,origin:i});return xT({metadata:a,signature:Du({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function IE(e,t={}){let{access:n,internal_version:r}=t,i=Eu({privateKey:e});return PE({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return xT({signature:Du({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function LE(e,t={}){let{access:n,internal_version:r}=t;return PE({access:n,internal_version:r,keyType:`secp256k1`,publicKey:nu({privateKey:e}),async sign(t){let{hash:n}=t;return sl(au({payload:n,privateKey:e}))}})}function RE(e,t={}){let{id:n}=e,r=Na(e.publicKey);return PE({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await kd({...t,challenge:e,credentialId:n});return xT({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function zE(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return PE({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return xT({signature:await Md({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function BE(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??Ga(e.publicKey),o=Fa(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Yf(E(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?xT(vT({userAddress:n,inner:vT(o),type:`keychain`,version:i})):t===`secp256k1`?o:E(o,mT)}return{address:Ua(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=vT(await s({hash:lg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:O(a,{size:32}),s:O(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Jy(t)})},async signTransaction(e,t){let{serializer:n=bE}=t??{};return await n(e,vT(await s({hash:Yf(await n(e))})))},async signTypedData(e){return await s({hash:nb(e)})},publicKey:o,source:r,type:`local`}}function VE(e){let t=BE(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return zT({address:o,chainId:r,expiry:i,limits:a,signature:vT(await t.sign({hash:HT({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function HE(e){let{access:t}=e,{address:n}=Qp(t);return{...BE({...e,parentAddress:n}),accessKeyAddress:Ga(e.publicKey),source:`accessKey`}}let UE=`0xdec0000000000000000000000000000000000000`;function $(e){return{...e,data:rm(e),to:e.address}}A(),$p();async function WE(e,t){return WE.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return $({address:UE,abi:ME,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(WE||={});async function GE(e,t){return GE.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:UE,abi:ME,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=N_({abi:ME,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(GE||={});async function KE(e,t){return KE.inner(B,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return $({address:UE,abi:ME,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=N_({abi:ME,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(KE||={});async function qE(e,t){return qE.inner(B,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return $({address:UE,abi:ME,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=N_({abi:ME,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(qE||={});async function JE(e,t){let{account:n=e.account,token:r,...i}=t,a=n?Qp(n).address:void 0;if(!a)throw Error(`account is required.`);return Hv(e,{...i,...JE.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:UE,abi:ME,args:[t,n],functionName:`balanceOf`})}e.call=t})(JE||={});async function YE(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Hv(e,{...a,...YE.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return $({address:UE,abi:ME,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(YE||={});async function XE(e,t){let{orderId:n,...r}=t;return Hv(e,{...r,...XE.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return $({address:UE,abi:ME,args:[t],functionName:`getOrder`})}e.call=t})(XE||={});async function ZE(e,t){let{base:n,quote:r,...i}=t;return Hv(e,{...i,...ZE.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return $({address:UE,abi:ME,args:[iD(t,n)],functionName:`books`})}e.call=t})(ZE||={});async function QE(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Hv(e,{...a,...QE.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return $({address:UE,abi:ME,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(QE||={});async function $E(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Hv(e,{...a,...$E.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return $({address:UE,abi:ME,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})($E||={});async function eD(e,t){return eD.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return $({address:UE,abi:ME,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=N_({abi:ME,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(eD||={});async function tD(e,t){return tD.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return $({address:UE,abi:ME,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=N_({abi:ME,logs:e,eventName:`OrderPlaced`,strict:!0}).find(e=>e.args.isFlipOrder);if(!t)throw Error(\"`OrderPlaced` event (flip order) not found.\");return t}e.extractEvent=r})(tD||={});async function nD(e,t){return nD.inner(B,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return $({address:UE,abi:ME,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(nD||={});async function rD(e,t){return rD.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return $({address:UE,abi:ME,functionName:`withdraw`,args:[t,n]})}e.call=n})(rD||={});function iD(e,t){return Ta(E(e,t))}A(),$p(),im();async function aD(e,t){let{token:n,...r}=t;return aD.inner(B,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(aD||={});async function oD(e,t){return oD.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(oD||={});async function sD(e,t){return sD.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Pi(n,32)]}:{functionName:`burn`,args:[t]};return $({address:Z(r),abi:Q,...i})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(sD||={});async function cD(e,t){return cD.inner(B,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return $({address:Z(t),abi:Q,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(cD||={});async function lD(e,t){return lD.inner(B,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?Qp(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=Ii(32)}=e;return $({address:`0x20fc000000000000000000000000000000000000`,abi:NE,args:[t,n,r,Z(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=N_({abi:NE,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(lD||={});async function uD(e,t){let{account:n=e.account}=t,r=n?Qp(n).address:void 0;if(!r)throw Error(`account is required.`);return Hv(e,{...t,...uD.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`allowance`,args:[t,n]})}e.call=t})(uD||={});async function dD(e,t){let{account:n=e.account,...r}=t,i=n?Qp(n).address:void 0;if(!i)throw Error(`account is required.`);return Hv(e,{...r,...dD.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`balanceOf`,args:[t]})}e.call=t})(dD||={});async function fD(e,t){let{token:n,...r}=t,i=Z(n),a=Q;return $T(n)===eE(`0x20c0000000000000000000000000000000000000`)?Ob(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):Ob(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function pD(e,t){return Hv(e,{...t,...pD.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return $({address:Z(n),abi:Q,functionName:`getRoleAdmin`,args:[nE(t)]})}e.call=t})(pD||={});async function mD(e,t){let{account:n=e.account}=t,r=n?Qp(n).address:void 0;if(!r)throw Error(`account is required.`);return Hv(e,{...t,...mD.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return $({address:Z(r),abi:Q,functionName:`hasRole`,args:[t,nE(n)]})}e.call=t})(mD||={});async function hD(e,t){return hD.inner(ey,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:rm(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=nE(r);return $({address:Z(t),abi:Q,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=N_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(hD||={});async function gD(e,t){return gD.inner(B,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Pi(r,32)]}:{functionName:`mint`,args:[t,n]};return $({address:Z(i),abi:Q,...a})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(gD||={});async function _D(e,t){return _D.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(_D||={});async function vD(e,t){return vD.inner(ey,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:rm(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=nE(n);return $({address:Z(t),abi:Q,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=N_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(vD||={});async function yD(e,t){return yD.inner(ey,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:rm(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=nE(r);return $({address:Z(t),abi:Q,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=N_({abi:Q,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(yD||={});async function bD(e,t){return bD.inner(B,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return $({address:Z(t),abi:Q,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(bD||={});async function xD(e,t){return xD.inner(B,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=nE(n),a=nE(r);return $({address:Z(t),abi:Q,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(xD||={});async function SD(e,t){return SD.inner(B,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Pi(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Pi(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return $({address:Z(i),abi:Q,...o})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(SD||={});async function CD(e,t){return CD.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(CD||={});async function wD(e,t){return wD.inner(B,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return $({address:Z(t),abi:Q,functionName:`setNextQuoteToken`,args:[Z(n)]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(wD||={});async function TD(e,t){return TD.inner(B,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return $({address:Z(t),abi:Q,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=N_({abi:Q,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(TD||={});function ED(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return Hb({key:ED.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(yE(o).feePayerSignature===null){if(r===`sign-and-broadcast`)return a.request({method:e,params:t},n);{let t=await a.request({method:`eth_signRawTransaction`,params:[o]},n);return i.request({method:e,params:[t]},n)}}}return await i.request({method:e,params:t},n)},type:ED.type})}}function DD(e={}){let{account:t}=e;return(e,{account:n}={})=>{let r=n??t;if(!r){if(!e.account)throw Error(\"No `account` provided. Pass `account` to parameters or context.\");return e.account}return Qp(r)}}function OD(e){let{chain:t,feePayerUrl:n,getClient:r,rpcUrl:i}=e;return r?!t?.serializers&&!n?r:async e=>{let i=await r(e);if(n&&i.transport.key!==`feePayer`){let e=i.transport.url;if(e){let t=my({chain:i.chain,transport:ED(Gb(e),Gb(n))});Object.assign(i,{transport:t.transport,request:t.request})}}return!t?.serializers||i.chain?.serializers?.transaction?i:Object.assign({},i,{chain:{...t,...i.chain,formatters:i.chain?.formatters??t.formatters,prepareTransactionRequest:i.chain?.prepareTransactionRequest??t.prepareTransactionRequest,serializers:i.chain?.serializers?.transaction?i.chain.serializers:t.serializers}})}:({chainId:e})=>{if(!i)throw Error(\"No `rpcUrl` provided.\");let r=e||Number(Object.keys(i)[0]),a=i[r];if(!a)throw Error(`No \\`rpcUrl\\` configured for \\`chainId\\` (${r}).`);let o=n?ED(Gb(a),Gb(n)):Gb(a);return my({chain:{...t,id:r},transport:o})}}let kD=k(Ta(ia(`mpp`),{as:`Hex`}),0,4);function AD(e){return Bi(k(Ta(ia(e),{as:`Hex`}),0,10))}function jD(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(Bi(kD),0),i[4]=1,i.set(AD(t),5),n&&i.set(AD(n),15),i.set(MD(r),25),D(i)}function MD(e){return Bi(k(Ta(ia(e),{as:`Hex`}),0,7))}function ND(e,t){return e.toLowerCase()===t.toLowerCase()}let PD={mainnet:4217,testnet:42431},FD={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};PD.mainnet,FD.usdc,PD.testnet,FD.pathUsd;let ID={[PD.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[PD.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},LD={[PD.mainnet]:`https://rpc.tempo.xyz`,[PD.testnet]:`https://rpc.moderato.tempo.xyz`},RD=[FD.pathUsd,FD.usdc];async function zD(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!ND(e,i)),c=await Promise.allSettled([Hv(e,dD.call({account:n,token:i})),...s.map(t=>Hv(e,dD.call({account:n,token:t})))]),l=c[0];if(!(l.status===`fulfilled`&&l.value>=r)){for(let t=0;t<s.length;t++){let n=c[t+1];if(n.status!==`fulfilled`)continue;let a=n.value;if(a<=0n)continue;let l=s[t];try{let t=await YE(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[aD.call({token:l,spender:UE,amount:e}),WE.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new VD({currency:i})}}function BD(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>ND(e,t)))]:t,slippage:e.slippage??1}:!1}var VD=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function HD(e){let t=BigInt(e.amount),n=e.methodDetails?.splits??[],r=n.reduce((e,t)=>e+BigInt(t.amount),0n);if(r>=t)throw Error(`Invalid charge request: split total must be less than total amount.`);let i=t-r;if(i<=0n)throw Error(`Invalid charge request: primary transfer amount must be positive.`);return[{amount:i.toString(),memo:e.methodDetails?.memo,recipient:e.recipient},...n.map(e=>({amount:e.amount,memo:e.memo,recipient:e.recipient}))]}let UD={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function WD(e){return{name:`MPP`,version:`2`,chainId:e}}function GD(e,t){return{challengeId:e,realm:t}}function KD(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let qD=[`push`,`pull`],JD=G({amount:aw(),memo:q(sw()),recipient:uC(W(),iC(e=>e))}),YD=cT({name:`tempo`,intent:`charge`,schema:{credential:{payload:YS(`type`,[G({hash:sw(),type:K(`hash`)}),G({signature:cw(),type:K(`transaction`)}),G({signature:cw(),type:K(`proof`)})])},request:uC(G({amount:aw(),chainId:q(MS()),currency:W(),decimals:MS(),description:q(W()),externalId:q(W()),feePayer:q(uC(qS([PS(),_C()]),iC(e=>typeof e==`object`?!0:e))),memo:q(sw()),recipient:q(W()),splits:q(WS(JD).check(TS(1),wS(10))),supportedModes:q(WS(tC(qD)).check(TS(1)))}).check(vC(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=Db(e,t),i=n.reduce((e,n)=>e+Db(n.amount,t),0n);return n.every(e=>Db(e.amount,t)>0n)&&i<r},`Invalid splits`)),iC(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:Db(e,n).toString(),...t!==void 0||r!==void 0||i!==void 0||a!==void 0||o!==void 0?{methodDetails:{...t!==void 0&&{chainId:t},...r!==void 0&&{feePayer:r},...i!==void 0&&{memo:i},...a!==void 0&&{splits:a.map(e=>({...e,amount:Db(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),XD=cT({name:`tempo`,intent:`session`,schema:{credential:{payload:YS(`action`,[G({action:K(`open`),authorizedSigner:q(W()),channelId:sw(),cumulativeAmount:aw(),signature:cw(),transaction:cw(),type:K(`transaction`)}),G({action:K(`topUp`),additionalDeposit:aw(),channelId:sw(),transaction:cw(),type:K(`transaction`)}),G({action:K(`voucher`),channelId:sw(),cumulativeAmount:aw(),signature:cw()}),G({action:K(`close`),channelId:sw(),cumulativeAmount:aw(),signature:cw()})])},request:uC(G({amount:aw(),chainId:q(MS()),channelId:q(sw()),currency:W(),decimals:MS(),escrowContract:q(W()),feePayer:q(uC(qS([PS(),_C()]),iC(e=>typeof e==`object`?!0:e))),minVoucherDelta:q(aw()),recipient:q(W()),suggestedDeposit:q(aw()),unitType:W()}).check(vC(({amount:e,decimals:t})=>Db(e,t)>0n,`Session amount must be greater than 0`)),iC(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:Db(e,r).toString(),...s?{suggestedDeposit:Db(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:Db(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function ZD(e={}){let{clientId:t}=e,n=OD({chain:kE,getClient:e.getClient,rpcUrl:LD}),r=DD({account:e.account});return lT(YD,{context:G({account:q(_C()),autoSwap:q(_C()),mode:q(tC(qD))}),async createCredential({challenge:i,context:a}){let o=i.request.methodDetails?.chainId,s=await n({chainId:o}),c=r(s,a),{request:l}=i,{amount:u,methodDetails:d}=l;if(BigInt(u)===0n)return sT({challenge:i,payload:{signature:await Vb(s,{account:c,domain:WD(o),types:UD,primaryType:`Proof`,message:GD(i.id,i.realm)}),type:`proof`},source:KD({address:c.address,chainId:o})});let f=l.currency;if(e.expectedRecipients){let t=new Set(e.expectedRecipients.map(e=>e.toLowerCase())),n=d?.splits;if(n){for(let e of n)if(!t.has(e.recipient.toLowerCase()))throw Error(`Unexpected split recipient: ${e.recipient}`)}}let p=d?.supportedModes??[`pull`,`push`],m=(()=>{let t=a?.mode??e.mode;if(t){if(!p.includes(t))throw Error(`Challenge does not support ${t} mode.`);return t}let n=c.type===`json-rpc`?`push`:`pull`;return p.includes(n)?n:p[0]})(),h=d?.memo?d.memo:jD({challengeId:i.id,clientId:t,serverId:i.realm}),g=HD({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>SD.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=BD(a?.autoSwap??e.autoSwap,RD),v=[...(_?await zD(s,{account:c.address,amountOut:BigInt(u),tokenOut:f,tokenIn:_.tokenIn,slippage:_.slippage}):void 0)??[],...g],y=(()=>{let e=Math.floor(Date.now()/1e3)+25;if(!i.expires)return e;let t=Math.floor(new Date(i.expires).getTime()/1e3);return Math.min(e,t)})();if(m===`push`){let{receipts:e}=await zb(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return sT({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await T_(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,sT({challenge:i,payload:{signature:await Bb(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function QD(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let $D={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function eO(e,t,n,r,i,a){let o=await Vb(e,{account:t,domain:QD(r,i),types:$D,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=vT(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return sl(e.inner.signature)}catch{}return o}function tO(e){return Ta(Lo(zo([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let nO=[{type:`function`,name:`CLOSE_GRACE_PERIOD`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`VOUCHER_TYPEHASH`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`channels`,inputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`close`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`computeChannelId`,inputs:[{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`domainSeparator`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`eip712Domain`,inputs:[],outputs:[{name:`fields`,type:`bytes1`,internalType:`bytes1`},{name:`name`,type:`string`,internalType:`string`},{name:`version`,type:`string`,internalType:`string`},{name:`chainId`,type:`uint256`,internalType:`uint256`},{name:`verifyingContract`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`extensions`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`view`},{type:`function`,name:`getChannel`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`tuple`,internalType:`struct TempoStreamChannel.Channel`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getChannelsBatch`,inputs:[{name:`channelIds`,type:`bytes32[]`,internalType:`bytes32[]`}],outputs:[{name:`channelStates`,type:`tuple[]`,internalType:`struct TempoStreamChannel.Channel[]`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getVoucherDigest`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`open`,inputs:[{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`requestClose`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settle`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`topUp`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`additionalDeposit`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ChannelClosed`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`settledToPayee`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`refundedToPayer`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`ChannelExpired`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`ChannelOpened`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`token`,type:`address`,indexed:!1,internalType:`address`},{name:`authorizedSigner`,type:`address`,indexed:!1,internalType:`address`},{name:`salt`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`deposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`CloseRequestCancelled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`CloseRequested`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`closeGraceEnd`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`cumulativeAmount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`deltaPaid`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newSettled`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TopUp`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`additionalDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`error`,name:`AmountExceedsDeposit`,inputs:[]},{type:`error`,name:`AmountNotIncreasing`,inputs:[]},{type:`error`,name:`ChannelAlreadyExists`,inputs:[]},{type:`error`,name:`ChannelFinalized`,inputs:[]},{type:`error`,name:`ChannelNotFound`,inputs:[]},{type:`error`,name:`CloseNotReady`,inputs:[]},{type:`error`,name:`DepositOverflow`,inputs:[]},{type:`error`,name:`InvalidPayee`,inputs:[]},{type:`error`,name:`InvalidSignature`,inputs:[]},{type:`error`,name:`NotPayee`,inputs:[]},{type:`error`,name:`NotPayer`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]}];async function rO(e,t,n){return Hv(e,{address:t,abi:nO,functionName:`getChannel`,args:[n]})}Jp({abi:nO,name:`open`}),Jp({abi:nO,name:`topUp`});function iO(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??ID[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function aO(e,t,n,r){return sT({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function oO(e,t,n,r,i,a,o){let s=await eO(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function sO(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=Ii(32),f=tO({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=rm({abi:Q,functionName:`approve`,args:[r,o]}),m=rm({abi:nO,functionName:`open`,args:[i,a,o,d,u]}),h=await T_(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await Bb(e,h),_=await eO(e,t,{channelId:f,cumulativeAmount:s},r,c,n.authorizedSigner);return{entry:{channelId:f,salt:d,cumulativeAmount:s,escrowContract:r,chainId:c,opened:!0},payload:{action:`open`,type:`transaction`,channelId:f,transaction:g,authorizedSigner:u,cumulativeAmount:s.toString(),signature:_}}}async function cO(e,t,n,r){try{let i=await rO(e,t,n);if(i.deposit>0n&&!i.finalized)return{channelId:n,salt:`0x`,cumulativeAmount:i.settled,escrowContract:t,chainId:r,opened:!0}}catch{}}let lO=G({account:q(_C()),action:q(tC([`open`,`topUp`,`voucher`,`close`])),channelId:q(W()),cumulativeAmount:q(aw()),cumulativeAmountRaw:q(W()),transaction:q(W()),authorizedSigner:q(W()),additionalDeposit:q(aw()),additionalDepositRaw:q(W()),depositRaw:q(W())});function uO(e={}){let{decimals:t=6}=e,n=OD({chain:kE,getClient:e.getClient,rpcUrl:LD}),r=DD({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:Db(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return iO(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return Db(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),te=i(f),ne=u(v,y,_),C=s.get(ne);if(!C){let e=p?.channelId??m?.channelId;if(e){let n=await cO(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?Db(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(ne,n),c.set(n.channelId,ne),o.set(n.channelId,_),C=n,l(C)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let re;if(C?.opened)C.cumulativeAmount+=b,re=await oO(g,f,C.channelId,C.cumulativeAmount,_,h,te),l(C);else{let e=await sO(g,f,{authorizedSigner:te,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(ne,e.entry),c.set(e.entry.channelId,ne),o.set(e.entry.channelId,_),re=e.payload,l(e.entry)}return aO(r,re,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?Db(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?Db(a.additionalDeposit,t):void 0,x=d(e,u,v);o.set(v,x);let S;switch(p){case`open`:{if(!h)throw Error(`transaction required for open action`);if(y===void 0)throw Error(`cumulativeAmount required for open action`);let e=await eO(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`open`,type:`transaction`,channelId:v,transaction:h,authorizedSigner:_??r.address,cumulativeAmount:y.toString(),signature:e};break}case`topUp`:if(!h)throw Error(`transaction required for topUp action`);if(b===void 0)throw Error(`additionalDeposit required for topUp action`);S={action:`topUp`,type:`transaction`,channelId:v,transaction:h,additionalDeposit:b.toString()};break;case`voucher`:{if(y===void 0)throw Error(`cumulativeAmount required for voucher action`);S=await oO(f,r,v,y,x,u,_);let e=c.get(v);if(e){let t=s.get(e);t&&(t.cumulativeAmount=t.cumulativeAmount>y?t.cumulativeAmount:y,l(t))}break}case`close`:{if(y===void 0)throw Error(`cumulativeAmount required for close action`);let e=await eO(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`close`,channelId:v,cumulativeAmount:y.toString(),signature:e};let t=c.get(v);if(t){let e=s.get(t);e&&(e.opened=!1,e.cumulativeAmount=e.cumulativeAmount>y?e.cumulativeAmount:y,l(e))}break}}return aO(e,S,u,r)}return lT(XD,{context:lO,async createCredential({challenge:t,context:i}){let o=r(await n({chainId:t.request.methodDetails?.chainId??0}),i);if(!i?.action&&(e.deposit!==void 0||a!==void 0))return f(t,o,i);if(i?.action)return p(t,o,i);throw Error(\"No `action` in context and no `deposit` or `maxDeposit` configured. Either provide context with action/channelId/cumulativeAmount, or configure `deposit`/`maxDeposit` for auto-management.\")}})}function dO(e){let t=jl(e);return JSON.parse(t)}function fO(e){let t=`message`,n=[];for(let r of e.split(`\n`))r.startsWith(`event: `)?t=r.slice(7).trim():r.startsWith(`data: `)?n.push(r.slice(6)):r===`data:`&&n.push(``);if(n.length===0)return null;let r=n.join(`\n`);switch(t){case`message`:return{type:`message`,data:r};case`payment-need-voucher`:return{type:`payment-need-voucher`,data:JSON.parse(r)};case`payment-receipt`:return{type:`payment-receipt`,data:JSON.parse(r)};default:return{type:`message`,data:r}}}function pO(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function mO(){return JSON.stringify({mpp:`payment-close-request`})}function hO(e){try{let t=JSON.parse(e);return t.mpp===`authorization`&&typeof t.authorization==`string`?{mpp:`authorization`,authorization:t.authorization}:t.mpp===`message`&&typeof t.data==`string`?{mpp:`message`,data:t.data}:t.mpp===`payment-close-request`?{mpp:`payment-close-request`}:t.mpp===`payment-close-ready`&&gO(t.data)?{mpp:`payment-close-ready`,data:t.data}:t.mpp===`payment-error`&&typeof t.status==`number`&&typeof t.message==`string`?{mpp:`payment-error`,status:t.status,message:t.message}:t.mpp===`payment-need-voucher`&&_O(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&gO(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function gO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function _O(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let vO={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function yO(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:Db(e.maxDeposit,e.decimals??6),i=null,a=null,o=null,s=0n,c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=0n,g=0n,_=uO({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=Ww({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);ie(t),ie(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function te(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function ne(e){if(!m)return;let t=m;m=null,t.reject(e)}function C(e){if(!f)return;let t=f;f=null,t.reject(e)}function re(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function ie(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ae(e){let t=e.headers.get(`Payment-Receipt`),n=t?dO(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function oe(e,t){return o=e,ae(await v(e,t))}function se(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=vO.CLOSED,r=null}if(e===`open`&&(i=vO.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available \u2014 call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:oe,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await oe(e,{...s,headers:{...Kw(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=fO(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);ie(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let re=yw(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!re)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=re;let ae=await _.createCredential({challenge:re,context:{}});d=null,c=re,h=0n,g=BigInt(re.request.amount);let oe=oT(ae);l=oe.payload.channelId;let ce=new n(v,f);u=ce;let le=se(ce),ue=e=>{ne(Error(e)),C(Error(e)),(ce.readyState===vO.CONNECTING||ce.readyState===vO.OPEN)&&ce.close(3008,e)},de=e=>e.challengeId===re.id&&e.channelId===l,fe=new Promise((e,t)=>{let n=()=>{ce.removeEventListener(`error`,r),le.emit(`open`,{type:`open`}),e()},r=()=>{ce.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};ce.addEventListener(`open`,n,{once:!0}),ce.addEventListener(`error`,r,{once:!0})});return ce.addEventListener(`close`,e=>{u===ce&&(u=null),c===re&&(c=null),l===oe.payload.channelId&&(l=null),p=null,ne(Error(`WebSocket closed before the payment flow completed.`)),C(Error(`WebSocket closed before the payment flow completed.`)),le.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),ce.addEventListener(`error`,()=>{le.emit(`error`,{type:`error`})}),ce.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=hO(t);if(!n){le.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,le.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!de(n.data)){ue(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){ue(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),te(n.data),le.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:ne(Error(n.message)),C(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){ue(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{ie(e)}catch(e){ue(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:re,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});ce.send(pO(r));break}case`payment-receipt`:if(!de(n.data)){ue(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){ue(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{ne(Error(`WebSocket payment flow aborted.`)),C(Error(`WebSocket payment flow aborted.`)),ce.close()},{once:!0}),await fe,ce.send(pO(ae)),await x(),le.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===vO.OPEN){let t=d??await(async()=>(u.send(mO()),S()))(),r=BigInt(t.spent);if(r>(i.cumulativeAmount>s?i.cumulativeAmount:s))throw Error(`close-ready spent exceeds local voucher state`);let a=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:r.toString()}}),o=r.toString();p=o;try{let t=x(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(pO(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(re(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return ie(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?dO(m):void 0}}}function bO(e={}){return[ZD(e),uO(e)]}(function(e){e.charge=ZD,e.session=yO})(bO||={});function xO(e){return e}function SO(){return xO({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return yw(e)},getChallenge(e){return vw(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function CO(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=SO()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=Tw(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=Ww(l);return n&&Gw(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=kw(r,o,wO(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a,u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function wO(e,t){return t?typeof t==`string`?Ew(t):t:e}function TO(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress,{accessKeys:i}=n.getState();return i.find(e=>e.address?.toLowerCase()===r.toLowerCase())?.keyAuthorization}async function EO(e={}){let{account:t}=e,n=await jd();return{accessKey:zE(n,t?{access:t}:void 0),keyPair:n}}function DO(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.filter(e=>e.address?.toLowerCase()!==r?.toLowerCase())}))}function OO(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.map(e=>e.address.toLowerCase()===r.toLowerCase()?{...e,keyAuthorization:void 0}:e)}))}function kO(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o=i?{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,privateKey:i}:r?{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,keyPair:r}:{address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits};a.setState(e=>({accessKeys:[o,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function AO(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new qu({message:`Account \"${n}\" not found.`}):new Yu({message:`No active account.`});if(t){let e=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(e)if(e.expiry&&e.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(t=>t!==e)});else return jO(e)}return MO(l,{signable:r})}function jO(e){if(`keyPair`in e&&e.keyPair)return zE(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return LE(e.privateKey,{access:e.access});case`p256`:return IE(e.privateKey,{access:e.access})}throw new qu({message:`External access key cannot be hydrated for signing.`})}function MO(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new qu({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return LE(e.privateKey);case`p256`:return IE(e.privateKey);case`webCrypto`:return zE(e.keyPair);case`webAuthn`:return RE(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return FE(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new qu({message:`Unknown key type.`})}}function NO(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function PO(e={}){let{dialog:t=b()?re():C(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),NO({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,o=ld();function s(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new Ku);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new Ku({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let c=od({async request(e){let t=o.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),s(t.id)}},{schema:$C});async function l(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await EO();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function u(e,t,n){kO({address:e,keyAuthorization:BT(t),keyPair:n,store:i})}async function d(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=TO(n,{store:i});try{let e=await t(n,r??void 0);return OO(n,{store:i}),e}catch{DO(n,{store:i});return}}let f=t({host:n,store:i}),p=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);f?.syncRequests(t),t.length===0&&f?.close()});return{cleanup(){p(),f?.destroy()},actions:{async createAccount(e,t){let n=await l(e.authorizeAccessKey),{accounts:r}=await c.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Tx(KC.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&u(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await l(e?.authorizeAccessKey),{accounts:r}=await c.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Tx(KC.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&u(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await c.request(t)},async signTransaction(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=await T_(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await c.request({...t,params:[Tx(kC,e)]}):n},async signTypedData(e,t){return await c.request(t)},async sendTransaction(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await T_(o,{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await c.request({...t,params:[Tx(kC,e)]}):n},async sendTransactionSync(e,t){let n=await d(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await T_(o,{account:t,...a,...i?{feePayer:!0}:{},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await c.request({...t,params:[Tx(kC,e)]}):n},async authorizeAccessKey(t,n){let r=await l(t),i=await c.request({...n,params:[Tx(KC.authorizeAccessKey,r.request)]});return r&&u(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await c.request(t)},async deposit(e,t){return await c.request(t)},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let FO=new Map;function IO(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1)return typeof r==`string`?r:r?.url})(),s=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,c=e??a.getState().chainId,l=`${c}:${i?`p`:``}:${r===!1?`no-fp`:o??``}:${s}`,u=FO.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Gb(),r=i?LO(i,t):t;u=my({chain:e,transport:o?RO(r,o,s):r,pollingInterval:1e3}),FO.set(l,u)}return u}function LO(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function RO(e,t,n){return r=>{let i=e(r),a=Gb(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=yE(t);if(`feePayerSignature`in n&&n.feePayerSignature===null){let n=await a.request({method:`eth_signRawTransaction`,params:[t]});return await i.request({method:e,params:[n]})}}}return await i.request({method:e,params:t})}}}}function zO(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(zO.cache.get(n))return zO.cache.get(n);let r=e().finally(()=>zO.cache.delete(n));return zO.cache.set(n,r),r}zO.cache=new Map;function BO(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function VO(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=BO(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let HO;function UO(){return HO||=VO(`keyval-store`,`keyval`),HO}function WO(e,t=UO()){return t(`readonly`,t=>BO(t.get(e)))}function GO(e,t,n=UO()){return n(`readwrite`,n=>(n.put(t,e),BO(n.transaction)))}function KO(e,t=UO()){return t(`readwrite`,t=>(t.delete(e),BO(t.transaction)))}function qO(e,t={}){let n=`${t.key??`tempo`}.`;return{getItem:t=>e.getItem(`${n}${t}`),setItem:(t,r)=>e.setItem(`${n}${t}`,r),removeItem:t=>e.removeItem(`${n}${t}`)}}function JO(e={}){let t=typeof indexedDB<`u`?VO(`tempo`,`store`):void 0;return qO({async getItem(e){let n=await WO(e,t);return n===null?null:n},async setItem(e,n){await GO(e,n,t)},async removeItem(e){await KO(e,t)}},e)}function YO(e={}){let t=new Map;return qO({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let XO=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)};function ZO(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}let QO=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return QO(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return QO(t)(e)}}}},$O=(e,t)=>(n,r,i)=>{let a={storage:ZO(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return QO(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},ek=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},tk=(e=>e?ek(e):ek);function nk(e){let{chainId:t,persistCredentials:n=!0,storage:r=typeof window<`u`?JO({key:`tempo`}):YO({key:`tempo`})}=e;return tk(XO($O(()=>({accessKeys:[],accounts:[],activeAccount:0,chainId:t,requestQueue:[]}),{merge(e,t){let n=e;return{...n,...t,accounts:n.accounts?.map(e=>t.accounts.find(t=>t.address.toLowerCase()===e.address.toLowerCase())??e)??t.accounts,accessKeys:n.accessKeys??t.accessKeys,chainId:n.chainId??t.chainId}},name:`store`,partialize:e=>({accounts:e.accounts,activeAccount:e.activeAccount,...n?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:r,version:0})))}async function rk(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function ik(e,t){let n=Cx(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new Ju({message:`Unsupported method \"${t?.method}\".`}):new Gu(-32602,`Invalid params: ${ak(n.error.issues)}`)}return{...t,_decoded:n.data}}function ak(e){return e.flatMap(e=>e.code===`invalid_union`&&e.errors.length>0?e.errors.flatMap(t=>t.map(t=>`${[...e.path,...t.path].join(`.`)}: ${t.code===`invalid_union`&&t.errors.length>0?ak([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let ok=new Set;function sk(e={}){let{adapter:t=PO(),chains:n=[kE,jE],persistCredentials:r,testnet:i,storage:a=typeof window<`u`?JO():YO()}=e,o=(()=>{if(e.feePayer)return typeof e.feePayer==`string`?{precedence:`fee-payer-first`,url:e.feePayer}:{precedence:e.feePayer.precedence??`fee-payer-first`,url:e.feePayer.url}})(),s=nk({chainId:(i?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,persistCredentials:r,storage:a}),c=(e={})=>AO({...e,store:s}),l;function u(e={}){let{chainId:t,feePayer:r}=e;return IO(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:o?.precedence}})(),store:s})}let d=t({getAccount:c,getClient:u,storage:a,store:s}),{actions:f}=d,p=ad();s.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>p.emit(`accountsChanged`,s.getState().accounts.map(e=>e.address))),s.subscribe(e=>e.chainId,e=>p.emit(`chainChanged`,O(e))),s.subscribe(e=>e.accounts.length>0,e=>{e?p.emit(`connect`,{chainId:O(s.getState().chainId)}):p.emit(`disconnect`,new Yu)});function m(){if(s.getState().accounts.length===0)throw new Yu({message:`No accounts connected.`})}function h(e){if(!d.persistAccounts)return e;let t=[...e];for(let e of s.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function g(e){let t=(()=>{if(typeof e==`string`)return e;if(e!==!1)return o?.url})();if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let _=Object.assign(od({...p,async request({method:t,params:r}){return await rk(s),zO(async()=>{let i;try{i=ik(tw,{method:t,params:r})}catch(e){if(!(e instanceof Ju))throw e;return await IO(void 0,{chains:n,store:s}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=s.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return O(s.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await f.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return s.setState({accounts:h(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{m();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await f.sendTransaction({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=g(t.feePayer),a=e=>{let t=u({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return c({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=TO(e,{store:s});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...WT(n)}});return OO(e,{store:s}),r}catch{return DO(e,{store:s}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{m();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await f.signTransaction({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_sendTransactionSync`:{m();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await f.sendTransactionSync({...r,chainId:e.chainId??s.getState().chainId,...a?{calls:a}:{},feePayer:g(e.feePayer)},i)}case`eth_signTypedData_v4`:{m();let[e,t]=i._decoded.params;return await f.signTypedData({address:e,data:t},i)}case`personal_sign`:{m();let[e,t]=i._decoded.params;return await f.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{m();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,c=g(t?.feePayer??(o?!0:void 0)),l={calls:e,chainId:n,from:r,...c?{feePayer:c}:{}};if(!a){let e=E(await f.sendTransaction(l,{method:`eth_sendTransaction`,params:[Tx(kC,l)]}),Pi(O(s.getState().chainId),32),lk);return{capabilities:{sync:a},id:e}}let u=await f.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[Tx(kC,l)]}),d=u.transactionHash,p=O(s.getState().chainId),h=E(d,Pi(p,32),lk);return{atomic:!0,capabilities:{sync:a},chainId:p,id:h,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=s.getState(),a=e?.account??t[r]?.address;if(!a)throw new Yu({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new Hu({message:\"`tokens` is required.\"});let c=IO(e?.chainId,{chains:n,store:s});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([dD(c,{account:a,token:e}),fD(c,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:O(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(lk.slice(2)))throw Error(\"`id` not supported\");Ai(e);let t=k(e,0,32),r=O(Number(k(e,32,64))),a=await IO(Number(r),{chains:n,store:s}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=s.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new qu({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(O(e.id))):n,c={};for(let e of a)c[O(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...o?{feePayer:{status:`supported`}}:{}};return c}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&s.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,signature:c}=await(async()=>n?.method===`register`?await f.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId},i):await f.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i))();s.setState({accounts:h(o),activeAccount:0});let l=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===l?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...c&&n?.digest?{signature:c}:{}}:{}}))}}case`wallet_disconnect`:await f.disconnect?.(),s.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!f.authorizeAccessKey)throw new Ju({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await f.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(m(),!f.revokeAccessKey)throw new Ju({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await f.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!f.deposit)throw new Ju({message:\"`deposit` not supported by adapter.\"});return await f.deposit(i._decoded.params[0],i);case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new $u({message:`Chain ${e} not configured.`});await f.switchChain?.({chainId:e}),s.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Di({method:t,params:r})})}},{schema:$C}),{chains:n,getAccount:c,getClient(e={}){let{chainId:t,feePayer:r}=e;return IO(t,{chains:n,feePayer:r,provider:l,store:s})},store:s});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;ok.has(e)||(ok.add(e),nw({info:{icon:t.icon??ck,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:_}))}return e.mpp&&CO({methods:[bO({getClient:({chainId:e})=>{let t=_.getClient({chainId:e}),n=_.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),l=_,_}let ck=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,lk=Ta(Ni(`TEMPO_5792`)),uk={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},dk={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},fk={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var pk=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let mk={accent:new pk(`accent`),background:new pk(`background`),border:new pk(`border`),foreground:new pk(`foreground`),muted:new pk(`muted`),negative:new pk(`negative`),positive:new pk(`positive`),surface:new pk(`surface`),fontFamily:new pk(`font-family`),fontSizeBase:new pk(`font-size-base`),radius:new pk(`radius`),spacingUnit:new pk(`spacing-unit`)};String.raw`<style>\n *,\n ::after,\n ::before,\n ::backdrop,\n ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n border-color: ${mk.border};\n }\n html,\n :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n vertical-align: middle;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea,\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type='button'], [type='reset'], [type='submit']),\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n }\n</style>`;async function hk(e){let t=new URL(location.href);t.searchParams.set(dk.serviceWorker,``);let n=await navigator.serviceWorker.register(t.pathname+t.search),r=await new Promise(e=>{let t=n.installing??n.waiting??n.active;if(t?.state===`activated`)return e(t);let r=t??n;r.addEventListener(`statechange`,function t(){let i=n.active;i?.state===`activated`&&(r.removeEventListener(`statechange`,t),e(i))})});await new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>t(),r.postMessage({credential:e},[n.port2])}),location.reload()}function gk(e){let t=document.getElementById(uk.data),n=Ei(t.textContent),r=t.getAttribute(fk.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(fk.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(fk.challengeId),o=a?(i.removeAttribute(fk.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(uk.error)?.remove();return}let t=document.getElementById(uk.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=uk.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:hk,vars:mk}}let _k=gk(`tempo`),vk=String.raw,yk=document.createElement(`style`);yk.textContent=vk`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${_k.vars.spacingUnit} * 8);\n }\n button {\n background: ${_k.vars.accent};\n border-radius: ${_k.vars.radius};\n color: ${_k.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${_k.vars.spacingUnit} * 4) calc(${_k.vars.spacingUnit} * 8);\n width: 100%;\n }\n button:hover:not(:disabled) {\n opacity: 0.85;\n }\n button:disabled {\n cursor: default;\n opacity: 0.5;\n }\n button svg {\n display: inline;\n fill: currentColor;\n height: 0.85em;\n transform: translateY(0.05em);\n vertical-align: baseline;\n width: auto;\n }\n`,_k.root.append(yk);let bk=sk({testnet:_k.challenge.request.methodDetails?.chainId===jE.id||_k.challenge.request.methodDetails?.chainId===AE.id}),xk=document.createElement(`button`);xk.innerHTML=`${_k.text.pay===`Pay`?`Continue with`:_k.text.pay} <svg aria-label=\"Tempo\" viewBox=\"0 0 107 25\" role=\"img\"><path d=\"M8.10464 23.7163H1.82475L7.64513 5.79356H0.201172L1.82475 0.540352H22.5637L20.9401 5.79356H13.8944L8.10464 23.7163Z\"></path><path d=\"M31.474 23.7163H16.5861L24.0607 0.540352H38.8873L37.4782 4.95923H28.8701L27.3078 9.93433H35.6402L34.231 14.2914H25.8681L24.3057 19.2974H32.8525L31.474 23.7163Z\"></path><path d=\"M38.2124 23.7163H33.2192L40.7244 0.540352H49.0567L48.781 13.0245L56.8989 0.540352H66.0277L58.5531 23.7163H52.3039L57.3584 7.86395L46.9736 23.7163H43.267L43.4201 7.80214L38.2124 23.7163Z\"></path><path d=\"M73.057 4.83563L70.6369 12.3137H71.3108C72.8425 12.3137 74.1189 11.9532 75.14 11.2322C76.1612 10.4906 76.8249 9.43991 77.1312 8.08025C77.3967 6.90601 77.2538 6.07167 76.7023 5.57725C76.1509 5.08284 75.2319 4.83563 73.9453 4.83563H73.057ZM66.9915 23.7163H60.7116L68.1862 0.540352H75.814C77.5703 0.540352 79.0816 0.828764 80.3478 1.40559C81.6344 1.96181 82.5738 2.76524 83.166 3.81588C83.7787 4.84592 83.9829 6.05107 83.7787 7.43133C83.5132 9.2442 82.8189 10.8408 81.6956 12.221C80.5724 13.6013 79.1122 14.6725 77.315 15.4347C75.5383 16.1764 73.5471 16.5472 71.3415 16.5472H69.289L66.9915 23.7163Z\"></path><path d=\"M98.747 22.233C96.664 23.4691 94.4481 24.0871 92.0996 24.0871H92.0383C89.9552 24.0871 88.1989 23.6236 86.7693 22.6965C85.3602 21.7489 84.3493 20.4717 83.7366 18.8648C83.1443 17.2579 83.0014 15.4966 83.3077 13.5807C83.6957 11.1704 84.5841 8.94549 85.9728 6.90601C87.3616 4.86653 89.0975 3.23906 91.1805 2.02361C93.2636 0.808164 95.4897 0.200439 97.8587 0.200439H97.9199C100.085 0.200439 101.872 0.663958 103.281 1.591C104.71 2.51803 105.701 3.78498 106.252 5.39185C106.824 6.97811 106.947 8.76008 106.62 10.7378C106.232 13.0657 105.343 15.2596 103.955 17.3197C102.566 19.3592 100.83 20.997 98.747 22.233ZM90.0777 18.2468C90.6292 19.2974 91.589 19.8227 92.9573 19.8227H93.0186C94.1418 19.8227 95.1833 19.4004 96.1432 18.5558C97.1235 17.6905 97.9506 16.5369 98.6245 15.0948C99.3189 13.6528 99.8294 12.0459 100.156 10.2742C100.463 8.54377 100.34 7.15322 99.7886 6.10257C99.2372 5.03133 98.2875 4.49571 96.9397 4.49571H96.8784C95.8369 4.49571 94.826 4.92833 93.8457 5.79356C92.8858 6.6588 92.0485 7.82274 91.3337 9.2854C90.6189 10.7481 90.0982 12.3343 89.7714 14.0442C89.4446 15.7747 89.5468 17.1755 90.0777 18.2468Z\"></path></svg>`,xk.onclick=async()=>{try{_k.error(),xk.disabled=!0;let e=await(async()=>{let e=await bk.request({method:`eth_accounts`});return e.length>0?e.at(0):(await bk.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await bO({account:e,getClient:e=>{let t=e.chainId??_k.challenge.request.methodDetails?.chainId;return my({chain:[...bk?.chains??[],jE,AE].find(e=>e.id===t),transport:Ub(bk)})}})[0].createCredential({challenge:_k.challenge,context:{}});await _k.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;_k.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{xk.disabled=!1}},_k.root.appendChild(xk)})();</script>";
1
+ export declare const html = "<script>(function(){var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(e&&(t=e(e=0)),t),s=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),c=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},l=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},u=(n,r,a)=>(a=n==null?{}:e(i(n)),l(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let d=()=>`IntersectionObserver`in window&&`IntersectionObserverEntry`in window&&`intersectionRatio`in IntersectionObserverEntry.prototype&&`isVisible`in IntersectionObserverEntry.prototype;function f(e){return e}function p(e,t={}){let{targetOrigin:n}=t,r=new Map;return f({destroy(){for(let t of r.values())e.removeEventListener(`message`,t);r.clear()},on(t,i,a){function o(e){e.data.topic===t&&(a&&e.data.id!==a||n&&e.origin!==n||i(e.data.payload,e))}return e.addEventListener(`message`,o),r.set(t,o),()=>{e.removeEventListener(`message`,o),r.delete(t)}},async send(t,r,i){let a=crypto.randomUUID();return e.postMessage(g({id:a,payload:r,topic:t}),i??n??`*`),{id:a,payload:r,topic:t}}})}function m(e){let{from:t,to:n,waitForReady:r=!1}=e,i=!1,a=h();t.on(`ready`,e=>a.resolve(e??{}));let o=f({destroy(){t.destroy(),n.destroy(),i&&a.reject()},on(e,n,r){return t.on(e,n,r)},async send(e,t){return i=!0,r&&await a.promise.finally(()=>i=!1),n.send(e,t)}});return{...o,ready(e){o.send(`ready`,e??{})},waitForReady(){return a.promise}}}function h(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),reject:t,resolve:e}}function g(e){if(Array.isArray(e))return e.map(g);if(typeof e==`function`)return;if(typeof e!=`object`||!e)return e;if(Object.getPrototypeOf(e)!==Object.prototype)try{return structuredClone(e)}catch{return}let t={};for(let[n,r]of Object.entries(e))t[n]=g(r);return t}function _(e,t){return t.endsWith(`.local`)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){t&&(t.accent&&e.searchParams.set(`accent`,t.accent),t.radius&&e.searchParams.set(`radius`,t.radius),t.font&&e.searchParams.set(`font`,t.font),t.scheme&&e.searchParams.set(`scheme`,t.scheme))}let y={height:440,width:360};function b(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function x(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function S(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let ee,C,w,te=[];function ne(){return typeof window>`u`?ie():b({name:`iframe`},e=>{let{host:t}=e;if(ee&&ee.host===t){let t=C;return C=e.store,t&&t!==C&&!te.includes(t)&&te.push(t),w?.destroy(),w=re()(e),ee.instance.syncTheme(e.theme),ee.instance}ee?.instance.destroy(),C=e.store,w=re()(e);let n=!1,r=ue(),i=new URL(t);i.searchParams.set(`chainId`,String(C.getState().chainId)),i.searchParams.set(`mode`,`iframe`),r.icon&&(typeof r.icon==`string`?i.searchParams.set(`icon`,r.icon):(i.searchParams.set(`icon`,r.icon.light),i.searchParams.set(`iconDark`,r.icon.dark))),v(i,e.theme);let a=document.createElement(`dialog`);a.dataset.tempoWallet=``,a.setAttribute(`role`,`dialog`),a.setAttribute(`aria-closed`,`true`),a.setAttribute(`aria-label`,`Tempo Wallet`),a.setAttribute(`hidden`,`until-found`),Object.assign(a.style,{background:`transparent`,border:`0`,outline:`0`,padding:`0`,position:`fixed`});let o=document.createElement(`iframe`);o.dataset.testid=`tempo-wallet`,o.setAttribute(`allow`,[`publickey-credentials-get ${i.origin}`,`publickey-credentials-create ${i.origin}`,`clipboard-write`,`payment`].join(`; `)),o.setAttribute(`allowtransparency`,`true`),o.setAttribute(`tabindex`,`0`),o.setAttribute(`title`,`Tempo Wallet`),o.src=i.toString(),Object.assign(o.style,{backgroundColor:`transparent`,border:`0`,colorScheme:e.theme?.scheme??`light dark`,height:`100%`,left:`0`,position:`fixed`,top:`0`,width:`100%`});let s=document.createElement(`style`);s.innerHTML=`\n dialog[data-tempo-wallet]::backdrop {\n background: transparent!important;\n }\n `,a.appendChild(s),a.appendChild(o);let c,l=!1;function u(){c=void 0;let e=m({from:p(window,{targetOrigin:i.origin}),to:p(o.contentWindow,{targetOrigin:i.origin}),waitForReady:!0});return e.on(`rpc-response`,e=>{oe(ae(C,te,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),ce(e)}),e.on(`sync`,({valid:e})=>{e===!1&&C?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{pe(),ne(),n=!1,l=!0;let e=C?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&w?.syncRequests(e)}),e}document.body.appendChild(a);let f=u();new MutationObserver(e=>{for(let t of e)for(let e of t.removedNodes)if(e===a){document.body.appendChild(a),f.destroy(),f=u();return}}).observe(document.body,{childList:!0});let h=``,g=null,y=()=>se(C),b=new MutationObserver(e=>{for(let t of e)t.type===`attributes`&&t.attributeName===`inert`&&a.removeAttribute(`inert`)});b.observe(a,{attributeOldValue:!0,attributes:!0});let x=!1,ne=()=>{x&&(x=!1,a.removeEventListener(`cancel`,y),a.removeEventListener(`click`,y),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ie=()=>{x||(x=!0,a.addEventListener(`cancel`,y),a.addEventListener(`click`,y),o.focus(),a.style.pointerEvents=`auto`,h=document.body.style.overflow,document.body.style.overflow=`hidden`)},de=!1,fe=()=>{de||(de=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},pe=()=>{if(de){de=!1,a.setAttribute(`hidden`,`true`),a.setAttribute(`aria-closed`,`true`),a.close();for(let e of a.parentNode?Array.from(a.parentNode.children):[])e!==a&&e.hasAttribute(`inert`)&&e.removeAttribute(`inert`)}},me={close(){w.close(),n=!1,pe(),ne()},destroy(){ee?.instance===me&&(ee=void 0),w?.close(),n=!1,ne(),pe(),w?.destroy(),f.destroy(),a.remove(),b.disconnect(),C=void 0,w=void 0,te=[]},open(){n||(n=!0,fe(),ie())},async syncRequests(e){if(l){w.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(S()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){w.syncRequests(e);return}let r=d(),i=window.location.hostname.replace(/^www\\./,``),a=!!(t&&_(t,i));if(!(r||a))console.warn([`[accounts] Browser does not support IntersectionObserver v2 and \"${window.location.hostname}\" is not a trusted host.`,`Falling back to popup dialog.`,``,`To enable the iframe dialog, add your hostname to the trusted hosts list.`].join(`\n`)),w.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:le(C),chainId:C.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return ee={host:t,instance:me},me})}function re(e={}){if(typeof window>`u`)return ie();let{size:t=y}=e;return b({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&se(r)},100);return()=>clearInterval(e)})(),o,s=document.createElement(`div`);Object.assign(s.style,{alignItems:`center`,background:`rgba(0, 0, 0, 0.5)`,color:`white`,display:`none`,flexDirection:`column`,fontFamily:`system-ui, sans-serif`,fontSize:`16px`,gap:`12px`,inset:`0`,justifyContent:`center`,position:`fixed`,zIndex:`2147483647`});let c=document.createElement(`p`);Object.assign(c.style,{margin:`0`}),c.textContent=`Continue in the popup window`;let l=document.createElement(`button`);return Object.assign(l.style,{background:`none`,border:`none`,color:`white`,cursor:`pointer`,font:`inherit`,padding:`0`,textDecoration:`underline`}),l.textContent=`Close`,l.addEventListener(`click`,()=>se(r)),s.appendChild(c),s.appendChild(l),document.body.appendChild(s),{close(){s.style.display=`none`,i&&=(i.close(),null)},destroy(){this.close(),o?.destroy(),a(),s.remove()},open(){o?.destroy(),i?.close();let a=ue(),c=new URL(n);c.searchParams.set(`chainId`,String(r.getState().chainId)),c.searchParams.set(`mode`,`popup`),a.icon&&(typeof a.icon==`string`?c.searchParams.set(`icon`,a.icon):(c.searchParams.set(`icon`,a.icon.light),c.searchParams.set(`iconDark`,a.icon.dark))),v(c,e.theme);let l=(window.innerWidth-t.width)/2+window.screenX,u=window.screenY+100;if(i=window.open(c.toString(),`_blank`,`width=${t.width},height=${t.height},left=${l},top=${u}`),!i)throw Error(`Failed to open popup`);o=m({from:p(window,{targetOrigin:c.origin}),to:p(i,{targetOrigin:c.origin}),waitForReady:!0}),o.on(`rpc-response`,e=>oe(r,e)),s.style.display=`flex`},async syncRequests(e){e.some(e=>e.status===`pending`)&&(!i||i.closed?this.open():i.focus()),o?.send(`rpc-requests`,{account:le(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ie(){return b({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function ae(e,t,n){if(e.getState().requestQueue.some(e=>e.request.id===n))return e;for(let e of t)if(e.getState().requestQueue.some(e=>e.request.id===n))return e;return e}function oe(e,t){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.request.id===t.id?t.error?{request:e.request,error:t.error,status:`error`}:{request:e.request,result:t.result,status:`success`}:e)}))}function se(e){e.setState(e=>({...e,requestQueue:e.requestQueue.map(e=>e.status===`pending`?{request:e.request,error:{code:4001,message:`User rejected the request.`},status:`error`}:e)}))}function ce(e){if(!C)return;let{accounts:t}=C.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function le(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function ue(){return{icon:(()=>{let e=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: dark)\"]`),t=document.querySelector(`link[rel~=\"icon\"][media=\"(prefers-color-scheme: light)\"]`)??document.querySelector(`link[rel~=\"icon\"]`);return e?.href&&t?.href&&e.href!==t.href?{dark:e.href,light:t.href}:(window.matchMedia(`(prefers-color-scheme: dark)`).matches?e?.href:t?.href)??t?.href})(),title:document.title}}var de=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);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=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function fe(e,t){return e.exec(t)?.groups}let pe=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,me=/^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)?$/,he=/^\\(.+?\\).*?$/,ge=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function _e(e){let t=e.type;if(ge.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=_e(i),r<n-1&&(t+=`, `)}let r=fe(ge,e.type);return t+=`)${r?.array||``}`,_e({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function ve(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=_e(i),r!==n-1&&(t+=`, `)}return t}function ye(e){return e.type===`function`?`function ${e.name}(${ve(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ve(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ve(e.inputs)})`:e.type===`error`?`error ${e.name}(${ve(e.inputs)})`:e.type===`constructor`?`constructor(${ve(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let be=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function xe(e){return be.test(e)}function Se(e){return fe(be,e)}let Ce=new Set([`memory`,`indexed`,`storage`,`calldata`]),we=new Set([`calldata`,`memory`,`storage`]);var Te=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" 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`})}},Ee=class extends de{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},De=class extends de{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Oe=class extends de{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},ke=class extends de{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" 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`})}},Ae=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},je=class extends de{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Me=class extends de{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Ne=class extends de{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Pe=class extends de{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Fe=class extends de{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},Ie=class extends de{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function Le(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let Re=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}]]),ze=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Be=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ve=/^u?int$/;function He(e,t){let n=Le(e,t?.type,t?.structs);if(Re.has(n))return Re.get(n);let r=he.test(e),i=fe(r?Be:ze,e);if(!i)throw new Oe({param:e});if(i.name&&Ke(i.name))throw new ke({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=Ue(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(He(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ve.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!We(c))throw new Ee({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Ae({param:e,type:t?.type,modifier:i.modifier});if(we.has(i.modifier)&&!qe(c,!!i.array))throw new je({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Re.set(n,u),u}function Ue(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?Ue(o,[...t,n.trim()]):Ue(o,t,`${n}${i}`,r);case`(`:return Ue(o,t,`${n}${i}`,r+1);case`)`:return Ue(o,t,`${n}${i}`,r-1);default:return Ue(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Ie({current:n,depth:r});return t.push(n.trim()),t}function We(e){return e===`address`||e===`bool`||e===`function`||e===`string`||pe.test(e)||me.test(e)}let Ge=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function Ke(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||pe.test(e)||me.test(e)||Ge.test(e)}function qe(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Je(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!xe(n))continue;let i=Se(n);if(!i)throw new Ne({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=He(t,{type:`struct`});o.push(n)}if(!o.length)throw new Pe({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=Xe(a,t)}return r}let Ye=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Xe(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(he.test(i.type))r.push(i);else{let e=fe(Ye,i.type);if(!e?.type)throw new Me({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Fe({type:o});r.push({...i,type:`tuple${a??``}`,components:Xe(t[o],t,new Set([...n,o]))})}else if(We(o))r.push(i);else throw new Te({type:o})}}return r}function Ze(e){let t=[];if(typeof e==`string`){let n=Ue(e),r=n.length;for(let e=0;e<r;e++)t.push(He(n[e],{modifiers:Ce}))}else{let n=Je(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(xe(r))continue;let a=Ue(r),o=a.length;for(let e=0;e<o;e++)t.push(He(a[e],{modifiers:Ce,structs:n}))}}if(t.length===0)throw new De({params:e});return t}var Qe,$e=o((()=>{Qe=`0.1.1`}));function et(){return Qe}var tt=o((()=>{$e()}));function nt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?nt(e.cause,t):t?null:e}var T,rt=o((()=>{tt(),T=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return nt(this,e)}},Object.defineProperty(T,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${et()}`}}),T.setStaticOptions(T.defaultStaticOptions)})),it,at=o((()=>{it=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function ot(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function st(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function ct(e,...t){if(!ot(e))throw Error(`Uint8Array expected`);if(t.length>0&&!t.includes(e.length))throw Error(`Uint8Array expected of length `+t+`, got length=`+e.length)}function lt(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);st(e.outputLen),st(e.blockLen)}function ut(e,t=!0){if(e.destroyed)throw Error(`Hash instance has been destroyed`);if(t&&e.finished)throw Error(`Hash#digest() has already been called`)}function dt(e,t){ct(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function ft(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function pt(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function mt(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ht(e,t){return e<<32-t|e>>>t}function gt(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function _t(e){for(let t=0;t<e.length;t++)e[t]=gt(e[t]);return e}function vt(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function yt(e){return typeof e==`string`&&(e=vt(e)),ct(e),e}function bt(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];ct(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function xt(e){let t=t=>e().update(yt(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function St(e){let t=(t,n)=>e(n).update(yt(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ct(e=32){if(it&&typeof it.getRandomValues==`function`)return it.getRandomValues(new Uint8Array(e));if(it&&typeof it.randomBytes==`function`)return Uint8Array.from(it.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var wt,Tt,Et,Dt=o((()=>{at(),wt=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Tt=wt?e=>e:_t,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Et=class{}})),Ot,kt,At=o((()=>{Dt(),Ot=class extends Et{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lt(e);let n=yt(t);if(this.iHash=e.create(),typeof this.iHash.update!=`function`)throw Error(`Expected instance of class which extends utils.Hash`);this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;let r=this.blockLen,i=new Uint8Array(r);i.set(n.length>r?e.create().update(n).digest():n);for(let e=0;e<i.length;e++)i[e]^=54;this.iHash.update(i),this.oHash=e.create();for(let e=0;e<i.length;e++)i[e]^=106;this.oHash.update(i),pt(i)}update(e){return ut(this),this.iHash.update(e),this}digestInto(e){ut(this),ct(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||=Object.create(Object.getPrototypeOf(this),{});let{oHash:t,iHash:n,finished:r,destroyed:i,blockLen:a,outputLen:o}=this;return e=e,e.finished=r,e.destroyed=i,e.blockLen=a,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=n._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}},kt=(e,t,n)=>new Ot(e,t).update(n).digest(),kt.create=(e,t)=>new Ot(e,t)}));function jt(e,t,n,r){if(typeof e.setBigUint64==`function`)return e.setBigUint64(t,n,r);let i=BigInt(32),a=BigInt(4294967295),o=Number(n>>i&a),s=Number(n&a),c=r?4:0,l=r?0:4;e.setUint32(t+c,o,r),e.setUint32(t+l,s,r)}function Mt(e,t,n){return e&t^~e&n}function Nt(e,t,n){return e&t^e&n^t&n}var Pt,Ft,It,Lt,Rt=o((()=>{Dt(),Pt=class extends Et{constructor(e,t,n,r){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=r,this.buffer=new Uint8Array(e),this.view=mt(this.buffer)}update(e){ut(this),e=yt(e),ct(e);let{view:t,buffer:n,blockLen:r}=this,i=e.length;for(let a=0;a<i;){let o=Math.min(r-this.pos,i-a);if(o===r){let t=mt(e);for(;r<=i-a;a+=r)this.process(t,a);continue}n.set(e.subarray(a,a+o),this.pos),this.pos+=o,a+=o,this.pos===r&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){ut(this),dt(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,pt(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;jt(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=mt(e),s=this.outputLen;if(s%4)throw Error(`_sha2: outputLen should be aligned to 32bit`);let c=s/4,l=this.get();if(c>l.length)throw Error(`_sha2: outputLen bigger than state`);for(let e=0;e<c;e++)o.setUint32(4*e,l[e],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());let{blockLen:t,buffer:n,length:r,finished:i,destroyed:a,pos:o}=this;return e.destroyed=a,e.finished=i,e.length=r,e.pos=o,r%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},Ft=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),It=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Lt=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])}));function zt(e,t=!1){return t?{h:Number(e&Ht),l:Number(e>>Ut&Ht)}:{h:Number(e>>Ut&Ht)|0,l:Number(e&Ht)|0}}function Bt(e,t=!1){let n=e.length,r=new Uint32Array(n),i=new Uint32Array(n);for(let a=0;a<n;a++){let{h:n,l:o}=zt(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function Vt(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn=o((()=>{Ht=BigInt(2**32-1),Ut=BigInt(32),Wt=(e,t,n)=>e>>>n,Gt=(e,t,n)=>e<<32-n|t>>>n,Kt=(e,t,n)=>e>>>n|t<<32-n,qt=(e,t,n)=>e<<32-n|t>>>n,Jt=(e,t,n)=>e<<64-n|t>>>n-32,Yt=(e,t,n)=>e>>>n-32|t<<64-n,Xt=(e,t,n)=>e<<n|t>>>32-n,Zt=(e,t,n)=>t<<n|e>>>32-n,Qt=(e,t,n)=>t<<n-32|e>>>64-n,$t=(e,t,n)=>e<<n-32|t>>>64-n,en=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),tn=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,nn=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),rn=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,an=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),on=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0}));function cn(e,t=24){let n=new Uint32Array(10);for(let r=24-t;r<24;r++){for(let t=0;t<10;t++)n[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let r=(t+8)%10,i=(t+2)%10,a=n[i],o=n[i+1],s=xn(a,o,1)^n[r],c=Sn(a,o,1)^n[r+1];for(let n=0;n<50;n+=10)e[t+n]^=s,e[t+n+1]^=c}let t=e[2],i=e[3];for(let n=0;n<24;n++){let r=gn[n],a=xn(t,i,r),o=Sn(t,i,r),s=hn[n];t=e[s],i=e[s+1],e[s]=a,e[s+1]=o}for(let t=0;t<50;t+=10){for(let r=0;r<10;r++)n[r]=e[t+r];for(let r=0;r<10;r++)e[t+r]^=~n[(r+2)%10]&n[(r+4)%10]}e[0]^=yn[r],e[1]^=bn[r]}pt(n)}var ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn,Sn,Cn,wn,Tn,En,Dn=o((()=>{sn(),Dt(),ln=BigInt(0),un=BigInt(1),dn=BigInt(2),fn=BigInt(7),pn=BigInt(256),mn=BigInt(113),hn=[],gn=[],_n=[];for(let e=0,t=un,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],hn.push(2*(5*r+n)),gn.push((e+1)*(e+2)/2%64);let i=ln;for(let e=0;e<7;e++)t=(t<<un^(t>>fn)*mn)%pn,t&dn&&(i^=un<<(un<<BigInt(e))-un);_n.push(i)}vn=Bt(_n,!0),yn=vn[0],bn=vn[1],xn=(e,t,n)=>n>32?Qt(e,t,n):Xt(e,t,n),Sn=(e,t,n)=>n>32?$t(e,t,n):Zt(e,t,n),Cn=class e extends Et{constructor(e,t,n,r=!1,i=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=n,this.enableXOF=r,this.rounds=i,st(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=ft(this.state)}clone(){return this._cloneInto()}keccak(){Tt(this.state32),cn(this.state32,this.rounds),Tt(this.state32),this.posOut=0,this.pos=0}update(e){ut(this),e=yt(e),ct(e);let{blockLen:t,state:n}=this,r=e.length;for(let i=0;i<r;){let a=Math.min(t-this.pos,r-i);for(let t=0;t<a;t++)n[this.pos++]^=e[i++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:n,blockLen:r}=this;e[n]^=t,t&128&&n===r-1&&this.keccak(),e[r-1]^=128,this.keccak()}writeInto(e){ut(this,!1),ct(e),this.finish();let t=this.state,{blockLen:n}=this;for(let r=0,i=e.length;r<i;){this.posOut>=n&&this.keccak();let a=Math.min(n-this.posOut,i-r);e.set(t.subarray(this.posOut,this.posOut+a),r),this.posOut+=a,r+=a}return e}xofInto(e){if(!this.enableXOF)throw Error(`XOF is not possible for this instance`);return this.writeInto(e)}xof(e){return st(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(dt(e,this),this.finished)throw Error(`digest() was already called`);return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,pt(this.state)}_cloneInto(t){let{blockLen:n,suffix:r,outputLen:i,rounds:a,enableXOF:o}=this;return t||=new e(n,r,i,o,a),t.state32.set(this.state32),t.pos=this.pos,t.posOut=this.posOut,t.finished=this.finished,t.rounds=a,t.suffix=r,t.outputLen=i,t.enableXOF=o,t.destroyed=this.destroyed,t}},wn=(e,t,n)=>xt(()=>new Cn(t,e,n)),wn(6,144,224/8),wn(6,136,256/8),wn(6,104,384/8),wn(6,72,512/8),wn(1,144,224/8),Tn=wn(1,136,256/8),wn(1,104,384/8),wn(1,72,512/8),En=(e,t,n)=>St((r={})=>new Cn(t,e,r.dkLen===void 0?n:r.dkLen,!0)),En(31,168,128/8),En(31,136,256/8)})),On,kn,An,jn,Mn,Nn,Pn,Fn,In,Ln,Rn,zn,Bn,Vn=o((()=>{Rt(),sn(),Dt(),On=Uint32Array.from([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]),kn=new Uint32Array(64),An=class extends Pt{constructor(e=32){super(64,e,8,!1),this.A=Ft[0]|0,this.B=Ft[1]|0,this.C=Ft[2]|0,this.D=Ft[3]|0,this.E=Ft[4]|0,this.F=Ft[5]|0,this.G=Ft[6]|0,this.H=Ft[7]|0}get(){let{A:e,B:t,C:n,D:r,E:i,F:a,G:o,H:s}=this;return[e,t,n,r,i,a,o,s]}set(e,t,n,r,i,a,o,s){this.A=e|0,this.B=t|0,this.C=n|0,this.D=r|0,this.E=i|0,this.F=a|0,this.G=o|0,this.H=s|0}process(e,t){for(let n=0;n<16;n++,t+=4)kn[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=kn[e-15],n=kn[e-2],r=ht(t,7)^ht(t,18)^t>>>3;kn[e]=(ht(n,17)^ht(n,19)^n>>>10)+kn[e-7]+r+kn[e-16]|0}let{A:n,B:r,C:i,D:a,E:o,F:s,G:c,H:l}=this;for(let e=0;e<64;e++){let t=ht(o,6)^ht(o,11)^ht(o,25),u=l+t+Mt(o,s,c)+On[e]+kn[e]|0,d=(ht(n,2)^ht(n,13)^ht(n,22))+Nt(n,r,i)|0;l=c,c=s,s=o,o=a+u|0,a=i,i=r,r=n,n=u+d|0}n=n+this.A|0,r=r+this.B|0,i=i+this.C|0,a=a+this.D|0,o=o+this.E|0,s=s+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,r,i,a,o,s,c,l)}roundClean(){pt(kn)}destroy(){this.set(0,0,0,0,0,0,0,0),pt(this.buffer)}},jn=Bt(`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`.split(`.`).map(e=>BigInt(e))),Mn=jn[0],Nn=jn[1],Pn=new Uint32Array(80),Fn=new Uint32Array(80),In=class extends Pt{constructor(e=64){super(128,e,16,!1),this.Ah=Lt[0]|0,this.Al=Lt[1]|0,this.Bh=Lt[2]|0,this.Bl=Lt[3]|0,this.Ch=Lt[4]|0,this.Cl=Lt[5]|0,this.Dh=Lt[6]|0,this.Dl=Lt[7]|0,this.Eh=Lt[8]|0,this.El=Lt[9]|0,this.Fh=Lt[10]|0,this.Fl=Lt[11]|0,this.Gh=Lt[12]|0,this.Gl=Lt[13]|0,this.Hh=Lt[14]|0,this.Hl=Lt[15]|0}get(){let{Ah:e,Al:t,Bh:n,Bl:r,Ch:i,Cl:a,Dh:o,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:f,Gl:p,Hh:m,Hl:h}=this;return[e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h]}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){this.Ah=e|0,this.Al=t|0,this.Bh=n|0,this.Bl=r|0,this.Ch=i|0,this.Cl=a|0,this.Dh=o|0,this.Dl=s|0,this.Eh=c|0,this.El=l|0,this.Fh=u|0,this.Fl=d|0,this.Gh=f|0,this.Gl=p|0,this.Hh=m|0,this.Hl=h|0}process(e,t){for(let n=0;n<16;n++,t+=4)Pn[n]=e.getUint32(t),Fn[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Pn[e-15]|0,n=Fn[e-15]|0,r=Kt(t,n,1)^Kt(t,n,8)^Wt(t,n,7),i=qt(t,n,1)^qt(t,n,8)^Gt(t,n,7),a=Pn[e-2]|0,o=Fn[e-2]|0,s=Kt(a,o,19)^Jt(a,o,61)^Wt(a,o,6),c=qt(a,o,19)^Yt(a,o,61)^Gt(a,o,6),l=nn(i,c,Fn[e-7],Fn[e-16]);Pn[e]=rn(l,r,s,Pn[e-7],Pn[e-16])|0,Fn[e]=l|0}let{Ah:n,Al:r,Bh:i,Bl:a,Ch:o,Cl:s,Dh:c,Dl:l,Eh:u,El:d,Fh:f,Fl:p,Gh:m,Gl:h,Hh:g,Hl:_}=this;for(let e=0;e<80;e++){let t=Kt(u,d,14)^Kt(u,d,18)^Jt(u,d,41),v=qt(u,d,14)^qt(u,d,18)^Yt(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=an(_,v,b,Nn[e],Fn[e]),S=on(x,g,t,y,Mn[e],Pn[e]),ee=x|0,C=Kt(n,r,28)^Jt(n,r,34)^Jt(n,r,39),w=qt(n,r,28)^Yt(n,r,34)^Yt(n,r,39),te=n&i^n&o^i&o,ne=r&a^r&s^a&s;g=m|0,_=h|0,m=f|0,h=p|0,f=u|0,p=d|0,{h:u,l:d}=Vt(c|0,l|0,S|0,ee|0),c=o|0,l=s|0,o=i|0,s=a|0,i=n|0,a=r|0;let re=en(ee,w,ne);n=tn(re,S,C,te),r=re|0}({h:n,l:r}=Vt(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=Vt(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=Vt(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=Vt(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=Vt(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=Vt(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=Vt(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=Vt(this.Hh|0,this.Hl|0,g|0,_|0),this.set(n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_)}roundClean(){pt(Pn,Fn)}destroy(){pt(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Ln=class extends In{constructor(){super(48),this.Ah=It[0]|0,this.Al=It[1]|0,this.Bh=It[2]|0,this.Bl=It[3]|0,this.Ch=It[4]|0,this.Cl=It[5]|0,this.Dh=It[6]|0,this.Dl=It[7]|0,this.Eh=It[8]|0,this.El=It[9]|0,this.Fh=It[10]|0,this.Fl=It[11]|0,this.Gh=It[12]|0,this.Gl=It[13]|0,this.Hh=It[14]|0,this.Hl=It[15]|0}},Rn=xt(()=>new An),zn=xt(()=>new In),Bn=xt(()=>new Ln)}));Vn();let Hn=Rn;function Un(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Wn(e){if(!Un(e))throw Error(`Uint8Array expected`)}function Gn(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Kn(e){let t=e.toString(16);return t.length&1?`0`+t:t}function qn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?dr:BigInt(`0x`+e)}function Jn(e){if(Wn(e),pr)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=mr[e[n]];return t}function Yn(e){if(e>=hr._0&&e<=hr._9)return e-hr._0;if(e>=hr.A&&e<=hr.F)return e-(hr.A-10);if(e>=hr.a&&e<=hr.f)return e-(hr.a-10)}function Xn(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(pr)return Uint8Array.fromHex(e);let t=e.length,n=t/2;if(t%2)throw Error(`hex string expected, got unpadded hex of length `+t);let r=new Uint8Array(n);for(let t=0,i=0;t<n;t++,i+=2){let n=Yn(e.charCodeAt(i)),a=Yn(e.charCodeAt(i+1));if(n===void 0||a===void 0){let t=e[i]+e[i+1];throw Error(`hex string expected, got non-hex character \"`+t+`\" at index `+i)}r[t]=n*16+a}return r}function Zn(e){return qn(Jn(e))}function Qn(e){return Wn(e),qn(Jn(Uint8Array.from(e).reverse()))}function $n(e,t){return Xn(e.toString(16).padStart(t*2,`0`))}function er(e,t){return $n(e,t).reverse()}function tr(e,t,n){let r;if(typeof t==`string`)try{r=Xn(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Un(t))r=Uint8Array.from(t);else throw Error(e+` must be hex string or Uint8Array`);let i=r.length;if(typeof n==`number`&&i!==n)throw Error(e+` of length `+n+` expected, got `+i);return r}function nr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Wn(r),t+=r.length}let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function rr(e,t){if(e.length!==t.length)return!1;let n=0;for(let r=0;r<e.length;r++)n|=e[r]^t[r];return n===0}function ir(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function ar(e,t,n){return gr(e)&&gr(t)&&gr(n)&&t<=e&&e<n}function or(e,t,n,r){if(!ar(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function sr(e){let t;for(t=0;e>dr;e>>=fr,t+=1);return t}function cr(e,t,n){if(typeof e!=`number`||e<2)throw Error(`hashLen must be a number`);if(typeof t!=`number`||t<2)throw Error(`qByteLen must be a number`);if(typeof n!=`function`)throw Error(`hmacFn must be a function`);let r=vr(e),i=vr(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=vr(0))=>{i=s(yr([0]),e),r=s(),e.length!==0&&(i=s(yr([1]),e),r=s())},l=()=>{if(a++>=1e3)throw Error(`drbg: tried 1000 values`);let e=0,n=[];for(;e<t;){r=s();let t=r.slice();n.push(t),e+=r.length}return nr(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function lr(e,t,n={}){let r=(t,n,r)=>{let i=br[n];if(typeof i!=`function`)throw Error(`invalid validator function`);let a=e[t];if(!(r&&a===void 0)&&!i(a,e))throw Error(`param `+String(t)+` is invalid. Expected `+n+`, got `+a)};for(let[e,n]of Object.entries(t))r(e,n,!1);for(let[e,t]of Object.entries(n))r(e,t,!0);return e}function ur(e){let t=new WeakMap;return(n,...r)=>{let i=t.get(n);if(i!==void 0)return i;let a=e(n,...r);return t.set(n,a),a}}var dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr=o((()=>{dr=BigInt(0),fr=BigInt(1),pr=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,mr=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hr={_0:48,_9:57,A:65,F:70,a:97,f:102},gr=e=>typeof e==`bigint`&&dr<=e,_r=e=>(fr<<BigInt(e))-fr,vr=e=>new Uint8Array(e),yr=e=>Uint8Array.from(e),br={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`||Un(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)}}));function Sr(e,t){if(vi(e)>t)throw new ji({givenSize:vi(e),maxSize:t})}function Cr(e,t){if(typeof t==`number`&&t>0&&t>vi(e)-1)throw new Mi({offset:t,position:`start`,size:vi(e)})}function wr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&vi(e)!==n-t)throw new Mi({offset:n,position:`end`,size:vi(e)})}function Tr(e){if(e>=Or.zero&&e<=Or.nine)return e-Or.zero;if(e>=Or.A&&e<=Or.F)return e-(Or.A-10);if(e>=Or.a&&e<=Or.f)return e-(Or.a-10)}function Er(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Ni({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function Dr(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var Or,kr=o((()=>{Pi(),Or={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ar(e,t){if(Jr(e)>t)throw new oi({givenSize:Jr(e),maxSize:t})}function jr(e,t){if(typeof t==`number`&&t>0&&t>Jr(e)-1)throw new si({offset:t,position:`start`,size:Jr(e)})}function Mr(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Jr(e)!==n-t)throw new si({offset:n,position:`end`,size:Jr(e)})}function Nr(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new ci({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function Pr(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var Fr=o((()=>{O()}));function Ir(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Lr:n,n)}var Lr,Rr=o((()=>{Lr=`#__bigint`}));function zr(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new ri(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new ii(e)}function Br(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function Vr(e){return e instanceof Uint8Array?Ur(e):Array.isArray(e)?Ur(new Uint8Array(e)):e}function Hr(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ar(n,t.size),Gr(n,t.size)):n}function Ur(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=ti[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ar(r,t.size),Kr(r,t.size)):r}function E(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new ni({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?Gr(s,r):s}function Wr(e,t={}){return Ur(ei.encode(e),t)}function Gr(e,t){return Nr(e,{dir:`left`,size:t})}function Kr(e,t){return Nr(e,{dir:`right`,size:t})}function qr(e){return Ur(_i(e))}function D(e,t,n,r={}){let{strict:i}=r;jr(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&Mr(a,t,n),a}function Jr(e){return Math.ceil((e.length-2)/2)}function Yr(e){return Pr(e,{dir:`left`})}function Xr(e,t={}){let{signed:n}=t;t.size&&Ar(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function Zr(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:Xr(e,t))}function Qr(e,t={}){let{size:n}=t,r=pi(e);return n&&(Sr(r,n),r=Ti(r)),new TextDecoder().decode(r)}function $r(e,t={}){let{strict:n=!1}=t;try{return zr(e,{strict:n}),!0}catch{return!1}}var ei,ti,ni,ri,ii,ai,oi,si,ci,O=o((()=>{Pi(),rt(),kr(),Fr(),Rr(),ei=new TextEncoder,ti=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),ni=class extends T{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},ri=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Ir(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},ii=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},ai=class extends T{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},oi=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},si=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},ci=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function li(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new Ai(e)}function ui(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function di(e){return e instanceof Uint8Array?e:typeof e==`string`?pi(e):fi(e)}function fi(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function pi(e,t={}){let{size:n}=t,r=e;n&&(Ar(e,n),r=Kr(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=Tr(i.charCodeAt(t++)),r=Tr(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new T(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function mi(e,t={}){let{size:n}=t,r=Oi.encode(e);return typeof n==`number`?(Sr(r,n),gi(r,n)):r}function hi(e,t){return rr(e,t)}function gi(e,t){return Er(e,{dir:`right`,size:t})}function _i(e){return crypto.getRandomValues(new Uint8Array(e))}function vi(e){return e.length}function yi(e,t,n,r={}){let{strict:i}=r;Cr(e,t);let a=e.slice(t,n);return i&&wr(a,t,n),a}function bi(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Xr(Ur(e,t),t)}function xi(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(Sr(r,n),r=wi(r)),r.length>1||r[0]>1)throw new ki(r);return!!r[0]}function Si(e,t={}){let{size:n}=t;return n!==void 0&&Sr(e,n),Zr(Ur(e,t),t)}function Ci(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(Sr(r,n),r=Ti(r)),Di.decode(r)}function wi(e){return Dr(e,{dir:`left`})}function Ti(e){return Dr(e,{dir:`right`})}function Ei(e){try{return li(e),!0}catch{return!1}}var Di,Oi,ki,Ai,ji,Mi,Ni,Pi=o((()=>{xr(),rt(),O(),kr(),Fr(),Rr(),Di=new TextDecoder,Oi=new TextEncoder,ki=class extends T{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},Ai=class extends T{constructor(e){super(`Value \\`${typeof e==`object`?Ir(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},ji=class extends T{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},Mi=class extends T{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Ni=class extends T{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));Dn(),Pi(),O();function Fi(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(di(e));return n===`Bytes`?r:Ur(r)}function Ii(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(di(e));return n===`Bytes`?r:Ur(r)}function Li(e){return $r(e)&&Jr(e)===32}let Ri={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;Pi(),rt(),O(),Rr();function zi(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new Ki({prefix:r,cause:new Ji});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Ki({prefix:r,cause:new qi});return}throw new Gi({publicKey:e})}function Bi(e){let t=(()=>{if($r(e))return Hi(e);if(Ei(e))return Vi(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return zi(t),t}function Vi(e){return Hi(Ur(e))}function Hi(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new Yi({publicKey:e});return e.length===130?{prefix:4,x:BigInt(D(e,0,32)),y:BigInt(D(e,32,64))}:e.length===132?{prefix:Number(D(e,0,1)),x:BigInt(D(e,1,33)),y:BigInt(D(e,33,65))}:{prefix:Number(D(e,0,1)),x:BigInt(D(e,1,33))}}function Ui(e,t={}){return pi(Wi(e,t))}function Wi(e,t={}){zi(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return Br(a?E(n,{size:1}):`0x`,E(r,{size:32}),typeof i==`bigint`?E(i,{size:32}):`0x`)}var Gi=class extends T{constructor({publicKey:e}){super(`Value \\`${Ir(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},Ki=class extends T{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},qi=class extends T{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},Ji=class extends T{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},Yi=class extends T{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${Jr(Vr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Pi(),rt();let Xi=/^0x[a-fA-F0-9]{40}$/;function Zi(e,t={}){let{strict:n=!0}=t;if(!Xi.test(e))throw new ra({address:e,cause:new ia});if(n){if(e.toLowerCase()===e)return;if(Qi(e)!==e)throw new ra({address:e,cause:new aa})}}function Qi(e){if(Ri.has(e))return Ri.get(e);Zi(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Fi(mi(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return Ri.set(e,i),i}function $i(e,t={}){let{checksum:n=!1}=t;return Zi(e),n?Qi(e):e}function ea(e,t={}){return $i(`0x${Fi(`0x${Wi(e).slice(4)}`).substring(26)}`,t)}function ta(e,t){return Zi(e,{strict:!1}),Zi(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function na(e,t={}){let{strict:n=!0}=t??{};try{return Zi(e,{strict:n}),!0}catch{return!1}}var ra=class extends T{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},ia=class extends T{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},aa=class extends T{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};rt();function oa(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new T(`Unable to normalize signature.`);return i}function sa(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return na(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((t,n)=>sa(Object.values(e)[n],t)):/^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(e=>sa(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ca(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return ca(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&na(n[r],{strict:!1}))return o}}rt(),O();function la(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=$r(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?ua(e)===D(t,0,4):e.type===`event`?fa(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new ma({name:t});if(o.length===1)return{...o[0],...i?{hash:fa(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:fa(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?sa(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ca(e.inputs,s.inputs,r);if(t)throw new pa({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new ma({name:t});return{...c,...i?{hash:fa(c)}:{}}}function ua(...e){return D(fa((()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})()),0,4)}function da(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})();return oa(typeof t==`string`?t:ye(t))}function fa(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return la(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Fi(Wr(da(t)))}var pa=class extends T{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${oa(ye(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${oa(ye(t.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:`AbiItem.AmbiguityError`})}},ma=class extends T{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let ha=/^(.*)\\[([0-9]*)\\]$/,ga=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,_a=/^(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)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let va=2n**256n-1n;Pi(),rt(),O();function ya(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=La(t.type);if(a){let[n,o]=a;return xa(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return Ta(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return ba(e,{checksum:r});if(t.type===`bool`)return Sa(e);if(t.type.startsWith(`bytes`))return Ca(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return wa(e,t);if(t.type===`string`)return Ea(e,{staticPosition:i});throw new eo(t.type)}function ba(e,t={}){let{checksum:n=!1}=t;return[(e=>n?Qi(e):e)(Ur(yi(e.readBytes(32),-20))),32]}function xa(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Si(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Si(e.readBytes(32)),s=Ra(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=ya(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(Ra(t)){let n=a+Si(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=ya(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=ya(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function Sa(e){return[xi(e.readBytes(32),{size:32}),32]}function Ca(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Si(e.readBytes(32));e.setPosition(n+t);let r=Si(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Ur(i),32]}return[Ur(e.readBytes(Number.parseInt(i,10),32)),32]}function wa(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?bi(i,{signed:n}):Si(i,{signed:n}),32]}function Ta(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(Ra(t)){let n=i+Si(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=ya(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=ya(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function Ea(e,{staticPosition:t}){let n=t+Si(e.readBytes(32));e.setPosition(n);let r=Si(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Ci(wi(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Da({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(Oa({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function Oa({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=La(r.type);if(i){let[t,a]=i;return ja(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return Ia(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return Aa(n,{checksum:e});if(r.type===`bool`)return Na(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=_a.exec(r.type)??[];return Pa(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return Ma(n,{type:r.type});if(r.type===`string`)return Fa(n);throw new eo(r.type)}function ka(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Jr(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(E(t+i,{size:32})),r.push(s),i+=Jr(s)):n.push(s)}return Br(...n,...r)}function Aa(e,t){let{checksum:n=!1}=t;return Zi(e,{strict:n}),{dynamic:!1,encoded:Gr(e.toLowerCase())}}function ja(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new $a(e);if(!a&&e.length!==r)throw new Xa({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=Oa({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ka(s);if(a){let t=E(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?Br(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Br(...s.map(({encoded:e})=>e))}}function Ma(e,{type:t}){let[,n]=t.split(`bytes`),r=Jr(e);if(!n){let t=e;return r%32!=0&&(t=Kr(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:Br(Gr(E(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Za({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Kr(e)}}function Na(e){if(typeof e!=`boolean`)throw new T(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Gr(Hr(e))}}function Pa(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new ni({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:E(e,{size:32,signed:t})}}function Fa(e){let t=Wr(e),n=Math.ceil(Jr(t)/32),r=[];for(let e=0;e<n;e++)r.push(Kr(D(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:Br(Kr(E(Jr(t),{size:32})),...r)}}function Ia(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=Oa({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ka(a):Br(...a.map(({encoded:e})=>e))}}function La(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function Ra(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ra);let n=La(e.type);return!!(n&&Ra({...e,type:n[1]}))}rt();let za={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Ua({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Ha({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Va({offset:e});let 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 Va({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let 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();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function Ba(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(za);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Va=class extends T{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},Ha=class extends T{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},Ua=class extends T{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};Pi(),rt(),O();function Wa(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?pi(t):t,o=Ba(a);if(vi(a)===0&&e.length>0)throw new Ya;if(vi(a)&&vi(a)<32)throw new Ja({data:typeof t==`string`?t:Ur(t),parameters:e,size:vi(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=ya(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function Ga(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Qa({expectedLength:e.length,givenLength:t.length});let i=ka(Da({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function Ka(e,t){if(e.length!==t.length)throw new Qa({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(Ka.encode(i,a))}return Br(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return Zi(e),Gr(e.toLowerCase(),r?32:0)}if(e===`string`)return Wr(n);if(e===`bytes`)return n;if(e===`bool`)return Gr(Hr(n),r?32:1);let i=e.match(_a);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return E(n,{size:r?32:o,signed:t===`int`})}let a=e.match(ga);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Za({expectedSize:Number.parseInt(t,10),value:n});return Kr(n,r?32:0)}let o=e.match(ha);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:Br(...i)}throw new eo(e)}e.encode=t})(Ka||={});function qa(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Ze(e):e}var Ja=class extends T{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${ve(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},Ya=class extends T{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},Xa=class extends T{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},Za=class extends T{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Jr(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Qa=class extends T{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},$a=class extends T{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},eo=class extends T{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};function to(e){return ua(e)}rt(),O();function no(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&Zi(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Li(e)?e:Yr(e))})}return t}function ro(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(Jr(r[e])!==32)throw new io({storageKey:r[e]});n&&Zi(n,{strict:!1}),t.push([n,r])}return t}var io=class extends T{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Jr(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};Pi(),rt(),O();function ao(e){return oo(e,`Hex`)}function oo(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return so(Ba((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new ai(e);return pi(e)}return e})(),{recursiveReadLimit:1/0}),n)}function so(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?Ur(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=co(e,n,128),i=e.readBytes(r);return t===`Hex`?Ur(i):i}return lo(e,co(e,n,192),t)}function co(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 lo(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(so(e,n));return i}function uo(e,t){let{as:n}=t,r=po(e),i=Ba(new Uint8Array(r.length));return r.encode(i),n===`Hex`?Ur(i.bytes):i.bytes}function fo(e,t={}){let{as:n=`Hex`}=t;return uo(e,{as:n})}function po(e){return Array.isArray(e)?mo(e.map(e=>po(e))):ho(e)}function mo(e){let t=e.reduce((e,t)=>e+t.length,0),n=go(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function ho(e){let t=typeof e==`string`?pi(e):e,n=go(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function go(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new T(`Length is too large.`)}function _o(e,t){let n=e%t;return n>=No?n:t+n}function vo(e,t,n){let r=e;for(;t-- >No;)r*=r,r%=n;return r}function yo(e,t){if(e===No)throw Error(`invert: expected non-zero number`);if(t<=No)throw Error(`invert: expected positive modulus, got `+t);let n=_o(e,t),r=t,i=No,a=Po,o=Po,s=No;for(;n!==No;){let e=r/n,t=r%n,c=i-o*e,l=a-s*e;r=n,n=t,i=o,a=s,o=c,s=l}if(r!==Po)throw Error(`invert: does not exist`);return _o(i,t)}function bo(e,t){let n=(e.ORDER+Po)/Lo,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function xo(e,t){let n=(e.ORDER-Ro)/zo,r=e.mul(t,Fo),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Fo),i),s=e.mul(a,e.sub(o,e.ONE));if(!e.eql(e.sqr(s),t))throw Error(`Cannot find square root`);return s}function So(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Po,n=0;for(;t%Fo===No;)t/=Fo,n++;let r=Fo,i=ko(e);for(;Do(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return bo;let a=i.pow(r,t),o=(t+Po)/Fo;return function(e,r){if(e.is0(r))return r;if(Do(e,r)!==1)throw Error(`Cannot find square root`);let i=n,s=e.mul(e.ONE,a),c=e.pow(r,t),l=e.pow(r,o);for(;!e.eql(c,e.ONE);){if(e.is0(c))return e.ZERO;let t=1,n=e.sqr(c);for(;!e.eql(n,e.ONE);)if(t++,n=e.sqr(n),t===i)throw Error(`Cannot find square root`);let r=Po<<BigInt(i-t-1),a=e.pow(s,r);i=t,s=e.sqr(a),c=e.mul(c,s),l=e.mul(l,a)}return l}}function Co(e){return e%Lo===Io?bo:e%zo===Ro?xo:So(e)}function wo(e){return lr(e,Bo.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function To(e,t,n){if(n<No)throw Error(`invalid exponent, negatives unsupported`);if(n===No)return e.ONE;if(n===Po)return t;let r=e.ONE,i=t;for(;n>No;)n&Po&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Po;return r}function Eo(e,t,n=!1){let r=Array(t.length).fill(n?e.ZERO:void 0),i=t.reduce((t,n,i)=>e.is0(n)?t:(r[i]=t,e.mul(t,n)),e.ONE),a=e.inv(i);return t.reduceRight((t,n,i)=>e.is0(n)?t:(r[i]=e.mul(t,r[i]),e.mul(t,n)),a),r}function Do(e,t){let n=(e.ORDER-Po)/Fo,r=e.pow(t,n),i=e.eql(r,e.ONE),a=e.eql(r,e.ZERO),o=e.eql(r,e.neg(e.ONE));if(!i&&!a&&!o)throw Error(`invalid Legendre symbol result`);return i?1:a?0:-1}function Oo(e,t){t!==void 0&&st(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function ko(e,t,n=!1,r={}){if(e<=No)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Oo(e,t);if(a>2048)throw Error(`invalid field: expected ORDER of <= 2048 bytes`);let o,s=Object.freeze({ORDER:e,isLE:n,BITS:i,BYTES:a,MASK:_r(i),ZERO:No,ONE:Po,create:t=>_o(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return No<=t&&t<e},is0:e=>e===No,isOdd:e=>(e&Po)===Po,neg:t=>_o(-t,e),eql:(e,t)=>e===t,sqr:t=>_o(t*t,e),add:(t,n)=>_o(t+n,e),sub:(t,n)=>_o(t-n,e),mul:(t,n)=>_o(t*n,e),pow:(e,t)=>To(s,e,t),div:(t,n)=>_o(t*yo(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>yo(t,e),sqrt:r.sqrt||(t=>(o||=Co(e),o(s,t))),toBytes:e=>n?er(e,a):$n(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?Qn(e):Zn(e)},invertBatch:e=>Eo(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Ao(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function jo(e){let t=Ao(e);return t+Math.ceil(t/2)}function Mo(e,t,n=!1){let r=e.length,i=Ao(t),a=jo(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=_o(n?Qn(e):Zn(e),t-Po)+Po;return n?er(o,i):$n(o,i)}var No,Po,Fo,Io,Lo,Ro,zo,Bo,Vo=o((()=>{Dt(),xr(),No=BigInt(0),Po=BigInt(1),Fo=BigInt(2),Io=BigInt(3),Lo=BigInt(4),Ro=BigInt(5),zo=BigInt(8),Bo=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Ho(e,t){let n=t.negate();return e?n:t}function Uo(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Wo(e,t){Uo(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:_r(e),maxNumber:i,shiftBy:BigInt(e)}}function Go(e,t,n){let{windowSize:r,mask:i,maxNumber:a,shiftBy:o}=n,s=Number(e&i),c=e>>o;s>r&&(s-=a,c+=$o);let l=t*r,u=l+Math.abs(s)-1,d=s===0,f=s<0,p=t%2!=0;return{nextN:c,offset:u,isZero:d,isNeg:f,isNegF:p,offsetF:l}}function Ko(e,t){if(!Array.isArray(e))throw Error(`array expected`);e.forEach((e,n)=>{if(!(e instanceof t))throw Error(`invalid point at index `+n)})}function qo(e,t){if(!Array.isArray(e))throw Error(`array of scalars expected`);e.forEach((e,n)=>{if(!t.isValid(e))throw Error(`invalid scalar at index `+n)})}function Jo(e){return ts.get(e)||1}function Yo(e,t){return{constTimeNegate:Ho,hasPrecomputes(e){return Jo(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>Qo;)n&$o&&(r=r.add(i)),i=i.double(),n>>=$o;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Wo(n,t),a=[],o=e,s=o;for(let e=0;e<r;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a},wNAF(n,r,i){let a=e.ZERO,o=e.BASE,s=Wo(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=Go(i,e,s);i=t,c?o=o.add(Ho(u,r[d])):a=a.add(Ho(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Wo(n,t);for(let e=0;e<o.windows&&i!==Qo;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=Go(i,e,o);if(i=t,!s){let e=r[n];a=a.add(c?e.negate():e)}}return a},getPrecomputes(e,t,n){let r=es.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&es.set(t,n(r))),r},wNAFCached(e,t,n){let r=Jo(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=Jo(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Uo(n,t),ts.set(e,n),es.delete(e)}}}function Xo(e,t,n,r){Ko(n,e),qo(r,t);let i=n.length,a=r.length;if(i!==a)throw Error(`arrays of points and scalars must have equal length`);let o=e.ZERO,s=sr(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=_r(c),u=Array(Number(l)+1).fill(o),d=Math.floor((t.BITS-1)/c)*c,f=o;for(let e=d;e>=0;e-=c){u.fill(o);for(let t=0;t<a;t++){let i=r[t],a=Number(i>>BigInt(e)&l);u[a]=u[a].add(n[t])}let t=o;for(let e=u.length-1,n=o;e>0;e--)n=n.add(u[e]),t=t.add(n);if(f=f.add(t),e!==0)for(let e=0;e<c;e++)f=f.double()}return f}function Zo(e){return wo(e.Fp),lr(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Oo(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var Qo,$o,es,ts,ns=o((()=>{Vo(),xr(),Qo=BigInt(0),$o=BigInt(1),es=new WeakMap,ts=new WeakMap}));function rs(e){e.lowS!==void 0&&Gn(`lowS`,e.lowS),e.prehash!==void 0&&Gn(`prehash`,e.prehash)}function is(e){let t=Zo(e);lr(t,{a:`field`,b:`field`},{allowInfinityPoint:`boolean`,allowedPrivateKeyLengths:`array`,clearCofactor:`function`,fromBytes:`function`,isTorsionFree:`function`,toBytes:`function`,wrapPrivateKey:`boolean`});let{endo:n,Fp:r,a:i}=t;if(n){if(!r.eql(i,r.ZERO))throw Error(`invalid endo: CURVE.a must be 0`);if(typeof n!=`object`||typeof n.beta!=`bigint`||typeof n.splitScalar!=`function`)throw Error(`invalid endo: expected \"beta\": bigint and \"splitScalar\": function`)}return Object.freeze({...t})}function as(e,t){return Jn($n(e,t))}function os(e){let t=is(e),{Fp:n}=t,r=ko(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return nr(Uint8Array.from([4]),n.toBytes(i.x),n.toBytes(i.y))}),a=t.fromBytes||(e=>{let t=e.subarray(1);return{x:n.fromBytes(t.subarray(0,n.BYTES)),y:n.fromBytes(t.subarray(n.BYTES,2*n.BYTES))}});function o(e){let{a:r,b:i}=t,a=n.sqr(e),o=n.mul(a,e);return n.add(n.add(o,n.mul(e,r)),i)}function s(e,t){let r=n.sqr(t),i=o(e);return n.eql(r,i)}if(!s(t.Gx,t.Gy))throw Error(`bad curve params: generator point`);let c=n.mul(n.pow(t.a,gs),_s),l=n.mul(n.sqr(t.b),BigInt(27));if(n.is0(n.add(c,l)))throw Error(`bad curve params: a or b`);function u(e){return ar(e,ms,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Un(e)&&(e=Jn(e)),typeof e!=`string`||!n.includes(e.length))throw Error(`invalid private key`);e=e.padStart(r*2,`0`)}let o;try{o=typeof e==`bigint`?e:Zn(tr(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=_o(o,a)),or(`private key`,o,ms,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=ur((e,t)=>{let{px:r,py:i,pz:a}=e;if(n.eql(a,n.ONE))return{x:r,y:i};let o=e.is0();t??=o?n.ONE:n.inv(a);let s=n.mul(r,t),c=n.mul(i,t),l=n.mul(a,t);if(o)return{x:n.ZERO,y:n.ZERO};if(!n.eql(l,n.ONE))throw Error(`invZ was invalid`);return{x:s,y:c}}),m=ur(e=>{if(e.is0()){if(t.allowInfinityPoint&&!n.is0(e.py))return;throw Error(`bad point: ZERO`)}let{x:r,y:i}=e.toAffine();if(!n.isValid(r)||!n.isValid(i))throw Error(`bad point: x or y not FE`);if(!s(r,i))throw Error(`bad point: equation left != right`);if(!e.isTorsionFree())throw Error(`bad point: not in prime-order subgroup`);return!0});class h{constructor(e,t,r){if(e==null||!n.isValid(e))throw Error(`x required`);if(t==null||!n.isValid(t)||n.is0(t))throw Error(`y required`);if(r==null||!n.isValid(r))throw Error(`z required`);this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!n.isValid(t)||!n.isValid(r))throw Error(`invalid affine point`);if(e instanceof h)throw Error(`projective point not allowed`);let i=e=>n.eql(e,n.ZERO);return i(t)&&i(r)?h.ZERO:new h(t,r,n.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=Eo(n,e.map(e=>e.pz));return e.map((e,n)=>e.toAffine(t[n])).map(h.fromAffine)}static fromHex(e){let t=h.fromAffine(a(tr(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return Xo(h,r,e,t)}_setWindowSize(e){v.setWindowSize(this,e)}assertValidity(){m(this)}hasEvenY(){let{y:e}=this.toAffine();if(n.isOdd)return!n.isOdd(e);throw Error(`Field doesn't support isOdd`)}equals(e){f(e);let{px:t,py:r,pz:i}=this,{px:a,py:o,pz:s}=e,c=n.eql(n.mul(t,s),n.mul(a,i)),l=n.eql(n.mul(r,s),n.mul(o,i));return c&&l}negate(){return new h(this.px,n.neg(this.py),this.pz)}double(){let{a:e,b:r}=t,i=n.mul(r,gs),{px:a,py:o,pz:s}=this,c=n.ZERO,l=n.ZERO,u=n.ZERO,d=n.mul(a,a),f=n.mul(o,o),p=n.mul(s,s),m=n.mul(a,o);return m=n.add(m,m),u=n.mul(a,s),u=n.add(u,u),c=n.mul(e,u),l=n.mul(i,p),l=n.add(c,l),c=n.sub(f,l),l=n.add(f,l),l=n.mul(c,l),c=n.mul(m,c),u=n.mul(i,u),p=n.mul(e,p),m=n.sub(d,p),m=n.mul(e,m),m=n.add(m,u),u=n.add(d,d),d=n.add(u,d),d=n.add(d,p),d=n.mul(d,m),l=n.add(l,d),p=n.mul(o,s),p=n.add(p,p),d=n.mul(p,m),c=n.sub(c,d),u=n.mul(p,f),u=n.add(u,u),u=n.add(u,u),new h(c,l,u)}add(e){f(e);let{px:r,py:i,pz:a}=this,{px:o,py:s,pz:c}=e,l=n.ZERO,u=n.ZERO,d=n.ZERO,p=t.a,m=n.mul(t.b,gs),g=n.mul(r,o),_=n.mul(i,s),v=n.mul(a,c),y=n.add(r,i),b=n.add(o,s);y=n.mul(y,b),b=n.add(g,_),y=n.sub(y,b),b=n.add(r,a);let x=n.add(o,c);return b=n.mul(b,x),x=n.add(g,v),b=n.sub(b,x),x=n.add(i,a),l=n.add(s,c),x=n.mul(x,l),l=n.add(_,v),x=n.sub(x,l),d=n.mul(p,b),l=n.mul(m,v),d=n.add(l,d),l=n.sub(_,d),d=n.add(_,d),u=n.mul(l,d),_=n.add(g,g),_=n.add(_,g),v=n.mul(p,v),b=n.mul(m,b),_=n.add(_,v),v=n.sub(g,v),v=n.mul(p,v),b=n.add(b,v),g=n.mul(_,b),u=n.add(u,g),g=n.mul(x,b),l=n.mul(y,l),l=n.sub(l,g),g=n.mul(y,_),d=n.mul(x,d),d=n.add(d,g),new h(l,u,d)}subtract(e){return this.add(e.negate())}is0(){return this.equals(h.ZERO)}wNAF(e){return v.wNAFCached(this,e,h.normalizeZ)}multiplyUnsafe(e){let{endo:r,n:i}=t;or(`scalar`,e,ps,i);let a=h.ZERO;if(e===ps)return a;if(this.is0()||e===ms)return this;if(!r||v.hasPrecomputes(this))return v.wNAFCachedUnsafe(this,e,h.normalizeZ);let{k1neg:o,k1:s,k2neg:c,k2:l}=r.splitScalar(e),u=a,d=a,f=this;for(;s>ps||l>ps;)s&ms&&(u=u.add(f)),l&ms&&(d=d.add(f)),f=f.double(),s>>=ms,l>>=ms;return o&&(u=u.negate()),c&&(d=d.negate()),d=new h(n.mul(d.px,r.beta),d.py,d.pz),u.add(d)}multiply(e){let{endo:r,n:i}=t;or(`scalar`,e,ms,i);let a,o;if(r){let{k1neg:t,k1:i,k2neg:s,k2:c}=r.splitScalar(e),{p:l,f:u}=this.wNAF(i),{p:d,f}=this.wNAF(c);l=v.constTimeNegate(t,l),d=v.constTimeNegate(s,d),d=new h(n.mul(d.px,r.beta),d.py,d.pz),a=l.add(d),o=u.add(f)}else{let{p:t,f:n}=this.wNAF(e);a=t,o=n}return h.normalizeZ([a,o])[0]}multiplyAndAddUnsafe(e,t,n){let r=h.BASE,i=(e,t)=>t===ps||t===ms||!e.equals(r)?e.multiplyUnsafe(t):e.multiply(t),a=i(this,t).add(i(e,n));return a.is0()?void 0:a}toAffine(e){return p(this,e)}isTorsionFree(){let{h:e,isTorsionFree:n}=t;if(e===ms)return!0;if(n)return n(h,this);throw Error(`isTorsionFree() has not been declared for the elliptic curve`)}clearCofactor(){let{h:e,clearCofactor:n}=t;return e===ms?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Gn(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Gn(`isCompressed`,e),Jn(this.toRawBytes(e))}}h.BASE=new h(t.Gx,t.Gy,n.ONE),h.ZERO=new h(n.ZERO,n.ONE,n.ZERO);let{endo:g,nBitLength:_}=t,v=Yo(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function ss(e){let t=Zo(e);return lr(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function cs(e){let t=ss(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return _o(e,r)}function l(e){return yo(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=os({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=nr;return Gn(`isCompressed`,r),r?o(Uint8Array.from([t.hasEvenY()?2:3]),a):o(Uint8Array.from([4]),a,n.toBytes(i.y))},fromBytes(e){let t=e.length,r=e[0],i=e.subarray(1);if(t===o&&(r===2||r===3)){let e=Zn(i);if(!ar(e,ms,n.ORDER))throw Error(`Point is not on curve`);let t=f(e),a;try{a=n.sqrt(t)}catch(e){let t=e instanceof Error?`: `+e.message:``;throw Error(`Point is not on curve`+t)}let o=(a&ms)===ms;return(r&1)==1!==o&&(a=n.neg(a)),{x:e,y:a}}else if(t===s&&r===4)return{x:n.fromBytes(i.subarray(0,n.BYTES)),y:n.fromBytes(i.subarray(n.BYTES,2*n.BYTES))};else{let e=o,n=s;throw Error(`invalid Point, expected length of `+e+`, or uncompressed `+n+`, got `+t)}}});function m(e){return e>r>>ms}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>Zn(e.slice(t,n));class _{constructor(e,t,n){or(`r`,e,ms,r),or(`s`,t,ms,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=tr(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=fs.toSig(tr(`DER`,e));return new _(t,n)}assertValidity(){}addRecoveryBit(e){return new _(this.r,this.s,e)}recoverPublicKey(e){let{r,s:i,recovery:a}=this,o=ee(tr(`msgHash`,e));if(a==null||![0,1,2,3].includes(a))throw Error(`recovery id invalid`);let s=a===2||a===3?r+t.n:r;if(s>=n.ORDER)throw Error(`recovery id 2 or 3 invalid`);let d=a&1?`03`:`02`,f=u.fromHex(d+as(s,n.BYTES)),p=l(s),m=c(-o*p),h=c(i*p),g=u.BASE.multiplyAndAddUnsafe(f,m,h);if(!g)throw Error(`point at infinify`);return g.assertValidity(),g}hasHighS(){return m(this.s)}normalizeS(){return this.hasHighS()?new _(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return Xn(this.toDERHex())}toDERHex(){return fs.hexFromSig(this)}toCompactRawBytes(){return Xn(this.toCompactHex())}toCompactHex(){let e=i;return as(this.r,e)+as(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=jo(t.n);return Mo(t.randomBytes(e),t.n)},precompute(e=8,t=u.BASE){return t._setWindowSize(e),t.multiply(BigInt(3)),t}};function y(e,t=!0){return u.fromPrivateKey(e).toRawBytes(t)}function b(e){if(typeof e==`bigint`)return!1;if(e instanceof u)return!0;let r=tr(`key`,e).length,a=n.BYTES,o=a+1,s=2*a+1;if(!(t.allowedPrivateKeyLengths||i===o))return r===o||r===s}function x(e,t,n=!0){if(b(e)===!0)throw Error(`first arg must be private key`);if(b(t)===!1)throw Error(`second arg must be public key`);return u.fromHex(t).multiply(d(e)).toRawBytes(n)}let S=t.bits2int||function(e){if(e.length>8192)throw Error(`input is too large`);let t=Zn(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},C=_r(a);function w(e){return or(`num < 2^`+a,e,ps,C),$n(e,i)}function te(e,r,i=ne){if([`recovered`,`canonical`].some(e=>e in i))throw Error(`sign() legacy options not supported`);let{hash:a,randomBytes:o}=t,{lowS:s,prehash:f,extraEntropy:g}=i;s??=!0,e=tr(`msgHash`,e),rs(i),f&&(e=tr(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[w(y),w(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(tr(`extraEntropy`,e))}let x=nr(...b),C=v;function te(e){let t=S(e);if(!p(t))return;let n=l(t),r=u.BASE.multiply(t).toAffine(),i=c(r.x);if(i===ps)return;let a=c(n*c(C+i*y));if(a===ps)return;let o=(r.x===i?0:2)|Number(r.y&ms),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:te}}let ne={lowS:t.lowS,prehash:!1},re={lowS:t.lowS,prehash:!1};function ie(e,n,r=ne){let{seed:i,k2sig:a}=te(e,n,r),o=t;return cr(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ae(e,n,r,i=re){let a=e;n=tr(`msgHash`,n),r=tr(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(rs(i),`strict`in i)throw Error(`options.strict was renamed to lowS`);if(d!==void 0&&d!==`compact`&&d!==`der`)throw Error(`format must be compact or der`);let f=typeof a==`string`||Un(a),p=!f&&!d&&typeof a==`object`&&!!a&&typeof a.r==`bigint`&&typeof a.s==`bigint`;if(!f&&!p)throw Error(`invalid signature, expected Uint8Array, hex string or Signature instance`);let m,h;try{if(p&&(m=new _(a.r,a.s)),f){try{d!==`compact`&&(m=_.fromDER(a))}catch(e){if(!(e instanceof fs.Err))throw e}!m&&d!==`der`&&(m=_.fromCompact(a))}h=u.fromHex(r)}catch{return!1}if(!m||o&&m.hasHighS())return!1;s&&(n=t.hash(n));let{r:g,s:v}=m,y=ee(n),b=l(v),x=c(y*b),S=c(g*b),C=u.BASE.multiplyAndAddUnsafe(h,x,S)?.toAffine();return C?c(C.x)===g:!1}return{CURVE:t,getPublicKey:y,getSharedSecret:x,sign:ie,verify:ae,ProjectivePoint:u,Signature:_,utils:v}}function ls(e,t){let n=e.ORDER,r=ps;for(let e=n-ms;e%hs===ps;e/=hs)r+=ms;let i=r,a=hs<<i-ms-ms,o=a*hs,s=(n-ms)/o,c=(s-ms)/hs,l=o-ms,u=a,d=e.pow(t,s),f=e.pow(t,(s+ms)/hs),p=(t,n)=>{let r=d,a=e.pow(n,l),o=e.sqr(a);o=e.mul(o,n);let s=e.mul(t,o);s=e.pow(s,c),s=e.mul(s,a),a=e.mul(s,n),o=e.mul(s,t);let p=e.mul(o,a);s=e.pow(p,u);let m=e.eql(s,e.ONE);a=e.mul(o,f),s=e.mul(p,r),o=e.cmov(a,o,m),p=e.cmov(s,p,m);for(let t=i;t>ms;t--){let n=t-hs;n=hs<<n-ms;let i=e.pow(p,n),s=e.eql(i,e.ONE);a=e.mul(o,r),r=e.mul(r,r),i=e.mul(p,r),o=e.cmov(a,o,s),p=e.cmov(i,p,s)}return{isValid:m,value:o}};if(e.ORDER%_s===gs){let n=(e.ORDER-gs)/_s,r=e.sqrt(e.neg(t));p=(t,i)=>{let a=e.sqr(i),o=e.mul(t,i);a=e.mul(a,o);let s=e.pow(a,n);s=e.mul(s,o);let c=e.mul(s,r),l=e.mul(e.sqr(s),i),u=e.eql(l,t);return{isValid:u,value:e.cmov(c,s,u)}}}return p}function us(e,t){if(wo(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=ls(e,t.Z);if(!e.isOdd)throw Error(`Fp.isOdd is not implemented!`);return r=>{let i,a,o,s,c,l,u,d;i=e.sqr(r),i=e.mul(i,t.Z),a=e.sqr(i),a=e.add(a,i),o=e.add(a,e.ONE),o=e.mul(o,t.B),s=e.cmov(t.Z,e.neg(a),!e.eql(a,e.ZERO)),s=e.mul(s,t.A),a=e.sqr(o),l=e.sqr(s),c=e.mul(l,t.A),a=e.add(a,c),a=e.mul(a,o),l=e.mul(l,s),c=e.mul(l,t.B),a=e.add(a,c),u=e.mul(i,o);let{isValid:f,value:p}=n(a,l);d=e.mul(i,r),d=e.mul(d,p),u=e.cmov(u,o,f),d=e.cmov(d,p,f);let m=e.isOdd(r)===e.isOdd(d);d=e.cmov(e.neg(d),d,m);let h=Eo(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var ds,fs,ps,ms,hs,gs,_s,vs=o((()=>{ns(),Vo(),xr(),ds=class extends Error{constructor(e=``){super(e)}},fs={Err:ds,_tlv:{encode:(e,t)=>{let{Err:n}=fs;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length&1)throw new n(`tlv.encode: unpadded data`);let r=t.length/2,i=Kn(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Kn(i.length/2|128):``;return Kn(e)+a+i+t},decode(e,t){let{Err:n}=fs,r=0;if(e<0||e>256)throw new n(`tlv.encode: wrong tag`);if(t.length<2||t[r++]!==e)throw new n(`tlv.decode: wrong tlv`);let i=t[r++],a=!!(i&128),o=0;if(!a)o=i;else{let e=i&127;if(!e)throw new n(`tlv.decode(long): indefinite length not supported`);if(e>4)throw new n(`tlv.decode(long): byte length is too big`);let a=t.subarray(r,r+e);if(a.length!==e)throw new n(`tlv.decode: length bytes not complete`);if(a[0]===0)throw new n(`tlv.decode(long): zero leftmost byte`);for(let e of a)o=o<<8|e;if(r+=e,o<128)throw new n(`tlv.decode(long): not minimal encoding`)}let s=t.subarray(r,r+o);if(s.length!==o)throw new n(`tlv.decode: wrong value length`);return{v:s,l:t.subarray(r+o)}}},_int:{encode(e){let{Err:t}=fs;if(e<ps)throw new t(`integer: negative integers are not allowed`);let n=Kn(e);if(Number.parseInt(n[0],16)&8&&(n=`00`+n),n.length&1)throw new t(`unexpected DER parsing assertion: unpadded hex`);return n},decode(e){let{Err:t}=fs;if(e[0]&128)throw new t(`invalid signature integer: negative`);if(e[0]===0&&!(e[1]&128))throw new t(`invalid signature integer: unnecessary leading zero`);return Zn(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=fs,i=tr(`signature`,e),{v:a,l:o}=r.decode(48,i);if(o.length)throw new t(`invalid signature: left bytes after parsing`);let{v:s,l:c}=r.decode(2,a),{v:l,l:u}=r.decode(2,c);if(u.length)throw new t(`invalid signature: left bytes after parsing`);return{r:n.decode(s),s:n.decode(l)}},hexFromSig(e){let{_tlv:t,_int:n}=fs,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},ps=BigInt(0),ms=BigInt(1),hs=BigInt(2),gs=BigInt(3),_s=BigInt(4)}));function ys(e){return{hash:e,hmac:(t,...n)=>kt(e,t,bt(...n)),randomBytes:Ct}}function bs(e,t){let n=t=>cs({...e,...ys(t)});return{...n(t),create:n}}var xs=o((()=>{At(),Dt(),vs()}));function Ss(e,t){if(ws(e),ws(t),e<0||e>=1<<8*t)throw Error(`invalid I2OSP input: `+e);let 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 Cs(e,t){let n=new Uint8Array(e.length);for(let r=0;r<e.length;r++)n[r]=e[r]^t[r];return n}function ws(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Ts(e,t,n,r){Wn(e),Wn(t),ws(n),t.length>255&&(t=r(nr(ir(`H2C-OVERSIZE-DST-`),t)));let{outputLen:i,blockLen:a}=r,o=Math.ceil(n/i);if(n>65535||o>255)throw Error(`expand_message_xmd: invalid lenInBytes`);let s=nr(t,Ss(t.length,1)),c=Ss(0,a),l=Ss(n,2),u=Array(o),d=r(nr(c,e,l,Ss(0,1),s));u[0]=r(nr(d,Ss(1,1),s));for(let e=1;e<=o;e++)u[e]=r(nr(Cs(d,u[e-1]),Ss(e+1,1),s));return nr(...u).slice(0,n)}function Es(e,t,n,r,i){if(Wn(e),Wn(t),ws(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(ir(`H2C-OVERSIZE-DST-`)).update(t).digest()}if(n>65535||t.length>255)throw Error(`expand_message_xof: invalid lenInBytes`);return i.create({dkLen:n}).update(e).update(Ss(n,2)).update(t).update(Ss(t.length,1)).digest()}function Ds(e,t,n){lr(n,{DST:`stringOrUint8Array`,p:`bigint`,m:`isSafeInteger`,k:`isSafeInteger`,hash:`hash`});let{p:r,k:i,m:a,hash:o,expand:s,DST:c}=n;Wn(e),ws(t);let l=typeof c==`string`?ir(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Ts(e,l,f,o);else if(s===`xof`)p=Es(e,l,f,i,o);else if(s===`_internal_pass`)p=e;else throw Error(`expand must be \"xmd\" or \"xof\"`);let m=Array(t);for(let e=0;e<t;e++){let t=Array(a);for(let n=0;n<a;n++){let i=d*(n+e*a);t[n]=_o(As(p.subarray(i,i+d)),r)}m[e]=t}return m}function Os(e,t){let n=t.map(e=>Array.from(e).reverse());return(t,r)=>{let[i,a,o,s]=n.map(n=>n.reduce((n,r)=>e.add(e.mul(n,t),r))),[c,l]=Eo(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function ks(e,t,n){if(typeof t!=`function`)throw Error(`mapToCurve() must be defined`);function r(n){return e.fromAffine(t(n))}function i(t){let n=t.clearCofactor();return n.equals(e.ZERO)?e.ZERO:(n.assertValidity(),n)}return{defaults:n,hashToCurve(e,t){let a=Ds(e,2,{...n,DST:n.DST,...t}),o=r(a[0]),s=r(a[1]);return i(o.add(s))},encodeToCurve(e,t){return i(r(Ds(e,1,{...n,DST:n.encodeDST,...t})[0]))},mapToCurve(e){if(!Array.isArray(e))throw Error(`expected array of bigints`);for(let t of e)if(typeof t!=`bigint`)throw Error(`expected array of bigints`);return i(r(e))}}}var As,js=o((()=>{Vo(),xr(),As=Zn})),Ms=c({encodeToCurve:()=>cc,hashToCurve:()=>sc,schnorr:()=>rc,secp256k1:()=>Js,secp256k1_hasher:()=>oc});function Ns(e){let t=Vs,n=BigInt(3),r=BigInt(6),i=BigInt(11),a=BigInt(22),o=BigInt(23),s=BigInt(44),c=BigInt(88),l=e*e*e%t,u=l*l*e%t,d=vo(vo(vo(u,n,t)*u%t,n,t)*u%t,Gs,t)*l%t,f=vo(d,i,t)*d%t,p=vo(f,a,t)*f%t,m=vo(p,s,t)*p%t,h=vo(vo(vo(vo(vo(vo(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Gs,t);if(!qs.eql(qs.sqr(h),e))throw Error(`Cannot find square root`);return h}function Ps(e,...t){let n=Ys[e];if(n===void 0){let t=Rn(Uint8Array.from(e,e=>e.charCodeAt(0)));n=nr(t,t),Ys[e]=n}return Rn(nr(n,...t))}function Fs(e){let t=Js.utils.normPrivateKeyToScalar(e),n=ec.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:$s(-t),bytes:Xs(n)}}function Is(e){or(`x`,e,Ws,Vs);let t=Ns(Qs(Qs(e*e)*e+BigInt(7)));t%Gs!==Us&&(t=Qs(-t));let n=new ec(e,t,Ws);return n.assertValidity(),n}function Ls(...e){return $s(nc(Ps(`BIP0340/challenge`,...e)))}function Rs(e){return Fs(e).bytes}function zs(e,t,n=Ct(32)){let r=tr(`message`,e),{bytes:i,scalar:a}=Fs(t),o=$s(nc(Ps(`BIP0340/nonce`,Zs(a^nc(Ps(`BIP0340/aux`,tr(`auxRand`,n,32)))),i,r)));if(o===Us)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Fs(o),l=Ls(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(Zs($s(c+l*a)),32),!Bs(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Bs(e,t,n){let r=tr(`signature`,e,64),i=tr(`message`,t),a=tr(`publicKey`,n,32);try{let e=Is(nc(a)),t=nc(r.subarray(0,32));if(!ar(t,Ws,Vs))return!1;let n=nc(r.subarray(32,64));if(!ar(n,Ws,Hs))return!1;let o=tc(e,n,$s(-Ls(Zs(t),Xs(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Vs,Hs,Us,Ws,Gs,Ks,qs,Js,Ys,Xs,Zs,Qs,$s,ec,tc,nc,rc,ic,ac,oc,sc,cc,lc=o((()=>{Vn(),Dt(),xs(),js(),Vo(),xr(),vs(),Vs=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Hs=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Us=BigInt(0),Ws=BigInt(1),Gs=BigInt(2),Ks=(e,t)=>(e+t/Gs)/t,qs=ko(Vs,void 0,void 0,{sqrt:Ns}),Js=bs({a:Us,b:BigInt(7),Fp:qs,n:Hs,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Hs,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Ws*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=Ks(a*e,t),c=Ks(-r*e,t),l=_o(e-s*n-c*i,t),u=_o(-s*r-c*a,t),d=l>o,f=u>o;if(d&&(l=t-l),f&&(u=t-u),l>o||u>o)throw Error(`splitScalar: Endomorphism failed, k=`+e);return{k1neg:d,k1:l,k2neg:f,k2:u}}}},Rn),Ys={},Xs=e=>e.toRawBytes(!0).slice(1),Zs=e=>$n(e,32),Qs=e=>_o(e,Vs),$s=e=>_o(e,Hs),ec=Js.ProjectivePoint,tc=(e,t,n)=>ec.BASE.multiplyAndAddUnsafe(e,t,n),nc=Zn,rc={getPublicKey:Rs,sign:zs,verify:Bs,utils:{randomPrivateKey:Js.utils.randomPrivateKey,lift_x:Is,pointToBytes:Xs,numberToBytesBE:$n,bytesToNumberBE:Zn,taggedHash:Ps,mod:_o}},ic=Os(qs,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),ac=us(qs,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:qs.create(BigInt(`-11`))}),oc=ks(Js.ProjectivePoint,e=>{let{x:t,y:n}=ac(qs.create(e[0]));return ic(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:qs.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),sc=oc.hashToCurve,cc=oc.encodeToCurve}));rt(),O(),Rr();function uc(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new wc({signature:e});if(e.r<0n||e.r>va)throw new Tc({value:e.r});if(e.s<0n||e.s>va)throw new Ec({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Dc({value:e.yParity})}function dc(e){return fc(Ur(e))}function fc(e){if(e.length!==130&&e.length!==132)throw new Cc({signature:e});let t=BigInt(D(e,0,32)),n=BigInt(D(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return xc(t)}catch{throw new Dc({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function pc(e){if(e.r!==void 0&&e.s!==void 0)return mc(e)}function mc(e){let t=typeof e==`string`?fc(e):e instanceof Uint8Array?dc(e):typeof e.r==`string`?gc(e):e.v?hc(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return uc(t),t}function hc(e){return{r:e.r,s:e.s,yParity:xc(e.v)}}function gc(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=xc(t)),typeof n!=`number`)throw new Dc({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function _c(e){let[t,n,r]=e;return mc({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function vc(e){uc(e);let t=e.r,n=e.s;return Br(E(t,{size:32}),E(n,{size:32}),typeof e.yParity==`number`?E(Sc(e.yParity),{size:1}):`0x`)}function yc(e){let{r:t,s:n,yParity:r}=e;return{r:E(t,{size:32}),s:E(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function bc(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:Yr(E(t)),n===0n?`0x`:Yr(E(n))]}function xc(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Oc({value:e})}function Sc(e){if(e===0)return 27;if(e===1)return 28;throw new Dc({value:e})}var Cc=class extends T{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${Jr(Vr(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},wc=class extends T{constructor({signature:e}){super(`Signature \\`${Ir(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Tc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},Ec=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},Dc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},Oc=class extends T{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};O();function kc(e,t={}){return typeof e.chainId==`string`?Ac(e):{...e,...t.signature}}function Ac(e){let{address:t,chainId:n,nonce:r}=e,i=pc(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function jc(e){return e.map(Ac)}function Mc(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:E(n),nonce:E(r),...yc(i)}}function Nc(e){return e.map(Mc)}Pi();let Pc=new TextEncoder,Fc=new TextDecoder,Ic=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),Lc={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function Rc(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=Ic[r>>18],i[t+1]=Ic[r>>12&63],i[t+2]=Ic[r>>6&63],i[t+3]=Ic[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=Fc.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function zc(e,t={}){return Rc(pi(e),t)}function Bc(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Pc.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(Lc[r[e]]<<18)+(Lc[r[e+1]]<<12)+(Lc[r[e+2]]<<6)+Lc[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}let Vc={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Hc={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Uc(e,t={}){if(!e)return null;let n=pc(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=jc(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=Hc[e.type]??e.type),n&&(r.v=Sc(n.yParity)),r}function Wc(e){return{address:e.address,amount:E(e.amount),index:E(e.index),validatorIndex:E(e.validatorIndex)}}var Gc=o((()=>{O()}));function Kc(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:E(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:E(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:E(e.gasLimit)},...typeof e.number==`bigint`&&{number:E(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:E(e.prevRandao)},...typeof e.time==`bigint`&&{time:E(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Wc)}}}var qc=o((()=>{O(),Gc()}));Pi(),rt(),O();function Jc(e,t={}){let{as:n=`Hex`}=t,r=cl(e),i=Ba(new Uint8Array(r.length));return r.encode(i),n===`Hex`?Ur(i.bytes):i.bytes}var Yc=class extends T{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},Xc=class extends T{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},Zc=class extends T{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},Qc=class extends T{constructor({tag:e}){super(`CBOR tagged data (tag ${e}) is not yet supported.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedTagError`})}},$c=class extends T{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},el=class extends T{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},tl=class extends T{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},nl=class extends T{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},rl=class extends T{constructor({number:e}){super(`Number exceeds maximum safe integer (${2**53-1}): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.NumberTooLargeError`})}},il=class extends T{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},al=class extends T{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},ol=class extends T{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},sl=class extends T{constructor({size:e}){super(`Byte string length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ByteStringTooLargeError`})}};function cl(e){if(e===void 0)return{length:1,encode:e=>e.pushUint8(247)};if(e===null)return{length:1,encode:e=>e.pushUint8(246)};if(typeof e==`boolean`)return{length:1,encode:t=>t.pushUint8(e?245:244)};if(typeof e==`number`)return cl.number(e);if(typeof e==`bigint`)throw new tl;if(typeof e==`string`)return cl.string(e);if(Array.isArray(e))return cl.array(e);if(e instanceof Uint8Array)return cl.byteString(e);if(e instanceof ArrayBuffer)return cl.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return cl.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return cl.map(e);if(typeof e==`object`)return cl.object(e);throw new nl({token:String(e)})}(function(e){function t(e){if(!Number.isSafeInteger(e)){let t=Math.fround(e);return Number.isNaN(e)||e===t?{length:5,encode(t){t.pushUint8(250),t.dataView.setFloat32(t.position,e,!1),t.position+=4}}:{length:9,encode(t){t.pushUint8(251),t.dataView.setFloat64(t.position,e,!1),t.position+=8}}}if(e>=0){if(e<=23)return{length:1,encode:t=>t.pushUint8(e)};if(e<=255)return{length:2,encode:t=>{t.pushUint8(24),t.pushUint8(e)}};if(e<=65535)return{length:3,encode:t=>{t.pushUint8(25),t.pushUint16(e)}};if(e<=4294967295)return{length:5,encode:t=>{t.pushUint8(26),t.pushUint32(e)}};throw new rl({number:e.toString(10)})}let t=-1-e;if(e>=-24)return{length:1,encode:e=>e.pushUint8(32+t)};if(t<=255)return{length:2,encode:e=>{e.pushUint8(56),e.pushUint8(t)}};if(t<=65535)return{length:3,encode:e=>{e.pushUint8(57),e.pushUint16(t)}};if(t<=4294967295)return{length:5,encode:e=>{e.pushUint8(58),e.pushUint32(t)}};throw new rl({number:e.toString(10)})}e.number=t;function n(e){let t=mi(e),n=t.length;if(n<=23)return{length:1+n,encode(e){e.pushUint8(96+n),n>0&&e.pushBytes(t)}};if(n<=255)return{length:2+n,encode(e){e.pushUint8(120),e.pushUint8(n),e.pushBytes(t)}};if(n<=65535)return{length:3+n,encode(e){e.pushUint8(121),e.pushUint16(n),e.pushBytes(t)}};if(n<=4294967295)return{length:5+n,encode(e){e.pushUint8(122),e.pushUint32(n),e.pushBytes(t)}};throw new il({size:n})}e.string=n;function r(t){let n=t.map(t=>e(t)),r=n.reduce((e,t)=>e+t.length,0),i=t.length;if(i<=23)return{length:1+r,encode(e){e.pushUint8(128+i);for(let t of n)t.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(152),e.pushUint8(i);for(let t of n)t.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(153),e.pushUint16(i);for(let t of n)t.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(154),e.pushUint32(i);for(let t of n)t.encode(e)}};throw new al({size:i})}e.array=r;function i(e){let t=e.byteLength;if(t<=23)return{length:1+t,encode(n){n.pushUint8(64+t),n.pushBytes(e)}};if(t<=255)return{length:2+t,encode(n){n.pushUint8(88),n.pushUint8(t),n.pushBytes(e)}};if(t<=65535)return{length:3+t,encode(n){n.pushUint8(89),n.pushUint16(t),n.pushBytes(e)}};if(t<=4294967295)return{length:5+t,encode(n){n.pushUint8(90),n.pushUint32(t),n.pushBytes(e)}};throw new sl({size:t})}e.byteString=i;function a(t){let n=Object.keys(t),r=n.map(n=>({key:e(n),value:e(t[n])})),i=r.reduce((e,t)=>e+t.key.length+t.value.length,0),a=n.length;if(a<=23)return{length:1+i,encode(e){e.pushUint8(160+a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=255)return{length:2+i,encode(e){e.pushUint8(184),e.pushUint8(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=65535)return{length:3+i,encode(e){e.pushUint8(185),e.pushUint16(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};if(a<=4294967295)return{length:5+i,encode(e){e.pushUint8(186),e.pushUint32(a);for(let t of r)t.key.encode(e),t.value.encode(e)}};throw new ol({size:a})}e.object=a;function o(t){let n=[];for(let[r,i]of t)n.push({key:e(r),value:e(i)});let r=n.reduce((e,t)=>e+t.key.length+t.value.length,0),i=t.size;if(i<=23)return{length:1+r,encode(e){e.pushUint8(160+i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=255)return{length:2+r,encode(e){e.pushUint8(184),e.pushUint8(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=65535)return{length:3+r,encode(e){e.pushUint8(185),e.pushUint16(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};if(i<=4294967295)return{length:5+r,encode(e){e.pushUint8(186),e.pushUint32(i);for(let t of n)t.key.encode(e),t.value.encode(e)}};throw new ol({size:i})}e.map=o})(cl||={});function ll(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return ll.readUnsignedInteger(e,r);case 1:return ll.readNegativeInteger(e,r);case 2:return ll.readByteString(e,r);case 3:return ll.readTextString(e,r);case 4:return ll.readArray(e,r);case 5:return ll.readMap(e,r);case 6:throw new Qc({tag:r});case 7:return ll.readSimpleOrFloat(e,r);default:throw new Yc({majorType:n})}}(function(e){function t(e,t){if(t<24)return t;if(t===24)return e.readUint8();if(t===25)return e.readUint16();if(t===26)return e.readUint32();throw t===27?new Zc:new Xc({additionalInfo:t})}function n(e,n){return t(e,n)}e.readUnsignedInteger=n;function r(e,n){return-1-t(e,n)}e.readNegativeInteger=r;function i(n,r){if(r===31){let t=[],r=0;for(;;){if(n.inspectUint8()===255){n.readUint8();break}let i=e(n);if(!(i instanceof Uint8Array))throw new $c({type:`byte string`});t.push(i),r+=i.length}let i=new Uint8Array(r),a=0;for(let e of t)i.set(e,a),a+=e.length;return i}let i=t(n,r);return n.readBytes(i)}e.readByteString=i;function a(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n);if(typeof r!=`string`)throw new $c({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Ci(n.readBytes(i))}e.readTextString=a;function o(n,r){if(r===31){let t=[];for(;;){if(n.inspectUint8()===255){n.readUint8();break}t.push(e(n))}return t}let i=t(n,r),a=[];for(let t=0;t<i;t++)a.push(e(n));return a}e.readArray=o;function s(n,r){if(r===31){let t={};for(;;){if(n.inspectUint8()===255){n.readUint8();break}let r=e(n),i=typeof r==`string`?r:String(r);t[i]=e(n)}return t}let i=t(n,r),a={};for(let t=0;t<i;t++){let t=e(n),r=typeof t==`string`?t:String(t);a[r]=e(n)}return a}e.readMap=s;function c(e,t){if(t===20)return!1;if(t===21)return!0;if(t===22)return null;if(t!==23){if(t===25)return l(e.readUint16());if(t===26){let t=e.dataView.getFloat32(e.position,!1);return e.position+=4,t}if(t===27){let t=e.dataView.getFloat64(e.position,!1);return e.position+=8,t}if(t===24){let t=e.readUint8();if(t<32)throw new el({value:t});return}throw new Xc({additionalInfo:t})}}e.readSimpleOrFloat=c;function l(e){let t=e>>15&1,n=e>>10&31,r=e&1023;if(n===0){if(r===0)return t?-0:0;let e=2**-14*(r/1024);return t?-e:e}if(n===31)return r===0?t?-1/0:1/0:NaN;let i=2**(n-15)*(1+r/1024);return t?-i:i}})(ll||={}),rt();function ul(e){let t=Ui(e),n=t.slice(1,33),r=t.slice(33,65);return Jc(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}lc(),Pi(),O();function dl(e){let{privateKey:t}=e;return Bi(Js.ProjectivePoint.fromPrivateKey(Vr(t).slice(2)))}function fl(e){return ea(pl(e))}function pl(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Bi(new Js.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(Vr(t).substring(2)))}function ml(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Js.sign(di(r),di(i),{extraEntropy:typeof t==`boolean`?t:Vr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function hl(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?ta(t,fl({payload:r,signature:a})):Js.verify(a,di(r),Ui(i),...n?[{prehash:!0,lowS:!0}]:[])}Vn(),xs(),js(),Vo(),vs();let gl=ko(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),_l=gl.create(BigInt(`-3`)),vl=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),yl=bs({a:_l,b:vl,Fp:gl,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Rn),bl=yl,xl=us(gl,{A:_l,B:vl,Z:gl.create(BigInt(`-10`))}),Sl=ks(bl.ProjectivePoint,e=>xl(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:gl.ORDER,m:1,k:128,expand:`xmd`,hash:Rn}),Cl=ko(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),wl=Cl.create(BigInt(`-3`)),Tl=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),El=bs({a:wl,b:Tl,Fp:Cl,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Bn),Dl=us(Cl,{A:wl,B:Tl,Z:Cl.create(BigInt(`-12`))});ks(El.ProjectivePoint,e=>Dl(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Cl.ORDER,m:1,k:192,expand:`xmd`,hash:Bn});let Ol=ko(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),kl=Ol.create(BigInt(`-3`)),Al=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),jl=bs({a:kl,b:Al,Fp:Ol,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},zn),Ml=us(Ol,{A:kl,B:Al,Z:Ol.create(BigInt(`-4`))});ks(jl.ProjectivePoint,e=>Ml(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Ol.ORDER,m:1,k:256,expand:`xmd`,hash:zn});let Nl=yl,Pl=yl;Sl.hashToCurve,Sl.encodeToCurve,Pi(),O();function Fl(e){let{privateKey:t}=e;return Bi(Pl.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):Ur(t).slice(2)))}function Il(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Pl.sign(r instanceof Uint8Array?r:pi(r),i instanceof Uint8Array?i:pi(i),{extraEntropy:typeof t==`boolean`?t:Vr(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Ll(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Pl.verify(i,n instanceof Uint8Array?n:pi(n),Wi(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}var Rl=u(s(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1);function zl(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw Bl(r.error);return r.result}function Bl(e){let t=e;if(t instanceof Error&&!(`code`in t))return new Ql({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===Ql.code?new Ql(t):n===Hl.code?new Hl(t):n===Zl.code?new Zl(t):n===Yl.code?new Yl(t):n===ql.code?new ql(t):n===Xl.code?new Xl(t):n===Kl.code?new Kl(t):n===$l.code?new $l(t):n===Ul.code?new Ul(t):n===Wl.code?new Wl(t):n===Gl.code?new Gl(t):n===Jl.code?new Jl(t):new Ql({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var Vl=class extends Error{constructor(e){let{cause:t,code:n,message:r,data:i,stack:a}=e;super(r,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.BaseError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`stack`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=t,this.code=n,this.data=i,this.stack=a??``}},Hl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Missing or invalid parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidInputError`})}};Object.defineProperty(Hl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var Ul=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not found.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceNotFoundError`})}};Object.defineProperty(Ul,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var Wl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Requested resource not available.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ResourceUnavailableError`})}};Object.defineProperty(Wl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var Gl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Transaction creation failed.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.TransactionRejectedError`})}};Object.defineProperty(Gl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var Kl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method is not implemented.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotSupportedError`})}};Object.defineProperty(Kl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var ql=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Rate limit exceeded.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.LimitExceededError`})}};Object.defineProperty(ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var Jl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`JSON-RPC version not supported.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.VersionNotSupportedError`})}};Object.defineProperty(Jl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var Yl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Input is not a valid JSON-RPC request.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidRequestError`})}};Object.defineProperty(Yl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var Xl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Method does not exist.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.MethodNotFoundError`})}};Object.defineProperty(Xl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var Zl=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Invalid method parameters.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InvalidParamsError`})}};Object.defineProperty(Zl,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var Ql=class e extends Vl{constructor(t={}){super({cause:t.cause,code:e.code,data:t.data,message:t.message??`Internal JSON-RPC error.`,stack:t.stack}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.InternalError`})}};Object.defineProperty(Ql,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var $l=class e extends Vl{constructor(t={}){super({code:e.code,data:t.data,message:t.message??`Failed to parse JSON-RPC response.`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`RpcResponse.ParseError`})}};Object.defineProperty($l,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),rt();var eu=class extends Error{constructor(e,t){super(t),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ProviderRpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=e,this.details=t}},tu=class extends eu{constructor({message:e=`The user rejected the request.`}={}){super(4001,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UserRejectedRequestError`})}};Object.defineProperty(tu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var nu=class extends eu{constructor({message:e=`The requested method and/or account has not been authorized by the user.`}={}){super(4100,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnauthorizedError`})}};Object.defineProperty(nu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var ru=class extends eu{constructor({message:e=`The provider does not support the requested method.`}={}){super(4200,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedMethodError`})}};Object.defineProperty(ru,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var iu=class extends eu{constructor({message:e=`The provider is disconnected from all chains.`}={}){super(4900,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DisconnectedError`})}};Object.defineProperty(iu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var au=class extends eu{constructor({message:e=`The provider is not connected to the requested chain.`}={}){super(4901,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.ChainDisconnectedError`})}};Object.defineProperty(au,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var ou=class extends eu{constructor({message:e=`An error occurred when attempting to switch chain.`}={}){super(4902,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.SwitchChainError`})}};Object.defineProperty(ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var su=class extends eu{constructor({message:e=`This Wallet does not support a capability that was not marked as optional.`}={}){super(5700,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedNonOptionalCapabilityError`})}};Object.defineProperty(su,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var cu=class extends eu{constructor({message:e=`This Wallet does not support the requested chain ID.`}={}){super(5710,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnsupportedChainIdError`})}};Object.defineProperty(cu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var lu=class extends eu{constructor({message:e=`There is already a bundle submitted with this ID.`}={}){super(5720,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.DuplicateIdError`})}};Object.defineProperty(lu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var uu=class extends eu{constructor({message:e=`This bundle id is unknown / has not been submitted.`}={}){super(5730,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.UnknownBundleIdError`})}};Object.defineProperty(uu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var du=class extends eu{constructor({message:e=`The call bundle is too large for the Wallet to process.`}={}){super(5740,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.BundleTooLargeError`})}};Object.defineProperty(du,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var fu=class extends eu{constructor({message:e=`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`}={}){super(5750,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicReadyWalletRejectedUpgradeError`})}};Object.defineProperty(fu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var pu=class extends eu{constructor({message:e=`The wallet does not support atomic execution but the request requires it.`}={}){super(5760,e),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.AtomicityNotSupportedError`})}};Object.defineProperty(pu,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function mu(){let e=new Rl.default;return{get eventNames(){return e.eventNames.bind(e)},get listenerCount(){return e.listenerCount.bind(e)},get listeners(){return e.listeners.bind(e)},addListener:e.addListener.bind(e),emit:e.emit.bind(e),off:e.off.bind(e),on:e.on.bind(e),once:e.once.bind(e),removeAllListeners:e.removeAllListeners.bind(e),removeListener:e.removeListener.bind(e)}}function hu(e,t={}){if(!e)throw new _u;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?zl(n):n}catch(e){throw gu(e)}}}}function gu(e){let t=Bl(e);if(t instanceof Ql){if(!t.data)return t;let{code:e}=t.data;if(e===iu.code)return new iu(t);if(e===au.code)return new au(t);if(e===tu.code)return new tu(t);if(e===nu.code)return new nu(t);if(e===ru.code)return new ru(t);if(e===ou.code)return new ou(t);if(e===fu.code)return new fu(t);if(e===pu.code)return new pu(t);if(e===du.code)return new du(t);if(e===uu.code)return new uu(t);if(e===lu.code)return new lu(t);if(e===cu.code)return new cu(t);if(e===su.code)return new su(t)}return t}var _u=class extends T{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function vu(e={}){let t=e.id??0;return{prepare(e){return yu({id:t++,...e})},get id(){return t}}}function yu(e){return{...e,jsonrpc:`2.0`}}function bu(){return null}O();function xu(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Nc(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=E(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=E(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=E(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=E(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=E(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=E(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=E(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=E(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=Vc[e.type]||e.type),e.value!==void 0&&(t.value=E(e.value)),t}rt();let Su={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Cu(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function wu(e,t=`wei`){return Cu(e,Su.gwei-Su[t])}rt();var Tu=class extends T{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${wu(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},Eu=class extends T{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},Du=class extends T{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},Ou=class extends T{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${wu(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${wu(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};function ku(e){let t=Nl.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}O();function Au(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=Br(Ii(Wr(r)),E(n,{size:1}),E(i,{size:4}));if(!t)return a;let o=Ur(new Uint8Array(16)),s=Ur(t.id);return Br(a,o,E(t.id.length,{size:2}),s,ul(t.publicKey))}function ju(e){let{challenge:t,crossOrigin:n=!1,extraClientData:r,origin:i=window.location.origin,type:a=`webauthn.get`}=e;return JSON.stringify({type:a,challenge:zc(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Pi(),rt(),O();function Mu(e){let{credentialId:t,challenge:n,extensions:r,rpId:i=window.location.hostname,userVerification:a=`required`}=e;return{publicKey:{...t?{allowCredentials:Array.isArray(t)?t.map(e=>({id:Bc(e),type:`public-key`})):[{id:Bc(t),type:`public-key`}]}:{},challenge:pi(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Nu(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Au({flag:i,rpId:o,signCount:s}),u=ju({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ii(Wr(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:Br(l,d)}}async function Pu(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Mu(n);try{let e=await t(r);if(!e)throw new Fu;let n=e.response,i=new Uint8Array(n.clientDataJSON),a=new Uint8Array(n.authenticatorData),o=new Uint8Array(n.signature),s=e.id,c=String.fromCharCode(...i),l=c.indexOf(`\"challenge\"`),u=c.indexOf(`\"type\"`),d=ku(o);return{id:s,metadata:{authenticatorData:Ur(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Fu({cause:e})}}var Fu=class extends T{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function Iu(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=pi(s);if(u.length<37||a!==void 0&&!hi(u.slice(0,32),Ii(Wr(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||Ur(Bc(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Ll({hash:!0,payload:ui(u,Ii(mi(c),{as:`Bytes`})),publicKey:i,signature:o})}let Lu=Nu;async function Ru(e){return Pu(e)}function zu(e){return Iu(e)}Pi();async function Bu(e={}){let{extractable:t=!1}=e,n=await globalThis.crypto.subtle.generateKey({name:`ECDSA`,namedCurve:`P-256`},t,[`sign`,`verify`]),r=await globalThis.crypto.subtle.exportKey(`raw`,n.publicKey),i=Bi(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function Vu(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,di(t)),i=fi(new Uint8Array(r)),a=bi(yi(i,0,32)),o=bi(yi(i,32,64));return o>Nl.CURVE.n/2n&&(o=Nl.CURVE.n-o),{r:a,s:o}}var Hu,Uu=o((()=>{Hu=`1.2.3`})),Wu,Gu=o((()=>{Uu(),Wu=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${Hu}`].join(`\n`);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=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function Ku(e,t){return e.exec(t)?.groups}var qu,Ju,Yu,Xu=o((()=>{qu=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Ju=/^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)?$/,Yu=/^\\(.+?\\).*?$/}));function Zu(e){let t=e.type;if(Qu.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Zu(i),r<n-1&&(t+=`, `)}let r=Ku(Qu,e.type);return t+=`)${r?.array||``}`,Zu({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Qu,$u=o((()=>{Xu(),Qu=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function ed(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Zu(i),r!==n-1&&(t+=`, `)}return t}var td=o((()=>{$u()}));function nd(e){return e.type===`function`?`function ${e.name}(${ed(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${ed(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${ed(e.inputs)})`:e.type===`error`?`error ${e.name}(${ed(e.inputs)})`:e.type===`constructor`?`constructor(${ed(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var rd=o((()=>{td()}));function id(e){return _d.test(e)}function ad(e){return Ku(_d,e)}function od(e){return vd.test(e)}function sd(e){return Ku(vd,e)}function cd(e){return yd.test(e)}function ld(e){return Ku(yd,e)}function ud(e){return bd.test(e)}function dd(e){return Ku(bd,e)}function fd(e){return xd.test(e)}function pd(e){return Ku(xd,e)}function md(e){return Sd.test(e)}function hd(e){return Ku(Sd,e)}function gd(e){return Cd.test(e)}var _d,vd,yd,bd,xd,Sd,Cd,wd,Td,Ed=o((()=>{Xu(),_d=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,vd=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,yd=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,bd=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,xd=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Sd=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,Cd=/^receive\\(\\) external payable$/,wd=new Set([`indexed`]),Td=new Set([`calldata`,`memory`,`storage`])})),Dd,Od,kd=o((()=>{Gu(),Dd=class extends Wu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" 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`})}},Od=class extends Wu{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),Ad,jd,Md,Nd,Pd,Fd=o((()=>{Gu(),Ad=class extends Wu{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},jd=class extends Wu{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" 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`})}},Md=class extends Wu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Nd=class extends Wu{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Pd=class extends Wu{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),Id,Ld,Rd,zd=o((()=>{Gu(),Id=class extends Wu{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Ld=class extends Wu{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},Rd=class extends Wu{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),Bd,Vd=o((()=>{Gu(),Bd=class extends Wu{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),Hd,Ud=o((()=>{Gu(),Hd=class extends Wu{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function Wd(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var Gd,Kd=o((()=>{Gd=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 qd(e,t={}){if(cd(e))return Jd(e,t);if(od(e))return Yd(e,t);if(id(e))return Xd(e,t);if(fd(e))return Zd(e,t);if(md(e))return Qd(e);if(gd(e))return{type:`receive`,stateMutability:`payable`};throw new Ld({signature:e})}function Jd(e,t={}){let n=ld(e);if(!n)throw new Id({signature:e,type:`function`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{modifiers:Td,structs:t,type:`function`}));let o=[];if(n.returns){let e=ef(n.returns),r=e.length;for(let n=0;n<r;n++)o.push($d(e[n],{modifiers:Td,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function Yd(e,t={}){let n=sd(e);if(!n)throw new Id({signature:e,type:`event`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{modifiers:wd,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function Xd(e,t={}){let n=ad(e);if(!n)throw new Id({signature:e,type:`error`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function Zd(e,t={}){let n=pd(e);if(!n)throw new Id({signature:e,type:`constructor`});let r=ef(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push($d(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function Qd(e){let t=hd(e);if(!t)throw new Id({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function $d(e,t){let n=Wd(e,t?.type,t?.structs);if(Gd.has(n))return Gd.get(n);let r=Yu.test(e),i=Ku(r?of:af,e);if(!i)throw new Ad({param:e});if(i.name&&nf(i.name))throw new jd({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=ef(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push($d(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(sf.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!tf(c))throw new Od({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new Md({param:e,type:t?.type,modifier:i.modifier});if(Td.has(i.modifier)&&!rf(c,!!i.array))throw new Nd({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Gd.set(n,u),u}function ef(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?ef(o,[...t,n.trim()]):ef(o,t,`${n}${i}`,r);case`(`:return ef(o,t,`${n}${i}`,r+1);case`)`:return ef(o,t,`${n}${i}`,r-1);default:return ef(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Hd({current:n,depth:r});return t.push(n.trim()),t}function tf(e){return e===`address`||e===`bool`||e===`function`||e===`string`||qu.test(e)||Ju.test(e)}function nf(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||qu.test(e)||Ju.test(e)||cf.test(e)}function rf(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var af,of,sf,cf,lf=o((()=>{Xu(),kd(),Fd(),zd(),Ud(),Kd(),Ed(),af=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,of=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,sf=/^u?int$/,cf=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function uf(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!ud(n))continue;let i=dd(n);if(!i)throw new Id({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=$d(t,{type:`struct`});o.push(n)}if(!o.length)throw new Rd({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=df(a,t)}return r}function df(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Yu.test(i.type))r.push(i);else{let e=Ku(ff,i.type);if(!e?.type)throw new Pd({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Bd({type:o});r.push({...i,type:`tuple${a??``}`,components:df(t[o],t,new Set([...n,o]))})}else if(tf(o))r.push(i);else throw new Dd({type:o})}}return r}var ff,pf=o((()=>{Xu(),kd(),Fd(),zd(),Vd(),Ed(),lf(),ff=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function mf(e){let t=uf(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];ud(r)||n.push(qd(r,t))}return n}var hf=o((()=>{Ed(),pf(),lf()})),gf=o((()=>{Gu(),rd(),$u(),td(),hf(),kd(),Ed(),pf(),lf(),Fd(),zd(),Ud(),Vd()}));function _f(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function vf(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new Zf(e.type);return`${e.name}(${yf(e.inputs,{includeName:t})})`}function yf(e,{includeName:t=!1}={}){return e?e.map(e=>bf(e,{includeName:t})).join(t?`, `:`,`):``}function bf(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${yf(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var xf=o((()=>{Qf()}));function k(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Sf=o((()=>{}));function Cf(e){return k(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var wf=o((()=>{Sf()})),Tf,Ef=o((()=>{Tf=`2.47.6`}));function Df(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Df(e.cause,t):t?null:e}var Of,A,j=o((()=>{Ef(),Of={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Tf}`},A=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=Of.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Of.version?[`Version: ${Of.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=Tf}walk(e){return Df(this,e)}}})),kf,Af,jf,Mf,Nf,Pf,Ff,If,Lf,Rf,zf,Bf,Vf,Hf,Uf,Wf,Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf=o((()=>{xf(),wf(),j(),kf=class extends A{constructor({docsPath:e}){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(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},Af=class extends A{constructor({docsPath:e}){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(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},jf=class extends A{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${yf(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`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=e,this.params=t,this.size=n}},Mf=class extends A{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},Nf=class extends A{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},Pf=class extends A{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Cf(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},Ff=class extends A{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},If=class extends A{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" 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(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},Lf=class extends A{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},Rf=class extends A{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},zf=class extends A{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},Bf=class extends A{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},Vf=class extends A{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},Hf=class extends A{constructor(e,{docsPath:t}){super([`Function \"${e}\" 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(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},Uf=class extends A{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},Wf=class extends A{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${vf(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${vf(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},Gf=class extends A{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},Kf=class extends A{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${yf(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`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=e,this.data=t,this.params=n,this.size=r}},qf=class extends A{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${vf(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},Jf=class extends A{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},Yf=class extends A{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},Xf=class extends A{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},Zf=class extends A{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),$f,ep,tp,np=o((()=>{j(),$f=class extends A{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},ep=class extends A{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},tp=class extends A{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function rp(e,{dir:t,size:n=32}={}){return typeof e==`string`?ip(e,{dir:t,size:n}):ap(e,{dir:t,size:n})}function ip(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new ep({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function ap(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new ep({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var op=o((()=>{np()})),sp,cp,lp,up,dp,fp=o((()=>{j(),sp=class extends A{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},cp=class extends A{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},lp=class extends A{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},up=class extends A{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},dp=class extends A{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function pp(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var mp=o((()=>{}));function hp(e,{size:t}){if(Cf(e)>t)throw new dp({givenSize:Cf(e),maxSize:t})}function gp(e,t={}){let{signed:n}=t;t.size&&hp(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function _p(e,t={}){let n=e;if(t.size&&(hp(n,{size:t.size}),n=pp(n)),pp(n)===`0x00`)return!1;if(pp(n)===`0x01`)return!0;throw new lp(n)}function vp(e,t={}){let n=gp(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new sp({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var yp=o((()=>{fp(),wf(),mp()}));function bp(e,t={}){return typeof e==`number`||typeof e==`bigint`?M(e,t):typeof e==`string`?Cp(e,t):typeof e==`boolean`?xp(e,t):Sp(e,t)}function xp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{size:t.size})):n}function Sp(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=wp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(hp(r,{size:t.size}),rp(r,{dir:`right`,size:t.size})):r}function M(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new sp({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?rp(s,{size:r}):s}function Cp(e,t={}){return Sp(Tp.encode(e),t)}var wp,Tp,Ep=o((()=>{fp(),op(),yp(),wp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Tp=new TextEncoder}));function Dp(e,t={}){return typeof e==`number`||typeof e==`bigint`?jp(e,t):typeof e==`boolean`?Op(e,t):k(e)?Ap(e,t):Mp(e,t)}function Op(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{size:t.size})):n}function kp(e){if(e>=Pp.zero&&e<=Pp.nine)return e-Pp.zero;if(e>=Pp.A&&e<=Pp.F)return e-(Pp.A-10);if(e>=Pp.a&&e<=Pp.f)return e-(Pp.a-10)}function Ap(e,t={}){let n=e;t.size&&(hp(n,{size:t.size}),n=rp(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=kp(r.charCodeAt(t++)),i=kp(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new A(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function jp(e,t){return Ap(M(e,t))}function Mp(e,t={}){let n=Np.encode(e);return typeof t.size==`number`?(hp(n,{size:t.size}),rp(n,{dir:`right`,size:t.size})):n}var Np,Pp,Fp=o((()=>{j(),Sf(),op(),yp(),Ep(),Np=new TextEncoder,Pp={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function Ip(e,t){let n=t||`hex`,r=Tn(k(e,{strict:!1})?Dp(e):e);return n===`bytes`?r:bp(r)}var Lp=o((()=>{Dn(),Sf(),Fp(),Ep()}));function Rp(e){return zp(e)}var zp,Bp=o((()=>{Fp(),Lp(),zp=e=>Ip(Dp(e))}));function Vp(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new A(`Unable to normalize signature.`);return i}var Hp=o((()=>{j()})),Up,Wp=o((()=>{gf(),Hp(),Up=e=>Vp(typeof e==`string`?e:nd(e))}));function Gp(e){return Rp(Up(e))}var Kp=o((()=>{Bp(),Wp()})),qp,Jp=o((()=>{Kp(),qp=Gp})),Yp,Xp=o((()=>{j(),Yp=class extends A{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),Zp,Qp=o((()=>{Zp=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function $p(e,t){if(tm.has(`${e}.${t}`))return tm.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=Ip(Mp(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return tm.set(`${e}.${t}`,a),a}function em(e,t){if(!rm(e,{strict:!1}))throw new Yp({address:e});return $p(e,t)}var tm,nm=o((()=>{Xp(),Fp(),Lp(),Qp(),om(),tm=new Zp(8192)}));function rm(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(am.has(r))return am.get(r);let i=im.test(e)?e.toLowerCase()===e?!0:n?$p(e)===e:!0:!1;return am.set(r,i),i}var im,am,om=o((()=>{Qp(),nm(),im=/^0x[a-fA-F0-9]{40}$/,am=new Zp(8192)}));function sm(e){return typeof e[0]==`string`?lm(e):cm(e)}function cm(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function lm(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var um=o((()=>{}));function dm(e,t,n,{strict:r}={}){return k(e,{strict:!1})?hm(e,t,n,{strict:r}):mm(e,t,n,{strict:r})}function fm(e,t){if(typeof t==`number`&&t>0&&t>Cf(e)-1)throw new $f({offset:t,position:`start`,size:Cf(e)})}function pm(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Cf(e)!==n-t)throw new $f({offset:n,position:`end`,size:Cf(e)})}function mm(e,t,n,{strict:r}={}){fm(e,t);let i=e.slice(t,n);return r&&pm(i,t,n),i}function hm(e,t,n,{strict:r}={}){fm(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&pm(i,t,n),i}var gm=o((()=>{np(),Sf(),wf()})),_m,vm,ym=o((()=>{_m=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,vm=/^(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)?$/}));function bm(e,t){if(e.length!==t.length)throw new Ff({expectedLength:e.length,givenLength:t.length});let n=Cm(xm({params:e,values:t}));return n.length===0?`0x`:n}function xm({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(Sm({param:e[r],value:t[r]}));return n}function Sm({param:e,value:t}){let n=jm(e.type);if(n){let[r,i]=n;return Tm(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return Am(t,{param:e});if(e.type===`address`)return wm(t);if(e.type===`bool`)return Dm(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=vm.exec(e.type)??[];return Om(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return Em(t,{param:e});if(e.type===`string`)return km(t);throw new Jf(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function Cm(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Cf(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(M(t+i,{size:32})),r.push(s),i+=Cf(s)):n.push(s)}return sm([...n,...r])}function wm(e){if(!rm(e))throw new Yp({address:e});return{dynamic:!1,encoded:ip(e.toLowerCase())}}function Tm(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new Xf(e);if(!r&&e.length!==t)throw new Nf({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=Sm({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=Cm(a);if(r){let t=M(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?sm([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:sm(a.map(({encoded:e})=>e))}}function Em(e,{param:t}){let[,n]=t.type.split(`bytes`),r=Cf(e);if(!n){let t=e;return r%32!=0&&(t=ip(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:sm([ip(M(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new Pf({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ip(e,{dir:`right`})}}function Dm(e){if(typeof e!=`boolean`)throw new A(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ip(xp(e))}}function Om(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new sp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:M(e,{size:32,signed:t})}}function km(e){let t=Cp(e),n=Math.ceil(Cf(t)/32),r=[];for(let e=0;e<n;e++)r.push(ip(dm(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:sm([ip(M(Cf(t),{size:32})),...r])}}function Am(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=Sm({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?Cm(r):sm(r.map(({encoded:e})=>e))}}function jm(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var Mm=o((()=>{Qf(),Xp(),j(),fp(),om(),um(),op(),wf(),gm(),Ep(),ym()})),Nm,Pm=o((()=>{gm(),Kp(),Nm=e=>dm(Gp(e),0,4)}));function Fm(e){let{abi:t,args:n=[],name:r}=e,i=k(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?Nm(e)===r:e.type===`event`?qp(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?Im(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=Lm(e.inputs,o.inputs,n);if(t)throw new Wf({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function Im(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return rm(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((t,r)=>n===`object`&&Im(Object.values(e)[r],t)):/^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(e=>Im(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function Lm(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return Lm(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&rm(n[r],{strict:!1}))return o}}var Rm=o((()=>{Qf(),Sf(),om(),Jp(),Pm()}));function zm(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var Bm=o((()=>{}));function Vm(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=Fm({abi:t,args:n,name:r});if(!e)throw new Vf(r,{docsPath:Hm});i=e}if(i.type!==`function`)throw new Vf(void 0,{docsPath:Hm});return{abi:[i],functionName:Nm(vf(i))}}var Hm,Um=o((()=>{Qf(),Pm(),xf(),Rm(),Hm=`/docs/contract/encodeFunctionData`}));function Wm(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:Vm(e),i=n[0];return lm([r,(`inputs`in i&&i.inputs?bm(i.inputs,t??[]):void 0)??`0x`])}var Gm=o((()=>{um(),Mm(),Um()})),Km,qm,Jm,Ym=o((()=>{Km={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.`},qm={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Jm={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Xm,Zm,Qm,$m=o((()=>{j(),Xm=class extends A{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Zm=class extends A{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Qm=class extends A{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function eh(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(th);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var th,nh=o((()=>{$m(),th={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new Qm({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Zm({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Xm({offset:e});let 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 Xm({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let 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();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function rh(e,t={}){return t.size!==void 0&&hp(e,{size:t.size}),gp(Sp(e,t),t)}function ih(e,t={}){let n=e;if(t.size!==void 0&&(hp(n,{size:t.size}),n=pp(n)),n.length>1||n[0]>1)throw new cp(n);return!!n[0]}function ah(e,t={}){return t.size!==void 0&&hp(e,{size:t.size}),vp(Sp(e,t),t)}function oh(e,t={}){let n=e;return t.size!==void 0&&(hp(n,{size:t.size}),n=pp(n,{dir:`right`})),new TextDecoder().decode(n)}var sh=o((()=>{fp(),mp(),yp(),Ep()}));function ch(e,t){let n=typeof t==`string`?Ap(t):t,r=eh(n);if(Cf(n)===0&&e.length>0)throw new Mf;if(Cf(t)&&Cf(t)<32)throw new jf({data:typeof t==`string`?t:Sp(t),params:e,size:Cf(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=lh(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function lh(e,t,{staticPosition:n}){let r=jm(t.type);if(r){let[i,a]=r;return dh(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return hh(e,t,{staticPosition:n});if(t.type===`address`)return uh(e);if(t.type===`bool`)return fh(e);if(t.type.startsWith(`bytes`))return ph(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return mh(e,t);if(t.type===`string`)return gh(e,{staticPosition:n});throw new Yf(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function uh(e){return[$p(Sp(mm(e.readBytes(32),-20))),32]}function dh(e,t,{length:n,staticPosition:r}){if(!n){let n=r+ah(e.readBytes(yh)),i=n+vh;e.setPosition(n);let a=ah(e.readBytes(vh)),o=_h(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=lh(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(_h(t)){let i=r+ah(e.readBytes(yh)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=lh(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=lh(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function fh(e){return[ih(e.readBytes(32),{size:32}),32]}function ph(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=ah(e.readBytes(32));e.setPosition(n+t);let r=ah(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Sp(i),32]}return[Sp(e.readBytes(Number.parseInt(i,10),32)),32]}function mh(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?rh(i,{signed:n}):ah(i,{signed:n}),32]}function hh(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(_h(t)){let o=n+ah(e.readBytes(yh));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=lh(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=lh(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function gh(e,{staticPosition:t}){let n=t+ah(e.readBytes(32));e.setPosition(n);let r=ah(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=oh(pp(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function _h(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(_h);let n=jm(e.type);return!!(n&&_h({...e,type:n[1]}))}var vh,yh,bh=o((()=>{Qf(),nm(),nh(),wf(),gm(),mp(),sh(),Fp(),Ep(),Mm(),vh=32,yh=32}));function xh(e){let{abi:t,data:n,cause:r}=e,i=dm(n,0,4);if(i===`0x`)throw new Mf({cause:r});let a=[...t||[],qm,Jm].find(e=>e.type===`error`&&i===Nm(vf(e)));if(!a)throw new Rf(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?ch(a.inputs,dm(n,4)):void 0,errorName:a.name}}var Sh=o((()=>{Ym(),Qf(),gm(),Pm(),bh(),xf()})),Ch,wh=o((()=>{Ch=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function Th({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((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?Ch(t[n]):t[n]}`).join(`, `)})`}var Eh=o((()=>{wh()})),Dh,Oh,kh=o((()=>{Dh={gwei:9,wei:18},Oh={ether:-9,wei:9}}));function Ah(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var jh=o((()=>{}));function Mh(e,t=`wei`){return Ah(e,Dh[t])}var Nh=o((()=>{kh(),jh()}));function Ph(e,t=`wei`){return Ah(e,Oh[t])}var Fh=o((()=>{kh(),jh()}));function Ih(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function Lh(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=Ih(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=Ih(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var Rh,zh,Bh=o((()=>{j(),Rh=class extends A{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},zh=class extends A{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function Vh(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var Hh,Uh,Wh,Gh,Kh,qh,Jh=o((()=>{Nh(),Fh(),j(),Hh=class extends A{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Uh=class extends A{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,Vh(e),`}`,``,`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\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},Wh=class extends A{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},Gh=class extends A{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`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=t,this.type=n}},Kh=class extends A{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},qh=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Vh({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),Yh,Xh,Zh=o((()=>{Yh=e=>e,Xh=e=>e})),Qh,$h,eg,tg,ng,rg,ig=o((()=>{Bm(),Ym(),Sh(),xf(),Eh(),Rm(),Nh(),Fh(),Qf(),j(),Bh(),Jh(),Zh(),Qh=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=Vh({from:(t?zm(t):void 0)?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});f&&(p+=`\\n${Lh(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},$h=class extends A{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=Fm({abi:t,args:n,name:a}),c=s?Th({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?vf(s,{includeName:!0}):void 0,u=Vh({address:r&&Yh(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),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}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},eg=class extends A{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=xh({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=Km[e]}else{let e=n?vf(n,{includeName:!0}):void 0,t=n&&a?Th({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof Rf&&(l=a.signature,s=[`Unable to decode signature \"${l}\" 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://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{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.raw=t,this.reason=c,this.signature=l}},tg=class extends A{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},ng=class extends A{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},rg=class extends A{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),ag,og,sg,cg=o((()=>{wh(),j(),Zh(),ag=class extends A{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${Xh(a)}`,e&&`Request body: ${Ch(e)}`].filter(Boolean),name:`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=e,this.headers=r,this.status=i,this.url=a}},og=class extends A{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Xh(n)}`,`Request body: ${Ch(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{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,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},sg=class extends A{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Xh(t)}`,`Request body: ${Ch(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),lg,ug,dg,fg,pg,mg,hg,gg,_g,vg,yg,bg,xg,Sg,Cg,wg,Tg,Eg,Dg,Og,kg,Ag,jg,Mg,Ng,Pg,Fg,Ig,Lg,Rg,zg=o((()=>{j(),cg(),lg=-1,ug=class extends A{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof og?e.code:t??lg}},dg=class extends ug{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},fg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),pg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),mg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),hg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(hg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),gg=class e extends ug{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(gg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),_g=class e extends ug{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(_g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),vg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(vg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),yg=class e extends ug{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(yg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),bg=class e extends ug{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(bg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),xg=class e extends ug{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(xg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),Sg=class e extends ug{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(Sg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),Cg=class e extends ug{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(Cg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),wg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(wg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),Tg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(Tg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),Eg=class e extends dg{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(Eg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),Dg=class e extends dg{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(Dg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),Og=class e extends dg{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(Og,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),kg=class e extends dg{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(kg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),Ag=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(Ag,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),jg=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(jg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),Mg=class e extends dg{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(Mg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),Ng=class e extends dg{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(Ng,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),Pg=class e extends dg{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(Pg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),Fg=class e extends dg{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(Fg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),Ig=class e extends dg{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(Ig,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),Lg=class e extends dg{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(Lg,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),Rg=class extends ug{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));Qf(),j(),ig(),cg(),zg();function Bg(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof rg?e:e instanceof A?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new $h(e instanceof Mf?new tg({functionName:a,cause:e}):[3,gg.code].includes(c)&&(l||u||d||f)||c===_g.code&&u===`execution reverted`&&l?new eg({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof og?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}nm(),Lp();function Vg(e){return $p(`0x${Ip(`0x${e.substring(4)}`).substring(26)}`)}Sf(),wf(),yp(),Ep();async function Hg({hash:e,signature:t}){let n=k(e)?e:bp(e),{secp256k1:r}=await Promise.resolve().then(()=>(lc(),Ms));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=Ug(Number(a??i));return new r.Signature(gp(e),gp(n)).addRecoveryBit(o)}let e=k(t)?t:bp(t);if(Cf(e)!==65)throw Error(`invalid signature length`);let n=Ug(vp(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function Ug(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function Wg({hash:e,signature:t}){return Vg(await Hg({hash:e,signature:t}))}j(),nh(),Fp(),Ep();function Gg(e,t=`hex`){let n=Kg(e),r=eh(new Uint8Array(n.length));return n.encode(r),t===`hex`?Sp(r.bytes):r.bytes}function Kg(e){return Array.isArray(e)?qg(e.map(e=>Kg(e))):Jg(e)}function qg(e){let t=e.reduce((e,t)=>e+t.length,0),n=Yg(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function Jg(e){let t=typeof e==`string`?Ap(e):e,n=Yg(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function Yg(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 A(`Length is too large.`)}um(),Fp(),Ep(),Lp();function Xg(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=Ip(lm([`0x05`,Gg([t?M(t):`0x`,i,n?M(n):`0x`])]));return r===`bytes`?Ap(a):a}async function Zg(e){let{authorization:t,signature:n}=e;return Wg({hash:Xg(t),signature:n??t})}Nh(),Fh(),j(),Jh();var Qg=class extends A{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=Vh({from:t?.address,to:u,value:d!==void 0&&`${Mh(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${Ph(o)} gwei`,maxFeePerGas:s!==void 0&&`${Ph(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${Ph(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},$g,e_,t_,n_,r_,i_,a_,o_,s_,c_,l_,u_,d_=o((()=>{Fh(),j(),$g=class extends A{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty($g,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty($g,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),e_=class extends A{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Ph(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(e_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),t_=class extends A{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${Ph(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(t_,`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/}),n_=class extends A{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(n_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),r_=class extends A{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(r_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),i_=class extends A{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(i_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),a_=class extends A{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,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.\"],name:`InsufficientFundsError`})}},Object.defineProperty(a_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),o_=class extends A{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(o_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),s_=class extends A{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(s_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),c_=class extends A{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(c_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),l_=class extends A{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${Ph(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${Ph(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(l_,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),u_=class extends A{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function f_(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof A?e.walk(e=>e?.code===$g.code):e;return r instanceof A?new $g({cause:e,message:r.details}):$g.nodeMessage.test(n)?new $g({cause:e,message:e.details}):e_.nodeMessage.test(n)?new e_({cause:e,maxFeePerGas:t?.maxFeePerGas}):t_.nodeMessage.test(n)?new t_({cause:e,maxFeePerGas:t?.maxFeePerGas}):n_.nodeMessage.test(n)?new n_({cause:e,nonce:t?.nonce}):r_.nodeMessage.test(n)?new r_({cause:e,nonce:t?.nonce}):i_.nodeMessage.test(n)?new i_({cause:e,nonce:t?.nonce}):a_.nodeMessage.test(n)?new a_({cause:e}):o_.nodeMessage.test(n)?new o_({cause:e,gas:t?.gas}):s_.nodeMessage.test(n)?new s_({cause:e,gas:t?.gas}):c_.nodeMessage.test(n)?new c_({cause:e}):l_.nodeMessage.test(n)?new l_({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new u_({cause:e})}var p_=o((()=>{j(),d_()}));d_(),p_();function m_(e,{docsPath:t,...n}){return new Qg((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}function h_(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var g_=o((()=>{}));function __(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var v_=o((()=>{}));function y_(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=b_(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>Sp(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=M(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=M(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=M(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=M(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=M(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=M(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=x_[e.type]),e.value!==void 0&&(n.value=M(e.value)),n}function b_(e){return e.map(e=>({address:e.address,r:e.r?M(BigInt(e.r)):e.r,s:e.s?M(BigInt(e.s)):e.s,chainId:M(e.chainId),nonce:M(e.nonce),...e.yParity===void 0?{}:{yParity:M(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:M(e.v)}:{}}))}var x_,S_,C_=o((()=>{Ep(),v_(),x_={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},S_=__(`transactionRequest`,y_)}));function w_(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new tp({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new tp({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function T_(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=M(t)),n!==void 0&&(o.nonce=M(n)),r!==void 0&&(o.state=w_(r)),i!==void 0){if(o.state)throw new zh;o.stateDiff=w_(i)}return o}function E_(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!rm(n,{strict:!1}))throw new Yp({address:n});if(t[n])throw new Rh({address:n});t[n]=T_(r)}return t}var D_=o((()=>{Xp(),np(),Bh(),om(),Ep()})),O_,k_=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),O_=2n**256n-1n}));function A_(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?zm(t):void 0;if(a&&!rm(a.address))throw new Yp({address:a.address});if(i&&!rm(i))throw new Yp({address:i});if(n&&n>O_)throw new e_({maxFeePerGas:n});if(r&&n&&r>n)throw new l_({maxFeePerGas:n,maxPriorityFeePerGas:r})}var j_=o((()=>{Bm(),k_(),Xp(),d_(),om()}));Fh(),j();var M_=class extends A{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},N_=class extends A{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},P_=class extends A{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${Ph(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};j();var F_=class extends A{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};yp(),v_();let I_={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function L_(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?vp(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?vp(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?I_[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 e.authorizationList&&(n.authorizationList=z_(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let R_=__(`transaction`,L_);function z_(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function B_(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:L_(e));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:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}Ep();async function V_(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:M(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new F_({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||B_)(s,`getBlock`)}async function H_(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}yp();async function U_(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await _f(e,V_,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?gp(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):_f(e,V_,`getBlock`)({}),_f(e,H_,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new N_;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function W_(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new M_;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await _f(e,V_,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new N_;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await U_(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await _f(e,H_,`getGasPrice`)({}))}}yp(),Ep();async function G_(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return vp(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?M(r):n]},{dedupe:!!r}))}Fp(),Ep();function K_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Ap(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Sp(e))}Fp(),Ep();function q_(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>Ap(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Ap(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>Sp(e))}Sf(),Fp(),Ep();function J_(e,t){let n=t||`hex`,r=Hn(k(e,{strict:!1})?Dp(e):e);return n===`bytes`?r:bp(r)}Ep();function Y_(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=J_(t,`bytes`);return i.set([n],0),r===`bytes`?i:Sp(i)}function X_(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Y_({commitment:e,to:r,version:n}));return i}let Z_=4096,Q_=32*Z_;Q_*6-1-1*Z_*6,j();var $_=class extends A{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},ev=class extends A{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},tv=class extends A{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},nv=class extends A{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};nh(),wf(),Fp(),Ep();function rv(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Ap(e.data):e.data,r=Cf(n);if(!r)throw new ev;if(r>761855)throw new $_({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=eh(new Uint8Array(Q_)),t=0;for(;t<Z_;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>Sp(e.bytes))}function iv(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??rv({data:t,to:r}),a=e.commitments??K_({blobs:i,kzg:n,to:r}),o=e.proofs??q_({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}Jh();function av(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new Uh({transaction:e})}d_(),Jh(),p_();function ov(e,{docsPath:t,...n}){return new qh((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}yp();async function sv(e){return vp(await e.request({method:`eth_chainId`},{dedupe:!0}))}Bm(),g_(),C_(),j_();async function cv(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=zm(n),r=a?a.id:await _f(e,sv,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();A_(t);let x=a?.formatters?.transactionRequest?.format,S=(x||y_)({...h_(y,{format:x}),account:n?zm(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||L_)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await _f(e,V_,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new M_;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw ov(n,{...t,chain:e.chain})}}Bm(),Qp(),j_();let lv=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],uv=new Map,dv=new Zp(128);async function fv(e,t){let n=t;n.account??=e.account,n.parameters??=lv;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await _f(e,sv,`getChainId`)({}),c):n.chainId)}let u=r&&zm(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||dv.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await _f(e,cv,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return dv.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&dv.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await _f(e,V_,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await _f(e,G_,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=K_({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=X_({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=iv({blobs:p,commitments:e,proofs:q_({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=av(n)}catch{let t=uv.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,uv.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await W_(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new P_({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new N_;if(n.gasPrice===void 0){let{gasPrice:t}=await W_(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await _f(e,pv,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),A_(n),delete n.parameters,n}Bm(),j(),Ep(),g_(),C_(),D_(),j_();async function pv(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?zm(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await Zg({authorization:t.authorizationList[0]}).catch(()=>{throw new A(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await fv(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?M(u):void 0)||d,ee=E_(b);A_(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||y_)({...h_(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw m_(n,{...t,account:i,chain:e.chain})}}function mv(e,t){if(!rm(e,{strict:!1}))throw new Yp({address:e});if(!rm(t,{strict:!1}))throw new Yp({address:t});return e.toLowerCase()===t.toLowerCase()}var hv=o((()=>{Xp(),om()}));function gv(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}Qf(),$m(),wf(),Jp(),bh(),xf();let _v=`/docs/contract/decodeEventLog`;function vv(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new zf({docsPath:_v});let c=t.find(e=>e.type===`event`&&o===qp(vf(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new Bf(o,{docsPath:_v});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new qf({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=yv({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=ch(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof jf||e instanceof Zm?new Kf({abiItem:c,data:n,params:g,size:Cf(n)}):e}else if(a)throw new Kf({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function yv({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(ch([e],t)||[])[0]}hv(),Fp(),Lp(),Jp();function bv(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:qp(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?gv(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=vv({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=vv({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!xv({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function xv(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?mv(t,n):e.type===`string`||e.type===`bytes`?Ip(Dp(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function Sv(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=Fm({abi:t,args:n,name:r});if(!e)throw new Vf(r,{docsPath:Cv});a=e}if(a.type!==`function`)throw new Vf(void 0,{docsPath:Cv});if(!a.outputs)throw new Hf(a.name,{docsPath:Cv});let o=ch(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var Cv,wv=o((()=>{Qf(),bh(),Rm(),Cv=`/docs/contract/decodeFunctionResult`})),Tv,Ev,Dv,Ov,kv,Av=o((()=>{Tv=[{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`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],Ev=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],Dv=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...Dv],[...Dv],Ov=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],kv=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),jv=o((()=>{})),Mv,Nv,Pv,Fv,Iv=o((()=>{Mv=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Nv=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Pv=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Fv=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Lv,Rv,zv,Bv,Vv,Hv=o((()=>{j(),Lv=class extends A{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},Rv=class extends A{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} \u2013 ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} \u2013 ${e.name}`],name:`ChainMismatchError`})}},zv=class extends A{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(`\n`),{name:`ChainNotFoundError`})}},Bv=class extends A{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Vv=class extends A{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Uv(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new kf({docsPath:Wv});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Af({docsPath:Wv});return lm([r,bm(i.inputs,n)])}var Wv,Gv=o((()=>{Qf(),um(),Mm(),Wv=`/docs/contract/encodeDeployData`}));function Kv({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Lv({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Lv({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var qv=o((()=>{Hv()}));function Jv(e,{docsPath:t,...n}){return new Qh((()=>{let t=f_(e,n);return t instanceof u_?e:t})(),{docsPath:t,...n})}var Yv=o((()=>{ig(),d_(),p_()}));function Xv(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Zv=o((()=>{}));function Qv({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>$v.delete(t),s=()=>c().map(({args:e})=>e),c=()=>$v.get(t)||[],l=e=>$v.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Xv();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var $v,ey=o((()=>{Zv(),$v=new Map})),ty,ny,ry,iy=o((()=>{wh(),j(),Zh(),ty=class extends A{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${Xh(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},ny=class extends A{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Xh(t)}`,`Response: ${Ch(e)}`],name:`OffchainLookupResponseMalformedError`})}},ry=class extends A{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function ay(e){let{abi:t,data:n}=e,r=dm(n,0,4),i=t.find(e=>e.type===`function`&&r===Nm(vf(e)));if(!i)throw new Uf(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?ch(i.inputs,dm(n,4)):void 0}}var oy=o((()=>{Qf(),gm(),Pm(),bh(),xf()}));function sy(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=Fm({abi:t,args:r,name:n});if(!e)throw new Lf(n,{docsPath:cy});i=e}if(i.type!==`error`)throw new Lf(void 0,{docsPath:cy});let a=Nm(vf(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new If(i.name,{docsPath:cy});o=bm(i.inputs,r)}return lm([a,o])}var cy,ly=o((()=>{Qf(),um(),Pm(),Mm(),xf(),Rm(),cy=`/docs/contract/encodeErrorResult`}));function uy(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=Fm({abi:t,name:n});if(!e)throw new Vf(n,{docsPath:dy});i=e}if(i.type!==`function`)throw new Vf(void 0,{docsPath:dy});if(!i.outputs)throw new Hf(i.name,{docsPath:dy});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new Xf(r)})();return bm(i.outputs,a)}var dy,fy=o((()=>{Qf(),Mm(),Rm(),dy=`/docs/contract/encodeFunctionResult`}));async function py(e){let{data:t,ccipRequest:n}=e,{args:[r]}=ay({abi:Ev,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await py({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=my(e)}})),uy({abi:Ev,functionName:`query`,result:[i,a]})}function my(e){return e.name===`HttpRequestError`&&e.status?sy({abi:Ev,errorName:`HttpError`,args:[e.status,e.shortMessage]}):sy({abi:[qm],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var hy=o((()=>{Av(),Ym(),oy(),ly(),fy()})),gy=c({ccipRequest:()=>vy,offchainLookup:()=>_y,offchainLookupAbiItem:()=>by,offchainLookupSignature:()=>yy});async function _y(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=xh({data:r,abi:[by]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:vy;try{if(!mv(i,o))throw new ry({sender:o,to:i});let{data:r}=await Sy(e,{blockNumber:t,blockTag:n,data:sm([l,bm([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await py({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new ty({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function vy({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new ag({body:s,details:i?.error?Ch(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!k(i)){r=new ny({result:i,url:a});continue}return i}catch(e){r=new ag({body:s,details:e.message,url:a})}}throw r}var yy,by,xy=o((()=>{Oy(),iy(),cg(),Sh(),Mm(),hv(),um(),Sf(),hy(),wh(),yy=`0x556f1830`,by={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 Sy(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?zm(n):void 0;if(u&&(f||p))throw new A(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new A(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?Ty({code:u,data:d}):te?Ey({data:d,factory:f,factoryData:p,to:b}):d;try{A_(t);let n=(typeof a==`bigint`?M(a):void 0)||o,u=l?Kc(l):void 0,d=E_(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||y_)({...h_(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&Cy({request:p})&&!d&&!u)try{return await wy(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Bv)&&!(e instanceof Lv))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=Dy(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(xy(),gy));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new ng({factory:f}):Jv(n,{...t,account:C,chain:e.chain})}}function Cy({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function wy(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return Kv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Bv})(),u=(typeof a==`bigint`?M(a):void 0)||o,{schedule:d}=Qv({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=Wm({abi:Tv,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Ty({code:Fv,data:r})}:{to:l,data:r}},u]});return Sv({abi:Tv,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new rg({data:f});return f===`0x`?{data:void 0}:{data:f}}function Ty(e){let{code:t,data:n}=e;return Uv({abi:mf([`constructor(bytes, bytes)`]),bytecode:Mv,args:[t,n]})}function Ey(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Uv({abi:mf([`constructor(address, bytes, address, bytes)`]),bytecode:Nv,args:[i,t,n,r]})}function Dy(e){if(!(e instanceof A))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Oy=o((()=>{gf(),qc(),Bm(),Av(),jv(),Iv(),j(),Hv(),ig(),wv(),Gv(),Gm(),qv(),Ep(),Yv(),g_(),C_(),ey(),D_(),j_()}));wv(),Gm(),Oy();async function ky(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Wm({abi:n,args:i,functionName:a});try{let{data:t}=await _f(e,Sy,`call`)({...o,data:s,to:r});return Sv({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw Bg(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}async function Ay(e){return new Promise(t=>setTimeout(t,e))}j();var jy=class extends A{constructor({docsPath:e}={}){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 Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},My=class extends A{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Hv();function Ny({chain:e,currentChainId:t}){if(!e)throw new zv;if(t!==e.id)throw new Rv({chain:e,currentChainId:t})}async function Py(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}Bm(),j(),um(),g_(),C_(),Qp(),j_();let Fy=new Zp(128);async function Iy(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new jy({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?zm(n):null;try{A_(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Zg({authorization:o[0]}).catch(()=>{throw new A(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await _f(e,sv,`getChainId`)({}),r&&Ny({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||y_)({...h_(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?sm([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Fy.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(Fy.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Fy.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await _f(e,fv,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?sm([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...lv,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await _f(e,Py,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new My({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new My({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof My?e:ov(e,{...t,account:y,chain:t.chain||void 0})}}Bm(),Gm();async function Ly(e,t){return Ly.internal(e,Iy,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new jy({docsPath:`/docs/contract/writeContract`});let u=a?zm(a):null,d=Wm({abi:i,args:s,functionName:c});try{return await _f(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw Bg(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Ly||={});function Ry(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await Ay(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}yp(),v_();let zy={\"0x0\":`reverted`,\"0x1\":`success`};function By(e,t){let n={...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(e=>gv(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?vp(e.transactionIndex):null,status:e.status?zy[e.status]:null,type:e.type?I_[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Vy=__(`transactionReceipt`,By),Hy=256,Uy;function Wy(e=11){if(!Uy||Hy+e>256*2){Uy=``,Hy=0;for(let e=0;e<256;e++)Uy+=(256+Math.random()*256|0).toString(16).substring(1)}return Uy.substring(Hy,Hy+++e)}Bm();function Gy(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?zm(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:Wy(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}Ep();async function Ky(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:M(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}k_(),Xp(),j(),Hv(),d_(),om(),wf(),gm(),yp();function qy(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!rm(n))throw new Yp({address:n});if(t<0)throw new Vv({chainId:t})}Yy(e)}function Jy(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new ev;for(let e of t){let t=Cf(e),n=vp(dm(e,0,1));if(t!==32)throw new tv({hash:e,size:t});if(n!==1)throw new nv({hash:e,version:n})}}Yy(e)}function Yy(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Vv({chainId:t});if(i&&!rm(i))throw new Yp({address:i});if(r&&r>O_)throw new e_({maxFeePerGas:r});if(n&&r&&n>r)throw new l_({maxFeePerGas:r,maxPriorityFeePerGas:n})}function Xy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Vv({chainId:t});if(a&&!rm(a))throw new Yp({address:a});if(n||i)throw new A(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>O_)throw new e_({maxFeePerGas:r})}function Zy(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!rm(a))throw new Yp({address:a});if(t!==void 0&&t<=0)throw new Vv({chainId:t});if(n||i)throw new A(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>O_)throw new e_({maxFeePerGas:r})}Xp(),Jh(),om();function Qy(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new Kh({storageKey:i[e]});if(!rm(r,{strict:!1}))throw new Yp({address:r});t.push([r,i])}return t}Jh(),um(),mp(),Ep();function $y(e,t){let n=av(e);return n===`eip1559`?nb(e,t):n===`eip2930`?rb(e,t):n===`eip4844`?tb(e,t):n===`eip7702`?eb(e,t):ib(e,t)}function eb(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;qy(e);let f=Qy(u),p=ob(n);return lm([`0x04`,Gg([M(r),a?M(a):`0x`,l?M(l):`0x`,c?M(c):`0x`,i?M(i):`0x`,o??`0x`,s?M(s):`0x`,d??`0x`,f,p,...ab(e,t)])])}function tb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;Jy(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>Sp(e)),n=e.kzg,r=K_({blobs:t,kzg:n});f===void 0&&(f=X_({commitments:r})),p===void 0&&(p=iv({blobs:t,commitments:r,proofs:q_({blobs:t,commitments:r,kzg:n})}))}let m=Qy(u),h=[M(n),i?M(i):`0x`,l?M(l):`0x`,c?M(c):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,d??`0x`,m,s?M(s):`0x`,f??[],...ab(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return lm([`0x03`,Gg(p?[h,g,_,v]:h)])}function nb(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;Yy(e);let d=Qy(l);return lm([`0x02`,Gg([M(n),i?M(i):`0x`,c?M(c):`0x`,s?M(s):`0x`,r?M(r):`0x`,a??`0x`,o?M(o):`0x`,u??`0x`,d,...ab(e,t)])])}function rb(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;Xy(e);let u=Qy(c);return lm([`0x01`,Gg([M(n),a?M(a):`0x`,l?M(l):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`,u,...ab(e,t)])])}function ib(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;Zy(e);let l=[a?M(a):`0x`,c?M(c):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`];if(t){let e=(()=>{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);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new Hh({v:t.v});return e})(),r=pp(t.r),i=pp(t.s);l=[...l,M(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,M(n),`0x`,`0x`]);return Gg(l)}function ab(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=pp(n.r),o=pp(n.s);return[typeof i==`number`?i?M(1):`0x`:r===0n?`0x`:r===1n?M(1):r===27n?`0x`:M(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}Ep();function ob(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?bp(e):`0x`,a,r?bp(r):`0x`,...ab({},i)])}return t}nm(),hv();async function sb({address:e,authorization:t,signature:n}){return mv(em(e),await Zg({authorization:t,signature:n}))}Qp();let cb=new Zp(8192);function lb(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(cb.get(n))return cb.get(n);let r=e().finally(()=>cb.delete(n));return cb.set(n,r),r}j(),cg(),zg(),Ep(),wh();function ub(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new xg(Error(`method not supported`),{method:l});return lb(()=>Ry(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case fg.code:throw new fg(t);case pg.code:throw new pg(t);case mg.code:throw new mg(t,{method:n.method});case hg.code:throw new hg(t);case gg.code:throw new gg(t);case _g.code:throw new _g(t);case vg.code:throw new vg(t);case yg.code:throw new yg(t);case bg.code:throw new bg(t);case xg.code:throw new xg(t,{method:n.method});case Sg.code:throw new Sg(t);case Cg.code:throw new Cg(t);case wg.code:throw new wg(t);case Tg.code:throw new Tg(t);case Eg.code:throw new Eg(t);case Dg.code:throw new Dg(t);case Og.code:throw new Og(t);case kg.code:throw new kg(t);case Ag.code:throw new Ag(t);case jg.code:throw new jg(t);case Mg.code:throw new Mg(t);case Ng.code:throw new Ng(t);case Pg.code:throw new Pg(t);case Fg.code:throw new Fg(t);case Ig.code:throw new Ig(t);case 5e3:throw new wg(t);case Lg.code:throw new Lg(t);default:throw e instanceof A?e:new Rg(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof ag){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>db(e)}),{enabled:i,id:i?Cp(`${c}.${Ch(n)}`):void 0})}}function db(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===Sg.code||e.code===gg.code:e instanceof ag&&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 fb(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function pb(){return{}}j(),fp(),nh(),Fp(),Ep();function mb(e,t=`hex`){return hb(eh((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new up(e);return Ap(e)}return e})(),{recursiveReadLimit:1/0}),t)}function hb(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Sp(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=gb(e,n,128),i=e.readBytes(r);return t===`hex`?Sp(i):i}return _b(e,gb(e,n,192),t)}function gb(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 A(`Invalid RLP prefix`)}function _b(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(hb(e,n));return i}Sf(),wf();function vb(e){return k(e)&&Cf(e)===32}function yb(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function bb(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let xb=bb();cg(),wh();function Sb(e,t={}){let{url:n,headers:r}=Cb(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await yb(async({signal:e})=>{let t={...l,body:Ch(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??xb.take(),...e})):{jsonrpc:`2.0`,id:i.id??xb.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new sg({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new ag({body:i,details:Ch(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof ag||e instanceof sg?e:new ag({body:i,cause:e,url:n})}}}}function Cb(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}um(),wf(),Ep();function wb(e){let t=typeof e==`string`?Cp(e):typeof e.raw==`string`?e.raw:Sp(e.raw);return sm([Cp(`\u0019Ethereum Signed Message:\n${Cf(t)}`),t])}Lp();function Tb(e,t){return Ip(wb(e),t)}wh(),j();var Eb=class extends A{constructor({domain:e}){super(`Invalid domain \"${Ch(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Db=class extends A{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},Ob=class extends A{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};Qf(),Xp(),om(),wf(),Ep(),ym();function kb(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(vm);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;M(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!rm(o))throw new Yp({address:o});let c=r.match(_m);if(c){let[e,t]=c;if(t&&Cf(o)!==Number.parseInt(t,10))throw new Gf({expectedSize:Number.parseInt(t,10),givenSize:Cf(o)})}let l=i[r];l&&(jb(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Eb({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Db({primaryType:r,types:i})}function Ab({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function jb(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Ob({type:e})}Mm(),um(),Ep(),Lp();function Mb(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Ab({domain:t}),...e.types};kb({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Nb({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Pb({data:n,primaryType:r,types:i})),Ip(sm(a))}function Nb({domain:e,types:t}){return Pb({data:e,primaryType:`EIP712Domain`,types:t})}function Pb({data:e,primaryType:t,types:n}){return Ip(Fb({data:e,primaryType:t,types:n}))}function Fb({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Ib({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=zb({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return bm(r,i)}function Ib({primaryType:e,types:t}){return Ip(bp(Lb({primaryType:e,types:t})))}function Lb({primaryType:e,types:t}){let n=``,r=Rb({primaryType:e,types:t});r.delete(e);let i=[e,...Array.from(r).sort()];for(let e of i)n+=`${e}(${t[e].map(({name:e,type:t})=>`${t} ${e}`).join(`,`)})`;return n}function Rb({primaryType:e,types:t},n=new Set){let r=e.match(/^\\w*/u)?.[0];if(n.has(r)||t[r]===void 0)return n;n.add(r);for(let e of t[r])Rb({primaryType:e.type,types:t},n);return n}function zb({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},Ip(Fb({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},Ip(r)];if(n===`string`)return[{type:`bytes32`},Ip(bp(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>zb({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},Ip(bm(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}rt(),O();let Bb=qa(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Vb(e){if(typeof e==`string`){if(D(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Wb(e)}else uc(e.authorization)}function Hb(e){Vb(e);let t=Zr(D(e,-64,-32)),n=D(e,-t-64,-64),r=D(e,0,-t-64),[i,a,o]=Wa(Bb,n);return{authorization:kc({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function Ub(e){try{return Vb(e),!0}catch{return!1}}var Wb=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};Jh(),gm(),yp();function Gb(e){let t=hm(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&vp(t)>=192)return`legacy`;throw new Wh({serializedType:t})}Xp(),Jh(),om(),Sf(),op(),mp(),yp();function Kb(e){let t=Gb(e);return t===`eip1559`?Yb(e):t===`eip2930`?Xb(e):t===`eip4844`?Jb(e):t===`eip7702`?qb(e):Zb(e)}function qb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new Gh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:vp(n),type:`eip7702`};return k(s)&&s!==`0x`&&(h.to=s),k(o)&&o!==`0x`&&(h.gas=gp(o)),k(l)&&l!==`0x`&&(h.data=l),k(r)&&(h.nonce=r===`0x`?0:vp(r)),k(c)&&c!==`0x`&&(h.value=gp(c)),k(a)&&a!==`0x`&&(h.maxFeePerGas=gp(a)),k(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=gp(i)),u.length!==0&&u!==`0x`&&(h.accessList=$b(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=ex(d)),qy(h),{...t.length===13?tx(t):void 0,...h}}function Jb(e){let t=Qb(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new Gh({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:vp(a),to:u,type:`eip4844`};return k(l)&&l!==`0x`&&(S.gas=gp(l)),k(f)&&f!==`0x`&&(S.data=f),k(o)&&(S.nonce=o===`0x`?0:vp(o)),k(d)&&d!==`0x`&&(S.value=gp(d)),k(m)&&m!==`0x`&&(S.maxFeePerBlobGas=gp(m)),k(c)&&c!==`0x`&&(S.maxFeePerGas=gp(c)),k(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=gp(s)),p.length!==0&&p!==`0x`&&(S.accessList=$b(p)),y&&b&&x&&(S.sidecars=iv({blobs:y,commitments:b,proofs:x})),Jy(S),{...r.length===14?tx(r):void 0,...S}}function Yb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new Gh({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:vp(n),type:`eip1559`};return k(s)&&s!==`0x`&&(m.to=s),k(o)&&o!==`0x`&&(m.gas=gp(o)),k(l)&&l!==`0x`&&(m.data=l),k(r)&&(m.nonce=r===`0x`?0:vp(r)),k(c)&&c!==`0x`&&(m.value=gp(c)),k(a)&&a!==`0x`&&(m.maxFeePerGas=gp(a)),k(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=gp(i)),u.length!==0&&u!==`0x`&&(m.accessList=$b(u)),Yy(m),{...t.length===12?tx(t):void 0,...m}}function Xb(e){let t=Qb(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new Gh({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:vp(n),type:`eip2930`};return k(o)&&o!==`0x`&&(p.to=o),k(a)&&a!==`0x`&&(p.gas=gp(a)),k(c)&&c!==`0x`&&(p.data=c),k(r)&&(p.nonce=r===`0x`?0:vp(r)),k(s)&&s!==`0x`&&(p.value=gp(s)),k(i)&&i!==`0x`&&(p.gasPrice=gp(i)),l.length!==0&&l!==`0x`&&(p.accessList=$b(l)),Xy(p),{...t.length===11?tx(t):void 0,...p}}function Zb(e){let t=mb(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new Gh({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(k(a)&&a!==`0x`&&(d.to=a),k(i)&&i!==`0x`&&(d.gas=gp(i)),k(s)&&s!==`0x`&&(d.data=s),k(n)&&(d.nonce=n===`0x`?0:vp(n)),k(o)&&o!==`0x`&&(d.value=gp(o)),k(r)&&r!==`0x`&&(d.gasPrice=gp(r)),Zy(d),t.length===6)return d;let f=k(c)&&c!==`0x`?gp(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new Hh({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Qb(e){return mb(`0x${e.slice(4)}`,`hex`)}function $b(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!rm(r,{strict:!1}))throw new Yp({address:r});t.push({address:r,storageKeys:i.map(e=>vb(e)?e:pp(e))})}return t}function ex(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:vp(r),nonce:a===`0x`?0:vp(a),...tx([o,s,c])})}return t}function tx(e){let t=e.slice(-3),n=t[0]===`0x`||gp(t[0])===0n?27n:28n;return{r:ip(t[1],{size:32}),s:ip(t[2],{size:32}),v:n,yParity:n===27n?0:1}}Av(),Iv(),Qf(),j(),ig(),wv(),Gm(),qv();async function nx(e,t){let{account:n,authorizationList:r,allowFailure:i=!0,blockNumber:a,blockOverrides:o,blockTag:s,stateOverride:c}=t,l=t.contracts,{batchSize:u=t.batchSize??1024,deployless:d=t.deployless??!1}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},f=(()=>{if(t.multicallAddress)return t.multicallAddress;if(d)return null;if(e.chain)return Kv({blockNumber:a,chain:e.chain,contract:`multicall3`});throw Error(`client chain not configured. multicallAddress is required.`)})(),p=[[]],m=0,h=0;for(let e=0;e<l.length;e++){let{abi:t,address:r,args:a,functionName:o}=l[e];try{let e=Wm({abi:t,args:a,functionName:o});h+=(e.length-2)/2,u>0&&h>u&&p[m].length>0&&(m++,h=(e.length-2)/2,p[m]=[]),p[m]=[...p[m],{allowFailure:!0,callData:e,target:r}]}catch(e){let s=Bg(e,{abi:t,address:r,args:a,docsPath:`/docs/contract/multicall`,functionName:o,sender:n});if(!i)throw s;p[m]=[...p[m],{allowFailure:!0,callData:`0x`,target:r}]}}let g=await Promise.allSettled(p.map(t=>_f(e,ky,`readContract`)({...f===null?{code:Fv}:{address:f},abi:Tv,account:n,args:[t],authorizationList:r,blockNumber:a,blockOverrides:o,blockTag:s,functionName:`aggregate3`,stateOverride:c}))),_=[];for(let e=0;e<g.length;e++){let t=g[e];if(t.status===`rejected`){if(!i)throw t.reason;for(let n=0;n<p[e].length;n++)_.push({status:`failure`,error:t.reason,result:void 0});continue}let n=t.value;for(let t=0;t<n.length;t++){let{returnData:r,success:a}=n[t],{callData:o}=p[e][t],{abi:s,address:c,functionName:u,args:d}=l[_.length];try{if(o===`0x`)throw new Mf;if(!a)throw new rg({data:r});let e=Sv({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=Bg(e,{abi:s,address:c,args:d,docsPath:`/docs/contract/multicall`,functionName:u});if(!i)throw t;_.push({error:t,result:void 0,status:`failure`})}}}if(_.length!==l.length)throw new A(`multicall results mismatch`);return _}rt(),O();function rx(e){if(D(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new ox(e)}function ix(e){let{data:t,signature:n,to:r}=e;return Br(Ga(qa(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function ax(e){try{return rx(e),!0}catch{return!1}}var ox=class extends T{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};lc(),yp(),Fp();function sx({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Js.Signature(gp(e),gp(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Ap(o)}Av(),Iv(),ig(),Gv(),Gm(),nm(),hv(),um(),Sf(),yp(),Ep(),Oy();async function cx(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return k(e)?e:typeof e==`object`&&`r`in e&&`s`in e?sx(e):Sp(e)})();try{if(s===`eoa`)try{if(mv(em(n),await Wg({hash:i,signature:c})))return!0}catch{}return Ub(c)?await lx(e,{...t,multicallAddress:o,signature:c}):await ux(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(mv(em(n),await Wg({hash:i,signature:c})))return!0}catch{}if(e instanceof fx)return!1;throw e}}async function lx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Hb(t.signature);if(await Ky(e,{address:n,blockNumber:r,blockTag:i})===lm([`0xef0100`,s.address]))return await dx(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:M(s.r,{size:32}),s:M(s.s,{size:32}),yParity:s.yParity};if(!await sb({address:n,authorization:d}))throw new fx;let f=await _f(e,ky,`readContract`)({...o?{address:o}:{code:Fv},authorizationList:[d],abi:Tv,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Wm({abi:Ov,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new fx}async function ux(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||ax(o)?o:ix({data:i,signature:o,to:r}))(),u=s?{to:s,data:Wm({abi:kv,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Uv({abi:kv,args:[n,a,l],bytecode:Pv}),...c},{data:d}=await _f(e,Sy,`call`)(u).catch(e=>{throw e instanceof Qh?new fx:e});if(_p(d??`0x0`))return!0;throw new fx}async function dx(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await _f(e,ky,`readContract`)({address:n,abi:Ov,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof $h?new fx:e})).startsWith(`0x1626ba7e`))return!0;throw new fx}var fx=class extends Error{};function px({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=Wy();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:ub(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function mx(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>px({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}j();var hx=class extends A{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};cg(),ey();function gx(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new hx;let b=Sb(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return px({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=Qv({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new og({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}var _x;function N(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var vx=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}};(_x=globalThis).__zod_globalConfig??(_x.__zod_globalConfig={});let yx=globalThis.__zod_globalConfig;function bx(e){return e&&Object.assign(yx,e),yx}function xx(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Sx(e,t){return typeof t==`bigint`?t.toString():t}function Cx(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function wx(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let Tx=Symbol(`evaluating`);function Ex(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==Tx)return r===void 0&&(r=Tx,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let Dx=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Ox(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function kx(e){if(Ox(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Ox(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Ax=new Set([`string`,`number`,`symbol`]),jx=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Mx(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Nx(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Px(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Fx(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function Ix(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Lx(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Rx(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function zx(e){return typeof e==`string`?e:e?.message}function Bx(e,t,n){let r=e.message?e.message:zx(e.inst?._zod.def?.error?.(e))??zx(t?.error?.(e))??zx(n.customError?.(e))??zx(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function Vx(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let Hx=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Sx,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Ux=N(`$ZodError`,Hx),Wx=N(`$ZodError`,Hx,{Parent:Error}),Gx=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new vx;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Bx(e,a,bx())));throw Dx(t,i?.callee),t}return o.value},Kx=Gx(Wx),qx=(e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Bx(e,a,bx())));throw Dx(t,i?.callee),t}return o.value})(Wx),Jx=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new vx;return a.issues.length?{success:!1,error:new(e??Ux)(a.issues.map(e=>Bx(e,i,bx())))}:{success:!0,data:a.value}})(Wx),Yx=(e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Bx(e,i,bx())))}:{success:!0,data:a.value}})(Wx),Xx=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return Gx(e)(t,n,i)})(Wx),Zx=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},Qx=/^-?\\d+n?$/,$x=/^-?\\d+(?:\\.\\d+)?$/,eS=/^(?:true|false)$/i,tS=/^null$/i,nS=/^undefined$/i,rS=N(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),iS={major:4,minor:4,patch:2},aS=N(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=iS;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=Ix(e),i;for(let a of t){if(a._zod.def.when){if(Lx(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new vx;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=Ix(e,t))});else{if(e.issues.length===t)continue;r||=Ix(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Ix(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new vx;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new vx;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ex(e,`~standard`,()=>({validate:t=>{try{let n=Jx(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Yx(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),oS=N(`$ZodString`,(e,t)=>{aS.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Zx(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),sS=N(`$ZodNumber`,(e,t)=>{aS.init(e,t),e._zod.pattern=e._zod.bag.pattern??$x,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),cS=N(`$ZodBoolean`,(e,t)=>{aS.init(e,t),e._zod.pattern=eS,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),lS=N(`$ZodBigInt`,(e,t)=>{aS.init(e,t),e._zod.pattern=Qx,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value==`bigint`||n.issues.push({expected:`bigint`,code:`invalid_type`,input:n.value,inst:e}),n}}),uS=N(`$ZodUndefined`,(e,t)=>{aS.init(e,t),e._zod.pattern=nS,e._zod.values=new Set([void 0]),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),dS=N(`$ZodNull`,(e,t)=>{aS.init(e,t),e._zod.pattern=tS,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),fS=N(`$ZodUnknown`,(e,t)=>{aS.init(e,t),e._zod.parse=e=>e}),pS=N(`$ZodVoid`,(e,t)=>{aS.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}});function mS(e,t,n){e.issues.length&&t.issues.push(...Rx(n,e.issues)),t.value[n]=e.value}let hS=N(`$ZodArray`,(e,t)=>{aS.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>mS(t,n,e))):mS(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function gS(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...Rx(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function _S(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Fx(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function vS(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>gS(e,n,i,t,u,d))):gS(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let yS=N(`$ZodObject`,(e,t)=>{if(aS.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Cx(()=>_S(t));Ex(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Ox,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>gS(n,t,e,s,r,i))):gS(a,t,e,s,r,i)}return i?vS(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function bS(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Ix(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Bx(e,r,bx())))}),t)}let xS=N(`$ZodUnion`,(e,t)=>{aS.init(e,t),Ex(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ex(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ex(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ex(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>wx(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>bS(t,r,e,i)):bS(o,r,e,i)}}),SS=N(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,xS.init(e,t);let n=e._zod.parse;Ex(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Cx(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Ox(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),CS=N(`$ZodTuple`,(e,t)=>{aS.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=wS(n,`optin`),c=wS(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>TS(t,r,e))):TS(a,r,e)}}return o.length?Promise.all(o).then(()=>ES(l,r,n,a,c)):ES(l,r,n,a,c)}});function wS(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function TS(e,t,n){e.issues.length&&t.issues.push(...Rx(n,e.issues)),t.value[n]=e.value}function ES(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...Rx(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}let DS=N(`$ZodRecord`,(e,t)=>{aS.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!kx(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>Bx(e,r,bx())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...Rx(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...Rx(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&$x.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Bx(e,r,bx())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Rx(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Rx(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),OS=N(`$ZodEnum`,(e,t)=>{aS.init(e,t);let n=xx(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ax.has(typeof e)).map(e=>typeof e==`string`?Mx(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),kS=N(`$ZodLiteral`,(e,t)=>{if(aS.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Mx(e):e?Mx(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}});function AS(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let jS=N(`$ZodOptional`,(e,t)=>{aS.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ex(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ex(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${wx(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>AS(t,e.value)):AS(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),MS=N(`$ZodNullable`,(e,t)=>{aS.init(e,t),Ex(e._zod,`optin`,()=>t.innerType._zod.optin),Ex(e._zod,`optout`,()=>t.innerType._zod.optout),Ex(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${wx(e.source)}|null)$`):void 0}),Ex(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),NS=N(`$ZodPipe`,(e,t)=>{aS.init(e,t),Ex(e._zod,`values`,()=>t.in._zod.values),Ex(e._zod,`optin`,()=>t.in._zod.optin),Ex(e._zod,`optout`,()=>t.out._zod.optout),Ex(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.in,n)):PS(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>PS(e,t.out,n)):PS(r,t.out,n)}});function PS(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let FS=N(`$ZodCodec`,(e,t)=>{aS.init(e,t),Ex(e._zod,`values`,()=>t.in._zod.values),Ex(e._zod,`optin`,()=>t.in._zod.optin),Ex(e._zod,`optout`,()=>t.out._zod.optout),Ex(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>IS(e,t,n)):IS(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>IS(e,t,n)):IS(r,t,n)}}});function IS(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>LS(e,r,t.out,n)):LS(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>LS(e,r,t.in,n)):LS(e,r,t.in,n)}}function LS(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let RS=N(`$ZodReadonly`,(e,t)=>{aS.init(e,t),Ex(e._zod,`propValues`,()=>t.innerType._zod.propValues),Ex(e._zod,`values`,()=>t.innerType._zod.values),Ex(e._zod,`optin`,()=>t.innerType?._zod?.optin),Ex(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(zS):zS(r)}});function zS(e){return e.value=Object.freeze(e.value),e}let BS=N(`$ZodTemplateLiteral`,(e,t)=>{aS.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=+!!t.startsWith(`^`),i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||jx.has(typeof e))n.push(Mx(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),VS=N(`$ZodCustom`,(e,t)=>{rS.init(e,t),aS.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>HS(t,n,r,e));HS(i,n,r,e)}});function HS(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Vx(e))}}function US(e,t){return new e({type:`string`,...Px(t)})}function WS(e,t){return new e({type:`number`,checks:[],...Px(t)})}function GS(e,t){return new e({type:`boolean`,...Px(t)})}function KS(e,t){return new e({type:`bigint`,...Px(t)})}function qS(e,t){return new e({type:`undefined`,...Px(t)})}function JS(e,t){return new e({type:`null`,...Px(t)})}function YS(e){return new e({type:`unknown`})}function XS(e,t){return new e({type:`void`,...Px(t)})}function ZS(e,t,n){let r=Px(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}let QS=N(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);aS.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Kx(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Jx(e,t,n),e.parseAsync=async(t,n)=>qx(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Yx(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Nx(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),$S=N(`ZodMiniString`,(e,t)=>{oS.init(e,t),QS.init(e,t)});function P(e){return US($S,e)}let eC=N(`ZodMiniNumber`,(e,t)=>{sS.init(e,t),QS.init(e,t)});function tC(e){return WS(eC,e)}let nC=N(`ZodMiniBoolean`,(e,t)=>{cS.init(e,t),QS.init(e,t)});function rC(e){return GS(nC,e)}let iC=N(`ZodMiniBigInt`,(e,t)=>{lS.init(e,t),QS.init(e,t)});function aC(e){return KS(iC,e)}let oC=N(`ZodMiniUndefined`,(e,t)=>{uS.init(e,t),QS.init(e,t)});function sC(e){return qS(oC,e)}let cC=N(`ZodMiniNull`,(e,t)=>{dS.init(e,t),QS.init(e,t)});function lC(e){return JS(cC,e)}let uC=N(`ZodMiniUnknown`,(e,t)=>{fS.init(e,t),QS.init(e,t)});function dC(){return YS(uC)}let fC=N(`ZodMiniVoid`,(e,t)=>{pS.init(e,t),QS.init(e,t)});function pC(e){return XS(fC,e)}let mC=N(`ZodMiniArray`,(e,t)=>{hS.init(e,t),QS.init(e,t)});function hC(e,t){return new mC({type:`array`,element:e,...Px(t)})}let gC=N(`ZodMiniObject`,(e,t)=>{yS.init(e,t),QS.init(e,t),Ex(e,`shape`,()=>t.shape)});function F(e,t){return new gC({type:`object`,shape:e??{},...Px(t)})}let _C=N(`ZodMiniUnion`,(e,t)=>{xS.init(e,t),QS.init(e,t)});function vC(e,t){return new _C({type:`union`,options:e,...Px(t)})}let yC=N(`ZodMiniDiscriminatedUnion`,(e,t)=>{SS.init(e,t),QS.init(e,t)});function bC(e,t,n){return new yC({type:`union`,options:t,discriminator:e,...Px(n)})}let xC=N(`ZodMiniTuple`,(e,t)=>{CS.init(e,t),QS.init(e,t)});function SC(e,t,n){let r=t instanceof aS;return new xC({type:`tuple`,items:e,rest:r?t:null,...Px(r?n:t)})}let CC=N(`ZodMiniRecord`,(e,t)=>{DS.init(e,t),QS.init(e,t)});function wC(e,t,n){return!t||!t._zod?new CC({type:`record`,keyType:P(),valueType:e,...Px(t)}):new CC({type:`record`,keyType:e,valueType:t,...Px(n)})}let TC=N(`ZodMiniEnum`,(e,t)=>{OS.init(e,t),QS.init(e,t),e.options=Object.values(t.entries)});function EC(e,t){return new TC({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Px(t)})}let DC=N(`ZodMiniLiteral`,(e,t)=>{kS.init(e,t),QS.init(e,t)});function I(e,t){return new DC({type:`literal`,values:Array.isArray(e)?e:[e],...Px(t)})}let OC=N(`ZodMiniOptional`,(e,t)=>{jS.init(e,t),QS.init(e,t)});function L(e){return new OC({type:`optional`,innerType:e})}let kC=N(`ZodMiniNullable`,(e,t)=>{MS.init(e,t),QS.init(e,t)});function AC(e){return new kC({type:`nullable`,innerType:e})}let jC=N(`ZodMiniPipe`,(e,t)=>{NS.init(e,t),QS.init(e,t)}),MC=N(`ZodMiniCodec`,(e,t)=>{jC.init(e,t),FS.init(e,t)});function NC(e,t,n){return new MC({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let PC=N(`ZodMiniReadonly`,(e,t)=>{RS.init(e,t),QS.init(e,t)});function R(e){return new PC({type:`readonly`,innerType:e})}let FC=N(`ZodMiniTemplateLiteral`,(e,t)=>{BS.init(e,t),QS.init(e,t)});function IC(e,t){return new FC({type:`template_literal`,parts:e,...Px(t)})}let LC=N(`ZodMiniCustom`,(e,t)=>{VS.init(e,t),QS.init(e,t)});function RC(e,t){return ZS(LC,e??(()=>!0),t)}function zC(e){return e}function BC(e){return e}let z=()=>IC([`0x`,P()],`Expected address`),VC=()=>NC(vC([B(),aC()]),aC(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:Xr(e),encode:e=>E(e)}),B=()=>IC([`0x`,P()],`Expected hex value`),HC=()=>NC(vC([B(),tC()]),tC(),{decode:e=>typeof e==`number`?e:e===`0x`?0:Zr(e),encode:e=>E(e)}),UC=F({address:z(),blockHash:B(),blockNumber:VC(),data:B(),logIndex:HC(),removed:rC(),topics:R(hC(B())),transactionHash:B(),transactionIndex:HC()}),WC=F({blobGasPrice:L(VC()),blobGasUsed:L(VC()),blockHash:B(),blockNumber:VC(),contractAddress:AC(z()),cumulativeGasUsed:VC(),effectiveGasPrice:VC(),feePayer:L(z()),feeToken:L(z()),from:z(),gasUsed:VC(),logs:hC(UC),logsBloom:B(),root:L(B()),status:NC(B(),EC([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:AC(z()),transactionHash:B(),transactionIndex:HC(),type:B()}),GC=RC(),KC=vC([I(`secp256k1`),I(`p256`),I(`webAuthn`)]),qC=F({address:z(),chainId:VC(),expiry:vC([HC(),lC(),sC()]),keyId:z(),keyType:KC,limits:L(R(hC(F({token:z(),limit:VC(),period:L(HC())})))),signature:GC}),JC=F({data:L(B()),to:L(z()),value:L(VC())}),YC=F({accessList:L(hC(F({address:z(),storageKeys:hC(B())}))),calls:L(R(hC(JC))),chainId:L(HC()),data:L(B()),feePayer:L(vC([rC(),P()])),feePayerSignature:L(wC(P(),dC())),feeToken:L(z()),from:L(z()),gas:L(VC()),keyAuthorization:L(qC),maxFeePerGas:L(VC()),maxPriorityFeePerGas:L(VC()),nonce:L(HC()),nonceKey:L(VC()),to:L(z()),validAfter:L(HC()),validBefore:L(HC()),value:L(VC())});var XC;(function(e){e.schema=zC({method:I(`eth_accounts`),params:void 0,returns:R(hC(z()))})})(XC||={});var ZC;(function(e){e.schema=zC({method:I(`eth_chainId`),params:void 0,returns:B()})})(ZC||={});var QC;(function(e){e.schema=zC({method:I(`eth_requestAccounts`),params:void 0,returns:R(hC(z()))})})(QC||={});var $C;(function(e){e.schema=zC({method:I(`eth_sendTransaction`),params:R(SC([YC])),returns:B()})})($C||={});var ew;(function(e){let t=F({address:z(),decimals:tC(),direction:EC([`incoming`,`outgoing`]),formatted:P(),name:P(),recipients:R(hC(z())),symbol:P(),value:B()}),n=F({decimals:tC(),formatted:P(),name:P(),symbol:P(),token:z(),value:B()});e.schema=zC({method:I(`eth_fillTransaction`),params:R(SC([YC])),returns:F({capabilities:F({balanceDiffs:L(wC(z(),R(hC(t)))),error:L(F({abiItem:L(wC(P(),dC())),data:L(B()),errorName:P(),message:P()})),fee:L(F({amount:B(),decimals:tC(),formatted:P(),symbol:P()})),requireFunds:L(F({amount:B(),decimals:tC(),formatted:P(),token:z(),symbol:P()})),autoSwap:L(F({maxIn:n,minOut:n,slippage:tC()})),sponsor:L(F({address:z(),name:L(P()),url:L(P())})),sponsored:rC()}),tx:wC(P(),dC())})})})(ew||={});var tw;(function(e){e.schema=zC({method:I(`eth_signTransaction`),params:R(SC([YC])),returns:B()})})(tw||={});var nw;(function(e){e.schema=zC({method:I(`eth_sendTransactionSync`),params:R(SC([YC])),returns:WC})})(nw||={});var rw;(function(e){e.schema=zC({method:I(`eth_signTypedData_v4`),params:R(SC([z(),P()])),returns:B()})})(rw||={});var iw;(function(e){e.schema=zC({method:I(`personal_sign`),params:R(SC([B(),z()])),returns:B()})})(iw||={});let aw=L(F({feePayer:L(vC([rC(),P()])),sync:L(rC())}));var ow;(function(e){e.schema=zC({method:I(`wallet_sendCalls`),params:L(R(SC([F({atomicRequired:L(rC()),calls:R(hC(JC)),capabilities:aw,chainId:L(HC()),from:L(z()),version:L(P())})]))),returns:F({atomic:L(rC()),capabilities:aw,chainId:L(HC()),id:P(),receipts:L(hC(WC)),status:L(tC()),version:L(P())})})})(ow||={});var sw;(function(e){e.schema=zC({method:I(`wallet_getBalances`),params:L(R(SC([F({account:L(z()),chainId:L(HC()),tokens:L(R(hC(z())))})]))),returns:R(hC(F({address:z(),balance:VC(),decimals:tC(),display:P(),name:P(),symbol:P()})))})})(sw||={});var cw;(function(e){e.schema=zC({method:I(`wallet_getCapabilities`),params:L(R(vC([SC([z()]),SC([z(),R(hC(B()))])]))),returns:wC(B(),F({accessKeys:L(F({status:vC([I(`supported`),I(`unsupported`)])})),atomic:F({status:vC([I(`supported`),I(`ready`),I(`unsupported`)])}),feePayer:L(F({status:vC([I(`supported`),I(`unsupported`)])}))}))})})(cw||={});var lw;(function(e){e.parameters=F({address:L(z()),chainId:L(VC()),expiry:tC(),keyType:L(KC),limits:L(R(hC(F({token:z(),limit:VC(),period:L(tC())})))),publicKey:L(B()),scopes:L(R(hC(F({address:z(),selector:L(vC([B(),P()])),recipients:L(R(hC(z())))}))))}),e.returns=F({keyAuthorization:qC,rootAddress:z()}),e.schema=zC({method:I(`wallet_authorizeAccessKey`),params:R(SC([e.parameters])),returns:e.returns})})(lw||={});var uw;(function(e){e.parameters=F({address:L(z()),expiry:tC(),keyType:L(KC),limits:R(hC(F({token:z(),limit:VC(),period:L(tC())}))),publicKey:L(B()),scopes:L(R(hC(F({address:z(),selector:L(vC([B(),P()])),recipients:L(R(hC(z())))}))))})})(uw||={});var dw;(function(e){e.schema=zC({method:I(`wallet_revokeAccessKey`),params:R(SC([F({address:z(),accessKeyAddress:z()})])),returns:void 0})})(dw||={});var fw;(function(e){e.authorizeAccessKey=L(lw.parameters),e.capabilities={request:L(vC([F({digest:L(B()),authorizeAccessKey:e.authorizeAccessKey,method:I(`register`),name:L(P()),userId:L(P())}),F({digest:L(B()),credentialId:L(P()),authorizeAccessKey:e.authorizeAccessKey,method:L(I(`login`)),selectAccount:L(rC())})])),result:F({email:L(AC(P())),keyAuthorization:L(qC),signature:L(B()),username:L(AC(P()))})},e.schema=zC({method:I(`wallet_connect`),params:L(R(SC([F({capabilities:e.capabilities.request,chainId:L(HC()),version:L(P())})]))),returns:F({accounts:R(hC(F({address:z(),capabilities:e.capabilities.result})))})})})(fw||={});var pw;(function(e){let t=L(uw.parameters);e.parameters=F({capabilities:L(vC([F({digest:L(B()),authorizeAccessKey:t,method:I(`register`),name:L(P()),userId:L(P())}),F({digest:L(B()),credentialId:L(P()),authorizeAccessKey:t,method:L(I(`login`)),selectAccount:L(rC())})])),chainId:L(HC()),version:L(P())})})(pw||={});var mw;(function(e){e.schema=zC({method:I(`wallet_disconnect`),params:void 0,returns:void 0})})(mw||={});var hw;(function(e){e.schema=zC({method:I(`wallet_getCallsStatus`),params:L(R(SC([P()]))),returns:F({atomic:rC(),chainId:HC(),id:P(),receipts:L(hC(WC)),status:tC(),version:P()})})})(hw||={});var gw;(function(e){e.parameters=F({feePayer:L(vC([rC(),P()])),to:L(z()),token:L(z()),value:L(P())}),e.schema=zC({method:I(`wallet_send`),params:L(R(SC([e.parameters]))),returns:F({receipt:WC})})})(gw||={});var _w;(function(e){e.schema=zC({method:I(`wallet_switchEthereumChain`),params:R(SC([F({chainId:HC()})])),returns:void 0})})(_w||={});var vw;(function(e){e.schema=zC({method:I(`wallet_deposit`),params:R(SC([F({address:L(z()),chainId:L(HC()),displayName:L(P()),token:L(z()),value:L(P())})])),returns:pC()})})(vw||={}),uw.parameters,pw.parameters;let yw=BC([XC.schema,ZC.schema,ew.schema,QC.schema,$C.schema,nw.schema,tw.schema,rw.schema,iw.schema,lw.schema,fw.schema,vw.schema,mw.schema,sw.schema,hw.schema,cw.schema,dw.schema,gw.schema,ow.schema,_w.schema]),bw=bu();function xw(e){return e.params?F({method:e.method,params:e.params}):F({method:e.method})}let Sw=bC(`method`,yw.map(xw));function Cw(e){let t=new CustomEvent(`eip6963:announceProvider`,{detail:Object.freeze(e)});window.dispatchEvent(t);let n=()=>window.dispatchEvent(t);return window.addEventListener(`eip6963:requestProvider`,n),()=>window.removeEventListener(`eip6963:requestProvider`,n)}var ww=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},Tw=class extends ww{name=`InvalidChallengeError`;title=`Invalid Challenge`;status=402;type=`https://paymentauth.org/problems/invalid-challenge`;constructor(e={}){let{id:t,reason:n}=e,r=t?` \"${t}\"`:``,i=n?`: ${n}`:``;super(`Challenge${r} is invalid${i}.`)}},Ew=class extends ww{name=`PaymentExpiredError`;title=`Payment Expired`;type=`https://paymentauth.org/problems/payment-expired`;constructor(e={}){let{expires:t}=e;super(t?`Payment expired at ${t}.`:`Payment has expired.`)}};function Dw(e,t){if(!e)throw new Tw({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new Tw({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new Ew({expires:e})}var Ow=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@1.2.4`].join(`\n`);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=i,this.metaMessages=n.metaMessages,this.shortMessage=t}};function kw(e,t){return e.exec(t)?.groups}let Aw=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,jw=/^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)?$/,Mw=/^\\(.+?\\).*?$/,Nw=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function Pw(e){let t=e.type;if(Nw.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=Pw(i),r<n-1&&(t+=`, `)}let r=kw(Nw,e.type);return t+=`)${r?.array||``}`,Pw({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function Fw(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=Pw(i),r!==n-1&&(t+=`, `)}return t}function Iw(e){return e.type===`function`?`function ${e.name}(${Fw(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${Fw(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${Fw(e.inputs)})`:e.type===`error`?`error ${e.name}(${Fw(e.inputs)})`:e.type===`constructor`?`constructor(${Fw(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let Lw=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function Rw(e){return Lw.test(e)}function zw(e){return kw(Lw,e)}let Bw=new Set([`memory`,`indexed`,`storage`,`calldata`]),Vw=new Set([`calldata`,`memory`,`storage`]);var Hw=class extends Ow{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" 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`})}},Uw=class extends Ow{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}},Ww=class extends Ow{constructor({params:e}){super(`Failed to parse ABI parameters.`,{details:`parseAbiParameters(${JSON.stringify(e,null,2)})`,docsPath:`/api/human#parseabiparameters-1`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiParametersError`})}},Gw=class extends Ow{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},Kw=class extends Ow{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" 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`})}},qw=class extends Ow{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},Jw=class extends Ow{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},Yw=class extends Ow{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}},Xw=class extends Ow{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Zw=class extends Ow{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}},Qw=class extends Ow{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}},$w=class extends Ow{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}};function eT(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}let tT=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}]]),nT=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,rT=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,iT=/^u?int$/;function aT(e,t){let n=eT(e,t?.type,t?.structs);if(tT.has(n))return tT.get(n);let r=Mw.test(e),i=kw(r?rT:nT,e);if(!i)throw new Gw({param:e});if(i.name&&lT(i.name))throw new Kw({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=oT(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(aT(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(iT.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!sT(c))throw new Uw({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new qw({param:e,type:t?.type,modifier:i.modifier});if(Vw.has(i.modifier)&&!uT(c,!!i.array))throw new Jw({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return tT.set(n,u),u}function oT(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?oT(o,[...t,n.trim()]):oT(o,t,`${n}${i}`,r);case`(`:return oT(o,t,`${n}${i}`,r+1);case`)`:return oT(o,t,`${n}${i}`,r-1);default:return oT(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new $w({current:n,depth:r});return t.push(n.trim()),t}function sT(e){return e===`address`||e===`bool`||e===`function`||e===`string`||Aw.test(e)||jw.test(e)}let cT=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/;function lT(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||Aw.test(e)||jw.test(e)||cT.test(e)}function uT(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function dT(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!Rw(n))continue;let i=zw(n);if(!i)throw new Xw({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=aT(t,{type:`struct`});o.push(n)}if(!o.length)throw new Zw({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=pT(a,t)}return r}let fT=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function pT(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(Mw.test(i.type))r.push(i);else{let e=kw(fT,i.type);if(!e?.type)throw new Yw({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Qw({type:o});r.push({...i,type:`tuple${a??``}`,components:pT(t[o],t,new Set([...n,o]))})}else if(sT(o))r.push(i);else throw new Hw({type:o})}}return r}function mT(e){let t=[];if(typeof e==`string`){let n=oT(e),r=n.length;for(let e=0;e<r;e++)t.push(aT(n[e],{modifiers:Bw}))}else{let n=dT(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(Rw(r))continue;let a=oT(r),o=a.length;for(let e=0;e<o;e++)t.push(aT(a[e],{modifiers:Bw,structs:n}))}}if(t.length===0)throw new Ww({params:e});return t}var hT,gT=o((()=>{hT=`0.1.1`}));function _T(){return hT}var vT=o((()=>{gT()}));function yT(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?yT(e.cause,t):t?null:e}var V,bT=o((()=>{vT(),V=class e extends Error{static setStaticOptions(t){e.prototype.docsOrigin=t.docsOrigin,e.prototype.showVersion=t.showVersion,e.prototype.version=t.version}constructor(t,n={}){let r=(()=>{if(n.cause instanceof e){if(n.cause.details)return n.cause.details;if(n.cause.shortMessage)return n.cause.shortMessage}return n.cause&&`details`in n.cause&&typeof n.cause.details==`string`?n.cause.details:n.cause?.message?n.cause.message:n.details})(),i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=n.docsOrigin??e.prototype.docsOrigin,o=`${a}${i??``}`,s=!!(n.version??e.prototype.showVersion),c=n.version??e.prototype.version,l=[t||`An error occurred.`,...n.metaMessages?[``,...n.metaMessages]:[],...r||i||s?[``,r?`Details: ${r}`:void 0,i?`See: ${o}`:void 0,s?`Version: ${c}`:void 0]:[]].filter(e=>typeof e==`string`).join(`\n`);super(l,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docs`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsOrigin`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`showVersion`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.cause=n.cause,this.details=r,this.docs=o,this.docsOrigin=a,this.docsPath=i,this.shortMessage=t,this.showVersion=s,this.version=c}walk(e){return yT(this,e)}},Object.defineProperty(V,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${_T()}`}}),V.setStaticOptions(V.defaultStaticOptions)}));function xT(e,t){if(xE(e)>t)throw new PE({givenSize:xE(e),maxSize:t})}function ST(e,t){if(typeof t==`number`&&t>0&&t>xE(e)-1)throw new FE({offset:t,position:`start`,size:xE(e)})}function CT(e,t,n){if(typeof t==`number`&&typeof n==`number`&&xE(e)!==n-t)throw new FE({offset:n,position:`end`,size:xE(e)})}function wT(e){if(e>=DT.zero&&e<=DT.nine)return e-DT.zero;if(e>=DT.A&&e<=DT.F)return e-(DT.A-10);if(e>=DT.a&&e<=DT.f)return e-(DT.a-10)}function TT(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new IE({size:e.length,targetSize:r,type:`Bytes`});let i=new Uint8Array(r);for(let t=0;t<r;t++){let a=n===`right`;i[a?t:r-t-1]=e[a?t:e.length-t-1]}return i}function ET(e,t={}){let{dir:n=`left`}=t,r=e,i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r}var DT,OT=o((()=>{LE(),DT={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function kT(e,t){if(YT(e)>t)throw new cE({givenSize:YT(e),maxSize:t})}function AT(e,t){if(typeof t==`number`&&t>0&&t>YT(e)-1)throw new lE({offset:t,position:`start`,size:YT(e)})}function jT(e,t,n){if(typeof t==`number`&&typeof n==`number`&&YT(e)!==n-t)throw new lE({offset:n,position:`end`,size:YT(e)})}function MT(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;let i=e.replace(`0x`,``);if(i.length>r*2)throw new uE({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function NT(e,t={}){let{dir:n=`left`}=t,r=e.replace(`0x`,``),i=0;for(let e=0;e<r.length-1&&r[n===`left`?e:r.length-e-1].toString()===`0`;e++)i++;return r=n===`left`?r.slice(i):r.slice(0,r.length-i),r===`0`?`0x`:n===`right`&&r.length%2==1?`0x${r}0`:`0x${r}`}var PT=o((()=>{dE()}));function FT(e){if(e===null||typeof e==`boolean`||typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`Cannot canonicalize non-finite number`);return Object.is(e,-0)?`0`:JSON.stringify(e)}if(typeof e==`bigint`)throw TypeError(`Cannot canonicalize bigint`);if(Array.isArray(e))return`[${e.map(e=>FT(e)).join(`,`)}]`;if(typeof e==`object`)return`{${Object.keys(e).sort().reduce((t,n)=>{let r=e[n];return r!==void 0&&t.push(`${JSON.stringify(n)}:${FT(r)}`),t},[]).join(`,`)}}`}function IT(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(RT)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function LT(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+RT:n,n)}var RT,zT=o((()=>{RT=`#__bigint`}));function BT(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new aE(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new oE(e)}function VT(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function HT(e){return e instanceof Uint8Array?WT(e):Array.isArray(e)?WT(new Uint8Array(e)):e}function UT(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(kT(n,t.size),KT(n,t.size)):n}function WT(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=rE[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(kT(r,t.size),qT(r,t.size)):r}function H(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new iE({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?BigInt.asUintN(r*8,BigInt(i)):i).toString(16)}`;return r?KT(s,r):s}function GT(e,t={}){return WT(nE.encode(e),t)}function KT(e,t){return MT(e,{dir:`left`,size:t})}function qT(e,t){return MT(e,{dir:`right`,size:t})}function JT(e){return WT(bE(e))}function U(e,t,n,r={}){let{strict:i}=r;AT(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&jT(a,t,n),a}function YT(e){return Math.ceil((e.length-2)/2)}function XT(e){return NT(e,{dir:`left`})}function ZT(e,t={}){let{signed:n}=t;t.size&&kT(e,t.size);let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2,a=(1n<<BigInt(i)*8n)-1n;return r<=a>>1n?r:r-a-1n}function QT(e,t={}){return gE(e,t)}function $T(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:ZT(e,t))}function eE(e,t={}){let{size:n}=t,r=gE(e);return n&&(xT(r,n),r=OE(r)),new TextDecoder().decode(r)}function tE(e,t={}){let{strict:n=!1}=t;try{return BT(e,{strict:n}),!0}catch{return!1}}var nE,rE,iE,aE,oE,sE,cE,lE,uE,dE=o((()=>{LE(),bT(),OT(),PT(),zT(),nE=new TextEncoder,rE=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),iE=class extends V{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \\`${i}\\` is not in safe${r?` ${r*8}-bit`:``}${n?` signed`:` unsigned`} integer range ${e?`(\\`${t}\\` to \\`${e}\\`)`:`(above \\`${t}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},aE=class extends V{constructor(e){super(`Value \\`${typeof e==`object`?LT(e):e}\\` of type \\`${typeof e}\\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `\"0x${string}\"`.']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexTypeError`})}},oE=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid hex value.`,{metaMessages:['Hex values must start with `\"0x\"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidHexValueError`})}},sE=class extends V{constructor(e){super(`Hex value \\`\"${e}\"\\` is an odd length (${e.length-2} nibbles).`,{metaMessages:[`It must be an even length.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.InvalidLengthError`})}},cE=class extends V{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeOverflowError`})}},lE=class extends V{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},uE=class extends V{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function fE(e){if(!(e instanceof Uint8Array)&&(!e||typeof e!=`object`||!(`BYTES_PER_ELEMENT`in e)||e.BYTES_PER_ELEMENT!==1||e.constructor.name!==`Uint8Array`))throw new NE(e)}function pE(...e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t);for(let t=0,r=0;t<e.length;t++){let i=e[t];n.set(i,r),r+=i.length}return n}function mE(e){return e instanceof Uint8Array?e:typeof e==`string`?gE(e):hE(e)}function hE(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function gE(e,t={}){let{size:n}=t,r=e;n&&(kT(e,n),r=qT(e,n));let i=r.slice(2);i.length%2&&(i=`0${i}`);let a=i.length/2,o=new Uint8Array(a);for(let e=0,t=0;e<a;e++){let n=wT(i.charCodeAt(t++)),r=wT(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new V(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function _E(e,t={}){let{size:n}=t,r=jE.encode(e);return typeof n==`number`?(xT(r,n),yE(r,n)):r}function vE(e,t){return rr(e,t)}function yE(e,t){return TT(e,{dir:`right`,size:t})}function bE(e){return crypto.getRandomValues(new Uint8Array(e))}function xE(e){return e.length}function SE(e,t,n,r={}){let{strict:i}=r;ST(e,t);let a=e.slice(t,n);return i&&CT(a,t,n),a}function CE(e,t={}){let{size:n}=t;return n!==void 0&&xT(e,n),ZT(WT(e,t),t)}function wE(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(xT(r,n),r=DE(r)),r.length>1||r[0]>1)throw new ME(r);return!!r[0]}function TE(e,t={}){let{size:n}=t;return n!==void 0&&xT(e,n),$T(WT(e,t),t)}function EE(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(xT(r,n),r=OE(r)),AE.decode(r)}function DE(e){return ET(e,{dir:`left`})}function OE(e){return ET(e,{dir:`right`})}function kE(e){try{return fE(e),!0}catch{return!1}}var AE,jE,ME,NE,PE,FE,IE,LE=o((()=>{xr(),bT(),dE(),OT(),PT(),zT(),AE=new TextDecoder,jE=new TextEncoder,ME=class extends V{constructor(e){super(`Bytes value \\`${e}\\` is not a valid boolean.`,{metaMessages:[\"The bytes array must contain a single byte of either a `0` or `1` value.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesBooleanError`})}},NE=class extends V{constructor(e){super(`Value \\`${typeof e==`object`?LT(e):e}\\` of type \\`${typeof e}\\` is an invalid Bytes value.`,{metaMessages:[\"Bytes values must be of type `Bytes`.\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.InvalidBytesTypeError`})}},PE=class extends V{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \\`${t}\\` bytes. Given size: \\`${e}\\` bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeOverflowError`})}},FE=class extends V{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \\`${e}\\` is out-of-bounds (size: \\`${n}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},IE=class extends V{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (\\`${e}\\`) exceeds padding size (\\`${t}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));At(),Dn(),LE(),dE();function RE(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Tn(mE(e));return n===`Bytes`?r:WT(r)}function zE(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=kt(Hn,mE(e),mE(t));return r===`Bytes`?i:WT(i)}function BE(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Hn(mE(e));return n===`Bytes`?r:WT(r)}function VE(e){return tE(e)&&YT(e)===32}let HE={checksum:new class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&t!==void 0&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}(8192)}.checksum;LE(),bT(),dE(),zT();function UE(e,t={}){let{compressed:n}=t,{prefix:r,x:i,y:a}=e;if(n===!1||typeof i==`bigint`&&typeof a==`bigint`){if(r!==4)throw new XE({prefix:r,cause:new QE});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new XE({prefix:r,cause:new ZE});return}throw new YE({publicKey:e})}function WE(e){let t=(()=>{if(tE(e))return KE(e);if(kE(e))return GE(e);let{prefix:t,x:n,y:r}=e;return typeof n==`bigint`&&typeof r==`bigint`?{prefix:t??4,x:n,y:r}:{prefix:t,x:n}})();return UE(t),t}function GE(e){return KE(WT(e))}function KE(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new $E({publicKey:e});return e.length===130?{prefix:4,x:BigInt(U(e,0,32)),y:BigInt(U(e,32,64))}:e.length===132?{prefix:Number(U(e,0,1)),x:BigInt(U(e,1,33)),y:BigInt(U(e,33,65))}:{prefix:Number(U(e,0,1)),x:BigInt(U(e,1,33))}}function qE(e,t={}){return gE(JE(e,t))}function JE(e,t={}){UE(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return VT(a?H(n,{size:1}):`0x`,H(r,{size:32}),typeof i==`bigint`?H(i,{size:32}):`0x`)}var YE=class extends V{constructor({publicKey:e}){super(`Value \\`${LT(e)}\\` is not a valid public key.`,{metaMessages:[`Public key must contain:`,\"- an `x` and `prefix` value (compressed)\",\"- an `x`, `y`, and `prefix` value (uncompressed)\"]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidError`})}},XE=class extends V{constructor({prefix:e,cause:t}){super(`Prefix \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidPrefixError`})}},ZE=class extends V{constructor(){super(`Prefix must be 2 or 3 for compressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidCompressedPrefixError`})}},QE=class extends V{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},$E=class extends V{constructor({publicKey:e}){super(`Value \\`${e}\\` is an invalid public key size.`,{metaMessages:[`Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).`,`Received ${YT(HT(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};LE(),bT();let eD=/^0x[a-fA-F0-9]{40}$/;function tD(e,t={}){let{strict:n=!0}=t;if(!eD.test(e))throw new sD({address:e,cause:new cD});if(n){if(e.toLowerCase()===e)return;if(nD(e)!==e)throw new sD({address:e,cause:new lD})}}function nD(e){if(HE.has(e))return HE.get(e);tD(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=RE(_E(t),{as:`Bytes`}),r=t.split(``);for(let e=0;e<40;e+=2)n[e>>1]>>4>=8&&r[e]&&(r[e]=r[e].toUpperCase()),(n[e>>1]&15)>=8&&r[e+1]&&(r[e+1]=r[e+1].toUpperCase());let i=`0x${r.join(``)}`;return HE.set(e,i),i}function rD(e,t={}){let{checksum:n=!1}=t;return tD(e),n?nD(e):e}function iD(e,t={}){return rD(`0x${RE(`0x${JE(e).slice(4)}`).substring(26)}`,t)}function aD(e,t){return tD(e,{strict:!1}),tD(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function oD(e,t={}){let{strict:n=!0}=t??{};try{return tD(e,{strict:n}),!0}catch{return!1}}var sD=class extends V{constructor({address:e,cause:t}){super(`Address \"${e}\" is invalid.`,{cause:t}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidAddressError`})}},cD=class extends V{constructor(){super(`Address is not a 20 byte (40 hexadecimal character) value.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidInputError`})}},lD=class extends V{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};bT();function uD(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,`error`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new V(`Unable to normalize signature.`);return i}function dD(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return oD(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((t,n)=>dD(Object.values(e)[n],t)):/^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(e=>dD(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function fD(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return fD(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&oD(n[r],{strict:!1}))return o}}bT(),dE();function pD(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=tE(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?mD(e)===U(t,0,4):e.type===`event`?gD(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new vD({name:t});if(o.length===1)return{...o[0],...i?{hash:gD(o[0])}:{}};let s;for(let e of o)if(`inputs`in e){if(!r||r.length===0){if(!e.inputs||e.inputs.length===0)return{...e,...i?{hash:gD(e)}:{}};continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===r.length&&r.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?dD(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=fD(e.inputs,s.inputs,r);if(t)throw new _D({abiItem:e,type:t[0]},{abiItem:s,type:t[1]})}s=e}}let c=(()=>{if(s)return s;let[e,...t]=o;return{...e,overloads:t}})();if(!c)throw new vD({name:t});return{...c,...i?{hash:gD(c)}:{}}}function mD(...e){return U(gD((()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})()),0,4)}function hD(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})();return uD(typeof t==`string`?t:Iw(t))}function gD(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return pD(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:RE(GT(hD(t)))}var _D=class extends V{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${uD(Iw(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${uD(Iw(t.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:`AbiItem.AmbiguityError`})}},vD=class extends V{constructor({name:e,data:t,type:n=`item`}){let r=e?` with name \"${e}\"`:t?` with data \"${t}\"`:``;super(`ABI ${n}${r} not found.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiItem.NotFoundError`})}};let yD=/^(.*)\\[([0-9]*)\\]$/,bD=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,xD=/^(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)?$/;2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n));let SD=2n**256n-1n;LE(),bT(),dE();function CD(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=VD(t.type);if(a){let[n,o]=a;return TD(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return kD(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return wD(e,{checksum:r});if(t.type===`bool`)return ED(e);if(t.type.startsWith(`bytes`))return DD(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return OD(e,t);if(t.type===`string`)return AD(e,{staticPosition:i});throw new iO(t.type)}function wD(e,t={}){let{checksum:n=!1}=t;return[(e=>n?nD(e):e)(WT(SE(e.readBytes(32),-20))),32]}function TD(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+TE(e.readBytes(32)),i=n+32;e.setPosition(n);let o=TE(e.readBytes(32)),s=HD(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=CD(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(HD(t)){let n=a+TE(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=CD(e,t,{checksumAddress:r,staticPosition:n});o.push(i)}return e.setPosition(a+32),[o,32]}let o=0,s=[];for(let n=0;n<i;++n){let[n,i]=CD(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function ED(e){return[wE(e.readBytes(32),{size:32}),32]}function DD(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=TE(e.readBytes(32));e.setPosition(n+t);let r=TE(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[WT(i),32]}return[WT(e.readBytes(Number.parseInt(i,10),32)),32]}function OD(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?CE(i,{signed:n}):TE(i,{signed:n}),32]}function kD(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=t.components.length===0||t.components.some(({name:e})=>!e),o=a?[]:{},s=0;if(HD(t)){let n=i+TE(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=CD(e,c,{checksumAddress:r,staticPosition:n});s+=u,o[a?i:c?.name]=l}return e.setPosition(i+32),[o,32]}for(let n=0;n<t.components.length;++n){let c=t.components[n],[l,u]=CD(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function AD(e,{staticPosition:t}){let n=t+TE(e.readBytes(32));e.setPosition(n);let r=TE(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=EE(DE(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function jD({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(MD({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function MD({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=VD(r.type);if(i){let[t,a]=i;return FD(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return BD(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return PD(n,{checksum:e});if(r.type===`bool`)return LD(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=xD.exec(r.type)??[];return RD(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return ID(n,{type:r.type});if(r.type===`string`)return zD(n);throw new iO(r.type)}function ND(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=YT(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(H(t+i,{size:32})),r.push(s),i+=YT(s)):n.push(s)}return VT(...n,...r)}function PD(e,t){let{checksum:n=!1}=t;return tD(e,{strict:n}),{dynamic:!1,encoded:KT(e.toLowerCase())}}function FD(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new rO(e);if(!a&&e.length!==r)throw new eO({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=MD({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=ND(s);if(a){let t=H(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?VT(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:VT(...s.map(({encoded:e})=>e))}}function ID(e,{type:t}){let[,n]=t.split(`bytes`),r=YT(e);if(!n){let t=e;return r%32!=0&&(t=qT(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:VT(KT(H(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new tO({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:qT(e)}}function LD(e){if(typeof e!=`boolean`)throw new V(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:KT(UT(e))}}function RD(e,{signed:t,size:n}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new iE({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:H(e,{size:32,signed:t})}}function zD(e){let t=GT(e),n=Math.ceil(YT(t)/32),r=[];for(let e=0;e<n;e++)r.push(qT(U(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:VT(qT(H(YT(t),{size:32})),...r)}}function BD(e,t){let{checksumAddress:n,parameter:r}=t,i=!1,a=[];for(let t=0;t<r.components.length;t++){let o=r.components[t],s=MD({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?ND(a):VT(...a.map(({encoded:e})=>e))}}function VD(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function HD(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(HD);let n=VD(e.type);return!!(n&&HD({...e,type:n[1]}))}bT();let UD={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new qD({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new KD({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new GD({offset:e});let 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 GD({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let 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();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}};function WD(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(UD);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var GD=class extends V{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},KD=class extends V{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.PositionOutOfBoundsError`})}},qD=class extends V{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.RecursiveReadLimitExceededError`})}};LE(),bT(),dE();function JD(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?gE(t):t,o=WD(a);if(xE(a)===0&&e.length>0)throw new $D;if(xE(a)&&xE(a)<32)throw new QD({data:typeof t==`string`?t:WT(t),parameters:e,size:xE(a)});let s=0,c=r===`Array`?[]:{};for(let t=0;t<e.length;++t){let n=e[t];o.setPosition(s);let[a,l]=CD(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function YD(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new nO({expectedLength:e.length,givenLength:t.length});let i=ND(jD({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function XD(e,t){if(e.length!==t.length)throw new nO({expectedLength:e.length,givenLength:t.length});let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r];n.push(XD.encode(i,a))}return VT(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return tD(e),KT(e.toLowerCase(),r?32:0)}if(e===`string`)return GT(n);if(e===`bytes`)return n;if(e===`bool`)return KT(UT(n),r?32:1);let i=e.match(xD);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return H(n,{size:r?32:o,signed:t===`int`})}let a=e.match(bD);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new tO({expectedSize:Number.parseInt(t,10),value:n});return qT(n,r?32:0)}let o=e.match(yD);if(o&&Array.isArray(n)){let[e,r]=o,i=[];for(let e=0;e<n.length;e++)i.push(t(r,n[e],!0));return i.length===0?`0x`:VT(...i)}throw new iO(e)}e.encode=t})(XD||={});function ZD(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?mT(e):e}var QD=class extends V{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${Fw(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},$D=class extends V{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},eO=class extends V{constructor({expectedLength:e,givenLength:t,type:n}){super(`Array length mismatch for type \\`${n}\\`. Expected: \\`${e}\\`. Given: \\`${t}\\`.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ArrayLengthMismatchError`})}},tO=class extends V{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${YT(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},nO=class extends V{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding parameters/values length mismatch.`,`Expected length (parameters): ${e}`,`Given length (values): ${t}`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.LengthMismatchError`})}},rO=class extends V{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},iO=class extends V{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};bT(),dE();function aO(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&tD(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>VE(e)?e:XT(e))})}return t}function oO(e){if(!e||e.length===0)return[];let t=[];for(let{address:n,storageKeys:r}of e){for(let e=0;e<r.length;e++)if(YT(r[e])!==32)throw new sO({storageKey:r[e]});n&&tD(n,{strict:!1}),t.push([n,r])}return t}var sO=class extends V{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${YT(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};LE(),bT(),dE();function cO(e){return lO(e,`Hex`)}function lO(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return uO(WD((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new sE(e);return gE(e)}return e})(),{recursiveReadLimit:1/0}),n)}function uO(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?WT(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=dO(e,n,128),i=e.readBytes(r);return t===`Hex`?WT(i):i}return fO(e,dO(e,n,192),t)}function dO(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 V(`Invalid RLP prefix`)}function fO(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(uO(e,n));return i}function pO(e,t){let{as:n}=t,r=hO(e),i=WD(new Uint8Array(r.length));return r.encode(i),n===`Hex`?WT(i.bytes):i.bytes}function mO(e,t={}){let{as:n=`Hex`}=t;return pO(e,{as:n})}function hO(e){return Array.isArray(e)?gO(e.map(e=>hO(e))):_O(e)}function gO(e){let t=e.reduce((e,t)=>e+t.length,0),n=vO(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function _O(e){let t=typeof e==`string`?gE(e):e,n=vO(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function vO(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new V(`Length is too large.`)}bT(),dE(),zT();function yO(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new NO({signature:e});if(e.r<0n||e.r>SD)throw new PO({value:e.r});if(e.s<0n||e.s>SD)throw new FO({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new IO({value:e.yParity})}function bO(e){return xO(WT(e))}function xO(e){if(e.length!==130&&e.length!==132)throw new MO({signature:e});let t=BigInt(U(e,0,32)),n=BigInt(U(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return AO(t)}catch{throw new IO({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function SO(e){if(e.r!==void 0&&e.s!==void 0)return CO(e)}function CO(e){let t=typeof e==`string`?xO(e):e instanceof Uint8Array?bO(e):typeof e.r==`string`?TO(e):e.v?wO(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return yO(t),t}function wO(e){return{r:e.r,s:e.s,yParity:AO(e.v)}}function TO(e){let t=(()=>{let t=e.v?Number(e.v):void 0,n=e.yParity?Number(e.yParity):void 0;if(typeof t==`number`&&typeof n!=`number`&&(n=AO(t)),typeof n!=`number`)throw new IO({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function EO(e){let[t,n,r]=e;return CO({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function DO(e){yO(e);let t=e.r,n=e.s;return VT(H(t,{size:32}),H(n,{size:32}),typeof e.yParity==`number`?H(jO(e.yParity),{size:1}):`0x`)}function OO(e){let{r:t,s:n,yParity:r}=e;return{r:H(t,{size:32}),s:H(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function kO(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:XT(H(t)),n===0n?`0x`:XT(H(n))]}function AO(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new LO({value:e})}function jO(e){if(e===0)return 27;if(e===1)return 28;throw new IO({value:e})}var MO=class extends V{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${YT(HT(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},NO=class extends V{constructor({signature:e}){super(`Signature \\`${LT(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},PO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidRError`})}},FO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSError`})}},IO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidYParityError`})}},LO=class extends V{constructor({value:e}){super(`Value \\`${e}\\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidVError`})}};dE();function RO(e,t={}){return typeof e.chainId==`string`?zO(e):{...e,...t.signature}}function zO(e){let{address:t,chainId:n,nonce:r}=e,i=SO(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function BO(e){return e.map(zO)}function VO(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:H(n),nonce:H(r),...OO(i)}}function HO(e){return e.map(VO)}LE();let UO=new TextEncoder,WO=new TextDecoder,GO=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),KO={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function qO(e,t={}){let{pad:n=!0,url:r=!1}=t,i=new Uint8Array(Math.ceil(e.length/3)*4);for(let t=0,n=0;n<e.length;t+=4,n+=3){let r=(e[n]<<16)+(e[n+1]<<8)+(e[n+2]|0);i[t]=GO[r>>18],i[t+1]=GO[r>>12&63],i[t+2]=GO[r>>6&63],i[t+3]=GO[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=WO.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function JO(e,t={}){return qO(_E(e),t)}function YO(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);UO.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(KO[r[e]]<<18)+(KO[r[e+1]]<<12)+(KO[r[e+2]]<<6)+KO[r[e+3]];r[n]=t>>16,r[n+1]=t>>8&255,r[n+2]=t&255}let i=(n>>2)*3+(n%4&&n%4-1);return new Uint8Array(r.buffer,0,i)}function XO(e){return EE(YO(e))}let ZO={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},QO={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function $O(e,t={}){if(!e)return null;let n=SO(e),r={...e,...n};return r.blockNumber=e.blockNumber?BigInt(e.blockNumber):null,r.data=e.input,r.gas=BigInt(e.gas??0n),r.nonce=BigInt(e.nonce??0n),r.transactionIndex=e.transactionIndex?Number(e.transactionIndex):null,r.value=BigInt(e.value??0n),e.authorizationList&&(r.authorizationList=BO(e.authorizationList)),e.chainId&&(r.chainId=Number(e.chainId)),e.gasPrice&&(r.gasPrice=BigInt(e.gasPrice)),e.maxFeePerBlobGas&&(r.maxFeePerBlobGas=BigInt(e.maxFeePerBlobGas)),e.maxFeePerGas&&(r.maxFeePerGas=BigInt(e.maxFeePerGas)),e.maxPriorityFeePerGas&&(r.maxPriorityFeePerGas=BigInt(e.maxPriorityFeePerGas)),e.type&&(r.type=QO[e.type]??e.type),n&&(r.v=jO(n.yParity)),r}function ek(e){return{address:e.address,amount:H(e.amount),index:H(e.index),validatorIndex:H(e.validatorIndex)}}var tk=o((()=>{dE()}));function nk(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:H(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:H(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:H(e.gasLimit)},...typeof e.number==`bigint`&&{number:H(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:H(e.prevRandao)},...typeof e.time==`bigint`&&{time:H(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(ek)}}}var rk=o((()=>{dE(),tk()}));lc(),LE(),dE();function ik(e){return iD(ak(e))}function ak(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return WE(new Js.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(HT(t).substring(2)))}function ok(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?aD(t,ik({payload:r,signature:a})):Js.verify(a,mE(r),qE(i),...n?[{prehash:!0,lowS:!0}]:[])}LE();function sk(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Pl.verify(i,n instanceof Uint8Array?n:gE(n),JE(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}dE();function ck(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=HO(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=H(e.chainId)),e.data===void 0?e.input!==void 0&&(t.data=e.input,t.input=e.input):(t.data=e.data,t.input=e.data),e.from!==void 0&&(t.from=e.from),e.gas!==void 0&&(t.gas=H(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=H(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=H(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=H(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=H(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=H(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=H(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=ZO[e.type]||e.type),e.value!==void 0&&(t.value=H(e.value)),t}bT();let lk={wei:0,gwei:9,szabo:12,finney:15,ether:18};function uk(e,t=0){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}function dk(e,t=`wei`){return uk(e,lk.gwei-lk[t])}bT();var fk=class extends V{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${dk(e)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.FeeCapTooHighError`})}},pk=class extends V{constructor({chainId:e}){super(e===void 0?`Chain ID is invalid.`:`Chain ID \"${e}\" is invalid.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidChainIdError`})}},mk=class extends V{constructor({attributes:e,serialized:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean)}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.InvalidSerializedError`})}},hk=class extends V{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${dk(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${dk(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};LE(),bT(),dE();function gk(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=gE(s);if(u.length<37||a!==void 0&&!vE(u.slice(0,32),BE(GT(a),{as:`Bytes`})))return!1;let d=u[32];if((d&1)!=1||l&&(d&4)!=4||(d&8)!=8&&(d&16)==16)return!1;let f=JSON.parse(c);return f.type!==`webauthn.get`||!f.challenge||WT(YO(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:sk({hash:!0,payload:pE(u,BE(_E(c),{as:`Bytes`})),publicKey:i,signature:o})}function _k(e){return gk(e)}function vk(e){let t=XO(e);return JSON.parse(t)}function yk(e){return JO(FT(e),{pad:!1,url:!0})}Object.freeze({status:`aborted`});function W(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}var bk=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},xk=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};let Sk={};function Ck(e){return e&&Object.assign(Sk,e),Sk}function wk(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Tk(e,t){return typeof t==`bigint`?t.toString():t}function Ek(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function Dk(e){return e==null}function Ok(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let kk=Symbol(`evaluating`);function Ak(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==kk)return r===void 0&&(r=kk,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let jk=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Mk(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Nk(e){if(Mk(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Mk(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let Pk=new Set([`string`,`number`,`symbol`]);function Fk(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function Ik(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Lk(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error(\"Cannot specify both `message` and `error` params\");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Rk(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function zk(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Bk(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Vk(e){return typeof e==`string`?e:e?.message}function Hk(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Vk(e.inst?._zod.def?.error?.(e))??Vk(t?.error?.(e))??Vk(n.customError?.(e))??Vk(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Uk(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function Wk(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let Gk=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,`_zod`,{value:e._zod,enumerable:!1}),Object.defineProperty(e,`issues`,{value:t,enumerable:!1}),e.message=JSON.stringify(t,Tk,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Kk=W(`$ZodError`,Gk),qk=W(`$ZodError`,Gk,{Parent:Error}),Jk=(e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new bk;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Hk(e,a,Ck())));throw jk(t,i?.callee),t}return o.value})(qk),Yk=(e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Hk(e,a,Ck())));throw jk(t,i?.callee),t}return o.value})(qk),Xk=(e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new bk;return a.issues.length?{success:!1,error:new(e??Kk)(a.issues.map(e=>Hk(e,i,Ck())))}:{success:!0,data:a.value}})(qk),Zk=(e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Hk(e,i,Ck())))}:{success:!0,data:a.value}})(qk),Qk=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},$k=/^-?\\d+(?:\\.\\d+)?$/,eA=/^(?:true|false)$/i,tA=W(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),nA=W(`$ZodCheckMaxLength`,(e,t)=>{var n;tA.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Dk(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Uk(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),rA=W(`$ZodCheckMinLength`,(e,t)=>{var n;tA.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Dk(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Uk(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),iA=W(`$ZodCheckStringFormat`,(e,t)=>{var n,r;tA.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),aA=W(`$ZodCheckRegex`,(e,t)=>{iA.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),oA={major:4,minor:3,patch:6},sA=W(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=oA;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=zk(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new bk;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=zk(e,t))});else{if(e.issues.length===t)continue;r||=zk(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(zk(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new bk;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new bk;return o.then(e=>t(e,r,a))}return t(o,r,a)}}Ak(e,`~standard`,()=>({validate:t=>{try{let n=Xk(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Zk(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),cA=W(`$ZodString`,(e,t)=>{sA.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Qk(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),lA=W(`$ZodNumber`,(e,t)=>{sA.init(e,t),e._zod.pattern=e._zod.bag.pattern??$k,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),uA=W(`$ZodBoolean`,(e,t)=>{sA.init(e,t),e._zod.pattern=eA,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),dA=W(`$ZodUnknown`,(e,t)=>{sA.init(e,t),e._zod.parse=e=>e});function fA(e,t,n){e.issues.length&&t.issues.push(...Bk(n,e.issues)),t.value[n]=e.value}let pA=W(`$ZodArray`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>fA(t,n,e))):fA(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function mA(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...Bk(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function hA(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key \"${n}\": expected a Zod schema`);let n=Rk(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function gA(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>mA(e,n,i,t,u))):mA(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}let _A=W(`$ZodObject`,(e,t)=>{if(sA.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=Ek(()=>hA(t));Ak(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Mk,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>mA(n,t,e,s,r))):mA(i,t,e,s,r)}return i?gA(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function vA(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!zk(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Hk(e,r,Ck())))}),t)}let yA=W(`$ZodUnion`,(e,t)=>{sA.init(e,t),Ak(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),Ak(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),Ak(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),Ak(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Ok(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>vA(t,i,e,a)):vA(s,i,e,a)}}),bA=W(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,yA.init(e,t);let n=e._zod.parse;Ak(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(n)}\"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=Ek(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index \"${t.options.indexOf(r)}\"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value \"${String(t)}\"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Mk(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),xA=W(`$ZodRecord`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Nk(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...Bk(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...Bk(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&$k.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Hk(e,r,Ck())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Bk(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Bk(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),SA=W(`$ZodEnum`,(e,t)=>{sA.init(e,t);let n=wk(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Pk.has(typeof e)).map(e=>typeof e==`string`?Fk(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),CA=W(`$ZodLiteral`,(e,t)=>{if(sA.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Fk(e):e?Fk(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),wA=W(`$ZodTransform`,(e,t)=>{sA.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new xk(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new bk;return n.value=i,n}});function TA(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}let EA=W(`$ZodOptional`,(e,t)=>{sA.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,Ak(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),Ak(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Ok(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>TA(t,e.value)):TA(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),DA=W(`$ZodPipe`,(e,t)=>{sA.init(e,t),Ak(e._zod,`values`,()=>t.in._zod.values),Ak(e._zod,`optin`,()=>t.in._zod.optin),Ak(e._zod,`optout`,()=>t.out._zod.optout),Ak(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>OA(e,t.in,n)):OA(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>OA(e,t.out,n)):OA(r,t.out,n)}});function OA(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}let kA=W(`$ZodCustom`,(e,t)=>{tA.init(e,t),sA.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>AA(t,n,r,e));AA(i,n,r,e)}});function AA(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(Wk(e))}}function jA(e,t){return new e({type:`string`,...Lk(t)})}function MA(e,t){return new e({type:`number`,checks:[],...Lk(t)})}function NA(e,t){return new e({type:`boolean`,...Lk(t)})}function PA(e){return new e({type:`unknown`})}function FA(e,t){return new nA({check:`max_length`,...Lk(t),maximum:e})}function IA(e,t){return new rA({check:`min_length`,...Lk(t),minimum:e})}function LA(e,t){return new aA({check:`string_format`,format:`regex`,...Lk(t),pattern:e})}function RA(e,t,n){let r=Lk(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function zA(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Lk(n)})}let BA=W(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);sA.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Jk(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Xk(e,t,n),e.parseAsync=async(t,n)=>Yk(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Zk(e,t,n),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]},{parent:!0}),e.with=e.check,e.clone=(t,n)=>Ik(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),VA=W(`ZodMiniString`,(e,t)=>{cA.init(e,t),BA.init(e,t)});function HA(e){return jA(VA,e)}let UA=W(`ZodMiniNumber`,(e,t)=>{lA.init(e,t),BA.init(e,t)});function WA(e){return MA(UA,e)}let GA=W(`ZodMiniBoolean`,(e,t)=>{uA.init(e,t),BA.init(e,t)});function KA(e){return NA(GA,e)}let qA=W(`ZodMiniUnknown`,(e,t)=>{dA.init(e,t),BA.init(e,t)});function JA(){return PA(qA)}let YA=W(`ZodMiniArray`,(e,t)=>{pA.init(e,t),BA.init(e,t)});function XA(e,t){return new YA({type:`array`,element:e,...Lk(t)})}let ZA=W(`ZodMiniObject`,(e,t)=>{_A.init(e,t),BA.init(e,t),Ak(e,`shape`,()=>t.shape)});function QA(e,t){return new ZA({type:`object`,shape:e??{},...Lk(t)})}let $A=W(`ZodMiniUnion`,(e,t)=>{yA.init(e,t),BA.init(e,t)});function ej(e,t){return new $A({type:`union`,options:e,...Lk(t)})}let tj=W(`ZodMiniDiscriminatedUnion`,(e,t)=>{bA.init(e,t),BA.init(e,t)});function nj(e,t,n){return new tj({type:`union`,options:t,discriminator:e,...Lk(n)})}let rj=W(`ZodMiniRecord`,(e,t)=>{xA.init(e,t),BA.init(e,t)});function ij(e,t,n){return new rj({type:`record`,keyType:e,valueType:t,...Lk(n)})}let aj=W(`ZodMiniEnum`,(e,t)=>{SA.init(e,t),BA.init(e,t),e.options=Object.values(t.entries)});function oj(e,t){return new aj({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Lk(t)})}let sj=W(`ZodMiniLiteral`,(e,t)=>{CA.init(e,t),BA.init(e,t)});function cj(e,t){return new sj({type:`literal`,values:Array.isArray(e)?e:[e],...Lk(t)})}let lj=W(`ZodMiniTransform`,(e,t)=>{wA.init(e,t),BA.init(e,t)});function uj(e){return new lj({type:`transform`,transform:e})}let dj=W(`ZodMiniOptional`,(e,t)=>{EA.init(e,t),BA.init(e,t)});function G(e){return new dj({type:`optional`,innerType:e})}let fj=W(`ZodMiniPipe`,(e,t)=>{DA.init(e,t),BA.init(e,t)});function pj(e,t){return new fj({type:`pipe`,in:e,out:t})}let mj=W(`ZodMiniCustom`,(e,t)=>{kA.init(e,t),BA.init(e,t)});function hj(e,t){return RA(mj,e??(()=>!0),t)}function gj(e,t={}){return zA(mj,e,t)}function _j(){return HA().check(LA(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function vj(){return HA().check(LA(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function yj(){return HA().check(LA(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function bj(){return HA().check(LA(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let xj=QA({description:G(HA()),digest:G(HA().check(LA(/^sha-256=/,`Invalid digest format`))),expires:G(vj()),id:HA(),intent:HA(),method:HA(),opaque:G(ij(HA(),HA())),realm:HA(),request:ij(HA(),JA())});function Sj(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires,d=l?Fj({...e,expires:u,...i&&{opaque:i}},{secretKey:l}):e.id;return xj.parse({id:d,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i&&{opaque:i}})}function Cj(e,t){let n=wj(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=Tj(n);if(!r)throw Error(`Missing request parameter.`);if(a.method&&!/^[a-z][a-z0-9:_-]*$/.test(a.method))throw Error(`Invalid method: \"${a.method}\". Must be lowercase per spec.`);return Sj({...a,request:vk(r),...i&&{meta:vk(i)}},t)}function wj(e){let t=!1,n=!1;for(let r=0;r<e.length;r++){let i=e[r];if(t){n?n=!1:i===`\\\\`?n=!0:i===`\"`&&(t=!1);continue}if(i===`\"`){t=!0;continue}if(!Oj(e,r,`Payment`))continue;let a=e.slice(0,r);if(a.trim()&&!a.trimEnd().endsWith(`,`))continue;let o=r+7;for(;o<e.length&&/\\s/.test(e[o]??``);)o++;return e.slice(o)}return null}function Tj(e){let t={},n=0;for(;n<e.length;){for(;n<e.length&&/[\\s,]/.test(e[n]??``);)n++;if(n>=e.length)break;let r=n;for(;n<e.length&&/[A-Za-z0-9_-]/.test(e[n]??``);)n++;let i=e.slice(r,n);if(!i)throw Error(`Malformed auth-param.`);for(;n<e.length&&/\\s/.test(e[n]??``);)n++;if(e[n]!==`=`)break;for(n++;n<e.length&&/\\s/.test(e[n]??``);)n++;let[a,o]=Ej(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function Ej(e,t){if(e[t]===`\"`)return Dj(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function Dj(e,t){let n=t,r=``,i=!1;for(;n<e.length;){let t=e[n];if(n++,i){r+=t,i=!1;continue}if(t===`\\\\`){i=!0;continue}if(t===`\"`)return[r,n];r+=t}throw Error(`Unterminated quoted-string.`)}function Oj(e,t,n){if(!e.slice(t).toLowerCase().startsWith(n.toLowerCase()))return!1;let r=e[t+n.length];return!!(r&&/\\s/.test(r))}function kj(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return Cj(n,t)}function Aj(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return kj(e.headers,t)}function jj(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return Mj(e.headers,t)}function Mj(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return Nj(n,t)}function Nj(e,t){let n=[];for(let t of e.matchAll(/Payment\\s+/gi))n.push(t.index);if(n.length===0)throw Error(`No Payment schemes found.`);return n.map((r,i)=>{let a=i+1<n.length?n[i+1]:e.length;return Cj(e.slice(r,a).replace(/,\\s*$/,``),t)})}function Pj(e){return[e.realm,e.method,e.intent,yk(e.request),e.expires??``,e.digest??``,e.opaque?yk(e.opaque):``].join(`|`)}function Fj(e,t){let n=Pj(e);return qO(zE(_E(t.secretKey),_E(n),{as:`Bytes`}),{url:!0,pad:!1})}function Ij(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=Hj(n)}return t}function Lj(e,t){let n=Ij(e),r=Jj(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[Hj(e)]??1,index:t}));return{definition:r,entries:i,header:zj(i),keys:n}}function Rj(e){let t=e.split(/\\s*,\\s*/).map(e=>e.trim()).filter(Boolean);if(t.length===0)throw Error(`Accept-Payment header is empty.`);return t.map((e,t)=>Kj(e,t))}function zj(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${Qj(n)}`}).join(`, `)}function Bj(e,t){return e.map((e,n)=>{let r=Uj(e,t);return r&&r.q>0?{match:r,offer:e,index:n}:void 0}).filter(e=>!!e).sort((e,t)=>t.match.q-e.match.q||e.index-t.index).map(({offer:e})=>e)}function Vj(e,t,n){let r=new Map;for(let e of t){let t=Hj(e);r.has(t)||r.set(t,e)}let i=Bj(e.filter(e=>r.has(Hj(e))),n)[0];if(i)return{challenge:i,method:r.get(Hj(i))}}function Hj(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function Uj(e,t){let n;for(let r of t){if(!Wj(e,r))continue;let t={...r,specificity:Gj(r)};(!n||t.specificity>n.specificity||t.specificity===n.specificity&&t.q>n.q||t.specificity===n.specificity&&t.q===n.q&&t.index<n.index)&&(n=t)}return n}function Wj(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function Gj(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function Kj(e,t){let n=/^(?<method>[^/;\\s]+|\\*)\\s*\\/\\s*(?<intent>[^/;\\s]+|\\*)(?<params>(?:\\s*;\\s*.+)?)$/u.exec(e),r=n?.groups?.method,i=n?.groups?.intent;if(!r||!i)throw Error(`Invalid Accept-Payment entry: ${e}`);$j(r,`method`),$j(i,`intent`);let a=1;for(let t of qj(n.groups?.params)){if(!t)continue;let n=/^(?<name>[A-Za-z0-9_-]+)\\s*=\\s*(?<value>\\S+)$/u.exec(t),r=n?.groups?.name,i=n?.groups?.value;if(!r||!i)throw Error(`Invalid Accept-Payment parameter: ${t}`);r===`q`&&(a=Xj(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function qj(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function Jj(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>Hj(e))),a={};for(let[e,t]of Object.entries(r??{})){if(!i.has(e))throw Error(`Unknown payment preference \"${e}\". Available: ${[...i].join(`, `)}`);a[e]=Yj(t,`payment preference \"${e}\"`)}return a}function Yj(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return Zj(e,t)}function Xj(e,t){if(!/^0(?:\\.\\d{0,3})?$|^1(?:\\.0{0,3})?$/.test(e))throw Error(`Invalid q-value for ${t}. Expected an HTTP qvalue.`);return Zj(Number(e),t)}function Zj(e,t){if(e<0||e>1)throw Error(`Invalid q-value for ${t}. Expected a value between 0 and 1.`);let n=Math.round(e*1e3);if(Math.abs(e*1e3-n)>1e-9)throw Error(`Invalid q-value for ${t}. Expected at most 3 decimal places.`);return n/1e3}function Qj(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function $j(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let eM=Symbol.for(`mppx.fetch.wrapper`),tM;function nM(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??Lj(i),s=cM(r),c=async(e,t)=>{let r=sM(e,t?.headers),c=r.has(`Accept-Payment`),l=dM(r,o),u=oM(e,t,r,l.header,c,n),d=await s(u.input,u.init);if(d.status!==402)return d;let f=t?.context,{context:p,...m}=u.init??{},h=jj(d),g=Vj(h,i,l.entries);if(!g)throw Error(`No method found for challenges: ${h.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:_,method:v}=g;_.expires&&Dw(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>uM(_,v,e??f)}):void 0)??await uM(_,v,f);return lM(y),s(u.input,{...m,headers:aM(u.headers,y)})};return c[eM]=s,c}function rM(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);tM||=globalThis.fetch,globalThis.fetch=nM({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(mM()?`same-origin`:`always`),fetch:globalThis.fetch})}function iM(e){if(!e)return{};if(e instanceof Headers){let t={};return e.forEach((e,n)=>{t[n]=e}),t}return Array.isArray(e)?Object.fromEntries(e):e}function aM(e,t){let n=iM(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function oM(e,t,n,r,i,a){let o=!!r&&!i&&fM(e,a);if(!o)return{headers:n,init:t,input:e};let s=new Headers(e instanceof Request?e.headers:void 0);return n.forEach((e,t)=>{s.set(t,e)}),s.set(`Accept-Payment`,r),t?(t.headers=s,{headers:s,init:t,input:e}):{headers:s,init:o?{headers:s}:void 0,input:e}}function sM(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function cM(e){let t=e;for(;t[eM];)t=t[eM];return t}function lM(e){if(!e.trim())throw Error(`Credential header value must be non-empty`);if(e.includes(`\\r`)||e.includes(`\n`))throw Error(`Credential header value contains illegal newline characters`)}async function uM(e,t,n){let r=t.context&&n!==void 0?t.context.parse(n):void 0;return t.createCredential(r===void 0?{challenge:e}:{challenge:e,context:r})}function dM(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:Rj(n),header:n}}catch{return t}}function fM(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=hM(e);return t===`same-origin`?mM()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>pM(n,e))}function pM(e,t){if(t.startsWith(`*.`)){let n=t.slice(1);return e.hostname.endsWith(n)||e.hostname===t.slice(2)}return e.origin===new URL(t).origin}function mM(){return globalThis.location!==void 0}function hM(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,mM()?globalThis.location.href:void 0)}var gM=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},_M=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function vM(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new gM;try{let e=XO(t[1]),n=JSON.parse(e);return{challenge:xj.parse({...n.challenge,...n.challenge.opaque!==void 0&&{opaque:typeof n.challenge.opaque==`string`?vk(n.challenge.opaque):n.challenge.opaque},request:vk(n.challenge.request)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new _M}}function yM(e){let{opaque:t,request:n,...r}=e.challenge,i={challenge:{...r,...t!==void 0&&{opaque:yk(t)},request:yk(n)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${JO(JSON.stringify(i),{pad:!1,url:!0})}`}function bM(e){return e}function xM(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}var SM,CM=o((()=>{SM=`1.2.3`})),wM,TM=o((()=>{CM(),wM=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...i?[`Docs: https://abitype.dev${i}`]:[],...r?[`Details: ${r}`]:[],`Version: abitype@${SM}`].join(`\n`);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=i,this.metaMessages=n.metaMessages,this.shortMessage=t}}}));function EM(e,t){return e.exec(t)?.groups}var DM,OM,kM,AM=o((()=>{DM=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,OM=/^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)?$/,kM=/^\\(.+?\\).*?$/}));function jM(e){let t=e.type;if(MM.test(e.type)&&`components`in e){t=`(`;let n=e.components.length;for(let r=0;r<n;r++){let i=e.components[r];t+=jM(i),r<n-1&&(t+=`, `)}let r=EM(MM,e.type);return t+=`)${r?.array||``}`,jM({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var MM,NM=o((()=>{AM(),MM=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function PM(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=jM(i),r!==n-1&&(t+=`, `)}return t}var FM=o((()=>{NM()}));function IM(e){return e.type===`function`?`function ${e.name}(${PM(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${PM(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${PM(e.inputs)})`:e.type===`error`?`error ${e.name}(${PM(e.inputs)})`:e.type===`constructor`?`constructor(${PM(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var LM=o((()=>{FM()}));function RM(e){return ZM.test(e)}function zM(e){return EM(ZM,e)}function BM(e){return QM.test(e)}function VM(e){return EM(QM,e)}function HM(e){return $M.test(e)}function UM(e){return EM($M,e)}function WM(e){return eN.test(e)}function GM(e){return EM(eN,e)}function KM(e){return tN.test(e)}function qM(e){return EM(tN,e)}function JM(e){return nN.test(e)}function YM(e){return EM(nN,e)}function XM(e){return rN.test(e)}var ZM,QM,$M,eN,tN,nN,rN,iN,aN,oN=o((()=>{AM(),ZM=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,QM=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,$M=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,eN=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,tN=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,nN=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,rN=/^receive\\(\\) external payable$/,iN=new Set([`indexed`]),aN=new Set([`calldata`,`memory`,`storage`])})),sN,cN,lN=o((()=>{TM(),sN=class extends wM{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" 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`})}},cN=class extends wM{constructor({type:e}){super(`Unknown type.`,{metaMessages:[`Type \"${e}\" is not a valid ABI type.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSolidityTypeError`})}}})),uN,dN,fN,pN,mN,hN=o((()=>{TM(),uN=class extends wM{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},dN=class extends wM{constructor({param:e,name:t}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`\"${t}\" 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`})}},fN=class extends wM{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidModifierError`})}},pN=class extends wM{constructor({param:e,type:t,modifier:n}){super(`Invalid ABI parameter.`,{details:e,metaMessages:[`Modifier \"${n}\" not allowed${t?` in \"${t}\" type`:``}.`,`Data location can only be specified for array, struct, or mapping types, but \"${n}\" was given.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidFunctionModifierError`})}},mN=class extends wM{constructor({abiParameter:e}){super(`Invalid ABI parameter.`,{details:JSON.stringify(e,null,2),metaMessages:[`ABI parameter type is invalid.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidAbiTypeParameterError`})}}})),gN,_N,vN,yN=o((()=>{TM(),gN=class extends wM{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},_N=class extends wM{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},vN=class extends wM{constructor({signature:e}){super(`Invalid struct signature.`,{details:e,metaMessages:[`No properties exist.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidStructSignatureError`})}}})),bN,xN=o((()=>{TM(),bN=class extends wM{constructor({type:e}){super(`Circular reference detected.`,{metaMessages:[`Struct \"${e}\" is a circular reference.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`CircularReferenceError`})}}})),SN,CN=o((()=>{TM(),SN=class extends wM{constructor({current:e,depth:t}){super(`Unbalanced parentheses.`,{metaMessages:[`\"${e.trim()}\" has too many ${t>0?`opening`:`closing`} parentheses.`],details:`Depth \"${t}\"`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParenthesisError`})}}}));function wN(e,t,n){let r=``;if(n)for(let e of Object.entries(n)){if(!e)continue;let t=``;for(let n of e[1])t+=`[${n.type}${n.name?`:${n.name}`:``}]`;r+=`(${e[0]}{${t}})`}return t?`${t}:${e}${r}`:`${e}${r}`}var TN,EN=o((()=>{TN=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 DN(e,t={}){if(HM(e))return ON(e,t);if(BM(e))return kN(e,t);if(RM(e))return AN(e,t);if(KM(e))return jN(e,t);if(JM(e))return MN(e);if(XM(e))return{type:`receive`,stateMutability:`payable`};throw new _N({signature:e})}function ON(e,t={}){let n=UM(e);if(!n)throw new gN({signature:e,type:`function`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{modifiers:aN,structs:t,type:`function`}));let o=[];if(n.returns){let e=PN(n.returns),r=e.length;for(let n=0;n<r;n++)o.push(NN(e[n],{modifiers:aN,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function kN(e,t={}){let n=VM(e);if(!n)throw new gN({signature:e,type:`event`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{modifiers:iN,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function AN(e,t={}){let n=zM(e);if(!n)throw new gN({signature:e,type:`error`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{structs:t,type:`error`}));return{name:n.name,type:`error`,inputs:i}}function jN(e,t={}){let n=qM(e);if(!n)throw new gN({signature:e,type:`constructor`});let r=PN(n.parameters),i=[],a=r.length;for(let e=0;e<a;e++)i.push(NN(r[e],{structs:t,type:`constructor`}));return{type:`constructor`,stateMutability:n.stateMutability??`nonpayable`,inputs:i}}function MN(e){let t=YM(e);if(!t)throw new gN({signature:e,type:`fallback`});return{type:`fallback`,stateMutability:t.stateMutability??`nonpayable`}}function NN(e,t){let n=wN(e,t?.type,t?.structs);if(TN.has(n))return TN.get(n);let r=kM.test(e),i=EM(r?zN:RN,e);if(!i)throw new uN({param:e});if(i.name&&IN(i.name))throw new dN({param:e,name:i.name});let a=i.name?{name:i.name}:{},o=i.modifier===`indexed`?{indexed:!0}:{},s=t?.structs??{},c,l={};if(r){c=`tuple`;let e=PN(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(NN(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(BN.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!FN(c))throw new cN({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new fN({param:e,type:t?.type,modifier:i.modifier});if(aN.has(i.modifier)&&!LN(c,!!i.array))throw new pN({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return TN.set(n,u),u}function PN(e,t=[],n=``,r=0){let i=e.trim().length;for(let a=0;a<i;a++){let i=e[a],o=e.slice(a+1);switch(i){case`,`:return r===0?PN(o,[...t,n.trim()]):PN(o,t,`${n}${i}`,r);case`(`:return PN(o,t,`${n}${i}`,r+1);case`)`:return PN(o,t,`${n}${i}`,r-1);default:return PN(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new SN({current:n,depth:r});return t.push(n.trim()),t}function FN(e){return e===`address`||e===`bool`||e===`function`||e===`string`||DM.test(e)||OM.test(e)}function IN(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||DM.test(e)||OM.test(e)||VN.test(e)}function LN(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var RN,zN,BN,VN,HN=o((()=>{AM(),lN(),hN(),yN(),CN(),EN(),oN(),RN=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*(?:\\spayable)?)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,zN=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,BN=/^u?int$/,VN=/^(?:after|alias|anonymous|apply|auto|byte|calldata|case|catch|constant|copyof|default|defined|error|event|external|false|final|function|immutable|implements|in|indexed|inline|internal|let|mapping|match|memory|mutable|null|of|override|partial|private|promise|public|pure|reference|relocatable|return|returns|sizeof|static|storage|struct|super|supports|switch|this|true|try|typedef|typeof|var|view|virtual)$/}));function UN(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!WM(n))continue;let i=GM(n);if(!i)throw new gN({signature:n,type:`struct`});let a=i.properties.split(`;`),o=[],s=a.length;for(let e=0;e<s;e++){let t=a[e].trim();if(!t)continue;let n=NN(t,{type:`struct`});o.push(n)}if(!o.length)throw new vN({signature:n});t[i.name]=o}let r={},i=Object.entries(t),a=i.length;for(let e=0;e<a;e++){let[n,a]=i[e];r[n]=WN(a,t)}return r}function WN(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(kM.test(i.type))r.push(i);else{let e=EM(GN,i.type);if(!e?.type)throw new mN({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new bN({type:o});r.push({...i,type:`tuple${a??``}`,components:WN(t[o],t,new Set([...n,o]))})}else if(FN(o))r.push(i);else throw new sN({type:o})}}return r}var GN,KN=o((()=>{AM(),lN(),hN(),yN(),xN(),oN(),HN(),GN=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/}));function qN(e){let t=UN(e),n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i];WM(r)||n.push(DN(r,t))}return n}var JN=o((()=>{oN(),KN(),HN()})),YN=o((()=>{TM(),LM(),NM(),FM(),JN(),lN(),oN(),KN(),HN(),hN(),yN(),CN(),xN()}));function XN(e,t,n){let r=e[t.name];if(typeof r==`function`)return r;let i=e[n];return typeof i==`function`?i:n=>t(e,n)}function ZN(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new AP(e.type);return`${e.name}(${QN(e.inputs,{includeName:t})})`}function QN(e,{includeName:t=!1}={}){return e?e.map(e=>$N(e,{includeName:t})).join(t?`, `:`,`):``}function $N(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${QN(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var eP=o((()=>{jP()}));function K(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var tP=o((()=>{}));function nP(e){return K(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var rP=o((()=>{tP()})),iP,aP=o((()=>{iP=`2.47.6`}));function oP(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?oP(e.cause,t):t?null:e}var sP,q,J=o((()=>{aP(),sP={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${iP}`},q=class e extends Error{constructor(t,n={}){let r=n.cause instanceof e?n.cause.details:n.cause?.message?n.cause.message:n.details,i=n.cause instanceof e&&n.cause.docsPath||n.docsPath,a=sP.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...sP.version?[`Version: ${sP.version}`]:[]].join(`\n`);super(o,n.cause?{cause:n.cause}:void 0),Object.defineProperty(this,`details`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`docsPath`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`metaMessages`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`shortMessage`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`version`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`BaseError`}),this.details=r,this.docsPath=i,this.metaMessages=n.metaMessages,this.name=n.name??this.name,this.shortMessage=t,this.version=iP}walk(e){return oP(this,e)}}})),cP,lP,uP,dP,fP,pP,mP,hP,gP,_P,vP,yP,bP,xP,SP,CP,wP,TP,EP,DP,OP,kP,AP,jP=o((()=>{eP(),rP(),J(),cP=class extends q{constructor({docsPath:e}){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(`\n`),{docsPath:e,name:`AbiConstructorNotFoundError`})}},lP=class extends q{constructor({docsPath:e}){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(`\n`),{docsPath:e,name:`AbiConstructorParamsNotFoundError`})}},uP=class extends q{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${QN(t,{includeName:!0})})`,`Data: ${e} (${n} bytes)`],name:`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=e,this.params=t,this.size=n}},dP=class extends q{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},fP=class extends q{constructor({expectedLength:e,givenLength:t,type:n}){super([`ABI encoding array length mismatch for type ${n}.`,`Expected length: ${e}`,`Given length: ${t}`].join(`\n`),{name:`AbiEncodingArrayLengthMismatchError`})}},pP=class extends q{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${nP(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},mP=class extends q{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},hP=class extends q{constructor(e,{docsPath:t}){super([`Arguments (\\`args\\`) were provided to \"${e}\", but \"${e}\" 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(`\n`),{docsPath:t,name:`AbiErrorInputsNotFoundError`})}},gP=class extends q{constructor(e,{docsPath:t}={}){super([`Error ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the error exists on it.`].join(`\n`),{docsPath:t,name:`AbiErrorNotFoundError`})}},_P=class extends q{constructor(e,{docsPath:t,cause:n}){super([`Encoded error signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiErrorSignatureNotFoundError`,cause:n}),Object.defineProperty(this,`signature`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.signature=e}},vP=class extends q{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},yP=class extends q{constructor(e,{docsPath:t}){super([`Encoded event signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiEventSignatureNotFoundError`})}},bP=class extends q{constructor(e,{docsPath:t}={}){super([`Function ${e?`\"${e}\" `:``}not found on ABI.`,`Make sure you are using the correct ABI and that the function exists on it.`].join(`\n`),{docsPath:t,name:`AbiFunctionNotFoundError`})}},xP=class extends q{constructor(e,{docsPath:t}){super([`Function \"${e}\" 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(`\n`),{docsPath:t,name:`AbiFunctionOutputsNotFoundError`})}},SP=class extends q{constructor(e,{docsPath:t}){super([`Encoded function signature \"${e}\" 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://4byte.sourcify.dev/?q=${e}.`].join(`\n`),{docsPath:t,name:`AbiFunctionSignatureNotFoundError`})}},CP=class extends q{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ZN(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${ZN(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},wP=class extends q{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},TP=class extends q{constructor({abiItem:e,data:t,params:n,size:r}){super([`Data size of ${r} bytes is too small for non-indexed event parameters.`].join(`\n`),{metaMessages:[`Params: (${QN(n,{includeName:!0})})`,`Data: ${t} (${r} bytes)`],name:`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=e,this.data=t,this.params=n,this.size=r}},EP=class extends q{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${ZN(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},DP=class extends q{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid encoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiEncodingType`})}},OP=class extends q{constructor(e,{docsPath:t}){super([`Type \"${e}\" is not a valid decoding type.`,`Please provide a valid ABI type.`].join(`\n`),{docsPath:t,name:`InvalidAbiDecodingType`})}},kP=class extends q{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},AP=class extends q{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),MP,NP,PP,FP=o((()=>{J(),MP=class extends q{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},NP=class extends q{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},PP=class extends q{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} is expected to be ${t} ${n} long, but is ${e} ${n} long.`,{name:`InvalidBytesLengthError`})}}}));function IP(e,{dir:t,size:n=32}={}){return typeof e==`string`?LP(e,{dir:t,size:n}):RP(e,{dir:t,size:n})}function LP(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new NP({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function RP(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new NP({size:e.length,targetSize:n,type:`bytes`});let r=new Uint8Array(n);for(let i=0;i<n;i++){let a=t===`right`;r[a?i:n-i-1]=e[a?i:e.length-i-1]}return r}var zP=o((()=>{FP()})),BP,VP,HP,UP,WP,GP=o((()=>{J(),BP=class extends q{constructor({max:e,min:t,signed:n,size:r,value:i}){super(`Number \"${i}\" is not in safe ${r?`${r*8}-bit ${n?`signed`:`unsigned`} `:``}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:`IntegerOutOfRangeError`})}},VP=class extends q{constructor(e){super(`Bytes value \"${e}\" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:`InvalidBytesBooleanError`})}},HP=class extends q{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},UP=class extends q{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},WP=class extends q{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function KP(e,{dir:t=`left`}={}){let n=typeof e==`string`?e.replace(`0x`,``):e,r=0;for(let e=0;e<n.length-1&&n[t===`left`?e:n.length-e-1].toString()===`0`;e++)r++;return n=t===`left`?n.slice(r):n.slice(0,n.length-r),typeof e==`string`?(n.length===1&&t===`right`&&(n=`${n}0`),`0x${n.length%2==1?`0${n}`:n}`):n}var qP=o((()=>{}));function JP(e,{size:t}){if(nP(e)>t)throw new WP({givenSize:nP(e),maxSize:t})}function Y(e,t={}){let{signed:n}=t;t.size&&JP(e,{size:t.size});let r=BigInt(e);if(!n)return r;let i=(e.length-2)/2;return r<=(1n<<BigInt(i)*8n-1n)-1n?r:r-BigInt(`0x${`f`.padStart(i*2,`f`)}`)-1n}function YP(e,t={}){let n=e;if(t.size&&(JP(n,{size:t.size}),n=KP(n)),KP(n)===`0x00`)return!1;if(KP(n)===`0x01`)return!0;throw new HP(n)}function XP(e,t={}){let n=Y(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new BP({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var ZP=o((()=>{GP(),rP(),qP()}));function QP(e,t={}){return typeof e==`number`||typeof e==`bigint`?X(e,t):typeof e==`string`?tF(e,t):typeof e==`boolean`?$P(e,t):eF(e,t)}function $P(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(JP(n,{size:t.size}),IP(n,{size:t.size})):n}function eF(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=nF[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(JP(r,{size:t.size}),IP(r,{dir:`right`,size:t.size})):r}function X(e,t={}){let{signed:n,size:r}=t,i=BigInt(e),a;r?a=n?(1n<<BigInt(r)*8n-1n)-1n:2n**(BigInt(r)*8n)-1n:typeof e==`number`&&(a=BigInt(2**53-1));let o=typeof a==`bigint`&&n?-a-1n:0;if(a&&i>a||i<o){let t=typeof e==`bigint`?`n`:``;throw new BP({max:a?`${a}${t}`:void 0,min:`${o}${t}`,signed:n,size:r,value:`${e}${t}`})}let s=`0x${(n&&i<0?(1n<<BigInt(r*8))+BigInt(i):i).toString(16)}`;return r?IP(s,{size:r}):s}function tF(e,t={}){return eF(rF.encode(e),t)}var nF,rF,iF=o((()=>{GP(),zP(),ZP(),nF=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),rF=new TextEncoder}));function aF(e,t={}){return typeof e==`number`||typeof e==`bigint`?lF(e,t):typeof e==`boolean`?oF(e,t):K(e)?cF(e,t):uF(e,t)}function oF(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(JP(n,{size:t.size}),IP(n,{size:t.size})):n}function sF(e){if(e>=fF.zero&&e<=fF.nine)return e-fF.zero;if(e>=fF.A&&e<=fF.F)return e-(fF.A-10);if(e>=fF.a&&e<=fF.f)return e-(fF.a-10)}function cF(e,t={}){let n=e;t.size&&(JP(n,{size:t.size}),n=IP(n,{dir:`right`,size:t.size}));let r=n.slice(2);r.length%2&&(r=`0${r}`);let i=r.length/2,a=new Uint8Array(i);for(let e=0,t=0;e<i;e++){let n=sF(r.charCodeAt(t++)),i=sF(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new q(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function lF(e,t){return cF(X(e,t))}function uF(e,t={}){let n=dF.encode(e);return typeof t.size==`number`?(JP(n,{size:t.size}),IP(n,{dir:`right`,size:t.size})):n}var dF,fF,pF=o((()=>{J(),tP(),zP(),ZP(),iF(),dF=new TextEncoder,fF={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function mF(e,t){let n=t||`hex`,r=Tn(K(e,{strict:!1})?aF(e):e);return n===`bytes`?r:QP(r)}var hF=o((()=>{Dn(),tP(),pF(),iF()}));function gF(e){return _F(e)}var _F,vF=o((()=>{pF(),hF(),_F=e=>mF(aF(e))}));function yF(e){let t=!0,n=``,r=0,i=``,a=!1;for(let o=0;o<e.length;o++){let s=e[o];if([`(`,`)`,`,`].includes(s)&&(t=!0),s===`(`&&r++,s===`)`&&r--,t){if(r===0){if(s===` `&&[`event`,`function`,``].includes(i))i=``;else if(i+=s,s===`)`){a=!0;break}continue}if(s===` `){e[o-1]!==`,`&&n!==`,`&&n!==`,(`&&(n=``,t=!1);continue}i+=s,n+=s}}if(!a)throw new q(`Unable to normalize signature.`);return i}var bF=o((()=>{J()})),xF,SF=o((()=>{YN(),bF(),xF=e=>yF(typeof e==`string`?e:IM(e))}));function CF(e){return gF(xF(e))}var wF=o((()=>{vF(),SF()})),TF,EF=o((()=>{wF(),TF=CF})),DF,OF=o((()=>{J(),DF=class extends q{constructor({address:e}){super(`Address \"${e}\" is invalid.`,{metaMessages:[`- Address must be a hex value of 20 bytes (40 hex characters).`,`- Address must match its checksum counterpart.`],name:`InvalidAddressError`})}}})),kF,AF=o((()=>{kF=class extends Map{constructor(e){super(),Object.defineProperty(this,`maxSize`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&(super.delete(e),super.set(e,t)),t}set(e,t){if(super.has(e)&&super.delete(e),super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=super.keys().next().value;e!==void 0&&super.delete(e)}return this}}}));function jF(e,t){if(NF.has(`${e}.${t}`))return NF.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=mF(uF(n),`bytes`),i=(t?n.substring(`${t}0x`.length):n).split(``);for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(r[e>>1]&15)>=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let a=`0x${i.join(``)}`;return NF.set(`${e}.${t}`,a),a}function MF(e,t){if(!FF(e,{strict:!1}))throw new DF({address:e});return jF(e,t)}var NF,PF=o((()=>{OF(),pF(),hF(),AF(),RF(),NF=new kF(8192)}));function FF(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(LF.has(r))return LF.get(r);let i=IF.test(e)?e.toLowerCase()===e?!0:n?jF(e)===e:!0:!1;return LF.set(r,i),i}var IF,LF,RF=o((()=>{AF(),PF(),IF=/^0x[a-fA-F0-9]{40}$/,LF=new kF(8192)}));function zF(e){return typeof e[0]==`string`?VF(e):BF(e)}function BF(e){let t=0;for(let n of e)t+=n.length;let n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}function VF(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var HF=o((()=>{}));function UF(e,t,n,{strict:r}={}){return K(e,{strict:!1})?qF(e,t,n,{strict:r}):KF(e,t,n,{strict:r})}function WF(e,t){if(typeof t==`number`&&t>0&&t>nP(e)-1)throw new MP({offset:t,position:`start`,size:nP(e)})}function GF(e,t,n){if(typeof t==`number`&&typeof n==`number`&&nP(e)!==n-t)throw new MP({offset:n,position:`end`,size:nP(e)})}function KF(e,t,n,{strict:r}={}){WF(e,t);let i=e.slice(t,n);return r&&GF(i,t,n),i}function qF(e,t,n,{strict:r}={}){WF(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&GF(i,t,n),i}var JF=o((()=>{FP(),tP(),rP()})),YF,XF,ZF=o((()=>{YF=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,XF=/^(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)?$/}));function QF(e,t){if(e.length!==t.length)throw new mP({expectedLength:e.length,givenLength:t.length});let n=tI($F({params:e,values:t}));return n.length===0?`0x`:n}function $F({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(eI({param:e[r],value:t[r]}));return n}function eI({param:e,value:t}){let n=lI(e.type);if(n){let[r,i]=n;return rI(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return cI(t,{param:e});if(e.type===`address`)return nI(t);if(e.type===`bool`)return aI(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=XF.exec(e.type)??[];return oI(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return iI(t,{param:e});if(e.type===`string`)return sI(t);throw new DP(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function tI(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=nP(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(X(t+i,{size:32})),r.push(s),i+=nP(s)):n.push(s)}return zF([...n,...r])}function nI(e){if(!FF(e))throw new DF({address:e});return{dynamic:!1,encoded:LP(e.toLowerCase())}}function rI(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new kP(e);if(!r&&e.length!==t)throw new fP({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=eI({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=tI(a);if(r){let t=X(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?zF([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:zF(a.map(({encoded:e})=>e))}}function iI(e,{param:t}){let[,n]=t.type.split(`bytes`),r=nP(e);if(!n){let t=e;return r%32!=0&&(t=LP(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:zF([LP(X(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new pP({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:LP(e,{dir:`right`})}}function aI(e){if(typeof e!=`boolean`)throw new q(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:LP($P(e))}}function oI(e,{signed:t,size:n=256}){if(typeof n==`number`){let r=2n**(BigInt(n)-(t?1n:0n))-1n,i=t?-r-1n:0n;if(e>r||e<i)throw new BP({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:X(e,{size:32,signed:t})}}function sI(e){let t=tF(e),n=Math.ceil(nP(t)/32),r=[];for(let e=0;e<n;e++)r.push(LP(UF(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:zF([LP(X(nP(t),{size:32})),...r])}}function cI(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=eI({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?tI(r):zF(r.map(({encoded:e})=>e))}}function lI(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var uI=o((()=>{jP(),OF(),J(),GP(),RF(),HF(),zP(),rP(),JF(),iF(),ZF()})),dI,fI=o((()=>{JF(),wF(),dI=e=>UF(CF(e),0,4)}));function pI(e){let{abi:t,args:n=[],name:r}=e,i=K(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?dI(e)===r:e.type===`event`?TF(e)===r:!1:`name`in e&&e.name===r);if(a.length===0)return;if(a.length===1)return a[0];let o;for(let e of a)if(`inputs`in e){if(!n||n.length===0){if(!e.inputs||e.inputs.length===0)return e;continue}if(e.inputs&&e.inputs.length!==0&&e.inputs.length===n.length&&n.every((t,n)=>{let r=`inputs`in e&&e.inputs[n];return r?mI(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=hI(e.inputs,o.inputs,n);if(t)throw new CP({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function mI(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return FF(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((t,r)=>n===`object`&&mI(Object.values(e)[r],t)):/^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(e=>mI(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function hI(e,t,n){for(let r in e){let i=e[r],a=t[r];if(i.type===`tuple`&&a.type===`tuple`&&`components`in i&&`components`in a)return hI(i.components,a.components,n[r]);let o=[i.type,a.type];if(o.includes(`address`)&&o.includes(`bytes20`)||(o.includes(`address`)&&o.includes(`string`)||o.includes(`address`)&&o.includes(`bytes`))&&FF(n[r],{strict:!1}))return o}}var gI=o((()=>{jP(),tP(),RF(),EF(),fI()}));function _I(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var vI=o((()=>{}));function yI(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=pI({abi:t,args:n,name:r});if(!e)throw new bP(r,{docsPath:bI});i=e}if(i.type!==`function`)throw new bP(void 0,{docsPath:bI});return{abi:[i],functionName:dI(ZN(i))}}var bI,xI=o((()=>{jP(),fI(),eP(),gI(),bI=`/docs/contract/encodeFunctionData`}));function SI(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:yI(e),i=n[0];return VF([r,(`inputs`in i&&i.inputs?QF(i.inputs,t??[]):void 0)??`0x`])}var CI=o((()=>{HF(),uI(),xI()})),wI,TI,EI,DI=o((()=>{wI={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.`},TI={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},EI={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),OI,kI,AI,jI=o((()=>{J(),OI=class extends q{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},kI=class extends q{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},AI=class extends q{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function MI(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(NI);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var NI,PI=o((()=>{jI(),NI={bytes:new Uint8Array,dataView:new DataView(new ArrayBuffer(0)),position:0,positionReadCount:new Map,recursiveReadCount:0,recursiveReadLimit:1/0,assertReadLimit(){if(this.recursiveReadCount>=this.recursiveReadLimit)throw new AI({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new kI({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new OI({offset:e});let 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 OI({offset:e});let t=this.position+e;this.assertPosition(t),this.position=t},inspectByte(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectBytes(e,t){let n=t??this.position;return this.assertPosition(n+e-1),this.bytes.subarray(n,n+e)},inspectUint8(e){let t=e??this.position;return this.assertPosition(t),this.bytes[t]},inspectUint16(e){let t=e??this.position;return this.assertPosition(t+1),this.dataView.getUint16(t)},inspectUint24(e){let t=e??this.position;return this.assertPosition(t+2),(this.dataView.getUint16(t)<<8)+this.dataView.getUint8(t+2)},inspectUint32(e){let 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();let e=this.inspectByte();return this.position++,e},readBytes(e,t){this.assertReadLimit(),this._touch();let n=this.inspectBytes(e);return this.position+=t??e,n},readUint8(){this.assertReadLimit(),this._touch();let e=this.inspectUint8();return this.position+=1,e},readUint16(){this.assertReadLimit(),this._touch();let e=this.inspectUint16();return this.position+=2,e},readUint24(){this.assertReadLimit(),this._touch();let e=this.inspectUint24();return this.position+=3,e},readUint32(){this.assertReadLimit(),this._touch();let e=this.inspectUint32();return this.position+=4,e},get remaining(){return this.bytes.length-this.position},setPosition(e){let t=this.position;return this.assertPosition(e),this.position=e,()=>this.position=t},_touch(){if(this.recursiveReadLimit===1/0)return;let e=this.getReadCount();this.positionReadCount.set(this.position,e+1),e>0&&this.recursiveReadCount++}}}));function FI(e,t={}){return t.size!==void 0&&JP(e,{size:t.size}),Y(eF(e,t),t)}function II(e,t={}){let n=e;if(t.size!==void 0&&(JP(n,{size:t.size}),n=KP(n)),n.length>1||n[0]>1)throw new VP(n);return!!n[0]}function LI(e,t={}){return t.size!==void 0&&JP(e,{size:t.size}),XP(eF(e,t),t)}function RI(e,t={}){let n=e;return t.size!==void 0&&(JP(n,{size:t.size}),n=KP(n,{dir:`right`})),new TextDecoder().decode(n)}var zI=o((()=>{GP(),qP(),ZP(),iF()}));function BI(e,t){let n=typeof t==`string`?cF(t):t,r=MI(n);if(nP(n)===0&&e.length>0)throw new dP;if(nP(t)&&nP(t)<32)throw new uP({data:typeof t==`string`?t:eF(t),params:e,size:nP(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=VI(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function VI(e,t,{staticPosition:n}){let r=lI(t.type);if(r){let[i,a]=r;return UI(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return qI(e,t,{staticPosition:n});if(t.type===`address`)return HI(e);if(t.type===`bool`)return WI(e);if(t.type.startsWith(`bytes`))return GI(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return KI(e,t);if(t.type===`string`)return JI(e,{staticPosition:n});throw new OP(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function HI(e){return[jF(eF(KF(e.readBytes(32),-20))),32]}function UI(e,t,{length:n,staticPosition:r}){if(!n){let n=r+LI(e.readBytes(ZI)),i=n+XI;e.setPosition(n);let a=LI(e.readBytes(XI)),o=YI(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=VI(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(YI(t)){let i=r+LI(e.readBytes(ZI)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=VI(e,t,{staticPosition:i});a.push(n)}return e.setPosition(r+32),[a,32]}let i=0,a=[];for(let o=0;o<n;++o){let[n,o]=VI(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function WI(e){return[II(e.readBytes(32),{size:32}),32]}function GI(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=LI(e.readBytes(32));e.setPosition(n+t);let r=LI(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[eF(i),32]}return[eF(e.readBytes(Number.parseInt(i,10),32)),32]}function KI(e,t){let n=t.type.startsWith(`int`),r=Number.parseInt(t.type.split(`int`)[1]||`256`,10),i=e.readBytes(32);return[r>48?FI(i,{signed:n}):LI(i,{signed:n}),32]}function qI(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(YI(t)){let o=n+LI(e.readBytes(ZI));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=VI(e,s,{staticPosition:o});a+=l,i[r?n:s?.name]=c}return e.setPosition(n+32),[i,32]}for(let o=0;o<t.components.length;++o){let s=t.components[o],[c,l]=VI(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function JI(e,{staticPosition:t}){let n=t+LI(e.readBytes(32));e.setPosition(n);let r=LI(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=RI(KP(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function YI(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(YI);let n=lI(e.type);return!!(n&&YI({...e,type:n[1]}))}var XI,ZI,QI=o((()=>{jP(),PF(),PI(),rP(),JF(),qP(),zI(),pF(),iF(),uI(),XI=32,ZI=32}));function $I(e){let{abi:t,data:n,cause:r}=e,i=UF(n,0,4);if(i===`0x`)throw new dP({cause:r});let a=[...t||[],TI,EI].find(e=>e.type===`error`&&i===dI(ZN(e)));if(!a)throw new _P(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?BI(a.inputs,UF(n,4)):void 0,errorName:a.name}}var eL=o((()=>{DI(),jP(),JF(),fI(),QI(),eP()})),tL,nL=o((()=>{tL=(e,t,n)=>JSON.stringify(e,(e,n)=>{let r=typeof n==`bigint`?n.toString():n;return typeof t==`function`?t(e,r):r},n)}));function rL({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((e,n)=>`${r&&e.name?`${e.name}: `:``}${typeof t[n]==`object`?tL(t[n]):t[n]}`).join(`, `)})`}var iL=o((()=>{nL()})),aL,oL,sL=o((()=>{aL={gwei:9,wei:18},oL={ether:-9,wei:9}}));function cL(e,t){let n=e.toString(),r=n.startsWith(`-`);r&&(n=n.slice(1)),n=n.padStart(t,`0`);let[i,a]=[n.slice(0,n.length-t),n.slice(n.length-t)];return a=a.replace(/(0+)$/,``),`${r?`-`:``}${i||`0`}${a?`.${a}`:``}`}var lL=o((()=>{}));function uL(e,t=`wei`){return cL(e,aL[t])}var dL=o((()=>{sL(),lL()}));function fL(e,t=`wei`){return cL(e,oL[t])}var pL=o((()=>{sL(),lL()}));function mL(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function hL(e){return e.reduce((e,{address:t,...n})=>{let r=`${e} ${t}:\\n`;return n.nonce&&(r+=` nonce: ${n.nonce}\\n`),n.balance&&(r+=` balance: ${n.balance}\\n`),n.code&&(r+=` code: ${n.code}\\n`),n.state&&(r+=` state:\n`,r+=mL(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=mL(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var gL,_L,vL=o((()=>{J(),gL=class extends q{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},_L=class extends q{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function yL(e){let t=Object.entries(e).map(([e,t])=>t===void 0||t===!1?null:[e,t]).filter(Boolean),n=t.reduce((e,[t])=>Math.max(e,t.length),0);return t.map(([e,t])=>` ${`${e}:`.padEnd(n+1)} ${t}`).join(`\n`)}var bL,xL,SL,CL,wL,TL,EL=o((()=>{dL(),pL(),J(),bL=class extends q{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},xL=class extends q{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,yL(e),`}`,``,`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\",\"- an EIP-7702 Transaction with `authorizationList`, or\",\"- a Legacy Transaction with `gasPrice`\"],name:`InvalidSerializableTransactionError`})}},SL=class extends q{constructor({serializedType:e}){super(`Serialized transaction type \"${e}\" is invalid.`,{name:`InvalidSerializedTransactionType`}),Object.defineProperty(this,`serializedType`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.serializedType=e}},CL=class extends q{constructor({attributes:e,serializedTransaction:t,type:n}){let r=Object.entries(e).map(([e,t])=>t===void 0?e:void 0).filter(Boolean);super(`Invalid serialized transaction of type \"${n}\" was provided.`,{metaMessages:[`Serialized Transaction: \"${t}\"`,r.length>0?`Missing Attributes: ${r.join(`, `)}`:``].filter(Boolean),name:`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=t,this.type=n}},wL=class extends q{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},TL=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=yL({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${uL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${fL(o)} gwei`,maxFeePerGas:s!==void 0&&`${fL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${fL(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Request Arguments:`,f].filter(Boolean),name:`TransactionExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}}})),DL,OL,kL=o((()=>{DL=e=>e,OL=e=>e})),AL,jL,ML,NL,PL,FL,IL=o((()=>{vI(),DI(),eL(),eP(),iL(),gI(),dL(),pL(),jP(),J(),vL(),EL(),kL(),AL=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d,stateOverride:f}){let p=yL({from:(t?_I(t):void 0)?.address,to:u,value:d!==void 0&&`${uL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${fL(o)} gwei`,maxFeePerGas:s!==void 0&&`${fL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${fL(c)} gwei`,nonce:l});f&&(p+=`\\n${hL(f)}`),super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Raw Call Arguments:`,p].filter(Boolean),name:`CallExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},jL=class extends q{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=pI({abi:t,args:n,name:a}),c=s?rL({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?ZN(s,{includeName:!0}):void 0,u=yL({address:r&&DL(r),function:l,args:c&&c!==`()`&&`${[...Array(a?.length??0).keys()].map(()=>` `).join(``)}${c}`,sender:o});super(e.shortMessage||`An unknown error occurred while executing the contract function \"${a}\".`,{cause:e,docsPath:i,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],u&&`Contract Call:`,u].filter(Boolean),name:`ContractFunctionExecutionError`}),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}),this.abi=t,this.args=n,this.cause=e,this.contractAddress=r,this.functionName=a,this.sender=o}},ML=class extends q{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=$I({abi:e,data:t,cause:i});let{abiItem:n,errorName:r,args:a}=o;if(r===`Error`)c=a[0];else if(r===`Panic`){let[e]=a;c=wI[e]}else{let e=n?ZN(n,{includeName:!0}):void 0,t=n&&a?rL({abiItem:n,args:a,includeFunctionName:!1,includeName:!1}):void 0;s=[e?`Error: ${e}`:``,t&&t!==`()`?` ${[...Array(r?.length??0).keys()].map(()=>` `).join(``)}${t}`:``]}}catch(e){a=e}else r&&(c=r);let l;a instanceof _P&&(l=a.signature,s=[`Unable to decode signature \"${l}\" 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://4byte.sourcify.dev/?q=${l}.`]),super(c&&c!==`execution reverted`||l?[`The contract function \"${n}\" reverted with the following ${l?`signature`:`reason`}:`,c||l].join(`\n`):`The contract function \"${n}\" reverted.`,{cause:a??i,metaMessages:s,name:`ContractFunctionRevertedError`}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,`raw`,{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.raw=t,this.reason=c,this.signature=l}},NL=class extends q{constructor({functionName:e,cause:t}){super(`The contract function \"${e}\" returned no data (\"0x\").`,{metaMessages:[`This could be due to any of the following:`,` - The contract does not have the function \"${e}\",`,` - The parameters passed to the contract function may be invalid, or`,` - The address is not a contract.`],name:`ContractFunctionZeroDataError`,cause:t})}},PL=class extends q{constructor({factory:e}){super(`Deployment for counterfactual contract call failed${e?` for factory \"${e}\".`:``}`,{metaMessages:[`Please ensure:`,\"- The `factory` is a valid contract deployment factory (ie. Create2 Factory, ERC-4337 Factory, etc).\",\"- The `factoryData` is a valid encoded function call for contract deployment function on the factory.\"],name:`CounterfactualDeploymentFailedError`})}},FL=class extends q{constructor({data:e,message:t}){super(t||``,{name:`RawContractError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=e}}})),LL,RL,zL,BL=o((()=>{nL(),J(),kL(),LL=class extends q{constructor({body:e,cause:t,details:n,headers:r,status:i,url:a}){super(`HTTP request failed.`,{cause:t,details:n,metaMessages:[i&&`Status: ${i}`,`URL: ${OL(a)}`,e&&`Request body: ${tL(e)}`].filter(Boolean),name:`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=e,this.headers=r,this.status=i,this.url=a}},RL=class extends q{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${OL(n)}`,`Request body: ${tL(e)}`],name:`RpcRequestError`}),Object.defineProperty(this,`code`,{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,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.code=t.code,this.data=t.data,this.url=n}},zL=class extends q{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${OL(t)}`,`Request body: ${tL(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),VL,HL,UL,WL,GL,KL,qL,JL,YL,XL,ZL,QL,$L,eR,tR,nR,rR,iR,aR,oR,sR,cR,lR,uR,dR,fR,pR,mR,hR,gR,_R=o((()=>{J(),BL(),VL=-1,HL=class extends q{constructor(e,{code:t,docsPath:n,metaMessages:r,name:i,shortMessage:a}){super(a,{cause:e,docsPath:n,metaMessages:r||e?.metaMessages,name:i||`RpcError`}),Object.defineProperty(this,`code`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.name=i||e.name,this.code=e instanceof RL?e.code:t??VL}},UL=class extends HL{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},WL=class e extends HL{constructor(t){super(t,{code:e.code,name:`ParseRpcError`,shortMessage:`Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.`})}},Object.defineProperty(WL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),GL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(GL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),KL=class e extends HL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(KL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),qL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InvalidParamsRpcError`,shortMessage:[`Invalid parameters were provided to the RPC method.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(qL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),JL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(JL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),YL=class e extends HL{constructor(t){super(t,{code:e.code,name:`InvalidInputRpcError`,shortMessage:[`Missing or invalid parameters.`,`Double check you have provided the correct parameters.`].join(`\n`)})}},Object.defineProperty(YL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),XL=class e extends HL{constructor(t){super(t,{code:e.code,name:`ResourceNotFoundRpcError`,shortMessage:`Requested resource not found.`}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`ResourceNotFoundRpcError`})}},Object.defineProperty(XL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),ZL=class e extends HL{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(ZL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),QL=class e extends HL{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(QL,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),$L=class e extends HL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty($L,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),eR=class e extends HL{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(eR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),tR=class e extends HL{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(tR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),nR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(nR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),rR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnauthorizedProviderError`,shortMessage:`The requested method and/or account has not been authorized by the user.`})}},Object.defineProperty(rR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),iR=class e extends UL{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(iR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),aR=class e extends UL{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(aR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),oR=class e extends UL{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(oR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),sR=class e extends UL{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(sR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),cR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnsupportedNonOptionalCapabilityError`,shortMessage:`This Wallet does not support a capability that was not marked as optional.`})}},Object.defineProperty(cR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),lR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(lR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),uR=class e extends UL{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(uR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),dR=class e extends UL{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(dR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),fR=class e extends UL{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(fR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),pR=class e extends UL{constructor(t){super(t,{code:e.code,name:`AtomicReadyWalletRejectedUpgradeError`,shortMessage:`The Wallet can support atomicity after an upgrade, but the user rejected the upgrade.`})}},Object.defineProperty(pR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),mR=class e extends UL{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(mR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),hR=class e extends UL{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(hR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),gR=class extends HL{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));jP(),J(),IL(),BL(),_R();function vR(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof FL?e:e instanceof q?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new jL(e instanceof dP?new NL({functionName:a,cause:e}):[3,JL.code].includes(c)&&(l||u||d||f)||c===YL.code&&u===`execution reverted`&&l?new ML({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof RL?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}PF(),hF();function yR(e){return jF(`0x${mF(`0x${e.substring(4)}`).substring(26)}`)}tP(),rP(),ZP(),iF();async function bR({hash:e,signature:t}){let n=K(e)?e:QP(e),{secp256k1:r}=await Promise.resolve().then(()=>(lc(),Ms));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=xR(Number(a??i));return new r.Signature(Y(e),Y(n)).addRecoveryBit(o)}let e=K(t)?t:QP(t);if(nP(e)!==65)throw Error(`invalid signature length`);let n=xR(XP(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function xR(e){if(e===0||e===1)return e;if(e===27)return 0;if(e===28)return 1;throw Error(`Invalid yParityOrV value`)}async function SR({hash:e,signature:t}){return yR(await bR({hash:e,signature:t}))}J(),PI(),pF(),iF();function CR(e,t=`hex`){let n=wR(e),r=MI(new Uint8Array(n.length));return n.encode(r),t===`hex`?eF(r.bytes):r.bytes}function wR(e){return Array.isArray(e)?TR(e.map(e=>wR(e))):ER(e)}function TR(e){let t=e.reduce((e,t)=>e+t.length,0),n=DR(t);return{length:t<=55?1+t:1+n+t,encode(r){t<=55?r.pushByte(192+t):(r.pushByte(247+n),n===1?r.pushUint8(t):n===2?r.pushUint16(t):n===3?r.pushUint24(t):r.pushUint32(t));for(let{encode:t}of e)t(r)}}}function ER(e){let t=typeof e==`string`?cF(e):e,n=DR(t.length);return{length:t.length===1&&t[0]<128?1:t.length<=55?1+t.length:1+n+t.length,encode(e){t.length===1&&t[0]<128?e.pushBytes(t):t.length<=55?(e.pushByte(128+t.length),e.pushBytes(t)):(e.pushByte(183+n),n===1?e.pushUint8(t.length):n===2?e.pushUint16(t.length):n===3?e.pushUint24(t.length):e.pushUint32(t.length),e.pushBytes(t))}}}function DR(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 q(`Length is too large.`)}HF(),pF(),iF(),hF();function OR(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=mF(VF([`0x05`,CR([t?X(t):`0x`,i,n?X(n):`0x`])]));return r===`bytes`?cF(a):a}async function kR(e){let{authorization:t,signature:n}=e;return SR({hash:OR(t),signature:n??t})}dL(),pL(),J(),EL();var AR=class extends q{constructor(e,{account:t,docsPath:n,chain:r,data:i,gas:a,gasPrice:o,maxFeePerGas:s,maxPriorityFeePerGas:c,nonce:l,to:u,value:d}){let f=yL({from:t?.address,to:u,value:d!==void 0&&`${uL(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${fL(o)} gwei`,maxFeePerGas:s!==void 0&&`${fL(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${fL(c)} gwei`,nonce:l});super(e.shortMessage,{cause:e,docsPath:n,metaMessages:[...e.metaMessages?[...e.metaMessages,` `]:[],`Estimate Gas Arguments:`,f].filter(Boolean),name:`EstimateGasExecutionError`}),Object.defineProperty(this,`cause`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.cause=e}},jR,MR,NR,PR,FR,IR,LR,RR,zR,BR,VR,HR,UR=o((()=>{pL(),J(),jR=class extends q{constructor({cause:e,message:t}={}){let n=t?.replace(`execution reverted: `,``)?.replace(`execution reverted`,``);super(`Execution reverted ${n?`with reason: ${n}`:`for an unknown reason`}.`,{cause:e,name:`ExecutionRevertedError`})}},Object.defineProperty(jR,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(jR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),MR=class extends q{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${fL(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(MR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),NR=class extends q{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${fL(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(NR,`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/}),PR=class extends q{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}is higher than the next one expected.`,{cause:e,name:`NonceTooHighError`})}},Object.defineProperty(PR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),FR=class extends q{constructor({cause:e,nonce:t}={}){super([`Nonce provided for the transaction ${t?`(${t}) `:``}is lower than the current nonce of the account.`,\"Try increasing the nonce or find the latest nonce with `getTransactionCount`.\"].join(`\n`),{cause:e,name:`NonceTooLowError`})}},Object.defineProperty(FR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),IR=class extends q{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(IR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),LR=class extends q{constructor({cause:e}={}){super([`The total cost (gas * gas fee + value) of executing this transaction exceeds the balance of the account.`].join(`\n`),{cause:e,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.\"],name:`InsufficientFundsError`})}},Object.defineProperty(LR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),RR=class extends q{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction exceeds the limit allowed for the block.`,{cause:e,name:`IntrinsicGasTooHighError`})}},Object.defineProperty(RR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),zR=class extends q{constructor({cause:e,gas:t}={}){super(`The amount of gas ${t?`(${t}) `:``}provided for the transaction is too low.`,{cause:e,name:`IntrinsicGasTooLowError`})}},Object.defineProperty(zR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),BR=class extends q{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(BR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),VR=class extends q{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${fL(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${fL(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(VR,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),HR=class extends q{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function WR(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof q?e.walk(e=>e?.code===jR.code):e;return r instanceof q?new jR({cause:e,message:r.details}):jR.nodeMessage.test(n)?new jR({cause:e,message:e.details}):MR.nodeMessage.test(n)?new MR({cause:e,maxFeePerGas:t?.maxFeePerGas}):NR.nodeMessage.test(n)?new NR({cause:e,maxFeePerGas:t?.maxFeePerGas}):PR.nodeMessage.test(n)?new PR({cause:e,nonce:t?.nonce}):FR.nodeMessage.test(n)?new FR({cause:e,nonce:t?.nonce}):IR.nodeMessage.test(n)?new IR({cause:e,nonce:t?.nonce}):LR.nodeMessage.test(n)?new LR({cause:e}):RR.nodeMessage.test(n)?new RR({cause:e,gas:t?.gas}):zR.nodeMessage.test(n)?new zR({cause:e,gas:t?.gas}):BR.nodeMessage.test(n)?new BR({cause:e}):VR.nodeMessage.test(n)?new VR({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new HR({cause:e})}var GR=o((()=>{J(),UR()}));UR(),GR();function KR(e,{docsPath:t,...n}){return new AR((()=>{let t=WR(e,n);return t instanceof HR?e:t})(),{docsPath:t,...n})}function qR(e,{format:t}){if(!t)return{};let n={};function r(t){let i=Object.keys(t);for(let a of i)a in e&&(n[a]=e[a]),t[a]&&typeof t[a]==`object`&&!Array.isArray(t[a])&&r(t[a])}return r(t(e||{})),n}var JR=o((()=>{}));function YR(e,t){return({exclude:n,format:r})=>({exclude:n,format:(e,i)=>{let a=t(e,i);if(n)for(let e of n)delete a[e];return{...a,...r(e,i)}},type:e})}var XR=o((()=>{}));function ZR(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=QR(e.authorizationList)),e.accessList!==void 0&&(n.accessList=e.accessList),e.blobVersionedHashes!==void 0&&(n.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(typeof e.blobs[0]==`string`?n.blobs=e.blobs:n.blobs=e.blobs.map(e=>eF(e))),e.data!==void 0&&(n.data=e.data),e.account&&(n.from=e.account.address),e.from!==void 0&&(n.from=e.from),e.gas!==void 0&&(n.gas=X(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=X(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=X(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=X(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=X(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=X(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=$R[e.type]),e.value!==void 0&&(n.value=X(e.value)),n}function QR(e){return e.map(e=>({address:e.address,r:e.r?X(BigInt(e.r)):e.r,s:e.s?X(BigInt(e.s)):e.s,chainId:X(e.chainId),nonce:X(e.nonce),...e.yParity===void 0?{}:{yParity:X(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:X(e.v)}:{}}))}var $R,ez,tz=o((()=>{iF(),XR(),$R={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},ez=YR(`transactionRequest`,ZR)}));function nz(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new PP({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new PP({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function rz(e){let{balance:t,nonce:n,state:r,stateDiff:i,code:a}=e,o={};if(a!==void 0&&(o.code=a),t!==void 0&&(o.balance=X(t)),n!==void 0&&(o.nonce=X(n)),r!==void 0&&(o.state=nz(r)),i!==void 0){if(o.state)throw new _L;o.stateDiff=nz(i)}return o}function iz(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!FF(n,{strict:!1}))throw new DF({address:n});if(t[n])throw new gL({address:n});t[n]=rz(r)}return t}var az=o((()=>{OF(),FP(),vL(),RF(),iF()})),oz,sz=o((()=>{2n**(8n-1n)-1n,2n**(16n-1n)-1n,2n**(24n-1n)-1n,2n**(32n-1n)-1n,2n**(40n-1n)-1n,2n**(48n-1n)-1n,2n**(56n-1n)-1n,2n**(64n-1n)-1n,2n**(72n-1n)-1n,2n**(80n-1n)-1n,2n**(88n-1n)-1n,2n**(96n-1n)-1n,2n**(104n-1n)-1n,2n**(112n-1n)-1n,2n**(120n-1n)-1n,2n**(128n-1n)-1n,2n**(136n-1n)-1n,2n**(144n-1n)-1n,2n**(152n-1n)-1n,2n**(160n-1n)-1n,2n**(168n-1n)-1n,2n**(176n-1n)-1n,2n**(184n-1n)-1n,2n**(192n-1n)-1n,2n**(200n-1n)-1n,2n**(208n-1n)-1n,2n**(216n-1n)-1n,2n**(224n-1n)-1n,2n**(232n-1n)-1n,2n**(240n-1n)-1n,2n**(248n-1n)-1n,2n**(256n-1n)-1n,-(2n**(8n-1n)),-(2n**(16n-1n)),-(2n**(24n-1n)),-(2n**(32n-1n)),-(2n**(40n-1n)),-(2n**(48n-1n)),-(2n**(56n-1n)),-(2n**(64n-1n)),-(2n**(72n-1n)),-(2n**(80n-1n)),-(2n**(88n-1n)),-(2n**(96n-1n)),-(2n**(104n-1n)),-(2n**(112n-1n)),-(2n**(120n-1n)),-(2n**(128n-1n)),-(2n**(136n-1n)),-(2n**(144n-1n)),-(2n**(152n-1n)),-(2n**(160n-1n)),-(2n**(168n-1n)),-(2n**(176n-1n)),-(2n**(184n-1n)),-(2n**(192n-1n)),-(2n**(200n-1n)),-(2n**(208n-1n)),-(2n**(216n-1n)),-(2n**(224n-1n)),-(2n**(232n-1n)),-(2n**(240n-1n)),-(2n**(248n-1n)),-(2n**(256n-1n)),oz=2n**256n-1n}));function cz(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?_I(t):void 0;if(a&&!FF(a.address))throw new DF({address:a.address});if(i&&!FF(i))throw new DF({address:i});if(n&&n>oz)throw new MR({maxFeePerGas:n});if(r&&n&&r>n)throw new VR({maxFeePerGas:n,maxPriorityFeePerGas:r})}var lz=o((()=>{vI(),sz(),OF(),UR(),RF()}));pL(),J();var uz=class extends q{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},dz=class extends q{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},fz=class extends q{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${fL(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};J();var pz=class extends q{constructor({blockHash:e,blockNumber:t}){let n=`Block`;e&&(n=`Block at hash \"${e}\"`),t&&(n=`Block at number \"${t}\"`),super(`${n} could not be found.`,{name:`BlockNotFoundError`})}};ZP(),XR();let mz={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function hz(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?XP(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?XP(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?mz[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 e.authorizationList&&(n.authorizationList=_z(e.authorizationList)),n.yParity=(()=>{if(e.yParity)return Number(e.yParity);if(typeof n.v==`bigint`){if(n.v===0n||n.v===27n)return 0;if(n.v===1n||n.v===28n)return 1;if(n.v>=35n)return+(n.v%2n==0n)}})(),n.type===`legacy`&&(delete n.accessList,delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas,delete n.yParity),n.type===`eip2930`&&(delete n.maxFeePerBlobGas,delete n.maxFeePerGas,delete n.maxPriorityFeePerGas),n.type===`eip1559`&&delete n.maxFeePerBlobGas,n}let gz=YR(`transaction`,hz);function _z(e){return e.map(e=>({address:e.address,chainId:Number(e.chainId),nonce:Number(e.nonce),r:e.r,s:e.s,yParity:Number(e.yParity)}))}function vz(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:hz(e));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:n,totalDifficulty:e.totalDifficulty?BigInt(e.totalDifficulty):null}}iF();async function yz(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:X(n),s=null;if(s=t?await e.request({method:`eth_getBlockByHash`,params:[t,a]},{dedupe:!0}):await e.request({method:`eth_getBlockByNumber`,params:[o||r,a]},{dedupe:!!o}),!s)throw new pz({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||vz)(s,`getBlock`)}async function bz(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}ZP();async function xz(e,t){let{block:n,chain:r=e.chain,request:i}=t||{};try{let t=r?.fees?.maxPriorityFeePerGas??r?.fees?.defaultPriorityFee;if(typeof t==`function`){let r=await t({block:n||await XN(e,yz,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?Y(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):XN(e,yz,`getBlock`)({}),XN(e,bz,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new dz;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function Sz(e,t){let{block:n,chain:r=e.chain,request:i,type:a=`eip1559`}=t||{},o=await(async()=>typeof r?.fees?.baseFeeMultiplier==`function`?r.fees.baseFeeMultiplier({block:n,client:e,request:i}):r?.fees?.baseFeeMultiplier??1.2)();if(o<1)throw new uz;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await XN(e,yz,`getBlock`)({});if(typeof r?.fees?.estimateFeesPerGas==`function`){let t=await r.fees.estimateFeesPerGas({block:n,client:e,multiply:c,request:i,type:a});if(t!==null)return t}if(a===`eip1559`){if(typeof l.baseFeePerGas!=`bigint`)throw new dz;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await xz(e,{block:l,chain:r,request:i}),n=c(l.baseFeePerGas);return{maxFeePerGas:i?.maxFeePerGas??n+t,maxPriorityFeePerGas:t}}return{gasPrice:i?.gasPrice??c(await XN(e,bz,`getGasPrice`)({}))}}ZP(),iF();async function Cz(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return XP(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?X(r):n]},{dedupe:!!r}))}pF(),iF();function wz(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>cF(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>eF(e))}pF(),iF();function Tz(e){let{kzg:t}=e,n=e.to??(typeof e.blobs[0]==`string`?`hex`:`bytes`),r=typeof e.blobs[0]==`string`?e.blobs.map(e=>cF(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>cF(e)):e.commitments,a=[];for(let e=0;e<r.length;e++){let n=r[e],o=i[e];a.push(Uint8Array.from(t.computeBlobKzgProof(n,o)))}return n===`bytes`?a:a.map(e=>eF(e))}tP(),pF(),iF();function Ez(e,t){let n=t||`hex`,r=Hn(K(e,{strict:!1})?aF(e):e);return n===`bytes`?r:QP(r)}iF();function Dz(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Ez(t,`bytes`);return i.set([n],0),r===`bytes`?i:eF(i)}function Oz(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Dz({commitment:e,to:r,version:n}));return i}let kz=4096,Az=32*kz;Az*6-1-1*kz*6,J();var jz=class extends q{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Mz=class extends q{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},Nz=class extends q{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Pz=class extends q{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};PI(),rP(),pF(),iF();function Fz(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?cF(e.data):e.data,r=nP(n);if(!r)throw new Mz;if(r>761855)throw new jz({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=MI(new Uint8Array(Az)),t=0;for(;t<kz;){let r=n.slice(o,o+31);if(e.pushByte(0),e.pushBytes(r),r.length<31){e.pushByte(128),a=!1;break}t++,o+=31}i.push(e)}return t===`bytes`?i.map(e=>e.bytes):i.map(e=>eF(e.bytes))}function Iz(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Fz({data:t,to:r}),a=e.commitments??wz({blobs:i,kzg:n,to:r}),o=e.proofs??Tz({blobs:i,commitments:a,kzg:n,to:r}),s=[];for(let e=0;e<i.length;e++)s.push({blob:i[e],commitment:a[e],proof:o[e]});return s}EL();function Lz(e){if(e.type)return e.type;if(e.authorizationList!==void 0)return`eip7702`;if(e.blobs!==void 0||e.blobVersionedHashes!==void 0||e.maxFeePerBlobGas!==void 0||e.sidecars!==void 0)return`eip4844`;if(e.maxFeePerGas!==void 0||e.maxPriorityFeePerGas!==void 0)return`eip1559`;if(e.gasPrice!==void 0)return e.accessList===void 0?`legacy`:`eip2930`;throw new xL({transaction:e})}UR(),EL(),GR();function Rz(e,{docsPath:t,...n}){return new TL((()=>{let t=WR(e,n);return t instanceof HR?e:t})(),{docsPath:t,...n})}ZP();async function zz(e){return XP(await e.request({method:`eth_chainId`},{dedupe:!0}))}vI(),JR(),tz(),lz();async function Bz(e,t){let{account:n=e.account,accessList:r,authorizationList:i,chain:a=e.chain,blobVersionedHashes:o,blobs:s,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:m,nonceManager:h,to:g,type:_,value:v,...y}=t,b=await(async()=>{if(!n||!h||m!==void 0)return m;let t=_I(n),r=a?a.id:await XN(e,zz,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();cz(t);let x=a?.formatters?.transactionRequest?.format,S=(x||ZR)({...qR(y,{format:x}),account:n?_I(n):void 0,accessList:r,authorizationList:i,blobs:s,blobVersionedHashes:o,data:c,gas:l,gasPrice:u,maxFeePerBlobGas:d,maxFeePerGas:f,maxPriorityFeePerGas:p,nonce:b,to:g,type:_,value:v},`fillTransaction`);try{let n=await e.request({method:`eth_fillTransaction`,params:[S]}),r=(a?.formatters?.transaction?.format||hz)(n.tx);delete r.blockHash,delete r.blockNumber,delete r.r,delete r.s,delete r.transactionIndex,delete r.v,delete r.yParity,r.data=r.input,r.gas&&=t.gas??r.gas,r.gasPrice&&=t.gasPrice??r.gasPrice,r.maxFeePerBlobGas&&=t.maxFeePerBlobGas??r.maxFeePerBlobGas,r.maxFeePerGas&&=t.maxFeePerGas??r.maxFeePerGas,r.maxPriorityFeePerGas&&=t.maxPriorityFeePerGas??r.maxPriorityFeePerGas,r.nonce&&=t.nonce??r.nonce;let i=await(async()=>{if(typeof a?.fees?.baseFeeMultiplier==`function`){let n=await XN(e,yz,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new uz;let o=10**(i.toString().split(`.`)[1]?.length??0),s=e=>e*BigInt(Math.ceil(i*o))/BigInt(o);return r.maxFeePerGas&&!t.maxFeePerGas&&(r.maxFeePerGas=s(r.maxFeePerGas)),r.gasPrice&&!t.gasPrice&&(r.gasPrice=s(r.gasPrice)),{raw:n.raw,transaction:{from:S.from,...r}}}catch(n){throw Rz(n,{...t,chain:e.chain})}}vI(),AF(),lz();let Vz=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Hz=new Map,Uz=new kF(128);async function Wz(e,t){let n=t;n.account??=e.account,n.parameters??=Vz;let{account:r,chain:i=e.chain,nonceManager:a,parameters:o}=n,s=(()=>{if(typeof i?.prepareTransactionRequest==`function`)return{fn:i.prepareTransactionRequest,runAt:[`beforeFillTransaction`]};if(Array.isArray(i?.prepareTransactionRequest))return{fn:i.prepareTransactionRequest[0],runAt:i.prepareTransactionRequest[1].runAt}})(),c;async function l(){return c||(n.chainId===void 0?i?i.id:(c=await XN(e,zz,`getChainId`)({}),c):n.chainId)}let u=r&&_I(r),d=n.nonce;if(o.includes(`nonce`)&&d===void 0&&u&&a){let t=await l();d=await a.consume({address:u.address,chainId:t,client:e})}s?.fn&&s.runAt?.includes(`beforeFillTransaction`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillTransaction`}),d??=n.nonce);let f=!((o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&n.kzg&&n.blobs||Uz.get(e.uid)===!1||![`fees`,`gas`].some(e=>o.includes(e)))&&(o.includes(`chainId`)&&typeof n.chainId!=`number`||o.includes(`nonce`)&&typeof d!=`number`||o.includes(`fees`)&&typeof n.gasPrice!=`bigint`&&(typeof n.maxFeePerGas!=`bigint`||typeof n.maxPriorityFeePerGas!=`bigint`)||o.includes(`gas`)&&typeof n.gas!=`bigint`)?await XN(e,Bz,`fillTransaction`)({...n,nonce:d}).then(t=>{let{chainId:r,from:i,gas:a,gasPrice:o,nonce:s,maxFeePerBlobGas:c,maxFeePerGas:l,maxPriorityFeePerGas:u,type:d,...f}=t.transaction;return Uz.set(e.uid,!0),{...n,...i?{from:i}:{},...d&&!n.type?{type:d}:{},...r===void 0?{}:{chainId:r},...a===void 0?{}:{gas:a},...o===void 0?{}:{gasPrice:o},...s===void 0?{}:{nonce:s},...c!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerBlobGas:c}:{},...l!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxFeePerGas:l}:{},...u!==void 0&&n.type!==`legacy`&&n.type!==`eip2930`?{maxPriorityFeePerGas:u}:{},...`nonceKey`in f&&f.nonceKey!==void 0?{nonceKey:f.nonceKey}:{}}}).catch(t=>{let r=t;return r.name===`TransactionExecutionError`&&r.walk?.(e=>{let t=e;return t.name===`MethodNotFoundRpcError`||t.name===`MethodNotSupportedRpcError`||t.message?.includes(`eth_fillTransaction is not available`)})&&Uz.set(e.uid,!1),n}):n;d??=f.nonce,n={...f,...u?{from:u?.address}:{},...d?{nonce:d}:{}};let{blobs:p,gas:m,kzg:h,type:g}=n;s?.fn&&s.runAt?.includes(`beforeFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`beforeFillParameters`}));let _;async function v(){return _||(_=await XN(e,yz,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await XN(e,Cz,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=wz({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Oz({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Iz({blobs:p,commitments:e,proofs:Tz({blobs:p,commitments:e,kzg:h}),to:`hex`});n.sidecars=t}}if(o.includes(`chainId`)&&(n.chainId=await l()),(o.includes(`fees`)||o.includes(`type`))&&g===void 0)try{n.type=Lz(n)}catch{let t=Hz.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Hz.set(e.uid,t)),n.type=t?`eip1559`:`legacy`}if(o.includes(`fees`))if(n.type!==`legacy`&&n.type!==`eip2930`){if(n.maxFeePerGas===void 0||n.maxPriorityFeePerGas===void 0){let{maxFeePerGas:t,maxPriorityFeePerGas:r}=await Sz(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new fz({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new dz;if(n.gasPrice===void 0){let{gasPrice:t}=await Sz(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await XN(e,Gz,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),cz(n),delete n.parameters,n}vI(),J(),iF(),JR(),tz(),az(),lz();async function Gz(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?_I(n):void 0,a=(()=>{if(Array.isArray(r))return r;if(i?.type!==`local`)return[`blobVersionedHashes`]})();try{let n=await(async()=>{if(t.to)return t.to;if(t.authorizationList&&t.authorizationList.length>0)return await kR({authorization:t.authorizationList[0]}).catch(()=>{throw new q(\"`to` is required. Could not infer from `authorizationList`\")})})(),{accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,blockNumber:u,blockTag:d,data:f,gas:p,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,value:y,stateOverride:b,...x}=r?await Wz(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?X(u):void 0)||d,ee=iz(b);cz(t);let C=e.chain?.formatters?.transactionRequest?.format,w=(C||ZR)({...qR(x,{format:C}),account:i,accessList:o,authorizationList:s,blobs:c,blobVersionedHashes:l,data:f,gasPrice:m,maxFeePerBlobGas:h,maxFeePerGas:g,maxPriorityFeePerGas:_,nonce:v,to:n,value:y},`estimateGas`);return BigInt(await e.request({method:`eth_estimateGas`,params:ee?[w,S??e.experimental_blockTag??`latest`,ee]:S?[w,S]:[w]}))}catch(n){throw KR(n,{...t,account:i,chain:e.chain})}}function Kz(e,t){if(!FF(e,{strict:!1}))throw new DF({address:e});if(!FF(t,{strict:!1}))throw new DF({address:t});return e.toLowerCase()===t.toLowerCase()}var qz=o((()=>{OF(),RF()}));function Jz(e,{args:t,eventName:n}={}){return{...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,blockTimestamp:e.blockTimestamp?BigInt(e.blockTimestamp):e.blockTimestamp===null?null:void 0,logIndex:e.logIndex?Number(e.logIndex):null,transactionHash:e.transactionHash?e.transactionHash:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,...n?{args:t,eventName:n}:{}}}jP(),jI(),rP(),EF(),QI(),eP();let Yz=`/docs/contract/decodeEventLog`;function Xz(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new vP({docsPath:Yz});let c=t.find(e=>e.type===`event`&&o===TF(ZN(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new yP(o,{docsPath:Yz});let{name:l,inputs:u}=c,d=u?.some(e=>!(`name`in e&&e.name)),f=d?[]:{},p=u.map((e,t)=>[e,t]).filter(([e])=>`indexed`in e&&e.indexed),m=[];for(let e=0;e<p.length;e++){let[t,n]=p[e],r=s[e];if(!r){if(a)throw new EP({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=Zz({param:t,value:r})}let h=u.filter(e=>!(`indexed`in e&&e.indexed)),g=a?h:[...m.map(([e])=>e),...h];if(g.length>0){if(n&&n!==`0x`)try{let e=BI(g,n);if(e){let t=0;if(!a)for(let[n,r]of m)f[d?r:n.name||r]=e[t++];if(d)for(let n=0;n<u.length;n++)f[n]===void 0&&t<e.length&&(f[n]=e[t++]);else for(let n=0;n<h.length;n++)f[h[n].name]=e[t++]}}catch(e){if(a)throw e instanceof uP||e instanceof kI?new TP({abiItem:c,data:n,params:g,size:nP(n)}):e}else if(a)throw new TP({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Zz({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(BI([e],t)||[])[0]}qz(),pF(),hF(),EF();function Qz(e){let{abi:t,args:n,logs:r,strict:i=!0}=e,a=(()=>{if(e.eventName)return Array.isArray(e.eventName)?e.eventName:[e.eventName]})(),o=t.filter(e=>e.type===`event`).map(e=>({abi:e,selector:TF(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Jz(e):e,r=o.filter(e=>t.topics[0]===e.selector);if(r.length===0)return null;let s,c;for(let e of r)try{s=Xz({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Xz({data:t.data,topics:t.topics,abi:[c.abi],strict:!1})}catch{let e=c.abi.inputs?.some(e=>!(`name`in e&&e.name));return{...t,args:e?[]:{},eventName:c.abi.name}}}return!s||!c||a&&!a.includes(s.eventName)||!$z({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function $z(e){let{args:t,inputs:n,matchArgs:r}=e;if(!r)return!0;if(!t)return!1;function i(e,t,n){try{return e.type===`address`?Kz(t,n):e.type===`string`||e.type===`bytes`?mF(aF(t))===n:t===n}catch{return!1}}return Array.isArray(t)&&Array.isArray(r)?r.every((e,r)=>{if(e==null)return!0;let a=n[r];return a?(Array.isArray(e)?e:[e]).some(e=>i(a,e,t[r])):!1}):typeof t==`object`&&!Array.isArray(t)&&typeof r==`object`&&!Array.isArray(r)?Object.entries(r).every(([e,r])=>{if(r==null)return!0;let a=n.find(t=>t.name===e);return a?(Array.isArray(r)?r:[r]).some(n=>i(a,n,t[e])):!1}):!1}function eB(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=pI({abi:t,args:n,name:r});if(!e)throw new bP(r,{docsPath:tB});a=e}if(a.type!==`function`)throw new bP(void 0,{docsPath:tB});if(!a.outputs)throw new xP(a.name,{docsPath:tB});let o=BI(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var tB,nB=o((()=>{jP(),QI(),gI(),tB=`/docs/contract/decodeFunctionResult`})),rB,iB,aB,oB,sB,cB=o((()=>{rB=[{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`},{inputs:[{name:`addr`,type:`address`}],name:`getEthBalance`,outputs:[{name:`balance`,type:`uint256`}],stateMutability:`view`,type:`function`},{inputs:[],name:`getCurrentBlockTimestamp`,outputs:[{internalType:`uint256`,name:`timestamp`,type:`uint256`}],stateMutability:`view`,type:`function`}],iB=[{name:`query`,type:`function`,stateMutability:`view`,inputs:[{type:`tuple[]`,name:`queries`,components:[{type:`address`,name:`sender`},{type:`string[]`,name:`urls`},{type:`bytes`,name:`data`}]}],outputs:[{type:`bool[]`,name:`failures`},{type:`bytes[]`,name:`responses`}]},{name:`HttpError`,type:`error`,inputs:[{type:`uint16`,name:`status`},{type:`string`,name:`message`}]}],aB=[{inputs:[{name:`dns`,type:`bytes`}],name:`DNSDecodingFailed`,type:`error`},{inputs:[{name:`ens`,type:`string`}],name:`DNSEncodingFailed`,type:`error`},{inputs:[],name:`EmptyAddress`,type:`error`},{inputs:[{name:`status`,type:`uint16`},{name:`message`,type:`string`}],name:`HttpError`,type:`error`},{inputs:[],name:`InvalidBatchGatewayResponse`,type:`error`},{inputs:[{name:`errorData`,type:`bytes`}],name:`ResolverError`,type:`error`},{inputs:[{name:`name`,type:`bytes`},{name:`resolver`,type:`address`}],name:`ResolverNotContract`,type:`error`},{inputs:[{name:`name`,type:`bytes`}],name:`ResolverNotFound`,type:`error`},{inputs:[{name:`primary`,type:`string`},{name:`primaryAddress`,type:`bytes`}],name:`ReverseAddressMismatch`,type:`error`},{inputs:[{internalType:`bytes4`,name:`selector`,type:`bytes4`}],name:`UnsupportedResolverProfile`,type:`error`}],[...aB],[...aB],oB=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],sB=[{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],stateMutability:`nonpayable`,type:`constructor`},{inputs:[{name:`_signer`,type:`address`},{name:`_hash`,type:`bytes32`},{name:`_signature`,type:`bytes`}],outputs:[{type:`bool`}],stateMutability:`nonpayable`,type:`function`,name:`isValidSig`}]})),lB=o((()=>{})),uB,dB,fB,pB,mB=o((()=>{uB=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,dB=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,fB=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,pB=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),hB,gB,_B,vB,yB,bB=o((()=>{J(),hB=class extends q{constructor({blockNumber:e,chain:t,contract:n}){super(`Chain \"${t.name}\" does not support contract \"${n.name}\".`,{metaMessages:[`This could be due to any of the following:`,...e&&n.blockCreated&&n.blockCreated>e?[`- The contract \"${n.name}\" was not deployed until block ${n.blockCreated} (current block ${e}).`]:[`- The chain does not have the contract \"${n.name}\" configured.`]],name:`ChainDoesNotSupportContract`})}},gB=class extends q{constructor({chain:e,currentChainId:t}){super(`The current chain of the wallet (id: ${t}) does not match the target chain for the transaction (id: ${e.id} \u2013 ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} \u2013 ${e.name}`],name:`ChainMismatchError`})}},_B=class extends q{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(`\n`),{name:`ChainNotFoundError`})}},vB=class extends q{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},yB=class extends q{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function xB(e){let{abi:t,args:n,bytecode:r}=e;if(!n||n.length===0)return r;let i=t.find(e=>`type`in e&&e.type===`constructor`);if(!i)throw new cP({docsPath:SB});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new lP({docsPath:SB});return VF([r,QF(i.inputs,n)])}var SB,CB=o((()=>{jP(),HF(),uI(),SB=`/docs/contract/encodeDeployData`}));function wB({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new hB({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new hB({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var TB=o((()=>{bB()}));function EB(e,{docsPath:t,...n}){return new AL((()=>{let t=WR(e,n);return t instanceof HR?e:t})(),{docsPath:t,...n})}var DB=o((()=>{IL(),UR(),GR()}));function OB(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var kB=o((()=>{}));function AB({fn:e,id:t,shouldSplitBatch:n,wait:r=0,sort:i}){let a=async()=>{let t=c();o();let n=t.map(({args:e})=>e);n.length!==0&&e(n).then(e=>{i&&Array.isArray(e)&&e.sort(i);for(let n=0;n<t.length;n++){let{resolve:r}=t[n];r?.([e[n],e])}}).catch(e=>{for(let n=0;n<t.length;n++){let{reject:r}=t[n];r?.(e)}})},o=()=>jB.delete(t),s=()=>c().map(({args:e})=>e),c=()=>jB.get(t)||[],l=e=>jB.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=OB();return n?.([...s(),e])&&a(),c().length>0?(l({args:e,resolve:i,reject:o}),t):(l({args:e,resolve:i,reject:o}),setTimeout(a,r),t)}}}var jB,MB=o((()=>{kB(),jB=new Map})),NB,PB,FB,IB=o((()=>{nL(),J(),kL(),NB=class extends q{constructor({callbackSelector:e,cause:t,data:n,extraData:r,sender:i,urls:a}){super(t.shortMessage||`An error occurred while fetching for an offchain result.`,{cause:t,metaMessages:[...t.metaMessages||[],t.metaMessages?.length?``:[],`Offchain Gateway Call:`,a&&[` Gateway URL(s):`,...a.map(e=>` ${OL(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},PB=class extends q{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${OL(t)}`,`Response: ${tL(e)}`],name:`OffchainLookupResponseMalformedError`})}},FB=class extends q{constructor({sender:e,to:t}){super(\"Reverted sender address does not match target contract address (`to`).\",{metaMessages:[`Contract address: ${t}`,`OffchainLookup sender address: ${e}`],name:`OffchainLookupSenderMismatchError`})}}}));function LB(e){let{abi:t,data:n}=e,r=UF(n,0,4),i=t.find(e=>e.type===`function`&&r===dI(ZN(e)));if(!i)throw new SP(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?BI(i.inputs,UF(n,4)):void 0}}var RB=o((()=>{jP(),JF(),fI(),QI(),eP()}));function zB(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=pI({abi:t,args:r,name:n});if(!e)throw new gP(n,{docsPath:BB});i=e}if(i.type!==`error`)throw new gP(void 0,{docsPath:BB});let a=dI(ZN(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new hP(i.name,{docsPath:BB});o=QF(i.inputs,r)}return VF([a,o])}var BB,VB=o((()=>{jP(),HF(),fI(),uI(),eP(),gI(),BB=`/docs/contract/encodeErrorResult`}));function HB(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=pI({abi:t,name:n});if(!e)throw new bP(n,{docsPath:UB});i=e}if(i.type!==`function`)throw new bP(void 0,{docsPath:UB});if(!i.outputs)throw new xP(i.name,{docsPath:UB});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new kP(r)})();return QF(i.outputs,a)}var UB,WB=o((()=>{jP(),uI(),gI(),UB=`/docs/contract/encodeFunctionResult`}));async function GB(e){let{data:t,ccipRequest:n}=e,{args:[r]}=LB({abi:iB,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await GB({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=KB(e)}})),HB({abi:iB,functionName:`query`,result:[i,a]})}function KB(e){return e.name===`HttpRequestError`&&e.status?zB({abi:iB,errorName:`HttpError`,args:[e.status,e.shortMessage]}):zB({abi:[TI],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var qB=o((()=>{cB(),DI(),RB(),VB(),WB()})),JB=c({ccipRequest:()=>XB,offchainLookup:()=>YB,offchainLookupAbiItem:()=>QB,offchainLookupSignature:()=>ZB});async function YB(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=$I({data:r,abi:[QB]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:XB;try{if(!Kz(i,o))throw new FB({sender:o,to:i});let{data:r}=await eV(e,{blockNumber:t,blockTag:n,data:zF([l,QF([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await GB({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new NB({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function XB({data:e,sender:t,urls:n}){let r=Error(`An unknown error occurred.`);for(let i=0;i<n.length;i++){let a=n[i],o=a.includes(`{data}`)?`GET`:`POST`,s=o===`POST`?{data:e,sender:t}:void 0,c=o===`POST`?{\"Content-Type\":`application/json`}:{};try{let n=await fetch(a.replace(`{sender}`,t.toLowerCase()).replace(`{data}`,e),{body:JSON.stringify(s),headers:c,method:o}),i;if(i=n.headers.get(`Content-Type`)?.startsWith(`application/json`)?(await n.json()).data:await n.text(),!n.ok){r=new LL({body:s,details:i?.error?tL(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!K(i)){r=new PB({result:i,url:a});continue}return i}catch(e){r=new LL({body:s,details:e.message,url:a})}}throw r}var ZB,QB,$B=o((()=>{oV(),IB(),BL(),eL(),uI(),qz(),HF(),tP(),qB(),nL(),ZB=`0x556f1830`,QB={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 eV(e,t){let{account:n=e.account,authorizationList:r,batch:i=!!e.batch?.multicall,blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,accessList:s,blobs:c,blockOverrides:l,code:u,data:d,factory:f,factoryData:p,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:b,value:x,stateOverride:S,...ee}=t,C=n?_I(n):void 0;if(u&&(f||p))throw new q(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new q(\"Cannot provide both `code` & `to` as parameters.\");let w=u&&d,te=f&&p&&b&&d,ne=w||te,re=w?rV({code:u,data:d}):te?iV({data:d,factory:f,factoryData:p,to:b}):d;try{cz(t);let n=(typeof a==`bigint`?X(a):void 0)||o,u=l?nk(l):void 0,d=iz(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||ZR)({...qR(ee,{format:f}),accessList:s,account:C,authorizationList:r,blobs:c,data:re,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:ne?void 0:b,value:x},`call`);if(i&&tV({request:p})&&!d&&!u)try{return await nV(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof vB)&&!(e instanceof hB))throw e}let w=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),te=await e.request({method:`eth_call`,params:w});return te===`0x`?{data:void 0}:{data:te}}catch(n){let r=aV(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>($B(),JB));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw ne&&r?.slice(0,10)===`0x101bb98d`?new PL({factory:f}):EB(n,{...t,account:C,chain:e.chain})}}function tV({request:e}){let{data:t,to:n,...r}=e;return!(!t||t.startsWith(`0x82ad56cb`)||!n||Object.values(r).filter(e=>e!==void 0).length>0)}async function nV(e,t){let{batchSize:n=1024,deployless:r=!1,wait:i=0}=typeof e.batch?.multicall==`object`?e.batch.multicall:{},{blockNumber:a,blockTag:o=e.experimental_blockTag??`latest`,data:s,to:c}=t,l=(()=>{if(r)return null;if(t.multicallAddress)return t.multicallAddress;if(e.chain)return wB({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new vB})(),u=(typeof a==`bigint`?X(a):void 0)||o,{schedule:d}=AB({id:`${e.uid}.${u}`,wait:i,shouldSplitBatch(e){return e.reduce((e,{data:t})=>e+(t.length-2),0)>n*2},fn:async t=>{let n=t.map(e=>({allowFailure:!0,callData:e.data,target:e.to})),r=SI({abi:rB,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:rV({code:pB,data:r})}:{to:l,data:r}},u]});return eB({abi:rB,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new FL({data:f});return f===`0x`?{data:void 0}:{data:f}}function rV(e){let{code:t,data:n}=e;return xB({abi:qN([`constructor(bytes, bytes)`]),bytecode:uB,args:[t,n]})}function iV(e){let{data:t,factory:n,factoryData:r,to:i}=e;return xB({abi:qN([`constructor(address, bytes, address, bytes)`]),bytecode:dB,args:[i,t,n,r]})}function aV(e){if(!(e instanceof q))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var oV=o((()=>{YN(),rk(),vI(),cB(),lB(),mB(),J(),bB(),IL(),nB(),CB(),CI(),TB(),iF(),DB(),JR(),tz(),MB(),az(),lz()}));nB(),CI(),oV();async function sV(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=SI({abi:n,args:i,functionName:a});try{let{data:t}=await XN(e,eV,`call`)({...o,data:s,to:r});return eB({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw vR(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let cV=new Map,lV=new Map,uV=0;function dV(e,t,n){let r=++uV,i=()=>cV.get(e)||[],a=()=>{let t=i();cV.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=lV.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(cV.set(e,[...s,{id:r,fns:t}]),s&&s.length>0)return o;let c={};for(let e in t)c[e]=((...t)=>{let n=i();if(n.length!==0)for(let r of n)r.fns[e]?.(...t)});let l=n(c);return typeof l==`function`&&lV.set(e,l),o}async function fV(e){return new Promise(t=>setTimeout(t,e))}function pV(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await fV(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await fV(r),s())};s()})(),a}J();var mV=class extends q{constructor({docsPath:e}={}){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 Client.\"].join(`\n`),{docsPath:e,docsSlug:`account`,name:`AccountNotFoundError`})}},hV=class extends q{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};bB();function gV({chain:e,currentChainId:t}){if(!e)throw new _B;if(t!==e.id)throw new gB({chain:e,currentChainId:t})}async function _V(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}vI(),J(),HF(),JR(),tz(),AF(),lz();let vV=new kF(128);async function yV(e,t){let{account:n=e.account,assertChainId:r=!0,chain:i=e.chain,accessList:a,authorizationList:o,blobs:s,data:c,dataSuffix:l=typeof e.dataSuffix==`string`?e.dataSuffix:e.dataSuffix?.value,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,type:g,value:_,...v}=t;if(n===void 0)throw new mV({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?_I(n):null;try{cz(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await kR({authorization:o[0]}).catch(()=>{throw new q(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await XN(e,zz,`getChainId`)({}),r&&gV({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||ZR)({...qR(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?zF([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=vV.get(e.uid),ee=S?`wallet_sendTransaction`:`eth_sendTransaction`;try{return await e.request({method:ee,params:[x]},{retryCount:0})}catch(t){if(S===!1)throw t;let n=t;if(n.name===`InvalidInputRpcError`||n.name===`InvalidParamsRpcError`||n.name===`MethodNotFoundRpcError`||n.name===`MethodNotSupportedRpcError`)return await e.request({method:`wallet_sendTransaction`,params:[x]},{retryCount:0}).then(t=>(vV.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(vV.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await XN(e,Wz,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?zF([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...Vz,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await XN(e,_V,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new hV({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new hV({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof hV?e:Rz(e,{...t,account:y,chain:t.chain||void 0})}}vI(),CI();async function bV(e,t){return bV.internal(e,yV,`sendTransaction`,t)}(function(e){async function t(e,t,n,r){let{abi:i,account:a=e.account,address:o,args:s,functionName:c,...l}=r;if(a===void 0)throw new mV({docsPath:`/docs/contract/writeContract`});let u=a?_I(a):null,d=SI({abi:i,args:s,functionName:c});try{return await XN(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw vR(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(bV||={}),J();var xV=class extends q{constructor(e){super(`Call bundle failed with status: ${e.statusCode}`,{name:`BundleFailedError`}),Object.defineProperty(this,`result`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.result=e}};function SV(e,{delay:t=100,retryCount:n=2,shouldRetry:r=()=>!0}={}){return new Promise((i,a)=>{let o=async({count:s=0}={})=>{let c=async({error:e})=>{let n=typeof t==`function`?t({count:s,error:e}):t;n&&await fV(n),o({count:s+1})};try{i(await e())}catch(e){if(s<n&&await r({count:s,error:e}))return c({error:e});a(e)}};o()})}ZP(),XR();let CV={\"0x0\":`reverted`,\"0x1\":`success`};function wV(e,t){let n={...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(e=>Jz(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?XP(e.transactionIndex):null,status:e.status?CV[e.status]:null,type:e.type?mz[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let TV=YR(`transactionReceipt`,wV);vI(),J(),_R(),CI(),HF(),ZP(),iF();let EV=X(0,{size:32});async function DV(e,t){let{account:n=e.account,chain:r=e.chain,experimental_fallback:i,experimental_fallbackDelay:a=32,forceAtomic:o=!1,id:s,version:c=`2.0.0`}=t,l=n?_I(n):null,u=t.capabilities;e.dataSuffix&&!t.capabilities?.dataSuffix&&(u=typeof e.dataSuffix==`string`?{...t.capabilities,dataSuffix:{value:e.dataSuffix,optional:!0}}:{...t.capabilities,dataSuffix:{value:e.dataSuffix.value,...e.dataSuffix.required?{}:{optional:!0}}});let d=t.calls.map(e=>{let t=e,n=t.abi?SI({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?zF([n,t.dataSuffix]):n,to:t.to,value:t.value?X(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:X(r.id),from:l?.address,id:s,version:c}]},{retryCount:0});return typeof t==`string`?{id:t}:t}catch(n){let s=n;if(i&&(s.name===`MethodNotFoundRpcError`||s.name===`MethodNotSupportedRpcError`||s.name===`UnknownRpcError`||s.details.toLowerCase().includes(`does not exist / is not available`)||s.details.toLowerCase().includes(`missing or invalid. request()`)||s.details.toLowerCase().includes(`did not match any variant of untagged enum`)||s.details.toLowerCase().includes(`account upgraded to unsupported contract`)||s.details.toLowerCase().includes(`eip-7702 not supported`)||s.details.toLowerCase().includes(`unsupported wc_ method`)||s.details.toLowerCase().includes(`feature toggled misconfigured`)||s.details.toLowerCase().includes(`jsonrpcengine: response has no error or result for request`))){if(u&&Object.values(u).some(e=>!e.optional)){let e=\"non-optional `capabilities` are not supported on fallback to `eth_sendTransaction`.\";throw new cR(new q(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new mR(new q(e,{details:e}))}let t=[];for(let n of d){let i=yV(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?Y(n.value):void 0});t.push(i),a>0&&await new Promise(e=>setTimeout(e,a))}let n=await Promise.allSettled(t);if(n.every(e=>e.status===`rejected`))throw n[0].reason;return{id:zF([...n.map(e=>e.status===`fulfilled`?e.value:EV),X(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Rz(n,{...t,account:l,chain:t.chain})}}JF(),qP(),ZP();async function OV(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=KP(qF(t,-64,-32)),r=qF(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>EV.slice(2)===t?void 0:e.request({method:`eth_getTransactionReceipt`,params:[`0x${t}`]},{dedupe:!0}))),a=i.some(e=>e===null)?100:i.every(e=>e?.status===`0x1`)?200:i.every(e=>e?.status===`0x0`)?500:600;return{atomic:!1,chainId:XP(n),receipts:i.filter(Boolean),status:a,version:`2.0.0`}}return e.request({method:`wallet_getCallsStatus`,params:[t]})}let{atomic:r=!1,chainId:i,receipts:a,version:o=`2.0.0`,...s}=await n(t.id),[c,l]=(()=>{let e=s.status;return e>=100&&e<200?[`pending`,e]:e>=200&&e<300?[`success`,e]:e>=300&&e<700?[`failure`,e]:e===`CONFIRMED`?[`success`,200]:e===`PENDING`?[`pending`,100]:[void 0,e]})();return{...s,atomic:r,chainId:i?XP(i):void 0,receipts:a?.map(e=>({...e,blockNumber:Y(e.blockNumber),gasUsed:Y(e.gasUsed),status:CV[e.status]}))??[],statusCode:l,status:c,version:o}}J(),kB(),nL();async function kV(e,t){let{id:n,pollingInterval:r=e.pollingInterval,status:i=({statusCode:e})=>e===200||e>=300,retryCount:a=4,retryDelay:o=({count:e})=>~~(1<<e)*200,timeout:s=6e4,throwOnFailure:c=!1}=t,l=tL([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=OB(),p,m=dV(l,{resolve:d,reject:f},t=>{let s=pV(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await SV(async()=>{let t=await XN(e,OV,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new xV(t);return t},{retryCount:a,delay:o});if(!i(s))return;r(()=>t.resolve(s))}catch(e){r(()=>t.reject(e))}},{interval:r,emitOnBegin:!0});return s});return p=s?setTimeout(()=>{m(),clearTimeout(p),f(new AV({id:n}))},s):void 0,await u}var AV=class extends q{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let jV=256,MV;function NV(e=11){if(!MV||jV+e>256*2){MV=``,jV=0;for(let e=0;e<256;e++)MV+=(256+Math.random()*256|0).toString(16).substring(1)}return MV.substring(jV,jV+++e)}vI();function PV(e){let{batch:t,chain:n,ccipRead:r,dataSuffix:i,key:a=`base`,name:o=`Base Client`,type:s=`base`}=e,c=e.experimental_blockTag??(typeof n?.experimental_preconfirmationTime==`number`?`pending`:void 0),l=n?.blockTime??12e3,u=Math.min(Math.max(Math.floor(l/2),500),4e3),d=e.pollingInterval??u,f=e.cacheTime??d,p=e.account?_I(e.account):void 0,{config:m,request:h,value:g}=e.transport({account:p,chain:n,pollingInterval:d}),_={account:p,batch:t,cacheTime:f,ccipRead:r,chain:n,dataSuffix:i,key:a,name:o,pollingInterval:d,request:h,transport:{...m,...g},type:s,uid:NV(),...c?{experimental_blockTag:c}:{}};function v(e){return t=>{let n=t(e);for(let e in _)delete n[e];let r={...e,...n};return Object.assign(r,{extend:v(r)})}}return Object.assign(_,{extend:v(_)})}iF();async function FV(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:X(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}sz(),OF(),J(),bB(),UR(),RF(),rP(),JF(),ZP();function IV(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!FF(n))throw new DF({address:n});if(t<0)throw new yB({chainId:t})}RV(e)}function LV(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Mz;for(let e of t){let t=nP(e),n=XP(UF(e,0,1));if(t!==32)throw new Nz({hash:e,size:t});if(n!==1)throw new Pz({hash:e,version:n})}}RV(e)}function RV(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new yB({chainId:t});if(i&&!FF(i))throw new DF({address:i});if(r&&r>oz)throw new MR({maxFeePerGas:r});if(n&&r&&n>r)throw new VR({maxFeePerGas:r,maxPriorityFeePerGas:n})}function zV(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new yB({chainId:t});if(a&&!FF(a))throw new DF({address:a});if(n||i)throw new q(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>oz)throw new MR({maxFeePerGas:r})}function BV(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!FF(a))throw new DF({address:a});if(t!==void 0&&t<=0)throw new yB({chainId:t});if(n||i)throw new q(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>oz)throw new MR({maxFeePerGas:r})}OF(),EL(),RF();function VV(e){if(!e||e.length===0)return[];let t=[];for(let n=0;n<e.length;n++){let{address:r,storageKeys:i}=e[n];for(let e=0;e<i.length;e++)if(i[e].length-2!=64)throw new wL({storageKey:i[e]});if(!FF(r,{strict:!1}))throw new DF({address:r});t.push([r,i])}return t}EL(),HF(),qP(),iF();function HV(e,t){let n=Lz(e);return n===`eip1559`?GV(e,t):n===`eip2930`?KV(e,t):n===`eip4844`?WV(e,t):n===`eip7702`?UV(e,t):qV(e,t)}function UV(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;IV(e);let f=VV(u),p=YV(n);return VF([`0x04`,CR([X(r),a?X(a):`0x`,l?X(l):`0x`,c?X(c):`0x`,i?X(i):`0x`,o??`0x`,s?X(s):`0x`,d??`0x`,f,p,...JV(e,t)])])}function WV(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;LV(e);let f=e.blobVersionedHashes,p=e.sidecars;if(e.blobs&&(f===void 0||p===void 0)){let t=typeof e.blobs[0]==`string`?e.blobs:e.blobs.map(e=>eF(e)),n=e.kzg,r=wz({blobs:t,kzg:n});f===void 0&&(f=Oz({commitments:r})),p===void 0&&(p=Iz({blobs:t,commitments:r,proofs:Tz({blobs:t,commitments:r,kzg:n})}))}let m=VV(u),h=[X(n),i?X(i):`0x`,l?X(l):`0x`,c?X(c):`0x`,r?X(r):`0x`,a??`0x`,o?X(o):`0x`,d??`0x`,m,s?X(s):`0x`,f??[],...JV(e,t)],g=[],_=[],v=[];if(p)for(let e=0;e<p.length;e++){let{blob:t,commitment:n,proof:r}=p[e];g.push(t),_.push(n),v.push(r)}return VF([`0x03`,CR(p?[h,g,_,v]:h)])}function GV(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;RV(e);let d=VV(l);return VF([`0x02`,CR([X(n),i?X(i):`0x`,c?X(c):`0x`,s?X(s):`0x`,r?X(r):`0x`,a??`0x`,o?X(o):`0x`,u??`0x`,d,...JV(e,t)])])}function KV(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;zV(e);let u=VV(c);return VF([`0x01`,CR([X(n),a?X(a):`0x`,l?X(l):`0x`,r?X(r):`0x`,o??`0x`,s?X(s):`0x`,i??`0x`,u,...JV(e,t)])])}function qV(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;BV(e);let l=[a?X(a):`0x`,c?X(c):`0x`,r?X(r):`0x`,o??`0x`,s?X(s):`0x`,i??`0x`];if(t){let e=(()=>{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);let e=27n+(t.v===27n?0n:1n);if(t.v!==e)throw new bL({v:t.v});return e})(),r=KP(t.r),i=KP(t.s);l=[...l,X(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,X(n),`0x`,`0x`]);return CR(l)}function JV(e,t){let n=t??e,{v:r,yParity:i}=n;if(n.r===void 0||n.s===void 0||r===void 0&&i===void 0)return[];let a=KP(n.r),o=KP(n.s);return[typeof i==`number`?i?X(1):`0x`:r===0n?`0x`:r===1n?X(1):r===27n?`0x`:X(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}iF();function YV(e){if(!e||e.length===0)return[];let t=[];for(let n of e){let{chainId:e,nonce:r,...i}=n,a=n.address;t.push([e?QP(e):`0x`,a,r?QP(r):`0x`,...JV({},i)])}return t}PF(),qz();async function XV({address:e,authorization:t,signature:n}){return Kz(MF(e),await kR({authorization:t,signature:n}))}AF();let ZV=new kF(8192);function QV(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(ZV.get(n))return ZV.get(n);let r=e().finally(()=>ZV.delete(n));return ZV.set(n,r),r}J(),BL(),_R(),iF(),nL();function $V(e,t={}){return async(n,r={})=>{let{dedupe:i=!1,methods:a,retryDelay:o=150,retryCount:s=3,uid:c}={...t,...r},{method:l}=n;if(a?.exclude?.includes(l)||a?.include&&!a.include.includes(l))throw new $L(Error(`method not supported`),{method:l});return QV(()=>SV(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case WL.code:throw new WL(t);case GL.code:throw new GL(t);case KL.code:throw new KL(t,{method:n.method});case qL.code:throw new qL(t);case JL.code:throw new JL(t);case YL.code:throw new YL(t);case XL.code:throw new XL(t);case ZL.code:throw new ZL(t);case QL.code:throw new QL(t);case $L.code:throw new $L(t,{method:n.method});case eR.code:throw new eR(t);case tR.code:throw new tR(t);case nR.code:throw new nR(t);case rR.code:throw new rR(t);case iR.code:throw new iR(t);case aR.code:throw new aR(t);case oR.code:throw new oR(t);case sR.code:throw new sR(t);case cR.code:throw new cR(t);case lR.code:throw new lR(t);case uR.code:throw new uR(t);case dR.code:throw new dR(t);case fR.code:throw new fR(t);case pR.code:throw new pR(t);case mR.code:throw new mR(t);case 5e3:throw new nR(t);case hR.code:throw new hR(t);default:throw e instanceof q?e:new gR(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof LL){let e=t?.headers?.get(`Retry-After`);if(e?.match(/\\d/))return Number.parseInt(e,10)*1e3}return~~(1<<e)*o},retryCount:s,shouldRetry:({error:e})=>eH(e)}),{enabled:i,id:i?tF(`${c}.${tL(n)}`):void 0})}}function eH(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===eR.code||e.code===JL.code:e instanceof LL&&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 tH(e){let t={formatters:void 0,fees:void 0,serializers:void 0,...e};function n(e){return t=>{let r=typeof t==`function`?t(e):t,i={...e,...r};return Object.assign(i,{extend:n(i)})}}return Object.assign(t,{extend:n(t)})}function nH(){return{}}J(),GP(),PI(),pF(),iF();function rH(e,t=`hex`){return iH(MI((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new UP(e);return cF(e)}return e})(),{recursiveReadLimit:1/0}),t)}function iH(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?eF(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=aH(e,n,128),i=e.readBytes(r);return t===`hex`?eF(i):i}return oH(e,aH(e,n,192),t)}function aH(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 q(`Invalid RLP prefix`)}function oH(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(iH(e,n));return i}tP(),rP();function sH(e){return K(e)&&nP(e)===32}function cH(e,{errorInstance:t=Error(`timed out`),timeout:n,signal:r}){return new Promise((i,a)=>{(async()=>{let o;try{let s=new AbortController;n>0&&(o=setTimeout(()=>{r?s.abort():a(t)},n)),i(await e({signal:s?.signal||null}))}catch(e){e?.name===`AbortError`&&a(t),a(e)}finally{clearTimeout(o)}})()})}function lH(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let uH=lH();BL(),nL();function dH(e,t={}){let{url:n,headers:r}=fH(e);return{async request(e){let{body:i,fetchFn:a=t.fetchFn??fetch,onRequest:o=t.onRequest,onResponse:s=t.onResponse,timeout:c=t.timeout??1e4}=e,l={...t.fetchOptions??{},...e.fetchOptions??{}},{headers:u,method:d,signal:f}=l;try{let e=await cH(async({signal:e})=>{let t={...l,body:tL(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??uH.take(),...e})):{jsonrpc:`2.0`,id:i.id??uH.take(),...i}),headers:{...r,\"Content-Type\":`application/json`,...u},method:d||`POST`,signal:f||(c>0?e:null)},s=new Request(n,t),p=await o?.(s,t)??{...t,url:n};return await a(p.url??n,p)},{errorInstance:new zL({body:i,url:n}),timeout:c,signal:!0});s&&await s(e);let t;if(e.headers.get(`Content-Type`)?.startsWith(`application/json`))t=await e.json();else{t=await e.text();try{t=JSON.parse(t||`{}`)}catch(n){if(e.ok)throw n;t={error:t}}}if(!e.ok){if(typeof t.error?.code==`number`&&typeof t.error?.message==`string`)return t;throw new LL({body:i,details:tL(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof LL||e instanceof zL?e:new LL({body:i,cause:e,url:n})}}}}function fH(e){try{let t=new URL(e),n=(()=>{if(t.username){let e=`${decodeURIComponent(t.username)}:${decodeURIComponent(t.password)}`;return t.username=``,t.password=``,{url:t.toString(),headers:{Authorization:`Basic ${btoa(e)}`}}}})();return{url:t.toString(),...n}}catch{return{url:e}}}nL(),J();var pH=class extends q{constructor({domain:e}){super(`Invalid domain \"${tL(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},mH=class extends q{constructor({primaryType:e,types:t}){super(`Invalid primary type \\`${e}\\` must be one of \\`${JSON.stringify(Object.keys(t))}\\`.`,{docsPath:`/api/glossary/Errors#typeddatainvalidprimarytypeerror`,metaMessages:[\"Check that the primary type is a key in `types`.\"]})}},hH=class extends q{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};jP(),OF(),RF(),rP(),iF(),ZF(),nL();function gH(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{let n={...t};for(let t of e){let{name:e,type:r}=t;r===`address`&&(n[e]=n[e].toLowerCase())}return n};return tL({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function _H(e){let{domain:t,message:n,primaryType:r,types:i}=e,a=(e,t)=>{for(let n of e){let{name:e,type:r}=n,o=t[e],s=r.match(XF);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;X(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!FF(o))throw new DF({address:o});let c=r.match(YF);if(c){let[e,t]=c;if(t&&nP(o)!==Number.parseInt(t,10))throw new wP({expectedSize:Number.parseInt(t,10),givenSize:nP(o)})}let l=i[r];l&&(yH(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new pH({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new mH({primaryType:r,types:i})}function vH({domain:e}){return[typeof e?.name==`string`&&{name:`name`,type:`string`},e?.version&&{name:`version`,type:`string`},(typeof e?.chainId==`number`||typeof e?.chainId==`bigint`)&&{name:`chainId`,type:`uint256`},e?.verifyingContract&&{name:`verifyingContract`,type:`address`},e?.salt&&{name:`salt`,type:`bytes32`}].filter(Boolean)}function yH(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new hH({type:e})}bT(),dE();let bH=ZD(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function xH(e){if(typeof e==`string`){if(U(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new wH(e)}else yO(e.authorization)}function SH(e){xH(e);let t=$T(U(e,-64,-32)),n=U(e,-t-64,-64),r=U(e,0,-t-64),[i,a,o]=JD(bH,n);return{authorization:RO({address:i.delegation,chainId:Number(i.chainId),nonce:i.nonce,yParity:i.yParity,r:i.r,s:i.s}),signature:r,...o&&o!==`0x`?{data:o,to:a}:{}}}function CH(e){try{return xH(e),!0}catch{return!1}}var wH=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-8010 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc8010.InvalidWrappedSignatureError`})}};EL(),JF(),ZP();function TH(e){let t=qF(e,0,1);if(t===`0x04`)return`eip7702`;if(t===`0x03`)return`eip4844`;if(t===`0x02`)return`eip1559`;if(t===`0x01`)return`eip2930`;if(t!==`0x`&&XP(t)>=192)return`legacy`;throw new SL({serializedType:t})}OF(),EL(),RF(),tP(),zP(),qP(),ZP();function EH(e){let t=TH(e);return t===`eip1559`?kH(e):t===`eip2930`?AH(e):t===`eip4844`?OH(e):t===`eip7702`?DH(e):jH(e)}function DH(e){let t=MH(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new CL({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,authorizationList:d,...t.length>9?{v:f,r:p,s:m}:{}},serializedTransaction:e,type:`eip7702`});let h={chainId:XP(n),type:`eip7702`};return K(s)&&s!==`0x`&&(h.to=s),K(o)&&o!==`0x`&&(h.gas=Y(o)),K(l)&&l!==`0x`&&(h.data=l),K(r)&&(h.nonce=r===`0x`?0:XP(r)),K(c)&&c!==`0x`&&(h.value=Y(c)),K(a)&&a!==`0x`&&(h.maxFeePerGas=Y(a)),K(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=Y(i)),u.length!==0&&u!==`0x`&&(h.accessList=NH(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=PH(d)),IV(h),{...t.length===13?FH(t):void 0,...h}}function OH(e){let t=MH(e),n=t.length===4,r=n?t[0]:t,i=n?t.slice(1):[],[a,o,s,c,l,u,d,f,p,m,h,g,_,v]=r,[y,b,x]=i;if(!(r.length===11||r.length===14))throw new CL({attributes:{chainId:a,nonce:o,maxPriorityFeePerGas:s,maxFeePerGas:c,gas:l,to:u,value:d,data:f,accessList:p,...r.length>9?{v:g,r:_,s:v}:{}},serializedTransaction:e,type:`eip4844`});let S={blobVersionedHashes:h,chainId:XP(a),to:u,type:`eip4844`};return K(l)&&l!==`0x`&&(S.gas=Y(l)),K(f)&&f!==`0x`&&(S.data=f),K(o)&&(S.nonce=o===`0x`?0:XP(o)),K(d)&&d!==`0x`&&(S.value=Y(d)),K(m)&&m!==`0x`&&(S.maxFeePerBlobGas=Y(m)),K(c)&&c!==`0x`&&(S.maxFeePerGas=Y(c)),K(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=Y(s)),p.length!==0&&p!==`0x`&&(S.accessList=NH(p)),y&&b&&x&&(S.sidecars=Iz({blobs:y,commitments:b,proofs:x})),LV(S),{...r.length===14?FH(r):void 0,...S}}function kH(e){let t=MH(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new CL({attributes:{chainId:n,nonce:r,maxPriorityFeePerGas:i,maxFeePerGas:a,gas:o,to:s,value:c,data:l,accessList:u,...t.length>9?{v:d,r:f,s:p}:{}},serializedTransaction:e,type:`eip1559`});let m={chainId:XP(n),type:`eip1559`};return K(s)&&s!==`0x`&&(m.to=s),K(o)&&o!==`0x`&&(m.gas=Y(o)),K(l)&&l!==`0x`&&(m.data=l),K(r)&&(m.nonce=r===`0x`?0:XP(r)),K(c)&&c!==`0x`&&(m.value=Y(c)),K(a)&&a!==`0x`&&(m.maxFeePerGas=Y(a)),K(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=Y(i)),u.length!==0&&u!==`0x`&&(m.accessList=NH(u)),RV(m),{...t.length===12?FH(t):void 0,...m}}function AH(e){let t=MH(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new CL({attributes:{chainId:n,nonce:r,gasPrice:i,gas:a,to:o,value:s,data:c,accessList:l,...t.length>8?{v:u,r:d,s:f}:{}},serializedTransaction:e,type:`eip2930`});let p={chainId:XP(n),type:`eip2930`};return K(o)&&o!==`0x`&&(p.to=o),K(a)&&a!==`0x`&&(p.gas=Y(a)),K(c)&&c!==`0x`&&(p.data=c),K(r)&&(p.nonce=r===`0x`?0:XP(r)),K(s)&&s!==`0x`&&(p.value=Y(s)),K(i)&&i!==`0x`&&(p.gasPrice=Y(i)),l.length!==0&&l!==`0x`&&(p.accessList=NH(l)),zV(p),{...t.length===11?FH(t):void 0,...p}}function jH(e){let t=rH(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new CL({attributes:{nonce:n,gasPrice:r,gas:i,to:a,value:o,data:s,...t.length>6?{v:c,r:l,s:u}:{}},serializedTransaction:e,type:`legacy`});let d={type:`legacy`};if(K(a)&&a!==`0x`&&(d.to=a),K(i)&&i!==`0x`&&(d.gas=Y(i)),K(s)&&s!==`0x`&&(d.data=s),K(n)&&(d.nonce=n===`0x`?0:XP(n)),K(o)&&o!==`0x`&&(d.value=Y(o)),K(r)&&r!==`0x`&&(d.gasPrice=Y(r)),BV(d),t.length===6)return d;let f=K(c)&&c!==`0x`?Y(c):0n;if(u===`0x`&&l===`0x`)return f>0&&(d.chainId=Number(f)),d;let p=f,m=Number((p-35n)/2n);if(m>0)d.chainId=m;else if(p!==27n&&p!==28n)throw new bL({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function MH(e){return rH(`0x${e.slice(4)}`,`hex`)}function NH(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!FF(r,{strict:!1}))throw new DF({address:r});t.push({address:r,storageKeys:i.map(e=>sH(e)?e:KP(e))})}return t}function PH(e){let t=[];for(let n=0;n<e.length;n++){let[r,i,a,o,s,c]=e[n];t.push({address:i,chainId:r===`0x`?0:XP(r),nonce:a===`0x`?0:XP(a),...FH([o,s,c])})}return t}function FH(e){let t=e.slice(-3),n=t[0]===`0x`||Y(t[0])===0n?27n:28n;return{r:LP(t[1],{size:32}),s:LP(t[2],{size:32}),v:n,yParity:n===27n?0:1}}J();var IH=class extends q{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function LH(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new IH({value:e});let[n,r=`0`]=e.split(`.`),i=n.startsWith(`-`);if(i&&(n=n.slice(1)),r=r.replace(/(0+)$/,``),t===0)Math.round(Number(`.${r}`))===1&&(n=`${BigInt(n)+1n}`),r=``;else if(r.length>t){let[e,i,a]=[r.slice(0,t-1),r.slice(t-1,t),r.slice(t)],o=Math.round(Number(`${i}.${a}`));r=o>9?`${BigInt(e)+BigInt(1)}0`.padStart(e.length+1,`0`):`${e}${o}`,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}`)}bT(),dE();function RH(e){if(U(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new VH(e)}function zH(e){let{data:t,signature:n,to:r}=e;return VT(YD(ZD(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function BH(e){try{return RH(e),!0}catch{return!1}}var VH=class extends V{constructor(e){super(`Value \\`${e}\\` is an invalid ERC-6492 wrapped signature.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureErc6492.InvalidWrappedSignatureError`})}};lc(),ZP(),pF();function HH({r:e,s:t,to:n=`hex`,v:r,yParity:i}){let a=(()=>{if(i===0||i===1)return i;if(r&&(r===27n||r===28n||r>=35n))return+(r%2n==0n);throw Error(\"Invalid `v` or `yParity` value\")})(),o=`0x${new Js.Signature(Y(e),Y(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:cF(o)}cB(),mB(),IL(),CB(),CI(),PF(),qz(),HF(),tP(),ZP(),iF(),oV();async function UH(e,t){let{address:n,chain:r=e.chain,hash:i,erc6492VerifierAddress:a=t.universalSignatureVerifierAddress??r?.contracts?.erc6492Verifier?.address,multicallAddress:o=t.multicallAddress??r?.contracts?.multicall3?.address,mode:s=`auto`}=t;if(r?.verifyHash)return await r.verifyHash(e,t);let c=(()=>{let e=t.signature;return K(e)?e:typeof e==`object`&&`r`in e&&`s`in e?HH(e):eF(e)})();try{if(s===`eoa`)try{if(Kz(MF(n),await SR({hash:i,signature:c})))return!0}catch{}return CH(c)?await WH(e,{...t,multicallAddress:o,signature:c}):await GH(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Kz(MF(n),await SR({hash:i,signature:c})))return!0}catch{}if(e instanceof qH)return!1;throw e}}async function WH(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=SH(t.signature);if(await FV(e,{address:n,blockNumber:r,blockTag:i})===VF([`0xef0100`,s.address]))return await KH(e,{address:n,blockNumber:r,blockTag:i,hash:a,signature:l});let d={address:s.address,chainId:Number(s.chainId),nonce:Number(s.nonce),r:X(s.r,{size:32}),s:X(s.s,{size:32}),yParity:s.yParity};if(!await XV({address:n,authorization:d}))throw new qH;let f=await XN(e,sV,`readContract`)({...o?{address:o}:{code:pB},authorizationList:[d],abi:rB,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:SI({abi:oB,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new qH}async function GH(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||BH(o)?o:zH({data:i,signature:o,to:r}))(),u=s?{to:s,data:SI({abi:sB,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:xB({abi:sB,args:[n,a,l],bytecode:fB}),...c},{data:d}=await XN(e,eV,`call`)(u).catch(e=>{throw e instanceof AL?new qH:e});if(YP(d??`0x0`))return!0;throw new qH}async function KH(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await XN(e,sV,`readContract`)({address:n,abi:oB,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof jL?new qH:e})).startsWith(`0x1626ba7e`))return!0;throw new qH}var qH=class extends Error{};async function JH(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await XN(e,DV,`sendCalls`)(t);return await XN(e,kV,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}vI(),iF(),tz(),lz();async function YH(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new mV({docsPath:`/docs/actions/wallet/signTransaction`});let a=_I(n);cz({account:a,...t});let o=await XN(e,zz,`getChainId`)({});r!==null&&gV({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||ZR;return a.signTransaction?a.signTransaction({...i,chainId:o},{serializer:e.chain?.serializers?.transaction}):await e.request({method:`eth_signTransaction`,params:[{...s({...i,account:a},`signTransaction`),chainId:X(o),from:a.address}]},{retryCount:0})}vI();async function XH(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new mV({docsPath:`/docs/actions/wallet/signTypedData`});let o=_I(n),s={EIP712Domain:vH({domain:r}),...t.types};if(_H({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=gH({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function ZH({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=NV();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:$V(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}J();var QH=class extends q{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};BL(),MB();function $H(e,t={}){let{batch:n,fetchFn:r,fetchOptions:i,key:a=`http`,methods:o,name:s=`HTTP JSON-RPC`,onFetchRequest:c,onFetchResponse:l,retryDelay:u,raw:d}=t;return({chain:f,retryCount:p,timeout:m})=>{let{batchSize:h=1e3,wait:g=0}=typeof n==`object`?n:{},_=t.retryCount??p,v=m??t.timeout??1e4,y=e||f?.rpcUrls.default.http[0];if(!y)throw new QH;let b=dH(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return ZH({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=AB({id:y,wait:g,shouldSplitBatch(e){return e.length>h},fn:e=>b.request({body:e}),sort:(e,t)=>e.id-t.id}),[{error:a,result:o}]=await(async e=>n?i(e):[await b.request({body:e})])(r);if(d)return{error:a,result:o};if(a)throw new RL({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}bT(),dE(),zT();let eU=`0x01`,tU=`0x02`,nU=`0x03`,rU=`0x04`,iU=`0x7777777777777777777777777777777777777777777777777777777777777777`;function aU(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:aU({...e,signature:t.inner}):iD(oU(e))}function oU(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return ak({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return oU({payload:t,signature:n.inner})}}function sU(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?U(e,0,-YT(iU)):e;if(YT(t)===65){let e=xO(t);return yO(e),{signature:e,type:`secp256k1`}}let n=U(t,0,1),r=U(t,1),i=YT(r);if(n===eU){if(i!==129)throw new hU({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:ZT(U(r,64,96)),y:ZT(U(r,96,128))},prehash:$T(U(r,128,129))!==0,signature:{r:ZT(U(r,0,32)),s:ZT(U(r,32,64))},type:`p256`}}if(n===tU){if(i<128)throw new hU({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=U(r,0,e),a,o;for(let t=37;t<e;t++){let e=eE(U(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=U(n,0,t),o=e;break}catch{}}if(!a||!o)throw new hU({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:ZT(U(r,e+64,e+96)),y:ZT(U(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:ZT(U(r,e,e+32)),s:ZT(U(r,e+32,e+64))},type:`webAuthn`}}if(n===nU||n===rU)return{userAddress:U(r,0,20),inner:sU(U(r,20)),type:`keychain`,version:n===rU?`v2`:`v1`};throw new hU({reason:`Unknown signature type identifier: ${n}. Expected ${eU} (P256), ${tU} (WebAuthn), ${nU} (Keychain V1), or ${rU} (Keychain V2)`,serialized:t})}function cU(e,t){if(typeof e==`string`)return sU(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=uU(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:iD(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:iD(ak({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function lU(e){if(e.type===`secp256k1`)return{signature:TO(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:ZT(e.pubKeyX),y:ZT(e.pubKeyY)},signature:{r:ZT(e.r),s:ZT(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=YT(t),r,i;for(let e=37;e<n;e++){let n=eE(U(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=U(t,0,e),i=n;break}catch{}}if(!r||!i)throw new hU({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:ZT(e.pubKeyX),y:ZT(e.pubKeyY)},signature:{r:ZT(e.r),s:ZT(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:lU(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new mU({envelope:e})}function uU(e){if(typeof e!=`object`||!e)throw new mU({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new mU({envelope:e})}function dU(e,t={}){let n=uU(e);if(n===`secp256k1`)return VT(DO(e.signature),t.magic?iU:`0x`);if(n===`p256`){let n=e;return VT(eU,H(n.signature.r,{size:32}),H(n.signature.s,{size:32}),H(n.publicKey.x,{size:32}),H(n.publicKey.y,{size:32}),H(+!!n.prehash,{size:1}),t.magic?iU:`0x`)}if(n===`webAuthn`){let n=e;return VT(tU,VT(n.metadata.authenticatorData,GT(n.metadata.clientDataJSON)),H(n.signature.r,{size:32}),H(n.signature.s,{size:32}),H(n.publicKey.x,{size:32}),H(n.publicKey.y,{size:32}),t.magic?iU:`0x`)}if(n===`keychain`){let n=e;return VT(n.version===`v1`?nU:rU,n.userAddress,dU(n.inner),t.magic?iU:`0x`)}throw new mU({envelope:e})}function fU(e){let t=uU(e);if(t===`secp256k1`)return{...OO(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:H(t.publicKey.x,{size:32}),pubKeyY:H(t.publicKey.y,{size:32}),r:H(t.signature.r,{size:32}),s:H(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=VT(t.metadata.authenticatorData,GT(t.metadata.clientDataJSON));return{pubKeyX:H(t.publicKey.x,{size:32}),pubKeyY:H(t.publicKey.y,{size:32}),r:H(t.signature.r,{size:32}),s:H(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:fU(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new mU({envelope:e})}function pU(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return iD(t.publicKey)})();if(!r)return!1;let i=cU(e);if(i.type===`secp256k1`)return r?ok({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return aD(iD(i.publicKey),r)?sk({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return aD(iD(i.publicKey),r)?_k({challenge:HT(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new gU(`Unable to verify signature envelope of type \"${i.type}\".`)}var mU=class extends V{constructor({envelope:e}){super(`Unable to coerce value (\\`${LT(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},hU=class extends V{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},gU=class extends V{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};bT(),dE();function _U(e){return e.startsWith(`tempo`)?vU(e).address:e}function vU(e){if(!e.startsWith(`tempox`))throw new yU({address:e});let t=e.slice(6);return BT(t,{strict:!0}),{address:nD(t)}}var yU=class extends V{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};dE();function bU(e,t={}){if(typeof e.chainId==`string`)return xU(e);let n={...e,address:_U(e.address)};return t.signature?{...n,signature:t.signature}:n}function xU(e){let{address:t,chainId:n,nonce:r}=e,i=lU(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function SU(e){return e.map(e=>xU(e))}function CU(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=sU(i)),bU(a)}function wU(e){let t=[];for(let n of e)t.push(CU(n));return t}function TU(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:H(n),nonce:H(r),signature:fU(i)}}function EU(e){return e.map(e=>TU(e))}function DU(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?dU(e.signature):void 0;return[n?H(n):`0x`,t,r?H(r):`0x`,...i?[i]:[]]}function OU(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(DU(n));return t}dE();function kU(e,t={}){if(`keyId`in e)return AU(e);let n=e,r={...n,address:_U(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:_U(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:_U(e.address),selector:zU(e.selector),...e.recipients?{recipients:e.recipients.map(e=>_U(e))}:{}}))}:{}};return t.signature?{...r,signature:cU(t.signature)}:r}function AU(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=lU(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:RU(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:ZT(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&LU(e.period)>0?{period:LU(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function jU(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:LU(o)||void 0,type:l,chainId:r===`0x`?0n:ZT(r),...o===void 0?{}:{expiry:LU(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:IU(n),...r===void 0?{}:{period:LU(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=sU(n)),kU(u)}function MU(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:zU(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:H(r),expiry:typeof i==`number`?H(i):null,keyId:_U(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:H(t),...n?{period:FU(n)}:{}})),signature:fU(s),...c?{allowedCalls:c}:{}}}function NU(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?dU(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,PU(e.limit)];return e.period&&e.period>0&&t.push(FU(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([zU(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[PU(n),s,t,i!=null&&i!==0||c||l?FU(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function PU(e){return e===0n?`0x`:H(e)}function FU(e){return e===0?`0x`:H(e)}function IU(e){return e===`0x`?0n:BigInt(e)}function LU(e){return e===`0x`?0:$T(e)}function RU(e){return typeof e==`string`?e:Array.isArray(e)?WT(new Uint8Array(e)):e}function zU(e){if(e)return e.startsWith(`0x`)?e:mD(e)}dE();function BU(e){if(typeof e==`string`){let t=_U(e);return tD(t),t}return VT(`0x20c0`,H(e,{size:18}))}dE();let VU={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function HU(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:RE(GT(VU[e]??e))}let UU={...ZO,tempo:`0x76`},WU={...QO,\"0x76\":`tempo`};function GU(e,t={}){if(!e)return null;let n=$O(e);return n.type=WU[e.type],e.aaAuthorizationList&&(n.authorizationList=SU(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=lU(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=AU(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=TO(e.feePayerSignature),n.feePayerSignature.v=jO(n.feePayerSignature.yParity)),n}dE();function KU(e){let t=ck({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=EU(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?_U(e.to):e.to,value:e.value?H(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?_U(e.to):void 0,value:e.value?H(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=BU(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=MU(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=H(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=H(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return JT(6);if(typeof e.nonceKey==`bigint`)return H(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=UU.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}bT(),dE();let qU=`tempo`;function JU(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new tW;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new nW({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&tD(e.to,{strict:!1});if(n<=0)throw new pk({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new fk({feeCap:r});if(i&&r&&i>r)throw new hk({maxFeePerGas:r,maxPriorityFeePerGas:i})}function YU(e){let t=cO(U(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new mk({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:qU});let y={chainId:Number(n),type:qU};tE(a)&&a!==`0x`&&(y.gas=BigInt(a)),tE(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),tE(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),tE(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),tE(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),tE(u)&&u!==`0x`&&(y.validBefore=Number(u)),tE(d)&&d!==`0x`&&(y.validAfter=Number(d)),tE(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=aO(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=wU(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||oD(p)?(y.feePayerSignature=null,oD(p)&&(y.from=p)):y.feePayerSignature=EO(p)),_&&(y.keyAuthorization=jU(_));let b=v?sU(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=aU({payload:QU(XU(y)),signature:b,root:!0})}catch{}return JU(y),y}function XU(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?YU(e):e;return i.from&&=_U(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:_U(e.to)}:{}})),JU(i),{...i,...r?{signature:cU(r)}:{},...n?{feePayerSignature:CO(n)}:{},type:`tempo`}}function ZU(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;JU(e);let h=oO(n),g=t.signature||e.signature,_=OU(r),v=i.map(e=>[e.to?_U(e.to):`0x`,e.value?H(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=cU(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return iD(t.publicKey);if(t.type===`secp256k1`)return ik({payload:QU(XU(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?kO(n):`0x`})(),x=[H(a),f?H(f):`0x`,d?H(d):`0x`,s?H(s):`0x`,v,h,u?H(u):`0x`,l?H(l):`0x`,typeof p==`number`?H(p):`0x`,typeof m==`number`?H(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?BU(o):`0x`,b,_,...c?[NU(c)]:[],...g?[dU(cU(g))]:[]];return VT(t.format===`feePayer`?`0x78`:`0x76`,mO(x))}function QU(e,t={}){let n=$U(e,{presign:!0});return t.from?RE(VT(`0x04`,n,_U(t.from))):n}function $U(e,t={}){return RE(ZU({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function eW(e,t){let n=_U(t.sender);return RE(ZU({...e,signature:void 0},{sender:n,format:`feePayer`}))}var tW=class extends V{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},nW=class extends V{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};dE();function rW(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:Lz(e)}function iW(e){try{return rW(e)===`tempo`}catch{return!1}}function aW(e){let t=U(e,0,1);return t===`0x76`||t===`0x78`?sW(e):EH(e)}async function oW(e,t){if(!iW(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return HV(e,{r:H(n,{size:32}),s:H(r,{size:32}),yParity:i})}return HV(e,t)}if(rW(e)===`tempo`)return cW(e,t);throw Error(`Unsupported transaction type`)}function sW(e){let{feePayerSignature:t,nonce:n,...r}=YU(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:H(t.r,{size:32}),s:H(t.s,{size:32}),yParity:t.yParity}}}async function cW(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return cU({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=XU(c,{signature:n}),r=eW(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return ik({payload:QU(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return ZU(t,{feePayerSignature:CO(await e.feePayer.sign({hash:r}))})}return i===!0?n?ZU(c,{format:`feePayer`,sender:e.from,signature:n}):ZU(c,{feePayerSignature:null}):ZU({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}dE(),vI(),tz();function lW(e){if(!iW(e))return hz(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=GU(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:H(t.r,{size:32}),s:H(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:UU[i.type],type:i.type}}function uW(e){return wV(e)}function dW(e,t){let n=e,r=n.account?_I(n.account):void 0;if(!iW(n))return ZR(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=KU({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?_I(n.feePayer):n.feePayer}:{}}}let fW=new Map;async function pW(e){fW.set(e,(fW.get(e)??0)+1),await Promise.resolve();let t=(fW.get(e)??0)>1;return queueMicrotask(()=>{let t=fW.get(e)??0;t<=1?fW.delete(e):fW.set(e,t-1)}),t}sz(),tz();let mW=tH({blockTime:1e3,extendSchema:nH(),formatters:{transaction:gz({exclude:[`aaAuthorizationList`],format:lW}),transactionReceipt:TV({format:uW}),transactionRequest:ez({format:dW})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await pW(e):!1})()?(n.nonceKey=oz,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>oW(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=sU(i);if(a.type!==`keychain`){let i=await FV(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return pU(a,{address:n,payload:r})}}return await XN(e,UH,`verifyHash`)({...t,chain:null})},id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),Z=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],hW=[{name:`createPair`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`base`}],outputs:[{type:`bytes32`,name:`key`}]},{name:`place`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`placeFlip`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`int16`,name:`flipTick`}],outputs:[{type:`uint128`,name:`orderId`}]},{name:`cancel`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`cancelStaleOrder`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[]},{name:`swapExactAmountIn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`},{type:`uint128`,name:`minAmountOut`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`swapExactAmountOut`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`},{type:`uint128`,name:`maxAmountIn`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`quoteSwapExactAmountIn`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountIn`}],outputs:[{type:`uint128`,name:`amountOut`}]},{name:`quoteSwapExactAmountOut`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`tokenIn`},{type:`address`,name:`tokenOut`},{type:`uint128`,name:`amountOut`}],outputs:[{type:`uint128`,name:`amountIn`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`user`},{type:`address`,name:`token`}],outputs:[{type:`uint128`}]},{name:`withdraw`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`token`},{type:`uint128`,name:`amount`}],outputs:[]},{name:`getOrder`,type:`function`,stateMutability:`view`,inputs:[{type:`uint128`,name:`orderId`}],outputs:[{type:`tuple`,components:[{type:`uint128`,name:`orderId`},{type:`address`,name:`maker`},{type:`bytes32`,name:`bookKey`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`uint128`,name:`amount`},{type:`uint128`,name:`remaining`},{type:`uint128`,name:`prev`},{type:`uint128`,name:`next`},{type:`bool`,name:`isFlip`},{type:`int16`,name:`flipTick`}]}]},{name:`getTickLevel`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`base`},{type:`int16`,name:`tick`},{type:`bool`,name:`isBid`}],outputs:[{type:`uint128`,name:`head`},{type:`uint128`,name:`tail`},{type:`uint128`,name:`totalLiquidity`}]},{name:`pairKey`,type:`function`,stateMutability:`pure`,inputs:[{type:`address`,name:`tokenA`},{type:`address`,name:`tokenB`}],outputs:[{type:`bytes32`}]},{name:`nextOrderId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`books`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`pairKey`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`base`},{type:`address`,name:`quote`},{type:`int16`,name:`bestBidTick`},{type:`int16`,name:`bestAskTick`}]}]},{name:`MIN_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`MAX_TICK`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`TICK_SPACING`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`int16`}]},{name:`PRICE_SCALE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MIN_ORDER_AMOUNT`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint128`}]},{name:`MIN_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`MAX_PRICE`,type:`function`,stateMutability:`pure`,inputs:[],outputs:[{type:`uint32`}]},{name:`tickToPrice`,type:`function`,stateMutability:`pure`,inputs:[{type:`int16`,name:`tick`}],outputs:[{type:`uint32`,name:`price`}]},{name:`priceToTick`,type:`function`,stateMutability:`pure`,inputs:[{type:`uint32`,name:`price`}],outputs:[{type:`int16`,name:`tick`}]},{name:`PairCreated`,type:`event`,inputs:[{type:`bytes32`,name:`key`,indexed:!0},{type:`address`,name:`base`,indexed:!0},{type:`address`,name:`quote`,indexed:!0}]},{name:`OrderPlaced`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`token`,indexed:!0},{type:`uint128`,name:`amount`},{type:`bool`,name:`isBid`},{type:`int16`,name:`tick`},{type:`bool`,name:`isFlipOrder`},{type:`int16`,name:`flipTick`}]},{name:`OrderFilled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0},{type:`address`,name:`maker`,indexed:!0},{type:`address`,name:`taker`,indexed:!0},{type:`uint128`,name:`amountFilled`},{type:`bool`,name:`partialFill`}]},{name:`OrderCancelled`,type:`event`,inputs:[{type:`uint128`,name:`orderId`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`PairDoesNotExist`,type:`error`,inputs:[]},{name:`PairAlreadyExists`,type:`error`,inputs:[]},{name:`OrderDoesNotExist`,type:`error`,inputs:[]},{name:`IdenticalTokens`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`TickOutOfBounds`,type:`error`,inputs:[{type:`int16`,name:`tick`}]},{name:`InvalidTick`,type:`error`,inputs:[]},{name:`InvalidFlipTick`,type:`error`,inputs:[]},{name:`InsufficientBalance`,type:`error`,inputs:[]},{name:`InsufficientLiquidity`,type:`error`,inputs:[]},{name:`InsufficientOutput`,type:`error`,inputs:[]},{name:`MaxInputExceeded`,type:`error`,inputs:[]},{name:`BelowMinimumOrderSize`,type:`error`,inputs:[{type:`uint128`,name:`amount`}]},{name:`InvalidBaseToken`,type:`error`,inputs:[]},{name:`OrderNotStale`,type:`error`,inputs:[]}],gW=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}],_W=`0xdec0000000000000000000000000000000000000`;function Q(e){return{...e,data:SI(e),to:e.address}}dE(),vI();async function vW(e,t){return vW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountOut:o,maxAmountIn:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountOut:r,maxAmountIn:i}=e;return Q({address:_W,abi:hW,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(vW||={});async function yW(e,t){return yW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return Q({address:_W,abi:hW,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(yW||={});async function bW(e,t){return bW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{orderId:i,...a}=r,o=e.call({orderId:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{orderId:t}=e;return Q({address:_W,abi:hW,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(bW||={});async function xW(e,t){return xW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{base:i,...a}=r,o=e.call({base:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{base:t}=e;return Q({address:_W,abi:hW,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(xW||={});async function SW(e,t){let{account:n=e.account,token:r,...i}=t,a=n?_I(n).address:void 0;if(!a)throw Error(`account is required.`);return sV(e,{...i,...SW.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return Q({address:_W,abi:hW,args:[t,n],functionName:`balanceOf`})}e.call=t})(SW||={});async function CW(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return sV(e,{...a,...CW.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return Q({address:_W,abi:hW,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(CW||={});async function wW(e,t){let{orderId:n,...r}=t;return sV(e,{...r,...wW.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return Q({address:_W,abi:hW,args:[t],functionName:`getOrder`})}e.call=t})(wW||={});async function TW(e,t){let{base:n,quote:r,...i}=t;return sV(e,{...i,...TW.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return Q({address:_W,abi:hW,args:[MW(t,n)],functionName:`books`})}e.call=t})(TW||={});async function EW(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await sV(e,{...a,...EW.call({base:n,tick:r,isBid:i})});return{head:o,tail:s,totalLiquidity:c}}(function(e){function t(e){let{base:t,tick:n,isBid:r}=e;return Q({address:_W,abi:hW,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(EW||={});async function DW(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return sV(e,{...a,...DW.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return Q({address:_W,abi:hW,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(DW||={});async function OW(e,t){return OW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,token:a,type:o,tick:s,...c}=r,l=e.call({amount:i,token:a,type:o,tick:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i}=e;return Q({address:_W,abi:hW,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=Qz({abi:hW,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(OW||={});async function kW(e,t){return kW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,flipTick:a,tick:o,token:s,type:c,...l}=r,u=e.call({amount:i,flipTick:a,tick:o,token:s,type:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{token:t,amount:n,type:r,tick:i,flipTick:a}=e;return Q({address:_W,abi:hW,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=Qz({abi:hW,logs:e,eventName:`OrderPlaced`,strict:!0}).find(e=>e.args.isFlipOrder);if(!t)throw Error(\"`OrderPlaced` event (flip order) not found.\");return t}e.extractEvent=r})(kW||={});async function AW(e,t){return AW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s,...c}=r,l=e.call({tokenIn:i,tokenOut:a,amountIn:o,minAmountOut:s});return await t(n,{...c,...l})}e.inner=t;function n(e){let{tokenIn:t,tokenOut:n,amountIn:r,minAmountOut:i}=e;return Q({address:_W,abi:hW,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(AW||={});async function jW(e,t){return jW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,amount:a,...o}=r,s=e.call({token:i,amount:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,amount:n}=e;return Q({address:_W,abi:hW,functionName:`withdraw`,args:[t,n]})}e.call=n})(jW||={});function MW(e,t){return RE(VT(e,t))}dE(),vI(),CI();async function NW(e,t){let{token:n,...r}=t;return NW.inner(bV,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(NW||={});async function PW(e,t){return PW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(PW||={});async function FW(e,t){return FW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,KT(n,32)]}:{functionName:`burn`,args:[t]};return Q({address:BU(r),abi:Z,...i})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(FW||={});async function IW(e,t){return IW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return Q({address:BU(t),abi:Z,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(IW||={});async function LW(e,t){return LW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?_I(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=JT(32)}=e;return Q({address:`0x20fc000000000000000000000000000000000000`,abi:gW,args:[t,n,r,BU(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=Qz({abi:gW,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(LW||={});async function RW(e,t){let{account:n=e.account}=t,r=n?_I(n).address:void 0;if(!r)throw Error(`account is required.`);return sV(e,{...t,...RW.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`allowance`,args:[t,n]})}e.call=t})(RW||={});async function zW(e,t){let{account:n=e.account,...r}=t,i=n?_I(n).address:void 0;if(!i)throw Error(`account is required.`);return sV(e,{...r,...zW.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return Q({address:BU(n),abi:Z,functionName:`balanceOf`,args:[t]})}e.call=t})(zW||={});async function BW(e,t){return sV(e,{...t,...BW.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return Q({address:BU(n),abi:Z,functionName:`getRoleAdmin`,args:[HU(t)]})}e.call=t})(BW||={});async function VW(e,t){let{account:n=e.account}=t,r=n?_I(n).address:void 0;if(!r)throw Error(`account is required.`);return sV(e,{...t,...VW.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return Q({address:BU(r),abi:Z,functionName:`hasRole`,args:[t,HU(n)]})}e.call=t})(VW||={});async function HW(e,t){return HW.inner(yV,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:SI(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=HU(r);return Q({address:BU(t),abi:Z,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=Qz({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(HW||={});async function UW(e,t){return UW.inner(bV,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,KT(r,32)]}:{functionName:`mint`,args:[t,n]};return Q({address:BU(i),abi:Z,...a})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(UW||={});async function WW(e,t){return WW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:BU(t),abi:Z,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(WW||={});async function GW(e,t){return GW.inner(yV,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:SI(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=HU(n);return Q({address:BU(t),abi:Z,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=Qz({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(GW||={});async function KW(e,t){return KW.inner(yV,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:SI(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=HU(r);return Q({address:BU(t),abi:Z,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=Qz({abi:Z,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(KW||={});async function qW(e,t){return qW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return Q({address:BU(t),abi:Z,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(qW||={});async function JW(e,t){return JW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=HU(n),a=HU(r);return Q({address:BU(t),abi:Z,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(JW||={});async function YW(e,t){return YW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,KT(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,KT(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return Q({address:BU(i),abi:Z,...o})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(YW||={});async function XW(e,t){return XW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:BU(t),abi:Z,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(XW||={});async function ZW(e,t){return ZW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return Q({address:BU(t),abi:Z,functionName:`setNextQuoteToken`,args:[BU(n)]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(ZW||={});async function QW(e,t){return QW.inner(bV,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Q({address:BU(t),abi:Z,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=Qz({abi:Z,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(QW||={});function $W(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return ZH({key:$W.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(aW(o).feePayerSignature===null){if(r===`sign-and-broadcast`)return a.request({method:e,params:t},n);{let t=await a.request({method:`eth_signRawTransaction`,params:[o]},n);return i.request({method:e,params:[t]},n)}}}return await i.request({method:e,params:t},n)},type:$W.type})}}function eG(e={}){let{account:t}=e;return(e,{account:n}={})=>{let r=n??t;if(!r){if(!e.account)throw Error(\"No `account` provided. Pass `account` to parameters or context.\");return e.account}return _I(r)}}function tG(e){let{chain:t,feePayerUrl:n,getClient:r,rpcUrl:i}=e;return r?!t?.serializers&&!n?r:async e=>{let i=await r(e);if(n&&i.transport.key!==`feePayer`){let e=i.transport.url;if(e){let t=PV({chain:i.chain,transport:$W($H(e),$H(n))});Object.assign(i,{transport:t.transport,request:t.request})}}return!t?.serializers||i.chain?.serializers?.transaction?i:Object.assign({},i,{chain:{...t,...i.chain,formatters:i.chain?.formatters??t.formatters,prepareTransactionRequest:i.chain?.prepareTransactionRequest??t.prepareTransactionRequest,serializers:i.chain?.serializers?.transaction?i.chain.serializers:t.serializers}})}:({chainId:e})=>{if(!i)throw Error(\"No `rpcUrl` provided.\");let r=e||Number(Object.keys(i)[0]),a=i[r];if(!a)throw Error(`No \\`rpcUrl\\` configured for \\`chainId\\` (${r}).`);let o=n?$W($H(a),$H(n)):$H(a);return PV({chain:{...t,id:r},transport:o})}}let nG=U(RE(_E(`mpp`),{as:`Hex`}),0,4);function rG(e){return QT(U(RE(_E(e),{as:`Hex`}),0,10))}function iG(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(QT(nG),0),i[4]=1,i.set(rG(t),5),n&&i.set(rG(n),15),i.set(aG(r),25),WT(i)}function aG(e){return QT(U(RE(_E(e),{as:`Hex`}),0,7))}function oG(e,t){return e.toLowerCase()===t.toLowerCase()}let sG={mainnet:4217,testnet:42431},cG={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};sG.mainnet,cG.usdc,sG.testnet,cG.pathUsd;let lG={[sG.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[sG.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},uG={[sG.mainnet]:`https://rpc.tempo.xyz`,[sG.testnet]:`https://rpc.moderato.tempo.xyz`},dG=[cG.pathUsd,cG.usdc];async function fG(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!oG(e,i)),c=await Promise.allSettled([sV(e,zW.call({account:n,token:i})),...s.map(t=>sV(e,zW.call({account:n,token:t})))]),l=c[0];if(!(l.status===`fulfilled`&&l.value>=r)){for(let t=0;t<s.length;t++){let n=c[t+1];if(n.status!==`fulfilled`)continue;let a=n.value;if(a<=0n)continue;let l=s[t];try{let t=await CW(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[NW.call({token:l,spender:_W,amount:e}),vW.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new mG({currency:i})}}function pG(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>oG(e,t)))]:t,slippage:e.slippage??1}:!1}var mG=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function hG(e){let t=BigInt(e.amount),n=e.methodDetails?.splits??[],r=n.reduce((e,t)=>e+BigInt(t.amount),0n);if(r>=t)throw Error(`Invalid charge request: split total must be less than total amount.`);let i=t-r;if(i<=0n)throw Error(`Invalid charge request: primary transfer amount must be positive.`);return[{amount:i.toString(),memo:e.methodDetails?.memo,recipient:e.recipient},...n.map(e=>({amount:e.amount,memo:e.memo,recipient:e.recipient}))]}let gG={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function _G(e){return{name:`MPP`,version:`2`,chainId:e}}function vG(e,t){return{challengeId:e,realm:t}}function yG(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}let bG=[`push`,`pull`],xG=QA({amount:_j(),memo:G(yj()),recipient:pj(HA(),uj(e=>e))}),SG=bM({name:`tempo`,intent:`charge`,schema:{credential:{payload:nj(`type`,[QA({hash:yj(),type:cj(`hash`)}),QA({signature:bj(),type:cj(`transaction`)}),QA({signature:bj(),type:cj(`proof`)})])},request:pj(QA({amount:_j(),chainId:G(WA()),currency:HA(),decimals:WA(),description:G(HA()),externalId:G(HA()),feePayer:G(pj(ej([KA(),hj()]),uj(e=>typeof e==`object`?!0:e))),memo:G(yj()),recipient:G(HA()),splits:G(XA(xG).check(IA(1),FA(10))),supportedModes:G(XA(oj(bG)).check(IA(1)))}).check(gj(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=LH(e,t),i=n.reduce((e,n)=>e+LH(n.amount,t),0n);return n.every(e=>LH(e.amount,t)>0n)&&i<r},`Invalid splits`)),uj(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:LH(e,n).toString(),...t!==void 0||r!==void 0||i!==void 0||a!==void 0||o!==void 0?{methodDetails:{...t!==void 0&&{chainId:t},...r!==void 0&&{feePayer:r},...i!==void 0&&{memo:i},...a!==void 0&&{splits:a.map(e=>({...e,amount:LH(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),CG=bM({name:`tempo`,intent:`session`,schema:{credential:{payload:nj(`action`,[QA({action:cj(`open`),authorizedSigner:G(HA()),channelId:yj(),cumulativeAmount:_j(),signature:bj(),transaction:bj(),type:cj(`transaction`)}),QA({action:cj(`topUp`),additionalDeposit:_j(),channelId:yj(),transaction:bj(),type:cj(`transaction`)}),QA({action:cj(`voucher`),channelId:yj(),cumulativeAmount:_j(),signature:bj()}),QA({action:cj(`close`),channelId:yj(),cumulativeAmount:_j(),signature:bj()})])},request:pj(QA({amount:_j(),chainId:G(WA()),channelId:G(yj()),currency:HA(),decimals:WA(),escrowContract:G(HA()),feePayer:G(pj(ej([KA(),hj()]),uj(e=>typeof e==`object`?!0:e))),minVoucherDelta:G(_j()),recipient:G(HA()),suggestedDeposit:G(_j()),unitType:HA()}).check(gj(({amount:e,decimals:t})=>LH(e,t)>0n,`Session amount must be greater than 0`)),uj(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:LH(e,r).toString(),...s?{suggestedDeposit:LH(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:LH(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}});function wG(e={}){let{clientId:t}=e,n=tG({chain:mW,getClient:e.getClient,rpcUrl:uG}),r=eG({account:e.account});return xM(SG,{context:QA({account:G(hj()),autoSwap:G(hj()),mode:G(oj(bG))}),async createCredential({challenge:i,context:a}){let o=i.request.methodDetails?.chainId,s=await n({chainId:o}),c=r(s,a),{request:l}=i,{amount:u,methodDetails:d}=l;if(BigInt(u)===0n)return yM({challenge:i,payload:{signature:await XH(s,{account:c,domain:_G(o),types:gG,primaryType:`Proof`,message:vG(i.id,i.realm)}),type:`proof`},source:yG({address:c.address,chainId:o})});let f=l.currency;if(e.expectedRecipients){let t=new Set(e.expectedRecipients.map(e=>e.toLowerCase())),n=d?.splits;if(n){for(let e of n)if(!t.has(e.recipient.toLowerCase()))throw Error(`Unexpected split recipient: ${e.recipient}`)}}let p=d?.supportedModes??[`pull`,`push`],m=(()=>{let t=a?.mode??e.mode;if(t){if(!p.includes(t))throw Error(`Challenge does not support ${t} mode.`);return t}let n=c.type===`json-rpc`?`push`:`pull`;return p.includes(n)?n:p[0]})(),h=d?.memo?d.memo:iG({challengeId:i.id,clientId:t,serverId:i.realm}),g=hG({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>YW.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=pG(a?.autoSwap??e.autoSwap,dG),v=[...(_?await fG(s,{account:c.address,amountOut:BigInt(u),tokenOut:f,tokenIn:_.tokenIn,slippage:_.slippage}):void 0)??[],...g],y=(()=>{let e=Math.floor(Date.now()/1e3)+25;if(!i.expires)return e;let t=Math.floor(new Date(i.expires).getTime()/1e3);return Math.min(e,t)})();if(m===`push`){let{receipts:e}=await JH(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return yM({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Wz(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,yM({challenge:i,payload:{signature:await YH(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function TG(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let EG={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function DG(e,t,n,r,i,a){let o=await XH(e,{account:t,domain:TG(r,i),types:EG,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=cU(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return DO(e.inner.signature)}catch{}return o}function OG(e){return RE(YD(ZD([`address payer`,`address payee`,`address token`,`bytes32 salt`,`address authorizedSigner`,`address escrowContract`,`uint256 chainId`]),[e.payer,e.payee,e.token,e.salt,e.authorizedSigner,e.escrowContract,BigInt(e.chainId)]))}let kG=[{type:`function`,name:`CLOSE_GRACE_PERIOD`,inputs:[],outputs:[{name:``,type:`uint64`,internalType:`uint64`}],stateMutability:`view`},{type:`function`,name:`VOUCHER_TYPEHASH`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`channels`,inputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}],stateMutability:`view`},{type:`function`,name:`close`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`computeChannelId`,inputs:[{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`domainSeparator`,inputs:[],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`eip712Domain`,inputs:[],outputs:[{name:`fields`,type:`bytes1`,internalType:`bytes1`},{name:`name`,type:`string`,internalType:`string`},{name:`version`,type:`string`,internalType:`string`},{name:`chainId`,type:`uint256`,internalType:`uint256`},{name:`verifyingContract`,type:`address`,internalType:`address`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`extensions`,type:`uint256[]`,internalType:`uint256[]`}],stateMutability:`view`},{type:`function`,name:`getChannel`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[{name:``,type:`tuple`,internalType:`struct TempoStreamChannel.Channel`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getChannelsBatch`,inputs:[{name:`channelIds`,type:`bytes32[]`,internalType:`bytes32[]`}],outputs:[{name:`channelStates`,type:`tuple[]`,internalType:`struct TempoStreamChannel.Channel[]`,components:[{name:`finalized`,type:`bool`,internalType:`bool`},{name:`closeRequestedAt`,type:`uint64`,internalType:`uint64`},{name:`payer`,type:`address`,internalType:`address`},{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`authorizedSigner`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`settled`,type:`uint128`,internalType:`uint128`}]}],stateMutability:`view`},{type:`function`,name:`getVoucherDigest`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`}],outputs:[{name:``,type:`bytes32`,internalType:`bytes32`}],stateMutability:`view`},{type:`function`,name:`open`,inputs:[{name:`payee`,type:`address`,internalType:`address`},{name:`token`,type:`address`,internalType:`address`},{name:`deposit`,type:`uint128`,internalType:`uint128`},{name:`salt`,type:`bytes32`,internalType:`bytes32`},{name:`authorizedSigner`,type:`address`,internalType:`address`}],outputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],stateMutability:`nonpayable`},{type:`function`,name:`requestClose`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`settle`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`cumulativeAmount`,type:`uint128`,internalType:`uint128`},{name:`signature`,type:`bytes`,internalType:`bytes`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`topUp`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`},{name:`additionalDeposit`,type:`uint256`,internalType:`uint256`}],outputs:[],stateMutability:`nonpayable`},{type:`function`,name:`withdraw`,inputs:[{name:`channelId`,type:`bytes32`,internalType:`bytes32`}],outputs:[],stateMutability:`nonpayable`},{type:`event`,name:`ChannelClosed`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`settledToPayee`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`refundedToPayer`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`ChannelExpired`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`ChannelOpened`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`token`,type:`address`,indexed:!1,internalType:`address`},{name:`authorizedSigner`,type:`address`,indexed:!1,internalType:`address`},{name:`salt`,type:`bytes32`,indexed:!1,internalType:`bytes32`},{name:`deposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`CloseRequestCancelled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`}],anonymous:!1},{type:`event`,name:`CloseRequested`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`closeGraceEnd`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`Settled`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`cumulativeAmount`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`deltaPaid`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newSettled`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`event`,name:`TopUp`,inputs:[{name:`channelId`,type:`bytes32`,indexed:!0,internalType:`bytes32`},{name:`payer`,type:`address`,indexed:!0,internalType:`address`},{name:`payee`,type:`address`,indexed:!0,internalType:`address`},{name:`additionalDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`},{name:`newDeposit`,type:`uint256`,indexed:!1,internalType:`uint256`}],anonymous:!1},{type:`error`,name:`AmountExceedsDeposit`,inputs:[]},{type:`error`,name:`AmountNotIncreasing`,inputs:[]},{type:`error`,name:`ChannelAlreadyExists`,inputs:[]},{type:`error`,name:`ChannelFinalized`,inputs:[]},{type:`error`,name:`ChannelNotFound`,inputs:[]},{type:`error`,name:`CloseNotReady`,inputs:[]},{type:`error`,name:`DepositOverflow`,inputs:[]},{type:`error`,name:`InvalidPayee`,inputs:[]},{type:`error`,name:`InvalidSignature`,inputs:[]},{type:`error`,name:`NotPayee`,inputs:[]},{type:`error`,name:`NotPayer`,inputs:[]},{type:`error`,name:`TransferFailed`,inputs:[]}];async function AG(e,t,n){return sV(e,{address:t,abi:kG,functionName:`getChannel`,args:[n]})}pI({abi:kG,name:`open`}),pI({abi:kG,name:`topUp`});function jG(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??lG[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function MG(e,t,n,r){return yM({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function NG(e,t,n,r,i,a,o){let s=await DG(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function PG(e,t,n){let{escrowContract:r,payee:i,currency:a,deposit:o,initialAmount:s,chainId:c,feePayer:l}=n,u=n.authorizedSigner??t.address,d=JT(32),f=OG({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=SI({abi:Z,functionName:`approve`,args:[r,o]}),m=SI({abi:kG,functionName:`open`,args:[i,a,o,d,u]}),h=await Wz(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await YH(e,h),_=await DG(e,t,{channelId:f,cumulativeAmount:s},r,c,n.authorizedSigner);return{entry:{channelId:f,salt:d,cumulativeAmount:s,escrowContract:r,chainId:c,opened:!0},payload:{action:`open`,type:`transaction`,channelId:f,transaction:g,authorizedSigner:u,cumulativeAmount:s.toString(),signature:_}}}async function FG(e,t,n,r){try{let i=await AG(e,t,n);if(i.deposit>0n&&!i.finalized)return{channelId:n,salt:`0x`,cumulativeAmount:i.settled,escrowContract:t,chainId:r,opened:!0}}catch{}}let IG=QA({account:G(hj()),action:G(oj([`open`,`topUp`,`voucher`,`close`])),channelId:G(HA()),cumulativeAmount:G(_j()),cumulativeAmountRaw:G(HA()),transaction:G(HA()),authorizedSigner:G(HA()),additionalDeposit:G(_j()),additionalDepositRaw:G(HA()),depositRaw:G(HA())});function LG(e={}){let{decimals:t=6}=e,n=tG({chain:mW,getClient:e.getClient,rpcUrl:uG}),r=eG({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:LH(e.maxDeposit,t),o=new Map,s=new Map,c=new Map;function l(t){e.onChannelUpdate?.(t)}function u(e,t,n){return`${e.toLowerCase()}:${t.toLowerCase()}:${n.toLowerCase()}`}function d(t,n,r){if(r){let e=o.get(r);if(e)return e}return jG(t,n,e.escrowContract)}async function f(r,f,p){let m=r.request.methodDetails,h=m?.chainId??0,g=await n({chainId:h}),_=d(r,h),v=r.request.recipient,y=r.request.currency,b=BigInt(r.request.amount),x=r.request.suggestedDeposit,S=x?BigInt(x):void 0,ee=(()=>{if(p?.depositRaw)return BigInt(p.depositRaw);if(e.deposit!==void 0)return LH(e.deposit,t);if(S!==void 0&&a!==void 0)return S<a?S:a;if(a!==void 0)return a;if(S!==void 0)return S;throw Error(\"No deposit amount available. Set `deposit`, `maxDeposit`, or ensure the server challenge includes `suggestedDeposit`.\")})(),C=i(f),w=u(v,y,_),te=s.get(w);if(!te){let e=p?.channelId??m?.channelId;if(e){let n=await FG(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?LH(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(w,n),c.set(n.channelId,w),o.set(n.channelId,_),te=n,l(te)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let ne;if(te?.opened)te.cumulativeAmount+=b,ne=await NG(g,f,te.channelId,te.cumulativeAmount,_,h,C),l(te);else{let e=await PG(g,f,{authorizedSigner:C,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(w,e.entry),c.set(e.entry.channelId,w),o.set(e.entry.channelId,_),ne=e.payload,l(e.entry)}return MG(r,ne,h,f)}async function p(e,r,a){let u=e.request.methodDetails?.chainId??0,f=await n({chainId:u}),p=a.action,{channelId:m,transaction:h,authorizedSigner:g}=a,_=g??i(r),v=m,y=a.cumulativeAmountRaw?BigInt(a.cumulativeAmountRaw):a.cumulativeAmount?LH(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?LH(a.additionalDeposit,t):void 0,x=d(e,u,v);o.set(v,x);let S;switch(p){case`open`:{if(!h)throw Error(`transaction required for open action`);if(y===void 0)throw Error(`cumulativeAmount required for open action`);let e=await DG(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`open`,type:`transaction`,channelId:v,transaction:h,authorizedSigner:_??r.address,cumulativeAmount:y.toString(),signature:e};break}case`topUp`:if(!h)throw Error(`transaction required for topUp action`);if(b===void 0)throw Error(`additionalDeposit required for topUp action`);S={action:`topUp`,type:`transaction`,channelId:v,transaction:h,additionalDeposit:b.toString()};break;case`voucher`:{if(y===void 0)throw Error(`cumulativeAmount required for voucher action`);S=await NG(f,r,v,y,x,u,_);let e=c.get(v);if(e){let t=s.get(e);t&&(t.cumulativeAmount=t.cumulativeAmount>y?t.cumulativeAmount:y,l(t))}break}case`close`:{if(y===void 0)throw Error(`cumulativeAmount required for close action`);let e=await DG(f,r,{channelId:v,cumulativeAmount:y},x,u,_);S={action:`close`,channelId:v,cumulativeAmount:y.toString(),signature:e};let t=c.get(v);if(t){let e=s.get(t);e&&(e.opened=!1,e.cumulativeAmount=e.cumulativeAmount>y?e.cumulativeAmount:y,l(e))}break}}return MG(e,S,u,r)}return xM(CG,{context:IG,async createCredential({challenge:t,context:i}){let o=r(await n({chainId:t.request.methodDetails?.chainId??0}),i);if(!i?.action&&(e.deposit!==void 0||a!==void 0))return f(t,o,i);if(i?.action)return p(t,o,i);throw Error(\"No `action` in context and no `deposit` or `maxDeposit` configured. Either provide context with action/channelId/cumulativeAmount, or configure `deposit`/`maxDeposit` for auto-management.\")}})}function RG(e){let t=XO(e);return JSON.parse(t)}function zG(e){let t=`message`,n=[];for(let r of e.split(`\n`))r.startsWith(`event: `)?t=r.slice(7).trim():r.startsWith(`data: `)?n.push(r.slice(6)):r===`data:`&&n.push(``);if(n.length===0)return null;let r=n.join(`\n`);switch(t){case`message`:return{type:`message`,data:r};case`payment-need-voucher`:return{type:`payment-need-voucher`,data:JSON.parse(r)};case`payment-receipt`:return{type:`payment-receipt`,data:JSON.parse(r)};default:return{type:`message`,data:r}}}function BG(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function VG(){return JSON.stringify({mpp:`payment-close-request`})}function HG(e){try{let t=JSON.parse(e);return t.mpp===`authorization`&&typeof t.authorization==`string`?{mpp:`authorization`,authorization:t.authorization}:t.mpp===`message`&&typeof t.data==`string`?{mpp:`message`,data:t.data}:t.mpp===`payment-close-request`?{mpp:`payment-close-request`}:t.mpp===`payment-close-ready`&&UG(t.data)?{mpp:`payment-close-ready`,data:t.data}:t.mpp===`payment-error`&&typeof t.status==`number`&&typeof t.message==`string`?{mpp:`payment-error`,status:t.status,message:t.message}:t.mpp===`payment-need-voucher`&&WG(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&UG(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function UG(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function WG(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let GG={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function KG(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:LH(e.maxDeposit,e.decimals??6),i=null,a=null,o=null,s=0n,c=null,l=null,u=null,d=null,f=null,p=null,m=null,h=0n,g=0n,_=LG({account:e.account,authorizedSigner:e.authorizedSigner,getClient:e.client?()=>e.client:e.getClient,escrowContract:e.escrowContract,decimals:e.decimals,maxDeposit:e.maxDeposit,onChannelUpdate(e){e.channelId!==i?.channelId&&(s=0n),i=e}}),v=nM({fetch:t,methods:[_],onChallenge:async(e,t)=>{a=e}});function y(e){if(!e||e.channelId!==i?.channelId)return;b(e);let t=BigInt(e.spent);s=s>t?s:t}function b(e){if(!i||e.channelId!==i.channelId)return;let t=BigInt(e.acceptedCumulative),n=BigInt(e.spent);if(n>t)throw Error(`receipt spent exceeds accepted cumulative voucher amount`);if(t>i.cumulativeAmount)throw Error(`receipt accepted cumulative exceeds local voucher state`);if(n>i.cumulativeAmount)throw Error(`receipt spent exceeds local voucher state`);re(t),re(n)}function x(e=()=>!0){if(m)throw Error(`receipt wait already in progress`);return new Promise((t,n)=>{m={predicate:e,resolve:t,reject:n}})}function S(){if(d)return Promise.resolve(d);if(f)throw Error(`close-ready wait already in progress`);return new Promise((e,t)=>{f={resolve:e,reject:t}})}function ee(e){if(!m||!m.predicate(e))return;let t=m;m=null,t.resolve(e)}function C(e){if(d=e,!f)return;let t=f;f=null,t.resolve(e)}function w(e){if(!m)return;let t=m;m=null,t.reject(e)}function te(e){if(!f)return;let t=f;f=null,t.reject(e)}function ne(e,t){if(d&&d.challengeId===e.id&&d.channelId===t)return d.spent;let n=i?.channelId===t?i.cumulativeAmount:0n;if(g>0n){let e=h*g,t=s>e?s:e;return(t>n?n:t).toString()}return s.toString()}function re(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function ie(e){let t=e.headers.get(`Payment-Receipt`),n=t?RG(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ae(e,t){return o=e,ie(await v(e,t))}function oe(e){let t=new Map,n=!1,r=[],i=e.readyState,a=(e,n,i)=>{let a=t.get(e);if(a||(a=new Set,t.set(e,a)),a.add({once:typeof i==`object`?i.once===!0:!1,value:n}),e===`message`&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},o=(e,n)=>{let r=t.get(e);if(r)for(let e of r)e.value===n&&r.delete(e)},s=(e,a)=>{if(e===`close`){if(n)return;n=!0,i=GG.CLOSED,r=null}if(e===`open`&&(i=GG.OPEN),e===`message`&&r){r.push(a);return}let o=c[`on${e}`];typeof o==`function`&&o(a);let s=t.get(e);if(s)for(let e of Array.from(s))typeof e.value==`function`?e.value(a):e.value.handleEvent(a),e.once&&s.delete(e)},c={addEventListener:a,close(t,n){e.close(t,n)},get bufferedAmount(){return e.bufferedAmount},get extensions(){return e.extensions},on(e,t){a(e,t)},onclose:null,onerror:null,_onmessage:null,get onmessage(){return c._onmessage},set onmessage(e){if(c._onmessage=e,e&&r){let e=r;r=null;for(let t of e)s(`message`,t)}},onopen:null,off(e,t){o(e,t)},get protocol(){return e.protocol},get readyState(){return i},removeEventListener:o,send(t){e.send(t)},get url(){return e.url}};return{emit:s,socket:c}}return{get channelId(){return i?.channelId},get cumulative(){return i?.cumulativeAmount??0n},get opened(){return i?.opened??!1},async open(e){if(i?.opened)return;if(!a)throw Error(`No challenge available. Make a request first to receive a 402 challenge, or pass a challenge via .fetch()/.sse().`);let n=e?.deposit,r=await _.createCredential({challenge:a,context:{...n!==void 0&&{depositRaw:n.toString()}}});if(!o)throw Error(`No URL available \u2014 call fetch() or sse() before open().`);let s=await t(o,{method:`POST`,headers:{Authorization:r}});if(!s.ok){let e=await s.text().catch(()=>``),t=s.headers.get(`WWW-Authenticate`)??``;throw Error(`Open request failed with status ${s.status}${e?`: ${e}`:``}${t?` [WWW-Authenticate: ${t}]`:``}`)}},fetch:ae,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ae(e,{...s,headers:{...iM(s.headers),Accept:`text/event-stream`},...o?{signal:o}:{}}),l=a;if(!c.body)throw Error(`Response has no body.`);let u=c.body.getReader(),d=new TextDecoder;async function*f(){let n=``;try{for(;!o?.aborted;){let{done:a,value:o}=await u.read();if(a)break;n+=d.decode(o,{stream:!0});let s=n.split(`\n\n`);n=s.pop();for(let n of s){if(!n.trim())continue;let a=zG(n);if(a)switch(a.type){case`message`:yield a.data;break;case`payment-need-voucher`:{if(!i||!l)break;let n=BigInt(a.data.requiredCumulative);re(n),i.cumulativeAmount=i.cumulativeAmount>n?i.cumulativeAmount:n;let r=await t(e,{method:`POST`,headers:{Authorization:await _.createCredential({challenge:l,context:{action:`voucher`,channelId:i.channelId,cumulativeAmountRaw:i.cumulativeAmount.toString()}})}});if(!r.ok)throw Error(`Voucher POST failed with status ${r.status}`);break}case`payment-receipt`:y(a.data),r?.(a.data);break}}}}finally{u.releaseLock()}}return f()},async ws(e,r){if(!n)throw Error(\"No WebSocket implementation available. Pass `webSocket` to sessionManager() in this runtime.\");let{onReceipt:s,protocols:f,signal:m}=r??{},v=new URL(e.toString()),b=new URL(v.toString());b.protocol===`ws:`&&(b.protocol=`http:`),b.protocol===`wss:`&&(b.protocol=`https:`),o=b.toString();let S=await t(b,m?{signal:m}:void 0);if(S.status!==402)throw Error(`Expected a 402 payment challenge from ${b}, received ${S.status} instead.`);let ne=jj(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!ne)throw Error(`No payment challenge received from HTTP endpoint for this WebSocket URL. The server may not require payment or did not advertise a challenge.`);a=ne;let ie=await _.createCredential({challenge:ne,context:{}});d=null,c=ne,h=0n,g=BigInt(ne.request.amount);let ae=vM(ie);l=ae.payload.channelId;let se=new n(v,f);u=se;let ce=oe(se),le=e=>{w(Error(e)),te(Error(e)),(se.readyState===GG.CONNECTING||se.readyState===GG.OPEN)&&se.close(3008,e)},ue=e=>e.challengeId===ne.id&&e.channelId===l,de=new Promise((e,t)=>{let n=()=>{se.removeEventListener(`error`,r),ce.emit(`open`,{type:`open`}),e()},r=()=>{se.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};se.addEventListener(`open`,n,{once:!0}),se.addEventListener(`error`,r,{once:!0})});return se.addEventListener(`close`,e=>{u===se&&(u=null),c===ne&&(c=null),l===ae.payload.channelId&&(l=null),p=null,w(Error(`WebSocket closed before the payment flow completed.`)),te(Error(`WebSocket closed before the payment flow completed.`)),ce.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),se.addEventListener(`error`,()=>{ce.emit(`error`,{type:`error`})}),se.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=HG(t);if(!n){ce.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,ce.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!ue(n.data)){le(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){le(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),C(n.data),ce.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:w(Error(n.message)),te(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){le(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{re(e)}catch(e){le(e instanceof Error?e.message:`requested voucher amount exceeds local maxDeposit`);break}let t=(i?.cumulativeAmount??0n)>e?i?.cumulativeAmount??0n:e;i?.channelId===l&&(i.cumulativeAmount=t);let r=await _.createCredential({challenge:ne,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});se.send(BG(r));break}case`payment-receipt`:if(!ue(n.data)){le(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){le(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{w(Error(`WebSocket payment flow aborted.`)),te(Error(`WebSocket payment flow aborted.`)),se.close()},{once:!0}),await de,se.send(BG(ie)),await x(),ce.socket},async close(){let e=c??a,n=l??i?.channelId;if(!i?.opened)return;if(!e)throw Error(`Cannot close session: no challenge available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or make a request first to receive a fresh 402 challenge.`);if(!n)throw Error(`Cannot close session: no channel ID available. The session may not have been fully opened.`);if(u?.readyState===GG.OPEN){let t=d??await(async()=>(u.send(VG()),S()))(),r=BigInt(t.spent);if(r>(i.cumulativeAmount>s?i.cumulativeAmount:s))throw Error(`close-ready spent exceeds local voucher state`);let a=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:r.toString()}}),o=r.toString();p=o;try{let t=x(t=>!!t.txHash&&t.challengeId===e.id&&t.channelId===n&&t.acceptedCumulative===o&&t.spent===o);u.send(BG(a));let r=await t;return u.close(),d=null,r}finally{p=null}}let r=await _.createCredential({challenge:e,context:{action:`close`,channelId:n,cumulativeAmountRaw:(()=>{let t=BigInt(ne(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return re(t),t.toString()})()}});if(!o)throw Error(`Cannot close session: no URL available. This usually means close() was called on a SessionManager instance that was recreated after the session was opened. Use the same SessionManager instance that opened the session, or call fetch()/sse() before close().`);let f=await t(o,{method:`POST`,headers:{Authorization:r}});if(!f.ok){let e=await f.text().catch(()=>``),t=(()=>{if(!e)return``;if(!f.headers.get(`Content-Type`)?.includes(`application/problem+json`))return e;try{return JSON.parse(e).detail??e}catch{return e}})(),n=f.headers.get(`WWW-Authenticate`)??``;throw Error(`Close request failed with status ${f.status}${t?`: ${t}`:``}${n?` [WWW-Authenticate: ${n}]`:``}`)}let m=f.headers.get(`Payment-Receipt`);return m?RG(m):void 0}}}function qG(e={}){return[wG(e),LG(e)]}(function(e){e.charge=wG,e.session=KG})(qG||={});function JG(e){return e}function YG(){return JG({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return jj(e)},getChallenge(e){return Aj(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function XG(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=YG()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=Lj(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=nM(l);return n&&rM(l),{fetch:u,rawFetch:a,methods:o,transport:i,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=Vj(r,o,ZG(s.entries,n?.acceptPayment));if(!a)throw Error(`No method found for challenges: ${r.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${o.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let{challenge:c,method:l}=a;c.expires&&Dw(c.expires,c.id);let u=l.context&&t!==void 0?l.context.parse(t):void 0;return l.createCredential(u===void 0?{challenge:c}:{challenge:c,context:u})}}}function ZG(e,t){return t?typeof t==`string`?Rj(t):t:e}rt(),O(),Rr();let QG=`0x01`,$G=`0x02`,eK=`0x03`,tK=`0x04`,nK=`0x7777777777777777777777777777777777777777777777777777777777777777`;function rK(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:rK({...e,signature:t.inner}):ea(iK(e))}function iK(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return pl({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return iK({payload:t,signature:n.inner})}}function aK(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?D(e,0,-Jr(nK)):e;if(Jr(t)===65){let e=fc(t);return uc(e),{signature:e,type:`secp256k1`}}let n=D(t,0,1),r=D(t,1),i=Jr(r);if(n===QG){if(i!==129)throw new pK({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:Xr(D(r,64,96)),y:Xr(D(r,96,128))},prehash:Zr(D(r,128,129))!==0,signature:{r:Xr(D(r,0,32)),s:Xr(D(r,32,64))},type:`p256`}}if(n===$G){if(i<128)throw new pK({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=D(r,0,e),a,o;for(let t=37;t<e;t++){let e=Qr(D(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=D(n,0,t),o=e;break}catch{}}if(!a||!o)throw new pK({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:Xr(D(r,e+64,e+96)),y:Xr(D(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:Xr(D(r,e,e+32)),s:Xr(D(r,e+32,e+64))},type:`webAuthn`}}if(n===eK||n===tK)return{userAddress:D(r,0,20),inner:aK(D(r,20)),type:`keychain`,version:n===tK?`v2`:`v1`};throw new pK({reason:`Unknown signature type identifier: ${n}. Expected ${QG} (P256), ${$G} (WebAuthn), ${eK} (Keychain V1), or ${tK} (Keychain V2)`,serialized:t})}function oK(e,t){if(typeof e==`string`)return aK(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=cK(e);return{...e,...n===`p256`?{prehash:e.prehash}:{},...n===`keychain`?{...typeof e==`object`&&e&&`version`in e&&e.version?{}:{version:`v2`},...typeof e==`object`&&`keyId`in e&&e.keyId?{}:(()=>{let n=e.inner;return n.type===`p256`||n.type===`webAuthn`?{keyId:ea(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:ea(pl({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function sK(e){if(e.type===`secp256k1`)return{signature:gc(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=Jr(t),r,i;for(let e=37;e<n;e++){let n=Qr(D(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=D(t,0,e),i=n;break}catch{}}if(!r||!i)throw new pK({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{metadata:{authenticatorData:r,clientDataJSON:i},publicKey:{prefix:4,x:Xr(e.pubKeyX),y:Xr(e.pubKeyY)},signature:{r:Xr(e.r),s:Xr(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:sK(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new fK({envelope:e})}function cK(e){if(typeof e!=`object`||!e)throw new fK({envelope:e});if(`type`in e&&e.type)return e.type;if(`signature`in e&&!(`publicKey`in e)&&typeof e.signature==`object`&&e.signature!==null&&`r`in e.signature&&`s`in e.signature&&`yParity`in e.signature||`r`in e&&`s`in e&&`yParity`in e)return`secp256k1`;if(`signature`in e&&`prehash`in e&&`publicKey`in e&&typeof e.prehash==`boolean`)return`p256`;if(`signature`in e&&`metadata`in e&&`publicKey`in e)return`webAuthn`;if(`userAddress`in e&&`inner`in e)return`keychain`;throw new fK({envelope:e})}function lK(e,t={}){let n=cK(e);if(n===`secp256k1`)return Br(vc(e.signature),t.magic?nK:`0x`);if(n===`p256`){let n=e;return Br(QG,E(n.signature.r,{size:32}),E(n.signature.s,{size:32}),E(n.publicKey.x,{size:32}),E(n.publicKey.y,{size:32}),E(+!!n.prehash,{size:1}),t.magic?nK:`0x`)}if(n===`webAuthn`){let n=e;return Br($G,Br(n.metadata.authenticatorData,Wr(n.metadata.clientDataJSON)),E(n.signature.r,{size:32}),E(n.signature.s,{size:32}),E(n.publicKey.x,{size:32}),E(n.publicKey.y,{size:32}),t.magic?nK:`0x`)}if(n===`keychain`){let n=e;return Br(n.version===`v1`?eK:tK,n.userAddress,lK(n.inner),t.magic?nK:`0x`)}throw new fK({envelope:e})}function uK(e){let t=cK(e);if(t===`secp256k1`)return{...yc(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:E(t.publicKey.x,{size:32}),pubKeyY:E(t.publicKey.y,{size:32}),r:E(t.signature.r,{size:32}),s:E(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=Br(t.metadata.authenticatorData,Wr(t.metadata.clientDataJSON));return{pubKeyX:E(t.publicKey.x,{size:32}),pubKeyY:E(t.publicKey.y,{size:32}),r:E(t.signature.r,{size:32}),s:E(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:uK(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new fK({envelope:e})}function dK(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return ea(t.publicKey)})();if(!r)return!1;let i=oK(e);if(i.type===`secp256k1`)return r?hl({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return ta(ea(i.publicKey),r)?Ll({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return ta(ea(i.publicKey),r)?zu({challenge:Vr(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new mK(`Unable to verify signature envelope of type \"${i.type}\".`)}var fK=class extends T{constructor({envelope:e}){super(`Unable to coerce value (\\`${Ir(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},pK=class extends T{constructor({reason:e,serialized:t}){super(`Unable to deserialize signature envelope: ${e}`,{metaMessages:[`Serialized: ${t}`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.InvalidSerializedError`})}},mK=class extends T{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};rt(),O();function hK(e){return e.startsWith(`tempo`)?gK(e).address:e}function gK(e){if(!e.startsWith(`tempox`))throw new _K({address:e});let t=e.slice(6);return zr(t,{strict:!0}),{address:Qi(t)}}var _K=class extends T{constructor({address:e}){super(`Tempo address \"${e}\" has an invalid prefix. Expected \"tempox\".`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TempoAddress.InvalidPrefixError`})}};O();function vK(e,t={}){if(typeof e.chainId==`string`)return yK(e);let n={...e,address:hK(e.address)};return t.signature?{...n,signature:t.signature}:n}function yK(e){let{address:t,chainId:n,nonce:r}=e,i=sK(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function bK(e){return e.map(e=>yK(e))}function xK(e){let[t,n,r,i]=e,a={address:n,chainId:t===`0x`?0:Number(t),nonce:r===`0x`?0n:BigInt(r)};return i&&(a.signature=aK(i)),vK(a)}function SK(e){let t=[];for(let n of e)t.push(xK(n));return t}function CK(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:E(n),nonce:E(r),signature:uK(i)}}function wK(e){return e.map(e=>CK(e))}function TK(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?lK(e.signature):void 0;return[n?E(n):`0x`,t,r?E(r):`0x`,...i?[i]:[]]}function EK(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(TK(n));return t}O();function DK(e,t={}){if(`keyId`in e)return OK(e);let n=e,r={...n,address:hK(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:hK(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:hK(e.address),selector:zK(e.selector),...e.recipients?{recipients:e.recipients.map(e=>hK(e))}:{}}))}:{}};return t.signature?{...r,signature:oK(t.signature)}:r}function OK(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=sK(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:RK(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:Xr(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&LK(e.period)>0?{period:LK(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function kK(e){let[t,n]=e,[r,i,a,o,s,c]=t,l=(()=>{switch(i){case`0x`:case`0x00`:return`secp256k1`;case`0x01`:return`p256`;case`0x02`:return`webAuthn`;default:throw Error(`Invalid key type: ${i}`)}})(),u={address:a,expiry:o===void 0?void 0:LK(o)||void 0,type:l,chainId:r===`0x`?0n:Xr(r),...o===void 0?{}:{expiry:LK(o)||void 0},...s!==void 0&&Array.isArray(s)&&s.length>0?{limits:s.map(e=>{let[t,n,r]=e;return{token:t,limit:IK(n),...r===void 0?{}:{period:LK(r)}}})}:{},...c!==void 0&&Array.isArray(c)?{scopes:c.flatMap(e=>{let[t,n]=e;return!Array.isArray(n)||n.length===0?[{address:t}]:n.map(e=>{let[n,r]=e;return{address:t,selector:n,...Array.isArray(r)&&r.length>0?{recipients:r}:{}}})})}:{}};return n&&(u.signature=aK(n)),DK(u)}function AK(e){return jK(e)}function jK(e){let[t]=NK(e);return Fi(fo(t))}function MK(e){let{address:t,scopes:n,chainId:r,expiry:i,limits:a,type:o,signature:s}=e,c=(()=>{if(!n)return;let e=new Map;for(let t of n){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push({selector:zK(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}})}return[...e.entries()].map(([e,t])=>({target:e,...t.length>0?{selectorRules:t}:{}}))})();return{chainId:r===0n?`0x`:E(r),expiry:typeof i==`number`?E(i):null,keyId:hK(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:E(t),...n?{period:FK(n)}:{}})),signature:uK(s),...c?{allowedCalls:c}:{}}}function NK(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?lK(e.signature):void 0,s=(()=>{switch(e.type){case`secp256k1`:return`0x`;case`p256`:return`0x01`;case`webAuthn`:return`0x02`;default:throw Error(`Invalid key type: ${e.type}`)}})(),c=a?.map(e=>{let t=[e.token,PK(e.limit)];return e.period&&e.period>0&&t.push(FK(e.period)),t}),l=(()=>{if(!r)return;let e=new Map;for(let t of r){let n=t.address;e.has(n)||e.set(n,[]),t.selector&&e.get(n).push([zK(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[PK(n),s,t,i!=null&&i!==0||c||l?FK(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function PK(e){return e===0n?`0x`:E(e)}function FK(e){return e===0?`0x`:E(e)}function IK(e){return e===`0x`?0n:BigInt(e)}function LK(e){return e===`0x`?0:Zr(e)}function RK(e){return typeof e==`string`?e:Array.isArray(e)?Ur(new Uint8Array(e)):e}function zK(e){if(e)return e.startsWith(`0x`)?e:ua(e)}O();let BK=`0x20c0`;function VK(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):HK(e)}function HK(e){let t=hK(e);if(!t.toLowerCase().startsWith(BK))throw Error(`invalid tip20 address.`);return Xr(D(t,6))}function UK(e){if(typeof e==`string`){let t=hK(e);return Zi(t),t}return Br(BK,E(e,{size:18}))}O();let WK={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function GK(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Fi(Wr(WK[e]??e))}let KK={...Vc,tempo:`0x76`},qK={...Hc,\"0x76\":`tempo`};function JK(e,t={}){if(!e)return null;let n=Uc(e);return n.type=qK[e.type],e.aaAuthorizationList&&(n.authorizationList=bK(e.aaAuthorizationList),delete n.aaAuthorizationList),e.calls&&(n.calls=e.calls.map(e=>({to:e.to,value:e.value&&e.value!==`0x`?BigInt(e.value):void 0,data:e.input||e.data||`0x`}))),e.feeToken&&(n.feeToken=e.feeToken),e.nonceKey&&(n.nonceKey=BigInt(e.nonceKey)),e.signature&&(n.signature=sK(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=OK(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=gc(e.feePayerSignature),n.feePayerSignature.v=Sc(n.feePayerSignature.yParity)),n}O();function YK(e){let t=xu({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=wK(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?hK(e.to):e.to,value:e.value?E(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?hK(e.to):void 0,value:e.value?E(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=UK(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=MK(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=E(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=E(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return qr(6);if(typeof e.nonceKey==`bigint`)return E(e.nonceKey)})();return n&&(t.nonceKey=n),(e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.validBefore!==void 0||e.validAfter!==void 0||e.type===`tempo`)&&(t.type=KK.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}rt(),O();let XK=`tempo`;function ZK(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new iq;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new aq({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&Zi(e.to,{strict:!1});if(n<=0)throw new Eu({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Tu({feeCap:r});if(i&&r&&i>r)throw new Ou({maxFeePerGas:r,maxPriorityFeePerGas:i})}function QK(e){let t=ao(D(e,1)),[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g]=t,_=Array.isArray(h)?h:void 0,v=_?g:h;if(!(t.length===13||t.length===14||t.length===15))throw new Du({attributes:{authorizationList:m,chainId:n,maxPriorityFeePerGas:r,maxFeePerGas:i,gas:a,calls:o,accessList:s,keyAuthorization:_,nonceKey:c,nonce:l,validBefore:u,validAfter:d,feeToken:f,feePayerSignatureOrSender:p,...t.length>12?{signature:v}:{}},serialized:e,type:XK});let y={chainId:Number(n),type:XK};$r(a)&&a!==`0x`&&(y.gas=BigInt(a)),$r(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),$r(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),$r(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),$r(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),$r(u)&&u!==`0x`&&(y.validBefore=Number(u)),$r(d)&&d!==`0x`&&(y.validAfter=Number(d)),$r(f)&&f!==`0x`&&(y.feeToken=f),o&&o!==`0x`&&(y.calls=o.map(e=>{let[t,n,r]=e,i={};return t&&t!==`0x`&&(i.to=t),n&&n!==`0x`&&(i.value=BigInt(n)),r&&r!==`0x`&&(i.data=r),i})),s?.length!==0&&s!==`0x`&&(y.accessList=no(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=SK(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||na(p)?(y.feePayerSignature=null,na(p)&&(y.from=p)):y.feePayerSignature=_c(p)),_&&(y.keyAuthorization=kK(_));let b=v?aK(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=rK({payload:tq($K(y)),signature:b,root:!0})}catch{}return ZK(y),y}function $K(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?QK(e):e;return i.from&&=hK(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:hK(e.to)}:{}})),ZK(i),{...i,...r?{signature:oK(r)}:{},...n?{feePayerSignature:mc(n)}:{},type:`tempo`}}function eq(e,t={}){let{accessList:n,authorizationList:r,calls:i,chainId:a,feeToken:o,gas:s,keyAuthorization:c,nonce:l,nonceKey:u,maxFeePerGas:d,maxPriorityFeePerGas:f,validBefore:p,validAfter:m}=e;ZK(e);let h=ro(n),g=t.signature||e.signature,_=EK(r),v=i.map(e=>[e.to?hK(e.to):`0x`,e.value?E(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=oK(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return ea(t.publicKey);if(t.type===`secp256k1`)return fl({payload:tq($K(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?bc(n):`0x`})(),x=[E(a),f?E(f):`0x`,d?E(d):`0x`,s?E(s):`0x`,v,h,u?E(u):`0x`,l?E(l):`0x`,typeof p==`number`?E(p):`0x`,typeof m==`number`?E(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?UK(o):`0x`,b,_,...c?[NK(c)]:[],...g?[lK(oK(g))]:[]];return Br(t.format===`feePayer`?`0x78`:`0x76`,fo(x))}function tq(e,t={}){let n=nq(e,{presign:!0});return t.from?Fi(Br(`0x04`,n,hK(t.from))):n}function nq(e,t={}){return Fi(eq({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function rq(e,t){let n=hK(t.sender);return Fi(eq({...e,signature:void 0},{sender:n,format:`feePayer`}))}var iq=class extends T{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},aq=class extends T{constructor({validBefore:e,validAfter:t}){super(`validBefore (${e}) must be greater than validAfter (${t}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.InvalidValidityWindowError`})}};O();function oq(e){let t=e.account;return t?.keyType&&t.keyType!==`secp256k1`||e.calls!==void 0||e.feePayer!==void 0||e.feeToken!==void 0||e.keyAuthorization!==void 0||e.nonceKey!==void 0||e.signature!==void 0||e.validBefore!==void 0||e.validAfter!==void 0?`tempo`:e.type?e.type:av(e)}function sq(e){try{return oq(e)===`tempo`}catch{return!1}}function cq(e){let t=D(e,0,1);return t===`0x76`||t===`0x78`?uq(e):Kb(e)}async function lq(e,t){if(!sq(e)){if(t&&`type`in t&&t.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+t.type+\"`.\");if(t&&`type`in t){let{r:n,s:r,yParity:i}=t?.signature;return $y(e,{r:E(n,{size:32}),s:E(r,{size:32}),yParity:i})}return $y(e,t)}if(oq(e)===`tempo`)return dq(e,t);throw Error(`Unsupported transaction type`)}function uq(e){let{feePayerSignature:t,nonce:n,...r}=QK(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:E(t.r,{size:32}),s:E(t.s,{size:32}),yParity:t.yParity}}}async function dq(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return oK({r:BigInt(t.r),s:BigInt(t.s),yParity:Number(t.yParity)})})(),{chainId:r,feePayer:i,feePayerSignature:a,nonce:o,...s}=e,c={...s,calls:s.calls?.length?s.calls:[{to:s.to||(!s.data||s.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:s.value,data:s.data}],chainId:Number(r),feePayerSignature:a?{r:BigInt(a.r),s:BigInt(a.s),yParity:Number(a.yParity)}:i?null:void 0,type:`tempo`,...o?{nonce:BigInt(o)}:{}};if(i===!0&&delete c.feeToken,n&&typeof e.feePayer==`object`){let t=$K(c,{signature:n}),r=rq(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return fl({payload:tq(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return eq(t,{feePayerSignature:mc(await e.feePayer.sign({hash:r}))})}return i===!0?n?eq(c,{format:`feePayer`,sender:e.from,signature:n}):eq(c,{feePayerSignature:null}):eq({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}O(),Bm(),C_();function fq(e){if(!sq(e))return L_(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=JK(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:E(t.r,{size:32}),s:E(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:KK[i.type],type:i.type}}function pq(e){return By(e)}function mq(e,t){let n=e,r=n.account?zm(n.account):void 0;if(!sq(n))return y_(e,t);t&&(n.calls=n.calls??[{to:e.to||(!e.data||e.data===`0x`?`0x0000000000000000000000000000000000000000`:void 0),value:e.value,data:e.data}]),n.feePayer===!0&&delete n.feeToken;let i=YK({...n,type:`tempo`});t===`estimateGas`&&(i.maxFeePerGas=void 0,i.maxPriorityFeePerGas=void 0),i.to=void 0,i.data=void 0,i.value=void 0;let[a,o]=(()=>{let e=r&&`keyType`in r?r.keyType:r?.source;return e?e===`webAuthn`?[`webAuthn`,`0x${`ff`.repeat(1400)}`]:[`p256`,`secp256k1`].includes(e)?[e,void 0]:[void 0,void 0]:[void 0,void 0]})(),s=r&&`accessKeyAddress`in r?r.accessKeyAddress:void 0;return{...i,...o?{keyData:o}:{},...s?{keyId:s}:{},...a?{keyType:a}:{},...n.feePayer?{feePayer:typeof n.feePayer==`object`?zm(n.feePayer):n.feePayer}:{}}}let hq=new Map;async function gq(e){hq.set(e,(hq.get(e)??0)+1),await Promise.resolve();let t=(hq.get(e)??0)>1;return queueMicrotask(()=>{let t=hq.get(e)??0;t<=1?hq.delete(e):hq.set(e,t-1)}),t}k_(),C_();let _q={blockTime:1e3,extendSchema:pb(),formatters:{transaction:R_({exclude:[`aaAuthorizationList`],format:fq}),transactionReceipt:Vy({format:pq}),transactionRequest:S_({format:mq})},prepareTransactionRequest:[async(e,{phase:t})=>{let n=e;return t===`afterFillParameters`?(n.feePayer&&n.keyAuthorization?.signature.type===`webAuthn`&&(n.gas=(n.gas??0n)+20000n),n):(await(async()=>{if(n.nonceKey===`expiring`||n.feePayer&&n.nonceKey===void 0)return!0;let e=n.account?.address;return e&&n.nonceKey===void 0?await gq(e):!1})()?(n.nonceKey=O_,n.nonce=0,n.validBefore===void 0&&(n.validBefore=Math.floor(Date.now()/1e3)+25)):n.nonceKey!==void 0&&(n.nonce=typeof n.nonce==`number`?n.nonce:0),!n.feeToken&&n.chain?.feeToken&&(n.feeToken=n.chain.feeToken),n)},{runAt:[`beforeFillTransaction`,`afterFillParameters`]}],serializers:{transaction:((e,t)=>lq(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=aK(i);if(a.type!==`keychain`){let i=await Ky(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return dK(a,{address:n,payload:r})}}return await _f(e,cx,`verifyHash`)({...t,chain:null})}},vq=fb({..._q,id:4217,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.tempo.xyz`}},name:`Tempo Mainnet`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.presto.tempo.xyz`],webSocket:[`wss://rpc.presto.tempo.xyz`]}}}),yq=fb({..._q,id:31318,name:`Tempo Devnet`,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.devnet.tempo.xyz`}},nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.devnet.tempoxyz.dev`],webSocket:[`wss://rpc.devnet.tempoxyz.dev`]}}}),bq=fb({..._q,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),xq=fb({..._q,id:42431,blockExplorers:{default:{name:`Tempo Explorer`,url:`https://explore.moderato.tempo.xyz`}},name:`Tempo Testnet (Moderato)`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`https://rpc.moderato.tempo.xyz`],webSocket:[`wss://rpc.moderato.tempo.xyz`]}}}),$=[{name:`name`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`symbol`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`decimals`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint8`}]},{name:`totalSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`quoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`nextQuoteToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`address`}]},{name:`balanceOf`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint256`}]},{name:`transfer`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`approve`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`spender`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`allowance`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`owner`},{type:`address`,name:`spender`}],outputs:[{type:`uint256`}]},{name:`transferFrom`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[{type:`bool`}]},{name:`mint`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`burn`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`currency`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`string`}]},{name:`supplyCap`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`paused`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bool`}]},{name:`transferPolicyId`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint64`}]},{name:`burnBlocked`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`uint256`,name:`amount`}],outputs:[]},{name:`mintWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`burnWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[]},{name:`transferFromWithMemo`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`from`},{type:`address`,name:`to`},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`}],outputs:[{type:`bool`}]},{name:`changeTransferPolicyId`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint64`,name:`newPolicyId`}],outputs:[]},{name:`setSupplyCap`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`newSupplyCap`}],outputs:[]},{name:`pause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`unpause`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`setNextQuoteToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`newQuoteToken`}],outputs:[]},{name:`completeQuoteTokenUpdate`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[]},{name:`PAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`UNPAUSE_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`ISSUER_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`BURN_BLOCKED_ROLE`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`bytes32`}]},{name:`distributeReward`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`uint256`,name:`amount`}],outputs:[]},{name:`setRewardRecipient`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`address`,name:`recipient`}],outputs:[]},{name:`claimRewards`,type:`function`,stateMutability:`nonpayable`,inputs:[],outputs:[{type:`uint256`}]},{name:`optedInSupply`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint128`}]},{name:`globalRewardPerToken`,type:`function`,stateMutability:`view`,inputs:[],outputs:[{type:`uint256`}]},{name:`userRewardInfo`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`tuple`,components:[{type:`address`,name:`rewardRecipient`},{type:`uint256`,name:`rewardPerToken`},{type:`uint256`,name:`rewardBalance`}]}]},{name:`getPendingRewards`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`}],outputs:[{type:`uint128`}]},{name:`Transfer`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Approval`,type:`event`,inputs:[{type:`address`,name:`owner`,indexed:!0},{type:`address`,name:`spender`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Mint`,type:`event`,inputs:[{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`Burn`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`BurnBlocked`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`TransferWithMemo`,type:`event`,inputs:[{type:`address`,name:`from`,indexed:!0},{type:`address`,name:`to`,indexed:!0},{type:`uint256`,name:`amount`},{type:`bytes32`,name:`memo`,indexed:!0}]},{name:`TransferPolicyUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint64`,name:`newPolicyId`,indexed:!0}]},{name:`SupplyCapUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`uint256`,name:`newSupplyCap`,indexed:!0}]},{name:`PauseStateUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`bool`,name:`isPaused`}]},{name:`NextQuoteTokenSet`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`nextQuoteToken`,indexed:!0}]},{name:`QuoteTokenUpdate`,type:`event`,inputs:[{type:`address`,name:`updater`,indexed:!0},{type:`address`,name:`newQuoteToken`,indexed:!0}]},{name:`RewardDistributed`,type:`event`,inputs:[{type:`address`,name:`funder`,indexed:!0},{type:`uint256`,name:`amount`}]},{name:`RewardRecipientSet`,type:`event`,inputs:[{type:`address`,name:`holder`,indexed:!0},{type:`address`,name:`recipient`,indexed:!0}]},{name:`InsufficientBalance`,type:`error`,inputs:[{type:`uint256`,name:`available`},{type:`uint256`,name:`required`},{type:`address`,name:`token`}]},{name:`InsufficientAllowance`,type:`error`,inputs:[]},{name:`SupplyCapExceeded`,type:`error`,inputs:[]},{name:`InvalidSupplyCap`,type:`error`,inputs:[]},{name:`InvalidPayload`,type:`error`,inputs:[]},{name:`StringTooLong`,type:`error`,inputs:[]},{name:`PolicyForbids`,type:`error`,inputs:[]},{name:`InvalidRecipient`,type:`error`,inputs:[]},{name:`ContractPaused`,type:`error`,inputs:[]},{name:`InvalidCurrency`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TransfersDisabled`,type:`error`,inputs:[]},{name:`InvalidAmount`,type:`error`,inputs:[]},{name:`NoOptedInSupply`,type:`error`,inputs:[]},{name:`Unauthorized`,type:`error`,inputs:[]},{name:`ProtectedAddress`,type:`error`,inputs:[]},{name:`InvalidToken`,type:`error`,inputs:[]},{name:`Uninitialized`,type:`error`,inputs:[]},{name:`InvalidTransferPolicyId`,type:`error`,inputs:[]},{name:`hasRole`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`account`},{type:`bytes32`,name:`role`}],outputs:[{type:`bool`}]},{name:`getRoleAdmin`,type:`function`,stateMutability:`view`,inputs:[{type:`bytes32`,name:`role`}],outputs:[{type:`bytes32`}]},{name:`grantRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`revokeRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`address`,name:`account`}],outputs:[]},{name:`renounceRole`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`}],outputs:[]},{name:`setRoleAdmin`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`bytes32`,name:`role`},{type:`bytes32`,name:`adminRole`}],outputs:[]},{name:`RoleMembershipUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`address`,name:`account`,indexed:!0},{type:`address`,name:`sender`,indexed:!0},{type:`bool`,name:`hasRole`}]},{name:`RoleAdminUpdated`,type:`event`,inputs:[{type:`bytes32`,name:`role`,indexed:!0},{type:`bytes32`,name:`newAdminRole`,indexed:!0},{type:`address`,name:`sender`,indexed:!0}]},{name:`Unauthorized`,type:`error`,inputs:[]}],Sq=[{name:`createToken`,type:`function`,stateMutability:`nonpayable`,inputs:[{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`isTIP20`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`token`}],outputs:[{type:`bool`}]},{name:`getTokenAddress`,type:`function`,stateMutability:`view`,inputs:[{type:`address`,name:`sender`},{type:`bytes32`,name:`salt`}],outputs:[{type:`address`}]},{name:`TokenCreated`,type:`event`,inputs:[{type:`address`,name:`token`,indexed:!0},{type:`string`,name:`name`},{type:`string`,name:`symbol`},{type:`string`,name:`currency`},{type:`address`,name:`quoteToken`},{type:`address`,name:`admin`},{type:`bytes32`,name:`salt`}]},{name:`AddressReserved`,type:`error`,inputs:[]},{name:`AddressNotReserved`,type:`error`,inputs:[]},{name:`InvalidQuoteToken`,type:`error`,inputs:[]},{name:`TokenAlreadyExists`,type:`error`,inputs:[{type:`address`,name:`token`}]}];O(),Bm(),Lp();function Cq(e){let{access:t}=e;return t?jq(e):Aq(e)}function wq(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Fl({privateKey:e});return Cq({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Lu({...t,challenge:n,rpId:r,origin:i});return lK({metadata:a,signature:Il({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function Tq(e,t={}){let{access:n,internal_version:r}=t,i=Fl({privateKey:e});return Cq({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return lK({signature:Il({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function Eq(e,t={}){let{access:n,internal_version:r}=t;return Cq({access:n,internal_version:r,keyType:`secp256k1`,publicKey:dl({privateKey:e}),async sign(t){let{hash:n}=t;return vc(ml({payload:n,privateKey:e}))}})}function Dq(e,t={}){let{id:n}=e,r=Hi(e.publicKey);return Cq({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Ru({...t,challenge:e,credentialId:n});return lK({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function Oq(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return Cq({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return lK({signature:await Vu({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function kq(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??ea(e.publicKey),o=Wi(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?Ip(Br(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?lK(oK({userAddress:n,inner:oK(o),type:`keychain`,version:i})):t===`secp256k1`?o:Br(o,nK)}return{address:Qi(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=oK(await s({hash:Xg({address:r,chainId:t,nonce:n})}));if(i.type!==`secp256k1`)throw Error(\"Unsupported signature type. Expected `secp256k1` but got `\"+i.type+\"`.\");let{r:a,s:o,yParity:c}=i.signature;return{address:r,chainId:t,nonce:n,r:E(a,{size:32}),s:E(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Tb(t)})},async signTransaction(e,t){let{serializer:n=lq}=t??{};return await n(e,oK(await s({hash:Ip(await n(e))})))},async signTypedData(e){return await s({hash:Mb(e)})},publicKey:o,source:r,type:`local`}}function Aq(e){let t=kq(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return DK({address:o,chainId:r,expiry:i,limits:a,signature:oK(await t.sign({hash:AK({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function jq(e){let{access:t}=e,{address:n}=zm(t);return{...kq({...e,parentAddress:n}),accessKeyAddress:ea(e.publicKey),source:`accessKey`}}function Mq(e){return{...e,data:Wm(e),to:e.address}}O(),Bm(),Gm();async function Nq(e,t){let{token:n,...r}=t;return Nq.inner(Ly,e,t,{...r,token:n})}(function(e){async function t(t,n,r,i){let a=e.call(i);return await t(n,{...r,...a})}e.inner=t;function n(e){let{spender:t,amount:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(Nq||={});async function Pq(e,t){return Pq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,token:o,...s}=r,c=e.call({amount:i,from:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{from:t,amount:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(Pq||={});async function Fq(e,t){return Fq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,memo:a,token:o,...s}=r,c=e.call({amount:i,memo:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{amount:t,memo:n,token:r}=e,i=n?{functionName:`burnWithMemo`,args:[t,Gr(n,32)]}:{functionName:`burn`,args:[t]};return Mq({address:UK(r),abi:$,...i})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(Fq||={});async function Iq(e,t){return Iq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{policyId:i,token:a,...o}=r,s=e.call({policyId:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,policyId:n}=e;return Mq({address:UK(t),abi:$,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(Iq||={});async function Lq(e,t){return Lq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{account:i=n.account,admin:a=n.account,chain:o=n.chain,...s}=r,c=a?zm(a):void 0;if(!c)throw Error(`admin is required.`);let l=e.call({...s,admin:c.address});return await t(n,{...r,account:i,chain:o,...l})}e.inner=t;function n(e){let{name:t,symbol:n,currency:r,quoteToken:i=`0x20c0000000000000000000000000000000000000`,admin:a,salt:o=qr(32)}=e;return Mq({address:`0x20fc000000000000000000000000000000000000`,abi:Sq,args:[t,n,r,UK(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=bv({abi:Sq,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(Lq||={});async function Rq(e,t){let{account:n=e.account}=t,r=n?zm(n).address:void 0;if(!r)throw Error(`account is required.`);return ky(e,{...t,...Rq.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`allowance`,args:[t,n]})}e.call=t})(Rq||={});async function zq(e,t){let{account:n=e.account,...r}=t,i=n?zm(n).address:void 0;if(!i)throw Error(`account is required.`);return ky(e,{...r,...zq.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return Mq({address:UK(n),abi:$,functionName:`balanceOf`,args:[t]})}e.call=t})(zq||={});async function Bq(e,t){let{token:n,...r}=t,i=UK(n),a=$;return VK(n)===HK(`0x20c0000000000000000000000000000000000000`)?nx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i])=>({name:n,symbol:r,currency:e,decimals:t,totalSupply:i})):nx(e,{...r,contracts:[{address:i,abi:a,functionName:`currency`},{address:i,abi:a,functionName:`decimals`},{address:i,abi:a,functionName:`quoteToken`},{address:i,abi:a,functionName:`name`},{address:i,abi:a,functionName:`paused`},{address:i,abi:a,functionName:`supplyCap`},{address:i,abi:a,functionName:`symbol`},{address:i,abi:a,functionName:`totalSupply`},{address:i,abi:a,functionName:`transferPolicyId`}],allowFailure:!1,deployless:!0}).then(([e,t,n,r,i,a,o,s,c])=>({name:r,symbol:o,currency:e,decimals:t,quoteToken:n,totalSupply:s,paused:i,supplyCap:a,transferPolicyId:c}))}async function Vq(e,t){return ky(e,{...t,...Vq.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return Mq({address:UK(n),abi:$,functionName:`getRoleAdmin`,args:[GK(t)]})}e.call=t})(Vq||={});async function Hq(e,t){let{account:n=e.account}=t,r=n?zm(n).address:void 0;if(!r)throw Error(`account is required.`);return ky(e,{...t,...Hq.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return Mq({address:UK(r),abi:$,functionName:`hasRole`,args:[t,GK(n)]})}e.call=t})(Hq||={});async function Uq(e,t){return Uq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=GK(r);return Mq({address:UK(t),abi:$,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Uq||={});async function Wq(e,t){return Wq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let i=e.call(r);return await t(n,{...r,...i})}e.inner=t;function n(e){let{to:t,amount:n,memo:r,token:i}=e,a=r?{functionName:`mintWithMemo`,args:[t,n,Gr(r,32)]}:{functionName:`mint`,args:[t,n]};return Mq({address:UK(i),abi:$,...a})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(Wq||={});async function Gq(e,t){return Gq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Mq({address:UK(t),abi:$,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(Gq||={});async function Kq(e,t){return Kq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=GK(n);return Mq({address:UK(t),abi:$,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(Kq||={});async function qq(e,t){return qq.inner(Iy,e,t)}(function(e){async function t(t,n,r){return await t(n,{...r,calls:r.roles.map(t=>{let n=e.call({...r,role:t});return{...n,data:Wm(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=GK(r);return Mq({address:UK(t),abi:$,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=bv({abi:$,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(qq||={});async function Jq(e,t){return Jq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{supplyCap:i,token:a,...o}=r,s=e.call({supplyCap:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,supplyCap:n}=e;return Mq({address:UK(t),abi:$,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(Jq||={});async function Yq(e,t){return Yq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{adminRole:i,role:a,token:o,...s}=r,c=e.call({adminRole:i,role:a,token:o});return await t(n,{...s,...c})}e.inner=t;function n(e){let{token:t,role:n,adminRole:r}=e,i=GK(n),a=GK(r);return Mq({address:UK(t),abi:$,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(Yq||={});async function Xq(e,t){return Xq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{amount:i,from:a,memo:o,token:s,to:c,...l}=r,u=e.call({amount:i,from:a,memo:o,token:s,to:c});return await t(n,{...l,...u})}e.inner=t;function n(e){let{amount:t,from:n,memo:r,token:i,to:a}=e,o=r&&n?{functionName:`transferFromWithMemo`,args:[n,a,t,Gr(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,Gr(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return Mq({address:UK(i),abi:$,...o})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(Xq||={});async function Zq(e,t){return Zq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Mq({address:UK(t),abi:$,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(Zq||={});async function Qq(e,t){return Qq.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{quoteToken:i,token:a,...o}=r,s=e.call({quoteToken:i,token:a});return await t(n,{...o,...s})}e.inner=t;function n(e){let{token:t,quoteToken:n}=e;return Mq({address:UK(t),abi:$,functionName:`setNextQuoteToken`,args:[UK(n)]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(Qq||={});async function $q(e,t){return $q.inner(Ly,e,t)}(function(e){async function t(t,n,r){let{token:i,...a}=r,o=e.call({token:i});return await t(n,{...a,...o})}e.inner=t;function n(e){let{token:t}=e;return Mq({address:UK(t),abi:$,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=bv({abi:$,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})($q||={});function eJ(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress,{accessKeys:i}=n.getState();return i.find(e=>e.address?.toLowerCase()===r.toLowerCase())?.keyAuthorization}async function tJ(e={}){let{account:t}=e,n=await Bu();return{accessKey:Oq(n,t?{access:t}:void 0),keyPair:n}}function nJ(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.filter(e=>e.address?.toLowerCase()!==r?.toLowerCase())}))}function rJ(e,t){if(e.source!==`accessKey`)return;let{store:n}=t,r=e.accessKeyAddress;n.setState(e=>({accessKeys:e.accessKeys.map(e=>e.address.toLowerCase()===r.toLowerCase()?{...e,keyAuthorization:void 0}:e)}))}function iJ(e){let{address:t,keyAuthorization:n,keyPair:r,privateKey:i,store:a}=e,o={address:n.address,access:t,expiry:n.expiry??void 0,keyAuthorization:n,keyType:n.type,limits:n.limits,scopes:n.scopes},s=i?{...o,privateKey:i}:r?{...o,keyPair:r}:{...o};a.setState(e=>({accessKeys:[s,...e.accessKeys.filter(e=>e.address.toLowerCase()!==n.address.toLowerCase())]}))}function aJ(e){let{accessKey:t=!0,address:n,signable:r=!1,store:i}=e,{accessKeys:a,accounts:o,activeAccount:s}=i.getState(),c=o[s]?.address,l=n?o.find(e=>e.address===n):o.find(e=>e.address===c);if(!l)throw n?new nu({message:`Account \"${n}\" not found.`}):new iu({message:`No active account.`});if(t){let t=a.find(e=>e.access.toLowerCase()===l.address.toLowerCase()&&(`keyPair`in e&&!!e.keyPair||`privateKey`in e&&!!e.privateKey));if(t){if(t.expiry&&t.expiry<Date.now()/1e3)i.setState({accessKeys:a.filter(e=>e!==t)});else if(cJ(t,e))return oJ(t)}}return sJ(l,{signable:r})}function oJ(e){if(`keyPair`in e&&e.keyPair)return Oq(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return Eq(e.privateKey,{access:e.access});case`p256`:return Tq(e.privateKey,{access:e.access})}throw new nu({message:`External access key cannot be hydrated for signing.`})}function sJ(e,t={}){let{signable:n=!1}=t;if(!n)return{address:e.address,type:`json-rpc`};if(`sign`in e&&typeof e.sign==`function`)return e;if(!e.keyType)throw new nu({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return Eq(e.privateKey);case`p256`:return Tq(e.privateKey);case`webCrypto`:return Oq(e.keyPair);case`webAuthn`:return Dq(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return wq(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new nu({message:`Unknown key type.`})}}function cJ(e,t){return!t.calls||!e.scopes?!0:t.calls.every(t=>{if(!t.to)return!1;let n=t.to.toLowerCase(),r=t.data?.slice(0,10).toLowerCase();return e.scopes.some(e=>e.address.toLowerCase()===n?e.selector?r===(e.selector.startsWith(`0x`)&&e.selector.length===10?e.selector:to(e.selector)).toLowerCase():!0:!1)})}function lJ(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function uJ(e={}){let{dialog:t=x()?re():ne(),host:n=`https://wallet.tempo.xyz/embed`,icon:r=`data:image/svg+xml,<svg width=\"269\" height=\"269\" viewBox=\"0 0 269 269\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"269\" height=\"269\" fill=\"black\"/><path d=\"M123.273 190.794H93.445L121.09 105.318H85.7334L93.445 80.2642H191.95L184.238 105.318H150.773L123.273 190.794Z\" fill=\"white\"/></svg>`,name:i=`Tempo Wallet`,rdns:a=`xyz.tempo`,theme:o}=e;return typeof window<`u`&&!window.isSecureContext&&console.warn(`[accounts] Detected insecure context (HTTP).`,`\\n\\nThe Tempo Wallet iframe dialog is not supported on HTTP origins (${window.location.origin})`,`due to lack of WebAuthn passkey support in non-secure contexts.`),lJ({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=vu();function c(e){return new Promise((t,n)=>{let r=o=>{let s=o.find(t=>t.request.id===e);if(!s&&o.length===0){a.delete(r),n(new tu);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new tu({message:s.error.message})),i.setState(t=>({...t,requestQueue:t.requestQueue.filter(t=>t.request.id!==e)}))))};a.add(r),r(i.getState().requestQueue)})}let l=hu({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:bw});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await tJ();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){iJ({address:e,keyAuthorization:OK(t),keyPair:n,store:i})}async function f(t){let n=(()=>{try{return e({signable:!0})}catch{return}})();if(!n||n.source!==`accessKey`)return;let r=eJ(n,{store:i});try{let e=await t(n,r??void 0);return rJ(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),nJ(n,{store:i});return}}let p=t({host:n,store:i,theme:o}),m=i.subscribe(e=>e.requestQueue,e=>{for(let t of a)t(e);let t=e.filter(e=>e.status===`pending`);p?.syncRequests(t),t.length===0&&p?.close()});return{cleanup(){m(),p?.destroy()},actions:{async createAccount(e,t){let n=await u(e.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Xx(fw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async loadAccounts(e,t){let n=await u(e?.authorizeAccessKey),{accounts:r}=await l.request({...t,params:[{...t.params?.[0],capabilities:{...t.params?.[0]?.capabilities,...n?{authorizeAccessKey:Xx(fw.authorizeAccessKey,n.request)}:{}}}]}),i=r[0]?.address,a=r[0]?.capabilities.keyAuthorization;return n&&i&&a&&d(i,a,n.keyPair),{accounts:r.map(e=>({address:e.address})),...a?{keyAuthorization:a}:{},...r[0]?.capabilities.signature?{signature:r[0].capabilities.signature}:{}}},async signPersonalMessage(e,t){return await l.request(t)},async signTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=await fv(r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`});return await t.signTransaction(o)});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async signTypedData(e,t){return await l.request(t)},async sendTransaction(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await fv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransaction`,params:[c]})});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async sendTransactionSync(e,t){let n=await f(async(t,n)=>{let{feePayer:i,...a}=e,o=r({feePayer:(()=>{if(i===!1)return!1;if(typeof i==`string`)return i})()}),s=await fv(o,{account:t,...a,...i===void 0?{}:{feePayer:!!i},keyAuthorization:n,type:`tempo`}),c=await t.signTransaction(s);return await o.request({method:`eth_sendRawTransactionSync`,params:[c]})});return n===void 0?await l.request({...t,params:[Xx(YC,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[Xx(fw.authorizeAccessKey,r?r.request:t)]});return r&&d(e({accessKey:!1,signable:!1}).address,i.keyAuthorization,r.keyPair),i},async revokeAccessKey(e,t){await l.request(t)},async deposit(e,t){return await l.request(t)},async send(e,t){return await l.request({...t,params:[Xx(gw.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let dJ=new Map;function fJ(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return mJ(r);if(r?.url)return mJ(r.url)}})(),s=typeof r==`object`&&r?r.precedence??`fee-payer-first`:`fee-payer-first`,c=e??a.getState().chainId,l=`${c}:${i?`p`:``}:${r===!1?`no-fp`:o??``}:${s}`,u=dJ.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=gx(),r=i?pJ(i,t):t;u=Gy({chain:e,transport:o?hJ(r,o,s):r,pollingInterval:1e3}),dJ.set(l,u)}return u}function pJ(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function mJ(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function hJ(e,t,n){return r=>{let i=e(r),a=gx(t)(r);return{...i,async request({method:e,params:t}){let r=t;if(n===`fee-payer-first`&&e===`eth_fillTransaction`){let t=r?.[0];if(t&&typeof t==`object`&&`feePayer`in t&&(t.feePayer===!0||typeof t.feePayer==`string`))return a.request({method:e,params:[{...t,feePayer:!0}]})}if(e===`eth_sendRawTransaction`||e===`eth_sendRawTransactionSync`){let t=r?.[0];if(typeof t==`string`&&(t.startsWith(`0x76`)||t.startsWith(`0x78`))){let n=cq(t);if(`feePayerSignature`in n&&n.feePayerSignature===null){let n=await a.request({method:`eth_signRawTransaction`,params:[t]});return await i.request({method:e,params:[n]})}}}return await i.request({method:e,params:t})}}}}function gJ(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(gJ.cache.get(n))return gJ.cache.get(n);let r=e().finally(()=>gJ.cache.delete(n));return gJ.cache.set(n,r),r}gJ.cache=new Map;function _J(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function vJ(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=_J(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let yJ;function bJ(){return yJ||=vJ(`keyval-store`,`keyval`),yJ}function xJ(e,t=bJ()){return t(`readonly`,t=>_J(t.get(e)))}function SJ(e,t,n=bJ()){return n(`readwrite`,n=>(n.put(t,e),_J(n.transaction)))}function CJ(e,t=bJ()){return t(`readwrite`,t=>(t.delete(e),_J(t.transaction)))}function wJ(e,t={}){let n=`${t.key??`tempo`}.`;return{getItem:t=>e.getItem(`${n}${t}`),setItem:(t,r)=>e.setItem(`${n}${t}`,r),removeItem:t=>e.removeItem(`${n}${t}`)}}function TJ(e={}){let t=typeof indexedDB<`u`?vJ(`tempo`,`store`):void 0;return wJ({async getItem(e){let n=await xJ(e,t);return n===null?null:n},async setItem(e,n){await SJ(e,n,t)},async removeItem(e){await CJ(e,t)}},e)}function EJ(e={}){let t=new Map;return wJ({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let DJ=e=>(t,n,r)=>{let i=r.subscribe;return r.subscribe=((e,t,n)=>{let a=e;if(t){let i=n?.equalityFn||Object.is,o=e(r.getState());a=n=>{let r=e(n);if(!i(o,r)){let e=o;t(o=r,e)}},n?.fireImmediately&&t(o,o)}return i(a)}),e(t,n,r)};function OJ(e,t){let n;try{n=e()}catch{return}return{getItem:e=>{let r=e=>e===null?null:JSON.parse(e,t?.reviver),i=n.getItem(e)??null;return i instanceof Promise?i.then(r):r(i)},setItem:(e,r)=>n.setItem(e,JSON.stringify(r,t?.replacer)),removeItem:e=>n.removeItem(e)}}let kJ=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return kJ(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return kJ(t)(e)}}}},AJ=(e,t)=>(n,r,i)=>{let a={storage:OJ(()=>window.localStorage),partialize:e=>e,version:0,merge:(e,t)=>({...t,...e}),...t},o=!1,s=0,c=new Set,l=new Set,u=a.storage;if(!u)return e((...e)=>{console.warn(`[zustand persist middleware] Unable to update item '${a.name}', the given storage is currently unavailable.`),n(...e)},r,i);let d=()=>{let e=a.partialize({...r()});return u.setItem(a.name,{state:e,version:a.version})},f=i.setState;i.setState=(e,t)=>(f(e,t),d());let p=e((...e)=>(n(...e),d()),r,i);i.getInitialState=()=>p;let m,h=()=>{if(!u)return;let e=++s;o=!1,c.forEach(e=>e(r()??p));let t=a.onRehydrateStorage?.call(a,r()??p)||void 0;return kJ(u.getItem.bind(u))(a.name).then(e=>{if(e)if(typeof e.version==`number`&&e.version!==a.version){if(a.migrate){let t=a.migrate(e.state,e.version);return t instanceof Promise?t.then(e=>[!0,e]):[!0,t]}console.error(`State loaded from storage couldn't be migrated since no migrate function was provided`)}else return[!1,e.state];return[!1,void 0]}).then(t=>{if(e!==s)return;let[i,o]=t;if(m=a.merge(o,r()??p),n(m,!0),i)return d()}).then(()=>{e===s&&(t?.(r(),void 0),m=r(),o=!0,l.forEach(e=>e(m)))}).catch(n=>{e===s&&t?.(void 0,n)})};return i.persist={setOptions:e=>{a={...a,...e},e.storage&&(u=e.storage)},clearStorage:()=>{u?.removeItem(a.name)},getOptions:()=>a,rehydrate:()=>h(),hasHydrated:()=>o,onHydrate:e=>(c.add(e),()=>{c.delete(e)}),onFinishHydration:e=>(l.add(e),()=>{l.delete(e)})},a.skipHydration||h(),m||p},jJ=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},MJ=(e=>e?jJ(e):jJ);function NJ(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?TJ({key:`tempo`}):EJ({key:`tempo`})}=e;return MJ(DJ(AJ(()=>({accessKeys:[],accounts:[],activeAccount:0,chainId:t,requestQueue:[]}),{merge(e,t){let n=e;return{...n,...t,accounts:n.accounts?.map(e=>t.accounts.find(t=>t.address.toLowerCase()===e.address.toLowerCase())??e)??t.accounts,accessKeys:n.accessKeys??t.accessKeys,chainId:n.chainId??t.chainId}},name:`store`,partialize:e=>({accounts:n&&e.accounts.length>n?e.accounts.slice(0,n):e.accounts,activeAccount:e.activeAccount,...r?{accessKeys:e.accessKeys}:{},chainId:e.chainId}),storage:i,version:0})))}async function PJ(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function FJ(e,t){let n=Jx(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new ru({message:`Unsupported method \"${t?.method}\".`}):new eu(-32602,`Invalid params: ${IJ(n.error.issues)}`)}return{...t,_decoded:n.data}}function IJ(e){return e.flatMap(e=>e.code===`invalid_union`&&e.errors.length>0?e.errors.flatMap(t=>t.map(t=>`${[...e.path,...t.path].join(`.`)}: ${t.code===`invalid_union`&&t.errors.length>0?IJ([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let LJ=new Set;function RJ(e={}){let{adapter:t=uJ(),chains:n=[vq,xq,yq],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?TJ():EJ()}=e,s=(()=>{if(e.feePayer)return typeof e.feePayer==`string`?{precedence:`fee-payer-first`,url:e.feePayer}:{precedence:e.feePayer.precedence??`fee-payer-first`,url:e.feePayer.url}})(),c=NJ({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>aJ({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return fJ(t,{chains:n,feePayer:(()=>{if(r===!1)return!1;if(r)return{url:r,precedence:s?.precedence}})(),store:c})}let f=t({getAccount:l,getClient:d,storage:o,store:c}),{actions:p}=f,m=mu();c.subscribe(e=>e.accounts.map(e=>e.address).join(),()=>m.emit(`accountsChanged`,c.getState().accounts.map(e=>e.address))),c.subscribe(e=>e.chainId,e=>m.emit(`chainChanged`,E(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:E(c.getState().chainId)}):m.emit(`disconnect`,new iu)});function h(){if(c.getState().accounts.length===0)throw new iu({message:`No accounts connected.`})}function g(e){if(!f.persistAccounts)return e;let t=[...e];for(let e of c.getState().accounts)t.some(t=>t.address.toLowerCase()===e.address.toLowerCase())||t.push(e);return t}function _(e){if(e===!1)return!1;let t=typeof e==`string`?e:s?.url;if(t)return t.startsWith(`http://`)||t.startsWith(`https://`)?t:typeof window<`u`?new URL(t,window.location.origin).href:t}let v=Object.assign(hu({...m,async request({method:t,params:r}){return await PJ(c),gJ(async()=>{let i;try{i=FJ(Sw,{method:t,params:r})}catch(e){if(!(e instanceof ru))throw e;return await fJ(void 0,{chains:n,store:c}).request({method:t,params:r})}return await(async()=>{switch(i.method){case`eth_accounts`:{let{accounts:e,activeAccount:t}=c.getState();if(e.length===0)return[];let n=e[t]?.address,r=e.findIndex(e=>e.address===n),i=[...e];if(r>=0){let[e]=i.splice(r,1);return[e.address,...i.map(e=>e.address)]}return i.map(e=>e.address)}case`eth_chainId`:return E(c.getState().chainId);case`eth_requestAccounts`:{let{accounts:e}=await p.loadAccounts(void 0,{method:`wallet_connect`,params:void 0});return c.setState({accounts:g(e),activeAccount:0}),e.map(e=>e.address)}case`eth_sendTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_fillTransaction`:{let[e]=i._decoded.params,t={...e},n=t.chainId,r=_(t.feePayer),a=e=>{let t=d({chainId:n,feePayer:r}),i={...e,chainId:e.chainId??t.chain?.id,...r?{feePayer:!0}:{}},a=t.chain?.formatters?.transactionRequest,o=a&&!i.keyAuthorization?a.format({...i},`fillTransaction`):i;return t.request({method:`eth_fillTransaction`,params:[o]})};if(!t.keyAuthorization){let e=(()=>{try{return l({signable:!0})}catch{return}})();if(e?.source===`accessKey`){let n=eJ(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...MK(n)}});return rJ(e,{store:c}),r}catch{return nJ(e,{store:c}),await a(t)}}}return await a(t)}case`eth_signTransaction`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.signTransaction({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_sendTransactionSync`:{h();let[e]=i._decoded.params,{to:t,data:n,...r}=e,a=e.calls??(t?[{to:t,data:n,value:e.value}]:void 0);return await p.sendTransactionSync({...r,chainId:e.chainId??c.getState().chainId,...a?{calls:a}:{},feePayer:_(e.feePayer)},i)}case`eth_signTypedData_v4`:{h();let[e,t]=i._decoded.params;return await p.signTypedData({address:e,data:t},i)}case`personal_sign`:{h();let[e,t]=i._decoded.params;return await p.signPersonalMessage({address:t,data:e},i)}case`wallet_sendCalls`:{h();let{calls:e=[],capabilities:t,chainId:n,from:r}=i._decoded.params?.[0]??{},a=t?.sync,o=_(t?.feePayer??(s?!0:void 0)),l={calls:e,chainId:n,from:r,...o?{feePayer:o}:{}};if(!a){let e=Br(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[Xx(YC,l)]}),Gr(E(c.getState().chainId),32),BJ);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[Xx(YC,l)]}),d=u.transactionHash,f=E(c.getState().chainId),m=Br(d,Gr(f,32),BJ);return{atomic:!0,capabilities:{sync:a},chainId:f,id:m,receipts:[u],status:u.status===`0x1`?200:500,version:`2.0.0`}}case`wallet_getBalances`:{let e=i._decoded.params?.[0],{accounts:t,activeAccount:r}=c.getState(),a=e?.account??t[r]?.address;if(!a)throw new iu({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new Zl({message:\"`tokens` is required.\"});let s=fJ(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([zq(s,{account:a,token:e}),Bq(s,{token:e})]),r=Number(t)/10**n.decimals,i=new Intl.NumberFormat(`en-US`,{style:`currency`,currency:`USD`}).format(r);return{address:e,balance:E(t),decimals:n.decimals,display:i,name:n.name,symbol:n.symbol}}))}case`wallet_getCallsStatus`:{let[e]=i._decoded.params??[];if(!e)throw Error(\"`id` not found\");if(!e.endsWith(BJ.slice(2)))throw Error(\"`id` not supported\");zr(e);let t=D(e,0,32),r=E(Number(D(e,32,64))),a=await fJ(Number(r),{chains:n,store:c}).request({method:`eth_getTransactionReceipt`,params:[t]});return{atomic:!0,chainId:r,id:e,receipts:a?[a]:[],status:a?a.status===`0x1`?200:500:100,version:`2.0.0`}}case`wallet_getCapabilities`:{let e=i._decoded.params,t=e?.[0],r=e?.[1];if(t){let{accounts:e}=c.getState();if(!e.some(e=>e.address.toLowerCase()===t.toLowerCase()))throw new nu({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(E(e.id))):n,o={};for(let e of a)o[E(e.id)]={accessKeys:{status:`supported`},atomic:{status:`supported`},...s?{feePayer:{status:`supported`}}:{}};return o}case`wallet_connect`:{let t=i._decoded.params?.[0]?.chainId;t&&c.setState(e=>({...e,chainId:t}));let n=i._decoded.params?.[0]?.capabilities,r=n?.authorizeAccessKey??e.authorizeAccessKey?.(),{keyAuthorization:a,accounts:o,email:s,signature:l,username:u}=await(async()=>{if(n?.method===`register`){let e=n.name?c.getState().accounts.find(e=>`credential`in e&&e.label?.toLowerCase()===n.name.toLowerCase()):void 0;return e&&`credential`in e?await p.loadAccounts({credentialId:e.credential?.id,digest:n.digest,authorizeAccessKey:r},i):await p.createAccount({digest:n.digest,authorizeAccessKey:r,name:n.name??`default`,userId:n.userId??qr(16)},i)}return await p.loadAccounts({credentialId:n?.credentialId,digest:n?.digest,authorizeAccessKey:r,selectAccount:n?.selectAccount},i)})();c.setState({accounts:g(o),activeAccount:0});let d=o[0]?.address;return{accounts:o.map(e=>({address:e.address,capabilities:e.address===d?{...a?{keyAuthorization:{...a,address:a.keyId}}:{},...l&&n?.digest?{signature:l}:{},...s===void 0?{}:{email:s},...u===void 0?{}:{username:u}}:{}}))}}case`wallet_disconnect`:await p.disconnect?.(),c.setState({accessKeys:[],accounts:[],activeAccount:0});return;case`wallet_authorizeAccessKey`:{if(!p.authorizeAccessKey)throw new ru({message:\"`authorizeAccessKey` not supported by adapter.\"});let e=i._decoded.params[0],t=await p.authorizeAccessKey(e,i);return{keyAuthorization:{...t.keyAuthorization,address:t.keyAuthorization.keyId},rootAddress:t.rootAddress}}case`wallet_revokeAccessKey`:{if(h(),!p.revokeAccessKey)throw new ru({message:\"`revokeAccessKey` not supported by adapter.\"});let[e]=i._decoded.params;await p.revokeAccessKey({...e},i);return}case`wallet_deposit`:if(!p.deposit)throw new ru({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new ru({message:\"`send` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.send(t,i)}case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new cu({message:`Chain ${e} not configured.`});await p.switchChain?.({chainId:e}),c.setState({chainId:e});return}}})()},{enabled:[`eth_accounts`,`eth_chainId`,`eth_requestAccounts`,`wallet_connect`,`wallet_getBalances`,`wallet_getCapabilities`].includes(t),id:Ir({method:t,params:r})})}},{schema:bw}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return fJ(t,{chains:n,feePayer:r,provider:u,store:c})},store:c});if(typeof window<`u`&&typeof CustomEvent<`u`){let e=t.rdns??`com.${(t.name??`Injected Wallet`).toLowerCase().replace(/\\s+/g,``)}`;LJ.has(e)||(LJ.add(e),Cw({info:{icon:t.icon??zJ,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&XG({methods:[qG({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let zJ=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,BJ=Fi(Wr(`TEMPO_5792`)),VJ={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},HJ={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},UJ={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var WJ=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let GJ={accent:new WJ(`accent`),background:new WJ(`background`),border:new WJ(`border`),foreground:new WJ(`foreground`),muted:new WJ(`muted`),negative:new WJ(`negative`),positive:new WJ(`positive`),surface:new WJ(`surface`),fontFamily:new WJ(`font-family`),fontSizeBase:new WJ(`font-size-base`),radius:new WJ(`radius`),spacingUnit:new WJ(`spacing-unit`)};String.raw`<style>\n *,\n ::after,\n ::before,\n ::backdrop,\n ::file-selector-button {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n border: 0 solid;\n border-color: ${GJ.border};\n }\n html,\n :host {\n line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n tab-size: 4;\n -webkit-tap-highlight-color: transparent;\n }\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: inherit;\n }\n a {\n color: inherit;\n -webkit-text-decoration: inherit;\n text-decoration: inherit;\n }\n b,\n strong {\n font-weight: bolder;\n }\n code,\n kbd,\n samp,\n pre {\n font-family:\n ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',\n monospace;\n font-size: 1em;\n }\n small {\n font-size: 80%;\n }\n ol,\n ul,\n menu {\n list-style: none;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n vertical-align: middle;\n }\n img,\n video {\n max-width: 100%;\n height: auto;\n }\n button,\n input,\n select,\n optgroup,\n textarea,\n ::file-selector-button {\n font: inherit;\n font-feature-settings: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n color: inherit;\n border-radius: 0;\n background-color: transparent;\n opacity: 1;\n }\n ::file-selector-button {\n margin-inline-end: 4px;\n }\n ::placeholder {\n opacity: 1;\n }\n @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {\n ::placeholder {\n color: color-mix(in oklab, currentcolor 50%, transparent);\n }\n }\n textarea {\n resize: vertical;\n }\n ::-webkit-search-decoration {\n -webkit-appearance: none;\n }\n :-moz-ui-invalid {\n box-shadow: none;\n }\n button,\n input:where([type='button'], [type='reset'], [type='submit']),\n ::file-selector-button {\n appearance: button;\n }\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n height: auto;\n }\n [hidden]:where(:not([hidden='until-found'])) {\n display: none !important;\n }\n</style>`;async function KJ(e){let t=new URL(location.href);t.searchParams.set(HJ.serviceWorker,``);let n=await navigator.serviceWorker.register(t.pathname+t.search),r=await new Promise(e=>{let t=n.installing??n.waiting??n.active;if(t?.state===`activated`)return e(t);let r=t??n;r.addEventListener(`statechange`,function t(){let i=n.active;i?.state===`activated`&&(r.removeEventListener(`statechange`,t),e(i))})});await new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>t(),r.postMessage({credential:e},[n.port2])}),location.reload()}function qJ(e){let t=document.getElementById(VJ.data),n=IT(t.textContent),r=t.getAttribute(UJ.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(UJ.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(UJ.challengeId),o=a?(i.removeAttribute(UJ.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(VJ.error)?.remove();return}let t=document.getElementById(VJ.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=VJ.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:KJ,vars:GJ}}let JJ=qJ(`tempo`),YJ=String.raw,XJ=document.createElement(`style`);XJ.textContent=YJ`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${JJ.vars.spacingUnit} * 8);\n }\n button {\n background: ${JJ.vars.accent};\n border-radius: ${JJ.vars.radius};\n color: ${JJ.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${JJ.vars.spacingUnit} * 4) calc(${JJ.vars.spacingUnit} * 8);\n width: 100%;\n }\n button:hover:not(:disabled) {\n opacity: 0.85;\n }\n button:disabled {\n cursor: default;\n opacity: 0.5;\n }\n button svg {\n display: inline;\n fill: currentColor;\n height: 0.85em;\n transform: translateY(0.05em);\n vertical-align: baseline;\n width: auto;\n }\n`,JJ.root.append(XJ);let ZJ=RJ({testnet:JJ.challenge.request.methodDetails?.chainId===xq.id||JJ.challenge.request.methodDetails?.chainId===bq.id}),QJ=document.createElement(`button`);QJ.innerHTML=`${JJ.text.pay===`Pay`?`Continue with`:JJ.text.pay} <svg aria-label=\"Tempo\" viewBox=\"0 0 107 25\" role=\"img\"><path d=\"M8.10464 23.7163H1.82475L7.64513 5.79356H0.201172L1.82475 0.540352H22.5637L20.9401 5.79356H13.8944L8.10464 23.7163Z\"></path><path d=\"M31.474 23.7163H16.5861L24.0607 0.540352H38.8873L37.4782 4.95923H28.8701L27.3078 9.93433H35.6402L34.231 14.2914H25.8681L24.3057 19.2974H32.8525L31.474 23.7163Z\"></path><path d=\"M38.2124 23.7163H33.2192L40.7244 0.540352H49.0567L48.781 13.0245L56.8989 0.540352H66.0277L58.5531 23.7163H52.3039L57.3584 7.86395L46.9736 23.7163H43.267L43.4201 7.80214L38.2124 23.7163Z\"></path><path d=\"M73.057 4.83563L70.6369 12.3137H71.3108C72.8425 12.3137 74.1189 11.9532 75.14 11.2322C76.1612 10.4906 76.8249 9.43991 77.1312 8.08025C77.3967 6.90601 77.2538 6.07167 76.7023 5.57725C76.1509 5.08284 75.2319 4.83563 73.9453 4.83563H73.057ZM66.9915 23.7163H60.7116L68.1862 0.540352H75.814C77.5703 0.540352 79.0816 0.828764 80.3478 1.40559C81.6344 1.96181 82.5738 2.76524 83.166 3.81588C83.7787 4.84592 83.9829 6.05107 83.7787 7.43133C83.5132 9.2442 82.8189 10.8408 81.6956 12.221C80.5724 13.6013 79.1122 14.6725 77.315 15.4347C75.5383 16.1764 73.5471 16.5472 71.3415 16.5472H69.289L66.9915 23.7163Z\"></path><path d=\"M98.747 22.233C96.664 23.4691 94.4481 24.0871 92.0996 24.0871H92.0383C89.9552 24.0871 88.1989 23.6236 86.7693 22.6965C85.3602 21.7489 84.3493 20.4717 83.7366 18.8648C83.1443 17.2579 83.0014 15.4966 83.3077 13.5807C83.6957 11.1704 84.5841 8.94549 85.9728 6.90601C87.3616 4.86653 89.0975 3.23906 91.1805 2.02361C93.2636 0.808164 95.4897 0.200439 97.8587 0.200439H97.9199C100.085 0.200439 101.872 0.663958 103.281 1.591C104.71 2.51803 105.701 3.78498 106.252 5.39185C106.824 6.97811 106.947 8.76008 106.62 10.7378C106.232 13.0657 105.343 15.2596 103.955 17.3197C102.566 19.3592 100.83 20.997 98.747 22.233ZM90.0777 18.2468C90.6292 19.2974 91.589 19.8227 92.9573 19.8227H93.0186C94.1418 19.8227 95.1833 19.4004 96.1432 18.5558C97.1235 17.6905 97.9506 16.5369 98.6245 15.0948C99.3189 13.6528 99.8294 12.0459 100.156 10.2742C100.463 8.54377 100.34 7.15322 99.7886 6.10257C99.2372 5.03133 98.2875 4.49571 96.9397 4.49571H96.8784C95.8369 4.49571 94.826 4.92833 93.8457 5.79356C92.8858 6.6588 92.0485 7.82274 91.3337 9.2854C90.6189 10.7481 90.0982 12.3343 89.7714 14.0442C89.4446 15.7747 89.5468 17.1755 90.0777 18.2468Z\"></path></svg>`,QJ.onclick=async()=>{try{JJ.error(),QJ.disabled=!0;let e=await(async()=>{let e=await ZJ.request({method:`eth_accounts`});return e.length>0?e.at(0):(await ZJ.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await qG({account:e,getClient:e=>{let t=e.chainId??JJ.challenge.request.methodDetails?.chainId;return Gy({chain:[...ZJ?.chains??[],xq,bq].find(e=>e.id===t),transport:mx(ZJ)})}})[0].createCredential({challenge:JJ.challenge,context:{}});await JJ.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;JJ.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{QJ.disabled=!1}},JJ.root.appendChild(QJ)})();</script>";
2
2
  //# sourceMappingURL=html.gen.d.ts.map