mppx 0.6.20 → 0.6.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/client/Mppx.d.ts +12 -1
  3. package/dist/client/Mppx.d.ts.map +1 -1
  4. package/dist/client/Mppx.js +127 -10
  5. package/dist/client/Mppx.js.map +1 -1
  6. package/dist/client/internal/Fetch.d.ts +69 -1
  7. package/dist/client/internal/Fetch.d.ts.map +1 -1
  8. package/dist/client/internal/Fetch.js +250 -20
  9. package/dist/client/internal/Fetch.js.map +1 -1
  10. package/dist/middlewares/internal/mppx.d.ts +1 -1
  11. package/dist/middlewares/internal/mppx.d.ts.map +1 -1
  12. package/dist/middlewares/internal/mppx.js +2 -1
  13. package/dist/middlewares/internal/mppx.js.map +1 -1
  14. package/dist/server/Mppx.d.ts +82 -3
  15. package/dist/server/Mppx.d.ts.map +1 -1
  16. package/dist/server/Mppx.js +557 -83
  17. package/dist/server/Mppx.js.map +1 -1
  18. package/dist/tempo/server/internal/html.gen.d.ts +1 -1
  19. package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
  20. package/dist/tempo/server/internal/html.gen.js +1 -1
  21. package/dist/tempo/server/internal/html.gen.js.map +1 -1
  22. package/package.json +1 -1
  23. package/src/client/Mppx.test-d.ts +55 -0
  24. package/src/client/Mppx.test.ts +181 -0
  25. package/src/client/Mppx.ts +248 -16
  26. package/src/client/internal/Fetch.test-d.ts +31 -0
  27. package/src/client/internal/Fetch.test.ts +261 -0
  28. package/src/client/internal/Fetch.ts +467 -24
  29. package/src/middlewares/internal/mppx.ts +5 -6
  30. package/src/proxy/Proxy.test.ts +69 -0
  31. package/src/server/Mppx.test-d.ts +50 -0
  32. package/src/server/Mppx.test.ts +893 -1
  33. package/src/server/Mppx.ts +862 -97
  34. package/src/tempo/server/internal/html.gen.ts +1 -1
@@ -1,2 +1,2 @@
1
1
  // Generated — do not edit.
2
- export 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,n){return n&&v(t,n)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){return y(e)===y(t)}function y(e){let t=e.split(`:`)[0].toLowerCase(),n=t.split(`.`);return n.length<=2?t:n.slice(-2).join(`.`)}function b(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 x={height:440,width:360};function S(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function ee(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function te(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let C,w,T,ne=[];function re(){return typeof window>`u`?ae():S({name:`iframe`},e=>{let{host:t}=e;if(C&&C.host===t){let t=w;return w=e.store,t&&t!==w&&!ne.includes(t)&&ne.push(t),T?.destroy(),T=ie()(e),C.instance.syncTheme(e.theme),C.instance}C?.instance.destroy(),w=e.store,T=ie()(e);let n=!1,r=de(),i=new URL(t);i.searchParams.set(`chainId`,String(w.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))),b(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=>{se(oe(w,ne,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),le(e)}),e.on(`sync`,({valid:e})=>{e===!1&&w?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{fe(),S(),n=!1,l=!0;let e=w?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&T?.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=()=>ce(w),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 x=!1,S=()=>{x&&(x=!1,a.removeEventListener(`cancel`,v),a.removeEventListener(`click`,v),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ee=()=>{x||(x=!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`)},re=!1,ae=()=>{re||(re=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},fe=()=>{if(re){re=!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(){T.close(),n=!1,fe(),S()},destroy(){C?.instance===pe&&(C=void 0),T?.close(),n=!1,S(),fe(),T?.destroy(),f.destroy(),a.remove(),y.disconnect(),w=void 0,T=void 0,ne=[]},open(){n||(n=!0,ae(),ee())},async syncRequests(e){if(l){T.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(te()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){T.syncRequests(e);return}let r=d(),a=window.location.hostname.replace(/^www\\./,``),o=!!(t&&_(t,a,i.hostname));if(!(r||o))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`)),T.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:ue(w),chainId:w.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return C={host:t,instance:pe},pe})}function ie(e={}){if(typeof window>`u`)return ae();let{size:t=x}=e;return S({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&ce(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`,()=>ce(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=de(),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))),b(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=>se(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:ue(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ae(){return S({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function oe(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 se(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 ce(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 le(e){if(!w)return;let{accounts:t}=w.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function ue(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function de(){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 fe,pe=o((()=>{fe=`1.2.3`})),me,he=o((()=>{pe(),me=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@${fe}`].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 ge(e,t){return e.exec(t)?.groups}var _e,ve,ye,be=o((()=>{_e=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ve=/^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)?$/,ye=/^\\(.+?\\).*?$/}));function xe(e){let t=e.type;if(Se.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+=xe(i),r<n-1&&(t+=`, `)}let r=ge(Se,e.type);return t+=`)${r?.array||``}`,xe({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Se,Ce=o((()=>{be(),Se=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function we(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=xe(i),r!==n-1&&(t+=`, `)}return t}var Te=o((()=>{Ce()}));function Ee(e){return e.type===`function`?`function ${e.name}(${we(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${we(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${we(e.inputs)})`:e.type===`error`?`error ${e.name}(${we(e.inputs)})`:e.type===`constructor`?`constructor(${we(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var De=o((()=>{Te()}));function Oe(e){return Ve.test(e)}function ke(e){return ge(Ve,e)}function Ae(e){return He.test(e)}function je(e){return ge(He,e)}function Me(e){return Ue.test(e)}function Ne(e){return ge(Ue,e)}function Pe(e){return We.test(e)}function Fe(e){return ge(We,e)}function Ie(e){return Ge.test(e)}function Le(e){return ge(Ge,e)}function Re(e){return Ke.test(e)}function ze(e){return ge(Ke,e)}function Be(e){return qe.test(e)}var Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe=o((()=>{be(),Ve=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,He=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Ue=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,We=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,Ge=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Ke=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,qe=/^receive\\(\\) external payable$/,Je=new Set([`indexed`]),Ye=new Set([`calldata`,`memory`,`storage`])})),Ze,Qe,$e=o((()=>{he(),Ze=class extends me{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`})}},Qe=class extends me{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`})}}})),et,tt,nt,rt,it,at=o((()=>{he(),et=class extends me{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},tt=class extends me{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 me{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 me{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 me{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((()=>{he(),ot=class extends me{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 me{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},ct=class extends me{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((()=>{he(),ut=class extends me{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((()=>{he(),ft=class extends me{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(Me(e))return vt(e,t);if(Ae(e))return yt(e,t);if(Oe(e))return bt(e,t);if(Ie(e))return xt(e,t);if(Re(e))return St(e);if(Be(e))return{type:`receive`,stateMutability:`payable`};throw new st({signature:e})}function vt(e,t={}){let n=Ne(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:Ye,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:Ye,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function yt(e,t={}){let n=je(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:Je,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function bt(e,t={}){let n=ke(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=Le(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=ze(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=ye.test(e),i=ge(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 Qe({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new nt({param:e,type:t?.type,modifier:i.modifier});if(Ye.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`||_e.test(e)||ve.test(e)}function Et(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||_e.test(e)||ve.test(e)||jt.test(e)}function Dt(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var Ot,kt,At,jt,Mt=o((()=>{be(),$e(),at(),lt(),pt(),gt(),Xe(),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(!Pe(n))continue;let i=Fe(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(ye.test(i.type))r.push(i);else{let e=ge(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 Ze({type:o})}}return r}var Ft,It=o((()=>{be(),$e(),at(),lt(),dt(),Xe(),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];Pe(r)||n.push(_t(r,t))}return n}var Rt=o((()=>{Xe(),It(),Mt()})),zt=o((()=>{he(),De(),Ce(),Te(),Rt(),$e(),Xe(),It(),Mt(),at(),lt(),pt(),dt()}));function E(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 Bt(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new yn(e.type);return`${e.name}(${Vt(e.inputs,{includeName:t})})`}function Vt(e,{includeName:t=!1}={}){return e?e.map(e=>Ht(e,{includeName:t})).join(t?`, `:`,`):``}function Ht(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Vt(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Ut=o((()=>{bn()}));function D(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Wt=o((()=>{}));function O(e){return D(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Gt=o((()=>{Wt()})),Kt,qt=o((()=>{Kt=`2.47.6`}));function Jt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Jt(e.cause,t):t?null:e}var Yt,k,A=o((()=>{qt(),Yt={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${Kt}`},k=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=Yt.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Yt.version?[`Version: ${Yt.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=Kt}walk(e){return Jt(this,e)}}})),Xt,Zt,Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn=o((()=>{Ut(),Gt(),A(),Xt=class extends k{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`})}},Zt=class extends k{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`})}},Qt=class extends k{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${Vt(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}},$t=class extends k{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},en=class extends k{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`})}},tn=class extends k{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${O(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},nn=class extends k{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},rn=class extends k{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`})}},an=class extends k{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`})}},on=class extends k{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}},sn=class extends k{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},cn=class extends k{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`})}},ln=class extends k{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`})}},un=class extends k{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`})}},dn=class extends k{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`})}},fn=class extends k{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Bt(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${Bt(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},pn=class extends k{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},mn=class extends k{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: (${Vt(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}},hn=class extends k{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${Bt(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},gn=class extends k{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`})}},_n=class extends k{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`})}},vn=class extends k{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},yn=class extends k{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),xn,Sn,Cn,wn=o((()=>{A(),xn=class extends k{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},Sn=class extends k{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},Cn=class extends k{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 Tn(e,{dir:t,size:n=32}={}){return typeof e==`string`?En(e,{dir:t,size:n}):Dn(e,{dir:t,size:n})}function En(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new Sn({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function Dn(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new Sn({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 On=o((()=>{wn()})),kn,An,jn,Mn,Nn,Pn=o((()=>{A(),kn=class extends k{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`})}},An=class extends k{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`})}},jn=class extends k{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},Mn=class extends k{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},Nn=class extends k{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function Fn(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 In=o((()=>{}));function Ln(e,{size:t}){if(O(e)>t)throw new Nn({givenSize:O(e),maxSize:t})}function j(e,t={}){let{signed:n}=t;t.size&&Ln(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 Rn(e,t={}){let n=e;if(t.size&&(Ln(n,{size:t.size}),n=Fn(n)),Fn(n)===`0x00`)return!1;if(Fn(n)===`0x01`)return!0;throw new jn(n)}function zn(e,t={}){let n=j(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new kn({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var Bn=o((()=>{Pn(),Gt(),In()}));function Vn(e,t={}){return typeof e==`number`||typeof e==`bigint`?M(e,t):typeof e==`string`?Wn(e,t):typeof e==`boolean`?Hn(e,t):Un(e,t)}function Hn(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Ln(n,{size:t.size}),Tn(n,{size:t.size})):n}function Un(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Gn[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Ln(r,{size:t.size}),Tn(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 kn({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?Tn(s,{size:r}):s}function Wn(e,t={}){return Un(Kn.encode(e),t)}var Gn,Kn,N=o((()=>{Pn(),On(),Bn(),Gn=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),Kn=new TextEncoder}));function qn(e,t={}){return typeof e==`number`||typeof e==`bigint`?Zn(e,t):typeof e==`boolean`?Jn(e,t):D(e)?Xn(e,t):Qn(e,t)}function Jn(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(Ln(n,{size:t.size}),Tn(n,{size:t.size})):n}function Yn(e){if(e>=er.zero&&e<=er.nine)return e-er.zero;if(e>=er.A&&e<=er.F)return e-(er.A-10);if(e>=er.a&&e<=er.f)return e-(er.a-10)}function Xn(e,t={}){let n=e;t.size&&(Ln(n,{size:t.size}),n=Tn(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=Yn(r.charCodeAt(t++)),i=Yn(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new k(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Zn(e,t){return Xn(M(e,t))}function Qn(e,t={}){let n=$n.encode(e);return typeof t.size==`number`?(Ln(n,{size:t.size}),Tn(n,{dir:`right`,size:t.size})):n}var $n,er,tr=o((()=>{A(),Wt(),On(),Bn(),N(),$n=new TextEncoder,er={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function nr(e,t=!1){return t?{h:Number(e&ar),l:Number(e>>or&ar)}:{h:Number(e>>or&ar)|0,l:Number(e&ar)|0}}function rr(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}=nr(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function ir(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var ar,or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr=o((()=>{ar=BigInt(2**32-1),or=BigInt(32),sr=(e,t,n)=>e>>>n,cr=(e,t,n)=>e<<32-n|t>>>n,lr=(e,t,n)=>e>>>n|t<<32-n,ur=(e,t,n)=>e<<32-n|t>>>n,dr=(e,t,n)=>e<<64-n|t>>>n-32,fr=(e,t,n)=>e>>>n-32|t<<64-n,pr=(e,t,n)=>e<<n|t>>>32-n,mr=(e,t,n)=>t<<n|e>>>32-n,hr=(e,t,n)=>t<<n-32|e>>>64-n,gr=(e,t,n)=>e<<n-32|t>>>64-n,_r=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),vr=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,yr=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),br=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,xr=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Sr=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0})),wr,Tr=o((()=>{wr=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function Er(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Dr(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function Or(e,...t){if(!Er(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 kr(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);Dr(e.outputLen),Dr(e.blockLen)}function Ar(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 jr(e,t){Or(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function Mr(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Nr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Pr(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Fr(e,t){return e<<32-t|e>>>t}function Ir(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Lr(e){for(let t=0;t<e.length;t++)e[t]=Ir(e[t]);return e}function Rr(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function zr(e){return typeof e==`string`&&(e=Rr(e)),Or(e),e}function Br(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Or(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 Vr(e){let t=t=>e().update(zr(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Hr(e){let t=(t,n)=>e(n).update(zr(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Ur(e=32){if(wr&&typeof wr.getRandomValues==`function`)return wr.getRandomValues(new Uint8Array(e));if(wr&&typeof wr.randomBytes==`function`)return Uint8Array.from(wr.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var Wr,Gr,Kr,qr=o((()=>{Tr(),Wr=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Gr=Wr?e=>e:Lr,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,Kr=class{}}));function Jr(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=si(a,o,1)^n[r],c=ci(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=ni[n],a=si(t,i,r),o=ci(t,i,r),s=ti[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]^=ai[r],e[1]^=oi[r]}Nr(n)}var Yr,Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi=o((()=>{Cr(),qr(),Yr=BigInt(0),Xr=BigInt(1),Zr=BigInt(2),Qr=BigInt(7),$r=BigInt(256),ei=BigInt(113),ti=[],ni=[],ri=[];for(let e=0,t=Xr,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ti.push(2*(5*r+n)),ni.push((e+1)*(e+2)/2%64);let i=Yr;for(let e=0;e<7;e++)t=(t<<Xr^(t>>Qr)*ei)%$r,t&Zr&&(i^=Xr<<(Xr<<BigInt(e))-Xr);ri.push(i)}ii=rr(ri,!0),ai=ii[0],oi=ii[1],si=(e,t,n)=>n>32?hr(e,t,n):pr(e,t,n),ci=(e,t,n)=>n>32?gr(e,t,n):mr(e,t,n),li=class e extends Kr{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,Dr(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Mr(this.state)}clone(){return this._cloneInto()}keccak(){Gr(this.state32),Jr(this.state32,this.rounds),Gr(this.state32),this.posOut=0,this.pos=0}update(e){Ar(this),e=zr(e),Or(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){Ar(this,!1),Or(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 Dr(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(jr(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,Nr(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}},ui=(e,t,n)=>Vr(()=>new li(t,e,n)),ui(6,144,224/8),ui(6,136,256/8),ui(6,104,384/8),ui(6,72,512/8),ui(1,144,224/8),di=ui(1,136,256/8),ui(1,104,384/8),ui(1,72,512/8),fi=(e,t,n)=>Hr((r={})=>new li(t,e,r.dkLen===void 0?n:r.dkLen,!0)),fi(31,168,128/8),fi(31,136,256/8)}));function mi(e,t){let n=t||`hex`,r=di(D(e,{strict:!1})?qn(e):e);return n===`bytes`?r:Vn(r)}var hi=o((()=>{pi(),Wt(),tr(),N()}));function gi(e){return _i(e)}var _i,vi=o((()=>{tr(),hi(),_i=e=>mi(qn(e))}));function yi(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 k(`Unable to normalize signature.`);return i}var bi=o((()=>{A()})),xi,Si=o((()=>{zt(),bi(),xi=e=>yi(typeof e==`string`?e:Ee(e))}));function Ci(e){return gi(xi(e))}var wi=o((()=>{vi(),Si()})),Ti,Ei=o((()=>{wi(),Ti=Ci})),Di,Oi=o((()=>{A(),Di=class extends k{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`})}}})),ki,Ai=o((()=>{ki=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 ji(e,t){if(Ni.has(`${e}.${t}`))return Ni.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=mi(Qn(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 Ni.set(`${e}.${t}`,a),a}function Mi(e,t){if(!Fi(e,{strict:!1}))throw new Di({address:e});return ji(e,t)}var Ni,Pi=o((()=>{Oi(),tr(),hi(),Ai(),Ri(),Ni=new ki(8192)}));function Fi(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Li.has(r))return Li.get(r);let i=Ii.test(e)?e.toLowerCase()===e?!0:n?ji(e)===e:!0:!1;return Li.set(r,i),i}var Ii,Li,Ri=o((()=>{Ai(),Pi(),Ii=/^0x[a-fA-F0-9]{40}$/,Li=new ki(8192)}));function zi(e){return typeof e[0]==`string`?Vi(e):Bi(e)}function Bi(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 Vi(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var Hi=o((()=>{}));function Ui(e,t,n,{strict:r}={}){return D(e,{strict:!1})?qi(e,t,n,{strict:r}):Ki(e,t,n,{strict:r})}function Wi(e,t){if(typeof t==`number`&&t>0&&t>O(e)-1)throw new xn({offset:t,position:`start`,size:O(e)})}function Gi(e,t,n){if(typeof t==`number`&&typeof n==`number`&&O(e)!==n-t)throw new xn({offset:n,position:`end`,size:O(e)})}function Ki(e,t,n,{strict:r}={}){Wi(e,t);let i=e.slice(t,n);return r&&Gi(i,t,n),i}function qi(e,t,n,{strict:r}={}){Wi(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&Gi(i,t,n),i}var Ji=o((()=>{wn(),Wt(),Gt()})),Yi,Xi,Zi=o((()=>{Yi=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Xi=/^(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 Qi(e,t){if(e.length!==t.length)throw new nn({expectedLength:e.length,givenLength:t.length});let n=ta($i({params:e,values:t}));return n.length===0?`0x`:n}function $i({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(ea({param:e[r],value:t[r]}));return n}function ea({param:e,value:t}){let n=la(e.type);if(n){let[r,i]=n;return ra(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return ca(t,{param:e});if(e.type===`address`)return na(t);if(e.type===`bool`)return aa(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Xi.exec(e.type)??[];return oa(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return ia(t,{param:e});if(e.type===`string`)return sa(t);throw new gn(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function ta(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=O(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+=O(s)):n.push(s)}return zi([...n,...r])}function na(e){if(!Fi(e))throw new Di({address:e});return{dynamic:!1,encoded:En(e.toLowerCase())}}function ra(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new vn(e);if(!r&&e.length!==t)throw new en({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=ea({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=ta(a);if(r){let t=M(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?zi([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:zi(a.map(({encoded:e})=>e))}}function ia(e,{param:t}){let[,n]=t.type.split(`bytes`),r=O(e);if(!n){let t=e;return r%32!=0&&(t=En(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:zi([En(M(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new tn({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:En(e,{dir:`right`})}}function aa(e){if(typeof e!=`boolean`)throw new k(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:En(Hn(e))}}function oa(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 kn({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 sa(e){let t=Wn(e),n=Math.ceil(O(t)/32),r=[];for(let e=0;e<n;e++)r.push(En(Ui(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:zi([En(M(O(t),{size:32})),...r])}}function ca(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=ea({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?ta(r):zi(r.map(({encoded:e})=>e))}}function la(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var ua=o((()=>{bn(),Oi(),A(),Pn(),Ri(),Hi(),On(),Gt(),Ji(),N(),Zi()})),da,fa=o((()=>{Ji(),wi(),da=e=>Ui(Ci(e),0,4)}));function pa(e){let{abi:t,args:n=[],name:r}=e,i=D(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?da(e)===r:e.type===`event`?Ti(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?ma(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=ha(e.inputs,o.inputs,n);if(t)throw new fn({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function ma(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return Fi(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`&&ma(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=>ma(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ha(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 ha(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`))&&Fi(n[r],{strict:!1}))return o}}var ga=o((()=>{bn(),Wt(),Ri(),Ei(),fa()}));function _a(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var va=o((()=>{}));function ya(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=pa({abi:t,args:n,name:r});if(!e)throw new ln(r,{docsPath:ba});i=e}if(i.type!==`function`)throw new ln(void 0,{docsPath:ba});return{abi:[i],functionName:da(Bt(i))}}var ba,xa=o((()=>{bn(),fa(),Ut(),ga(),ba=`/docs/contract/encodeFunctionData`}));function Sa(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:ya(e),i=n[0];return Vi([r,(`inputs`in i&&i.inputs?Qi(i.inputs,t??[]):void 0)??`0x`])}var Ca=o((()=>{Hi(),ua(),xa()})),wa,Ta,Ea,Da=o((()=>{wa={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.`},Ta={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Ea={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),Oa,ka,Aa,ja=o((()=>{A(),Oa=class extends k{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},ka=class extends k{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},Aa=class extends k{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function Ma(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Na);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Na,Pa=o((()=>{ja(),Na={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 Aa({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new ka({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new Oa({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 Oa({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 Fa(e,t={}){return t.size!==void 0&&Ln(e,{size:t.size}),j(Un(e,t),t)}function Ia(e,t={}){let n=e;if(t.size!==void 0&&(Ln(n,{size:t.size}),n=Fn(n)),n.length>1||n[0]>1)throw new An(n);return!!n[0]}function La(e,t={}){return t.size!==void 0&&Ln(e,{size:t.size}),zn(Un(e,t),t)}function Ra(e,t={}){let n=e;return t.size!==void 0&&(Ln(n,{size:t.size}),n=Fn(n,{dir:`right`})),new TextDecoder().decode(n)}var za=o((()=>{Pn(),In(),Bn(),N()}));function Ba(e,t){let n=typeof t==`string`?Xn(t):t,r=Ma(n);if(O(n)===0&&e.length>0)throw new $t;if(O(t)&&O(t)<32)throw new Qt({data:typeof t==`string`?t:Un(t),params:e,size:O(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=Va(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function Va(e,t,{staticPosition:n}){let r=la(t.type);if(r){let[i,a]=r;return Ua(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return qa(e,t,{staticPosition:n});if(t.type===`address`)return Ha(e);if(t.type===`bool`)return Wa(e);if(t.type.startsWith(`bytes`))return Ga(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return Ka(e,t);if(t.type===`string`)return Ja(e,{staticPosition:n});throw new _n(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function Ha(e){return[ji(Un(Ki(e.readBytes(32),-20))),32]}function Ua(e,t,{length:n,staticPosition:r}){if(!n){let n=r+La(e.readBytes(Za)),i=n+Xa;e.setPosition(n);let a=La(e.readBytes(Xa)),o=Ya(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=Va(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(Ya(t)){let i=r+La(e.readBytes(Za)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=Va(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]=Va(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function Wa(e){return[Ia(e.readBytes(32),{size:32}),32]}function Ga(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=La(e.readBytes(32));e.setPosition(n+t);let r=La(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Un(i),32]}return[Un(e.readBytes(Number.parseInt(i,10),32)),32]}function Ka(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?Fa(i,{signed:n}):La(i,{signed:n}),32]}function qa(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(Ya(t)){let o=n+La(e.readBytes(Za));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=Va(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]=Va(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function Ja(e,{staticPosition:t}){let n=t+La(e.readBytes(32));e.setPosition(n);let r=La(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Ra(Fn(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Ya(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Ya);let n=la(e.type);return!!(n&&Ya({...e,type:n[1]}))}var Xa,Za,Qa=o((()=>{bn(),Pi(),Pa(),Gt(),Ji(),In(),za(),tr(),N(),ua(),Xa=32,Za=32}));function $a(e){let{abi:t,data:n,cause:r}=e,i=Ui(n,0,4);if(i===`0x`)throw new $t({cause:r});let a=[...t||[],Ta,Ea].find(e=>e.type===`error`&&i===da(Bt(e)));if(!a)throw new on(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?Ba(a.inputs,Ui(n,4)):void 0,errorName:a.name}}var eo=o((()=>{Da(),bn(),Ji(),fa(),Qa(),Ut()})),to,no=o((()=>{to=(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 ro({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`?to(t[n]):t[n]}`).join(`, `)})`}var io=o((()=>{no()})),ao,oo,so=o((()=>{ao={gwei:9,wei:18},oo={ether:-9,wei:9}}));function co(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 lo=o((()=>{}));function uo(e,t=`wei`){return co(e,ao[t])}var fo=o((()=>{so(),lo()}));function po(e,t=`wei`){return co(e,oo[t])}var mo=o((()=>{so(),lo()}));function ho(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function go(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+=ho(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=ho(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var _o,vo,yo=o((()=>{A(),_o=class extends k{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},vo=class extends k{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function bo(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 xo,So,Co,wo,To,Eo,Do=o((()=>{fo(),mo(),A(),xo=class extends k{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},So=class extends k{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,bo(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`})}},Co=class extends k{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}},wo=class extends k{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}},To=class extends k{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Eo=class extends k{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=bo({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${uo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${po(o)} gwei`,maxFeePerGas:s!==void 0&&`${po(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${po(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}}})),Oo,ko,Ao=o((()=>{Oo=e=>e,ko=e=>e})),jo,Mo,No,Po,Fo,Io,Lo=o((()=>{va(),Da(),eo(),Ut(),io(),ga(),fo(),mo(),bn(),A(),yo(),Do(),Ao(),jo=class extends k{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=bo({from:(t?_a(t):void 0)?.address,to:u,value:d!==void 0&&`${uo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${po(o)} gwei`,maxFeePerGas:s!==void 0&&`${po(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${po(c)} gwei`,nonce:l});f&&(p+=`\\n${go(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}},Mo=class extends k{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=pa({abi:t,args:n,name:a}),c=s?ro({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?Bt(s,{includeName:!0}):void 0,u=bo({address:r&&Oo(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}},No=class extends k{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=$a({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=wa[e]}else{let e=n?Bt(n,{includeName:!0}):void 0,t=n&&a?ro({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 on&&(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}},Po=class extends k{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})}},Fo=class extends k{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`})}},Io=class extends k{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}}})),Ro,zo,Bo,Vo=o((()=>{no(),A(),Ao(),Ro=class extends k{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: ${ko(a)}`,e&&`Request body: ${to(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}},zo=class extends k{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${ko(n)}`,`Request body: ${to(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}},Bo=class extends k{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${ko(t)}`,`Request body: ${to(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),Ho,Uo,Wo,Go,Ko,qo,Jo,Yo,Xo,Zo,Qo,$o,es,ts,ns,rs,is,as,os,ss,cs,ls,us,ds,fs,ps,ms,hs,gs,_s,vs=o((()=>{A(),Vo(),Ho=-1,Uo=class extends k{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 zo?e.code:t??Ho}},Wo=class extends Uo{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},Go=class e extends Uo{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(Go,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),Ko=class e extends Uo{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(Ko,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),qo=class e extends Uo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Jo=class e extends Uo{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(Jo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Yo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(Yo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Xo=class e extends Uo{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(Xo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Zo=class e extends Uo{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(Zo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),Qo=class e extends Uo{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty(Qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),$o=class e extends Uo{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty($o,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),es=class e extends Uo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(es,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),ts=class e extends Uo{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(ts,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),ns=class e extends Uo{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(ns,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),rs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(rs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),is=class e extends Wo{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(is,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),as=class e extends Wo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(as,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),os=class e extends Wo{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(os,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),ss=class e extends Wo{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(ss,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),cs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(cs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),ls=class e extends Wo{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(ls,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),us=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(us,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),ds=class e extends Wo{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(ds,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),fs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(fs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),ps=class e extends Wo{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(ps,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),ms=class e extends Wo{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(ms,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),hs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(hs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),gs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(gs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),_s=class extends Uo{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));bn(),A(),Lo(),Vo(),vs();function ys(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof Io?e:e instanceof k?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new Mo(e instanceof $t?new Po({functionName:a,cause:e}):[3,Yo.code].includes(c)&&(l||u||d||f)||c===Xo.code&&u===`execution reverted`&&l?new No({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof zo?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}Pi(),hi();function bs(e){return ji(`0x${mi(`0x${e.substring(4)}`).substring(26)}`)}function xs(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 Ss(e,t,n){return e&t^~e&n}function Cs(e,t,n){return e&t^e&n^t&n}var ws,Ts,Es,Ds,Os=o((()=>{qr(),ws=class extends Kr{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=Pr(this.buffer)}update(e){Ar(this),e=zr(e),Or(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=Pr(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){Ar(this),jr(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,Nr(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;xs(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=Pr(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()}},Ts=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Es=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Ds=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])})),ks,As,js,Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs=o((()=>{Os(),Cr(),qr(),ks=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]),As=new Uint32Array(64),js=class extends ws{constructor(e=32){super(64,e,8,!1),this.A=Ts[0]|0,this.B=Ts[1]|0,this.C=Ts[2]|0,this.D=Ts[3]|0,this.E=Ts[4]|0,this.F=Ts[5]|0,this.G=Ts[6]|0,this.H=Ts[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)As[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=As[e-15],n=As[e-2],r=Fr(t,7)^Fr(t,18)^t>>>3;As[e]=(Fr(n,17)^Fr(n,19)^n>>>10)+As[e-7]+r+As[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=Fr(o,6)^Fr(o,11)^Fr(o,25),u=l+t+Ss(o,s,c)+ks[e]+As[e]|0,d=(Fr(n,2)^Fr(n,13)^Fr(n,22))+Cs(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(){Nr(As)}destroy(){this.set(0,0,0,0,0,0,0,0),Nr(this.buffer)}},Ms=rr(`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))),Ns=Ms[0],Ps=Ms[1],Fs=new Uint32Array(80),Is=new Uint32Array(80),Ls=class extends ws{constructor(e=64){super(128,e,16,!1),this.Ah=Ds[0]|0,this.Al=Ds[1]|0,this.Bh=Ds[2]|0,this.Bl=Ds[3]|0,this.Ch=Ds[4]|0,this.Cl=Ds[5]|0,this.Dh=Ds[6]|0,this.Dl=Ds[7]|0,this.Eh=Ds[8]|0,this.El=Ds[9]|0,this.Fh=Ds[10]|0,this.Fl=Ds[11]|0,this.Gh=Ds[12]|0,this.Gl=Ds[13]|0,this.Hh=Ds[14]|0,this.Hl=Ds[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)Fs[n]=e.getUint32(t),Is[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Fs[e-15]|0,n=Is[e-15]|0,r=lr(t,n,1)^lr(t,n,8)^sr(t,n,7),i=ur(t,n,1)^ur(t,n,8)^cr(t,n,7),a=Fs[e-2]|0,o=Is[e-2]|0,s=lr(a,o,19)^dr(a,o,61)^sr(a,o,6),c=ur(a,o,19)^fr(a,o,61)^cr(a,o,6),l=yr(i,c,Is[e-7],Is[e-16]);Fs[e]=br(l,r,s,Fs[e-7],Fs[e-16])|0,Is[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=lr(u,d,14)^lr(u,d,18)^dr(u,d,41),v=ur(u,d,14)^ur(u,d,18)^fr(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=xr(_,v,b,Ps[e],Is[e]),S=Sr(x,g,t,y,Ns[e],Fs[e]),ee=x|0,te=lr(n,r,28)^dr(n,r,34)^dr(n,r,39),C=ur(n,r,28)^fr(n,r,34)^fr(n,r,39),w=n&i^n&o^i&o,T=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}=ir(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 ne=_r(ee,C,T);n=vr(ne,S,te,w),r=ne|0}({h:n,l:r}=ir(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=ir(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=ir(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=ir(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ir(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=ir(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=ir(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=ir(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(){Nr(Fs,Is)}destroy(){Nr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},Rs=class extends Ls{constructor(){super(48),this.Ah=Es[0]|0,this.Al=Es[1]|0,this.Bh=Es[2]|0,this.Bl=Es[3]|0,this.Ch=Es[4]|0,this.Cl=Es[5]|0,this.Dh=Es[6]|0,this.Dl=Es[7]|0,this.Eh=Es[8]|0,this.El=Es[9]|0,this.Fh=Es[10]|0,this.Fl=Es[11]|0,this.Gh=Es[12]|0,this.Gl=Es[13]|0,this.Hh=Es[14]|0,this.Hl=Es[15]|0}},zs=Vr(()=>new js),Bs=Vr(()=>new Ls),Vs=Vr(()=>new Rs)})),Us,Ws,Gs=o((()=>{qr(),Us=class extends Kr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,kr(e);let n=zr(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),Nr(i)}update(e){return Ar(this),this.iHash.update(e),this}digestInto(e){Ar(this),Or(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()}},Ws=(e,t,n)=>new Us(e,t).update(n).digest(),Ws.create=(e,t)=>new Us(e,t)}));function Ks(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function qs(e){if(!Ks(e))throw Error(`Uint8Array expected`)}function Js(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Ys(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Xs(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?mc:BigInt(`0x`+e)}function Zs(e){if(qs(e),gc)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=_c[e[n]];return t}function Qs(e){if(e>=vc._0&&e<=vc._9)return e-vc._0;if(e>=vc.A&&e<=vc.F)return e-(vc.A-10);if(e>=vc.a&&e<=vc.f)return e-(vc.a-10)}function $s(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(gc)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=Qs(e.charCodeAt(i)),a=Qs(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 ec(e){return Xs(Zs(e))}function tc(e){return qs(e),Xs(Zs(Uint8Array.from(e).reverse()))}function nc(e,t){return $s(e.toString(16).padStart(t*2,`0`))}function rc(e,t){return nc(e,t).reverse()}function ic(e,t,n){let r;if(typeof t==`string`)try{r=$s(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(Ks(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 ac(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];qs(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 oc(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 sc(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function cc(e,t,n){return yc(e)&&yc(t)&&yc(n)&&t<=e&&e<n}function lc(e,t,n,r){if(!cc(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function uc(e){let t;for(t=0;e>mc;e>>=hc,t+=1);return t}function dc(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=xc(e),i=xc(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=xc(0))=>{i=s(Sc([0]),e),r=s(),e.length!==0&&(i=s(Sc([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 ac(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function fc(e,t,n={}){let r=(t,n,r)=>{let i=Cc[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 pc(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 mc,hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc=o((()=>{mc=BigInt(0),hc=BigInt(1),gc=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,_c=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),vc={_0:48,_9:57,A:65,F:70,a:97,f:102},yc=e=>typeof e==`bigint`&&mc<=e,bc=e=>(hc<<BigInt(e))-hc,xc=e=>new Uint8Array(e),Sc=e=>Uint8Array.from(e),Cc={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`||Ks(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 Tc(e,t){let n=e%t;return n>=Vc?n:t+n}function Ec(e,t,n){let r=e;for(;t-- >Vc;)r*=r,r%=n;return r}function Dc(e,t){if(e===Vc)throw Error(`invert: expected non-zero number`);if(t<=Vc)throw Error(`invert: expected positive modulus, got `+t);let n=Tc(e,t),r=t,i=Vc,a=Hc,o=Hc,s=Vc;for(;n!==Vc;){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!==Hc)throw Error(`invert: does not exist`);return Tc(i,t)}function Oc(e,t){let n=(e.ORDER+Hc)/Gc,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function kc(e,t){let n=(e.ORDER-Kc)/qc,r=e.mul(t,Uc),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Uc),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 Ac(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Hc,n=0;for(;t%Uc===Vc;)t/=Uc,n++;let r=Uc,i=Lc(e);for(;Fc(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return Oc;let a=i.pow(r,t),o=(t+Hc)/Uc;return function(e,r){if(e.is0(r))return r;if(Fc(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=Hc<<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 jc(e){return e%Gc===Wc?Oc:e%qc===Kc?kc:Ac(e)}function Mc(e){return fc(e,Jc.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Nc(e,t,n){if(n<Vc)throw Error(`invalid exponent, negatives unsupported`);if(n===Vc)return e.ONE;if(n===Hc)return t;let r=e.ONE,i=t;for(;n>Vc;)n&Hc&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Hc;return r}function Pc(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 Fc(e,t){let n=(e.ORDER-Hc)/Uc,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 Ic(e,t){t!==void 0&&Dr(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Lc(e,t,n=!1,r={}){if(e<=Vc)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Ic(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:bc(i),ZERO:Vc,ONE:Hc,create:t=>Tc(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Vc<=t&&t<e},is0:e=>e===Vc,isOdd:e=>(e&Hc)===Hc,neg:t=>Tc(-t,e),eql:(e,t)=>e===t,sqr:t=>Tc(t*t,e),add:(t,n)=>Tc(t+n,e),sub:(t,n)=>Tc(t-n,e),mul:(t,n)=>Tc(t*n,e),pow:(e,t)=>Nc(s,e,t),div:(t,n)=>Tc(t*Dc(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>Dc(t,e),sqrt:r.sqrt||(t=>(o||=jc(e),o(s,t))),toBytes:e=>n?rc(e,a):nc(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?tc(e):ec(e)},invertBatch:e=>Pc(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function Rc(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function zc(e){let t=Rc(e);return t+Math.ceil(t/2)}function Bc(e,t,n=!1){let r=e.length,i=Rc(t),a=zc(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Tc(n?tc(e):ec(e),t-Hc)+Hc;return n?rc(o,i):nc(o,i)}var Vc,Hc,Uc,Wc,Gc,Kc,qc,Jc,Yc=o((()=>{qr(),wc(),Vc=BigInt(0),Hc=BigInt(1),Uc=BigInt(2),Wc=BigInt(3),Gc=BigInt(4),Kc=BigInt(5),qc=BigInt(8),Jc=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Xc(e,t){let n=t.negate();return e?n:t}function Zc(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function Qc(e,t){Zc(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:bc(e),maxNumber:i,shiftBy:BigInt(e)}}function $c(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+=sl);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 el(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 tl(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 nl(e){return ll.get(e)||1}function rl(e,t){return{constTimeNegate:Xc,hasPrecomputes(e){return nl(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>ol;)n&sl&&(r=r.add(i)),i=i.double(),n>>=sl;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=Qc(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=Qc(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=$c(i,e,s);i=t,c?o=o.add(Xc(u,r[d])):a=a.add(Xc(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=Qc(n,t);for(let e=0;e<o.windows&&i!==ol;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=$c(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=cl.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&cl.set(t,n(r))),r},wNAFCached(e,t,n){let r=nl(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=nl(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Zc(n,t),ll.set(e,n),cl.delete(e)}}}function il(e,t,n,r){el(n,e),tl(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=uc(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=bc(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 al(e){return Mc(e.Fp),fc(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Ic(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var ol,sl,cl,ll,ul=o((()=>{Yc(),wc(),ol=BigInt(0),sl=BigInt(1),cl=new WeakMap,ll=new WeakMap}));function dl(e){e.lowS!==void 0&&Js(`lowS`,e.lowS),e.prehash!==void 0&&Js(`prehash`,e.prehash)}function fl(e){let t=al(e);fc(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 pl(e,t){return Zs(nc(e,t))}function ml(e){let t=fl(e),{Fp:n}=t,r=Lc(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return ac(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,Cl),wl),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 cc(e,P,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(Ks(e)&&(e=Zs(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:ec(ic(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Tc(o,a)),lc(`private key`,o,P,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=pc((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=pc(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=Pc(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(ic(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return il(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,Cl),{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,Cl),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;lc(`scalar`,e,xl,i);let a=h.ZERO;if(e===xl)return a;if(this.is0()||e===P)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>xl||l>xl;)s&P&&(u=u.add(f)),l&P&&(d=d.add(f)),f=f.double(),s>>=P,l>>=P;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;lc(`scalar`,e,P,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===xl||t===P||!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===P)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===P?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Js(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Js(`isCompressed`,e),Zs(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=rl(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function hl(e){let t=al(e);return fc(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function gl(e){let t=hl(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Tc(e,r)}function l(e){return Dc(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=ml({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=ac;return Js(`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=ec(i);if(!cc(e,P,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&P)===P;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>>P}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>ec(e.slice(t,n));class _{constructor(e,t,n){lc(`r`,e,P,r),lc(`s`,t,P,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=ic(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=bl.toSig(ic(`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(ic(`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+pl(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 $s(this.toDERHex())}toDERHex(){return bl.hexFromSig(this)}toCompactRawBytes(){return $s(this.toCompactHex())}toCompactHex(){let e=i;return pl(this.r,e)+pl(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=zc(t.n);return Bc(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=ic(`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=ec(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},te=bc(a);function C(e){return lc(`num < 2^`+a,e,xl,te),nc(e,i)}function w(e,r,i=T){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=ic(`msgHash`,e),dl(i),f&&(e=ic(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[C(y),C(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(ic(`extraEntropy`,e))}let x=ac(...b),te=v;function w(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===xl)return;let a=c(n*c(te+i*y));if(a===xl)return;let o=(r.x===i?0:2)|Number(r.y&P),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:w}}let T={lowS:t.lowS,prehash:!1},ne={lowS:t.lowS,prehash:!1};function re(e,n,r=T){let{seed:i,k2sig:a}=w(e,n,r),o=t;return dc(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ie(e,n,r,i=ne){let a=e;n=ic(`msgHash`,n),r=ic(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(dl(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`||Ks(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 bl.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:re,verify:ie,ProjectivePoint:u,Signature:_,utils:v}}function _l(e,t){let n=e.ORDER,r=xl;for(let e=n-P;e%Sl===xl;e/=Sl)r+=P;let i=r,a=Sl<<i-P-P,o=a*Sl,s=(n-P)/o,c=(s-P)/Sl,l=o-P,u=a,d=e.pow(t,s),f=e.pow(t,(s+P)/Sl),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>P;t--){let n=t-Sl;n=Sl<<n-P;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%wl===Cl){let n=(e.ORDER-Cl)/wl,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 vl(e,t){if(Mc(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=_l(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=Pc(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var yl,bl,xl,P,Sl,Cl,wl,Tl=o((()=>{ul(),Yc(),wc(),yl=class extends Error{constructor(e=``){super(e)}},bl={Err:yl,_tlv:{encode:(e,t)=>{let{Err:n}=bl;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=Ys(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Ys(i.length/2|128):``;return Ys(e)+a+i+t},decode(e,t){let{Err:n}=bl,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}=bl;if(e<xl)throw new t(`integer: negative integers are not allowed`);let n=Ys(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}=bl;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 ec(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=bl,i=ic(`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}=bl,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},xl=BigInt(0),P=BigInt(1),Sl=BigInt(2),Cl=BigInt(3),wl=BigInt(4)}));function El(e){return{hash:e,hmac:(t,...n)=>Ws(e,t,Br(...n)),randomBytes:Ur}}function Dl(e,t){let n=t=>gl({...e,...El(t)});return{...n(t),create:n}}var Ol=o((()=>{Gs(),qr(),Tl()}));function kl(e,t){if(jl(e),jl(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 Al(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 jl(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Ml(e,t,n,r){qs(e),qs(t),jl(n),t.length>255&&(t=r(ac(sc(`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=ac(t,kl(t.length,1)),c=kl(0,a),l=kl(n,2),u=Array(o),d=r(ac(c,e,l,kl(0,1),s));u[0]=r(ac(d,kl(1,1),s));for(let e=1;e<=o;e++)u[e]=r(ac(Al(d,u[e-1]),kl(e+1,1),s));return ac(...u).slice(0,n)}function Nl(e,t,n,r,i){if(qs(e),qs(t),jl(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(sc(`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(kl(n,2)).update(t).update(kl(t.length,1)).digest()}function Pl(e,t,n){fc(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;qs(e),jl(t);let l=typeof c==`string`?sc(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Ml(e,l,f,o);else if(s===`xof`)p=Nl(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]=Tc(Ll(p.subarray(i,i+d)),r)}m[e]=t}return m}function Fl(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]=Pc(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function Il(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=Pl(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(Pl(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 Ll,Rl=o((()=>{Yc(),wc(),Ll=ec})),zl=c({encodeToCurve:()=>hu,hashToCurve:()=>mu,schnorr:()=>uu,secp256k1:()=>tu,secp256k1_hasher:()=>pu});function Bl(e){let t=Jl,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=Ec(Ec(Ec(u,n,t)*u%t,n,t)*u%t,Ql,t)*l%t,f=Ec(d,i,t)*d%t,p=Ec(f,a,t)*f%t,m=Ec(p,s,t)*p%t,h=Ec(Ec(Ec(Ec(Ec(Ec(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,Ql,t);if(!eu.eql(eu.sqr(h),e))throw Error(`Cannot find square root`);return h}function Vl(e,...t){let n=nu[e];if(n===void 0){let t=zs(Uint8Array.from(e,e=>e.charCodeAt(0)));n=ac(t,t),nu[e]=n}return zs(ac(n,...t))}function Hl(e){let t=tu.utils.normPrivateKeyToScalar(e),n=su.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:ou(-t),bytes:ru(n)}}function Ul(e){lc(`x`,e,Zl,Jl);let t=Bl(au(au(e*e)*e+BigInt(7)));t%Ql!==Xl&&(t=au(-t));let n=new su(e,t,Zl);return n.assertValidity(),n}function Wl(...e){return ou(lu(Vl(`BIP0340/challenge`,...e)))}function Gl(e){return Hl(e).bytes}function Kl(e,t,n=Ur(32)){let r=ic(`message`,e),{bytes:i,scalar:a}=Hl(t),o=ou(lu(Vl(`BIP0340/nonce`,iu(a^lu(Vl(`BIP0340/aux`,ic(`auxRand`,n,32)))),i,r)));if(o===Xl)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Hl(o),l=Wl(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(iu(ou(c+l*a)),32),!ql(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function ql(e,t,n){let r=ic(`signature`,e,64),i=ic(`message`,t),a=ic(`publicKey`,n,32);try{let e=Ul(lu(a)),t=lu(r.subarray(0,32));if(!cc(t,Zl,Jl))return!1;let n=lu(r.subarray(32,64));if(!cc(n,Zl,Yl))return!1;let o=cu(e,n,ou(-Wl(iu(t),ru(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Jl,Yl,Xl,Zl,Ql,$l,eu,tu,nu,ru,iu,au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu=o((()=>{Hs(),qr(),Ol(),Rl(),Yc(),wc(),Tl(),Jl=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Yl=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Xl=BigInt(0),Zl=BigInt(1),Ql=BigInt(2),$l=(e,t)=>(e+t/Ql)/t,eu=Lc(Jl,void 0,void 0,{sqrt:Bl}),tu=Dl({a:Xl,b:BigInt(7),Fp:eu,n:Yl,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Yl,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Zl*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=$l(a*e,t),c=$l(-r*e,t),l=Tc(e-s*n-c*i,t),u=Tc(-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}}}},zs),nu={},ru=e=>e.toRawBytes(!0).slice(1),iu=e=>nc(e,32),au=e=>Tc(e,Jl),ou=e=>Tc(e,Yl),su=tu.ProjectivePoint,cu=(e,t,n)=>su.BASE.multiplyAndAddUnsafe(e,t,n),lu=ec,uu={getPublicKey:Gl,sign:Kl,verify:ql,utils:{randomPrivateKey:tu.utils.randomPrivateKey,lift_x:Ul,pointToBytes:ru,numberToBytesBE:nc,bytesToNumberBE:ec,taggedHash:Vl,mod:Tc}},du=Fl(eu,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),fu=vl(eu,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:eu.create(BigInt(`-11`))}),pu=Il(tu.ProjectivePoint,e=>{let{x:t,y:n}=fu(eu.create(e[0]));return du(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:eu.ORDER,m:1,k:128,expand:`xmd`,hash:zs}),mu=pu.hashToCurve,hu=pu.encodeToCurve}));Wt(),Gt(),Bn(),N();async function _u({hash:e,signature:t}){let n=D(e)?e:Vn(e),{secp256k1:r}=await Promise.resolve().then(()=>(gu(),zl));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=vu(Number(a??i));return new r.Signature(j(e),j(n)).addRecoveryBit(o)}let e=D(t)?t:Vn(t);if(O(e)!==65)throw Error(`invalid signature length`);let n=vu(zn(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function vu(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 yu({hash:e,signature:t}){return bs(await _u({hash:e,signature:t}))}A(),Pa(),tr(),N();function bu(e,t=`hex`){let n=xu(e),r=Ma(new Uint8Array(n.length));return n.encode(r),t===`hex`?Un(r.bytes):r.bytes}function xu(e){return Array.isArray(e)?Su(e.map(e=>xu(e))):Cu(e)}function Su(e){let t=e.reduce((e,t)=>e+t.length,0),n=wu(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 Cu(e){let t=typeof e==`string`?Xn(e):e,n=wu(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 wu(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 k(`Length is too large.`)}Hi(),tr(),N(),hi();function Tu(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=mi(Vi([`0x05`,bu([t?M(t):`0x`,i,n?M(n):`0x`])]));return r===`bytes`?Xn(a):a}async function Eu(e){let{authorization:t,signature:n}=e;return yu({hash:Tu(t),signature:n??t})}fo(),mo(),A(),Do();var Du=class extends k{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=bo({from:t?.address,to:u,value:d!==void 0&&`${uo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${po(o)} gwei`,maxFeePerGas:s!==void 0&&`${po(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${po(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}},Ou,ku,Au,ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu,Bu=o((()=>{mo(),A(),Ou=class extends k{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(Ou,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(Ou,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),ku=class extends k{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${po(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(ku,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),Au=class extends k{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${po(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(Au,`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/}),ju=class extends k{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(ju,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),Mu=class extends k{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(Mu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),Nu=class extends k{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(Nu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),Pu=class extends k{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(Pu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),Fu=class extends k{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(Fu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),Iu=class extends k{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(Iu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),Lu=class extends k{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(Lu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),Ru=class extends k{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${po(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${po(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(Ru,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),zu=class extends k{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function Vu(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof k?e.walk(e=>e?.code===Ou.code):e;return r instanceof k?new Ou({cause:e,message:r.details}):Ou.nodeMessage.test(n)?new Ou({cause:e,message:e.details}):ku.nodeMessage.test(n)?new ku({cause:e,maxFeePerGas:t?.maxFeePerGas}):Au.nodeMessage.test(n)?new Au({cause:e,maxFeePerGas:t?.maxFeePerGas}):ju.nodeMessage.test(n)?new ju({cause:e,nonce:t?.nonce}):Mu.nodeMessage.test(n)?new Mu({cause:e,nonce:t?.nonce}):Nu.nodeMessage.test(n)?new Nu({cause:e,nonce:t?.nonce}):Pu.nodeMessage.test(n)?new Pu({cause:e}):Fu.nodeMessage.test(n)?new Fu({cause:e,gas:t?.gas}):Iu.nodeMessage.test(n)?new Iu({cause:e,gas:t?.gas}):Lu.nodeMessage.test(n)?new Lu({cause:e}):Ru.nodeMessage.test(n)?new Ru({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new zu({cause:e})}var Hu=o((()=>{A(),Bu()}));Bu(),Hu();function Uu(e,{docsPath:t,...n}){return new Du((()=>{let t=Vu(e,n);return t instanceof zu?e:t})(),{docsPath:t,...n})}function Wu(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 Gu=o((()=>{}));function Ku(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 qu=o((()=>{}));function Ju(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=Yu(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=>Un(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=Xu[e.type]),e.value!==void 0&&(n.value=M(e.value)),n}function Yu(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 Xu,Zu,Qu=o((()=>{N(),qu(),Xu={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Zu=Ku(`transactionRequest`,Ju)}));function $u(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new Cn({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new Cn({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function ed(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=$u(r)),i!==void 0){if(o.state)throw new vo;o.stateDiff=$u(i)}return o}function td(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!Fi(n,{strict:!1}))throw new Di({address:n});if(t[n])throw new _o({address:n});t[n]=ed(r)}return t}var nd=o((()=>{Oi(),wn(),yo(),Ri(),N()})),rd,id=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)),rd=2n**256n-1n}));function ad(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?_a(t):void 0;if(a&&!Fi(a.address))throw new Di({address:a.address});if(i&&!Fi(i))throw new Di({address:i});if(n&&n>rd)throw new ku({maxFeePerGas:n});if(r&&n&&r>n)throw new Ru({maxFeePerGas:n,maxPriorityFeePerGas:r})}var od=o((()=>{va(),id(),Oi(),Bu(),Ri()}));mo(),A();var sd=class extends k{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},cd=class extends k{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},ld=class extends k{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${po(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};A();var ud=class extends k{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`})}};Bn(),qu();let dd={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function fd(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?zn(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?zn(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?dd[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=md(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 pd=Ku(`transaction`,fd);function md(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 hd(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:fd(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}}N();async function gd(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 ud({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||hd)(s,`getBlock`)}async function _d(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}Bn();async function vd(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 E(e,gd,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?j(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):E(e,gd,`getBlock`)({}),E(e,_d,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new cd;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function yd(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 sd;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await E(e,gd,`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 cd;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await vd(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 E(e,_d,`getGasPrice`)({}))}}Bn(),N();async function bd(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return zn(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?M(r):n]},{dedupe:!!r}))}tr(),N();function xd(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=>Xn(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Un(e))}tr(),N();function Sd(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=>Xn(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Xn(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=>Un(e))}Hs();let Cd=zs;Wt(),tr(),N();function wd(e,t){let n=t||`hex`,r=Cd(D(e,{strict:!1})?qn(e):e);return n===`bytes`?r:Vn(r)}N();function Td(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=wd(t,`bytes`);return i.set([n],0),r===`bytes`?i:Un(i)}function Ed(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Td({commitment:e,to:r,version:n}));return i}let Dd=4096,Od=32*Dd;Od*6-1-1*Dd*6,A();var kd=class extends k{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},Ad=class extends k{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},jd=class extends k{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Md=class extends k{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};Pa(),Gt(),tr(),N();function Nd(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Xn(e.data):e.data,r=O(n);if(!r)throw new Ad;if(r>761855)throw new kd({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=Ma(new Uint8Array(Od)),t=0;for(;t<Dd;){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=>Un(e.bytes))}function Pd(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Nd({data:t,to:r}),a=e.commitments??xd({blobs:i,kzg:n,to:r}),o=e.proofs??Sd({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}Do();function Fd(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 So({transaction:e})}Bu(),Do(),Hu();function Id(e,{docsPath:t,...n}){return new Eo((()=>{let t=Vu(e,n);return t instanceof zu?e:t})(),{docsPath:t,...n})}Bn();async function Ld(e){return zn(await e.request({method:`eth_chainId`},{dedupe:!0}))}va(),Gu(),Qu(),od();async function Rd(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=_a(n),r=a?a.id:await E(e,Ld,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();ad(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Ju)({...Wu(y,{format:x}),account:n?_a(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||fd)(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 E(e,gd,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new sd;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 Id(n,{...t,chain:e.chain})}}va(),Ai(),od();let zd=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Bd=new Map,Vd=new ki(128);async function Hd(e,t){let n=t;n.account??=e.account,n.parameters??=zd;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 E(e,Ld,`getChainId`)({}),c):n.chainId)}let u=r&&_a(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||Vd.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 E(e,Rd,`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 Vd.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`)})&&Vd.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 E(e,gd,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await E(e,bd,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=xd({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Ed({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Pd({blobs:p,commitments:e,proofs:Sd({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=Fd(n)}catch{let t=Bd.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Bd.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 yd(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new ld({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new cd;if(n.gasPrice===void 0){let{gasPrice:t}=await yd(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await E(e,Ud,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),ad(n),delete n.parameters,n}va(),A(),N(),Gu(),Qu(),nd(),od();async function Ud(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?_a(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 Eu({authorization:t.authorizationList[0]}).catch(()=>{throw new k(\"`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 Hd(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=td(b);ad(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Ju)({...Wu(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?[C,S??e.experimental_blockTag??`latest`,ee]:S?[C,S]:[C]}))}catch(n){throw Uu(n,{...t,account:i,chain:e.chain})}}function Wd(e,t){if(!Fi(e,{strict:!1}))throw new Di({address:e});if(!Fi(t,{strict:!1}))throw new Di({address:t});return e.toLowerCase()===t.toLowerCase()}var Gd=o((()=>{Oi(),Ri()}));function Kd(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}:{}}}bn(),ja(),Gt(),Ei(),Qa(),Ut();let qd=`/docs/contract/decodeEventLog`;function Jd(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new sn({docsPath:qd});let c=t.find(e=>e.type===`event`&&o===Ti(Bt(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new cn(o,{docsPath:qd});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 hn({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=Yd({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=Ba(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 Qt||e instanceof ka?new mn({abiItem:c,data:n,params:g,size:O(n)}):e}else if(a)throw new mn({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Yd({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(Ba([e],t)||[])[0]}Gd(),tr(),hi(),Ei();function Xd(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:Ti(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?Kd(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=Jd({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Jd({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)||!Zd({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function Zd(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`?Wd(t,n):e.type===`string`||e.type===`bytes`?mi(qn(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 Qd(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=pa({abi:t,args:n,name:r});if(!e)throw new ln(r,{docsPath:$d});a=e}if(a.type!==`function`)throw new ln(void 0,{docsPath:$d});if(!a.outputs)throw new un(a.name,{docsPath:$d});let o=Ba(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var $d,ef=o((()=>{bn(),Qa(),ga(),$d=`/docs/contract/decodeFunctionResult`})),tf,nf=o((()=>{tf=`0.1.1`}));function rf(){return tf}var af=o((()=>{nf()}));function of(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?of(e.cause,t):t?null:e}var F,sf=o((()=>{af(),F=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 of(this,e)}},Object.defineProperty(F,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${rf()}`}}),F.setStaticOptions(F.defaultStaticOptions)}));function cf(e,t){if(If(e)>t)throw new Yf({givenSize:If(e),maxSize:t})}function lf(e,t){if(typeof t==`number`&&t>0&&t>If(e)-1)throw new Xf({offset:t,position:`start`,size:If(e)})}function uf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&If(e)!==n-t)throw new Xf({offset:n,position:`end`,size:If(e)})}function df(e){if(e>=mf.zero&&e<=mf.nine)return e-mf.zero;if(e>=mf.A&&e<=mf.F)return e-(mf.A-10);if(e>=mf.a&&e<=mf.f)return e-(mf.a-10)}function ff(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Zf({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 pf(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 mf,hf=o((()=>{Qf(),mf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function gf(e,t){if(op(e)>t)throw new yp({givenSize:op(e),maxSize:t})}function _f(e,t){if(typeof t==`number`&&t>0&&t>op(e)-1)throw new bp({offset:t,position:`start`,size:op(e)})}function vf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&op(e)!==n-t)throw new bp({offset:n,position:`end`,size:op(e)})}function yf(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 xp({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function bf(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 xf=o((()=>{B()}));function Sf(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=>Sf(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)}:${Sf(r)}`),t},[]).join(`,`)}}`}function Cf(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Tf)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function wf(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Tf:n,n)}var Tf,Ef=o((()=>{Tf=`#__bigint`}));function Df(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 Jf(e)}function Of(...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 kf(e){return e instanceof Uint8Array?e:typeof e==`string`?jf(e):Af(e)}function Af(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function jf(e,t={}){let{size:n}=t,r=e;n&&(gf(e,n),r=ip(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=df(i.charCodeAt(t++)),r=df(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new F(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function Mf(e,t={}){let{size:n}=t,r=Kf.encode(e);return typeof n==`number`?(cf(r,n),Pf(r,n)):r}function Nf(e,t){return oc(e,t)}function Pf(e,t){return ff(e,{dir:`right`,size:t})}function Ff(e){return crypto.getRandomValues(new Uint8Array(e))}function If(e){return e.length}function Lf(e,t,n,r={}){let{strict:i}=r;lf(e,t);let a=e.slice(t,n);return i&&uf(a,t,n),a}function Rf(e,t={}){let{size:n}=t;return n!==void 0&&cf(e,n),cp(L(e,t),t)}function zf(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(cf(r,n),r=Hf(r)),r.length>1||r[0]>1)throw new qf(r);return!!r[0]}function Bf(e,t={}){let{size:n}=t;return n!==void 0&&cf(e,n),up(L(e,t),t)}function Vf(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(cf(r,n),r=Uf(r)),Gf.decode(r)}function Hf(e){return pf(e,{dir:`left`})}function Uf(e){return pf(e,{dir:`right`})}function Wf(e){try{return Df(e),!0}catch{return!1}}var Gf,Kf,qf,Jf,Yf,Xf,Zf,Qf=o((()=>{wc(),sf(),B(),hf(),xf(),Ef(),Gf=new TextDecoder,Kf=new TextEncoder,qf=class extends F{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`})}},Jf=class extends F{constructor(e){super(`Value \\`${typeof e==`object`?wf(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`})}},Yf=class extends F{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`})}},Xf=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}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SliceOffsetOutOfBoundsError`})}},Zf=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}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Bytes.SizeExceedsPaddingSizeError`})}}}));function $f(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new gp(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new _p(e)}function I(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function ep(e){return e instanceof Uint8Array?L(e):Array.isArray(e)?L(new Uint8Array(e)):e}function tp(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(gf(n,t.size),rp(n,t.size)):n}function L(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=mp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(gf(r,t.size),ip(r,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 hp({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?rp(s,r):s}function np(e,t={}){return L(pp.encode(e),t)}function rp(e,t){return yf(e,{dir:`left`,size:t})}function ip(e,t){return yf(e,{dir:`right`,size:t})}function ap(e){return L(Ff(e))}function z(e,t,n,r={}){let{strict:i}=r;_f(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&vf(a,t,n),a}function op(e){return Math.ceil((e.length-2)/2)}function sp(e){return bf(e,{dir:`left`})}function cp(e,t={}){let{signed:n}=t;t.size&&gf(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 lp(e,t={}){return jf(e,t)}function up(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:cp(e,t))}function dp(e,t={}){let{size:n}=t,r=jf(e);return n&&(cf(r,n),r=Uf(r)),new TextDecoder().decode(r)}function fp(e,t={}){let{strict:n=!1}=t;try{return $f(e,{strict:n}),!0}catch{return!1}}var pp,mp,hp,gp,_p,vp,yp,bp,xp,B=o((()=>{Qf(),sf(),hf(),xf(),Ef(),pp=new TextEncoder,mp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),hp=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}\\`)`}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.IntegerOutOfRangeError`})}},gp=class extends F{constructor(e){super(`Value \\`${typeof e==`object`?wf(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`})}},_p=class extends F{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`})}},vp=class extends F{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`})}},yp=class extends F{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`})}},bp=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}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SliceOffsetOutOfBoundsError`})}},xp=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}\\`).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Hex.SizeExceedsPaddingSizeError`})}}}));function Sp(e){return{address:e.address,amount:R(e.amount),index:R(e.index),validatorIndex:R(e.validatorIndex)}}var Cp=o((()=>{B()}));function wp(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:R(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:R(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:R(e.gasLimit)},...typeof e.number==`bigint`&&{number:R(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:R(e.prevRandao)},...typeof e.time==`bigint`&&{time:R(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Sp)}}}var Tp=o((()=>{B(),Cp()})),Ep,Dp,Op,kp,Ap,jp=o((()=>{Ep=[{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`}],Dp=[{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`}]}],Op=[{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`}],[...Op],[...Op],kp=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],Ap=[{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`}]})),Mp=o((()=>{})),Np,Pp,Fp,Ip,Lp=o((()=>{Np=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Pp=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Fp=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Ip=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),Rp,zp,Bp,Vp,Hp,Up=o((()=>{A(),Rp=class extends k{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`})}},zp=class extends k{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} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},Bp=class extends k{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`})}},Vp=class extends k{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Hp=class extends k{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Wp(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 Xt({docsPath:Gp});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Zt({docsPath:Gp});return Vi([r,Qi(i.inputs,n)])}var Gp,Kp=o((()=>{bn(),Hi(),ua(),Gp=`/docs/contract/encodeDeployData`}));function qp({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new Rp({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new Rp({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Jp=o((()=>{Up()}));function Yp(e,{docsPath:t,...n}){return new jo((()=>{let t=Vu(e,n);return t instanceof zu?e:t})(),{docsPath:t,...n})}var Xp=o((()=>{Lo(),Bu(),Hu()}));function Zp(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var Qp=o((()=>{}));function $p({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=()=>em.delete(t),s=()=>c().map(({args:e})=>e),c=()=>em.get(t)||[],l=e=>em.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Zp();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 em,tm=o((()=>{Qp(),em=new Map})),nm,rm,im,am=o((()=>{no(),A(),Ao(),nm=class extends k{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=>` ${ko(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},rm=class extends k{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${ko(t)}`,`Response: ${to(e)}`],name:`OffchainLookupResponseMalformedError`})}},im=class extends k{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 om(e){let{abi:t,data:n}=e,r=Ui(n,0,4),i=t.find(e=>e.type===`function`&&r===da(Bt(e)));if(!i)throw new dn(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?Ba(i.inputs,Ui(n,4)):void 0}}var sm=o((()=>{bn(),Ji(),fa(),Qa(),Ut()}));function cm(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=pa({abi:t,args:r,name:n});if(!e)throw new an(n,{docsPath:lm});i=e}if(i.type!==`error`)throw new an(void 0,{docsPath:lm});let a=da(Bt(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new rn(i.name,{docsPath:lm});o=Qi(i.inputs,r)}return Vi([a,o])}var lm,um=o((()=>{bn(),Hi(),fa(),ua(),Ut(),ga(),lm=`/docs/contract/encodeErrorResult`}));function dm(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=pa({abi:t,name:n});if(!e)throw new ln(n,{docsPath:fm});i=e}if(i.type!==`function`)throw new ln(void 0,{docsPath:fm});if(!i.outputs)throw new un(i.name,{docsPath:fm});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new vn(r)})();return Qi(i.outputs,a)}var fm,pm=o((()=>{bn(),ua(),ga(),fm=`/docs/contract/encodeFunctionResult`}));async function mm(e){let{data:t,ccipRequest:n}=e,{args:[r]}=om({abi:Dp,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await mm({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=hm(e)}})),dm({abi:Dp,functionName:`query`,result:[i,a]})}function hm(e){return e.name===`HttpRequestError`&&e.status?cm({abi:Dp,errorName:`HttpError`,args:[e.status,e.shortMessage]}):cm({abi:[Ta],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var gm=o((()=>{jp(),Da(),sm(),um(),pm()})),_m=c({ccipRequest:()=>ym,offchainLookup:()=>vm,offchainLookupAbiItem:()=>xm,offchainLookupSignature:()=>bm});async function vm(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=$a({data:r,abi:[xm]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:ym;try{if(!Wd(i,o))throw new im({sender:o,to:i});let{data:r}=await Cm(e,{blockNumber:t,blockTag:n,data:zi([l,Qi([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await mm({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new nm({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function ym({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 Ro({body:s,details:i?.error?to(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!D(i)){r=new rm({result:i,url:a});continue}return i}catch(e){r=new Ro({body:s,details:e.message,url:a})}}throw r}var bm,xm,Sm=o((()=>{km(),am(),Vo(),eo(),ua(),Gd(),Hi(),Wt(),gm(),no(),bm=`0x556f1830`,xm={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 Cm(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?_a(n):void 0;if(u&&(f||p))throw new k(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new k(\"Cannot provide both `code` & `to` as parameters.\");let C=u&&d,w=f&&p&&b&&d,T=C||w,ne=C?Em({code:u,data:d}):w?Dm({data:d,factory:f,factoryData:p,to:b}):d;try{ad(t);let n=(typeof a==`bigint`?M(a):void 0)||o,u=l?wp(l):void 0,d=td(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Ju)({...Wu(ee,{format:f}),accessList:s,account:te,authorizationList:r,blobs:c,data:ne,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:T?void 0:b,value:x},`call`);if(i&&wm({request:p})&&!d&&!u)try{return await Tm(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Vp)&&!(e instanceof Rp))throw e}let C=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),w=await e.request({method:`eth_call`,params:C});return w===`0x`?{data:void 0}:{data:w}}catch(n){let r=Om(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Sm(),_m));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw T&&r?.slice(0,10)===`0x101bb98d`?new Fo({factory:f}):Yp(n,{...t,account:te,chain:e.chain})}}function wm({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 Tm(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 qp({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Vp})(),u=(typeof a==`bigint`?M(a):void 0)||o,{schedule:d}=$p({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=Sa({abi:Ep,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Em({code:Ip,data:r})}:{to:l,data:r}},u]});return Qd({abi:Ep,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new Io({data:f});return f===`0x`?{data:void 0}:{data:f}}function Em(e){let{code:t,data:n}=e;return Wp({abi:Lt([`constructor(bytes, bytes)`]),bytecode:Np,args:[t,n]})}function Dm(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Wp({abi:Lt([`constructor(address, bytes, address, bytes)`]),bytecode:Pp,args:[i,t,n,r]})}function Om(e){if(!(e instanceof k))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var km=o((()=>{zt(),Tp(),va(),jp(),Mp(),Lp(),A(),Up(),Lo(),ef(),Kp(),Ca(),Jp(),N(),Xp(),Gu(),Qu(),tm(),nd(),od()}));ef(),Ca(),km();async function Am(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Sa({abi:n,args:i,functionName:a});try{let{data:t}=await E(e,Cm,`call`)({...o,data:s,to:r});return Qd({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw ys(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let jm=new Map,Mm=new Map,Nm=0;function Pm(e,t,n){let r=++Nm,i=()=>jm.get(e)||[],a=()=>{let t=i();jm.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Mm.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(jm.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`&&Mm.set(e,l),o}async function Fm(e){return new Promise(t=>setTimeout(t,e))}function Im(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Fm(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Fm(r),s())};s()})(),a}A();var Lm=class extends k{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`})}},Rm=class extends k{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Up();function zm({chain:e,currentChainId:t}){if(!e)throw new Bp;if(t!==e.id)throw new zp({chain:e,currentChainId:t})}async function Bm(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}va(),A(),Hi(),Gu(),Qu(),Ai(),od();let Vm=new ki(128);async function Hm(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 Lm({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?_a(n):null;try{ad(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Eu({authorization:o[0]}).catch(()=>{throw new k(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await E(e,Ld,`getChainId`)({}),r&&zm({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Ju)({...Wu(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?zi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Vm.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=>(Vm.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Vm.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await E(e,Hd,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?zi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...zd,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await E(e,Bm,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new Rm({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new Rm({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof Rm?e:Id(e,{...t,account:y,chain:t.chain||void 0})}}va(),Ca();async function Um(e,t){return Um.internal(e,Hm,`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 Lm({docsPath:`/docs/contract/writeContract`});let u=a?_a(a):null,d=Sa({abi:i,args:s,functionName:c});try{return await E(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw ys(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Um||={}),A();var Wm=class extends k{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 Gm(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 Fm(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()})}Bn(),qu();let Km={\"0x0\":`reverted`,\"0x1\":`success`};function qm(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=>Kd(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?zn(e.transactionIndex):null,status:e.status?Km[e.status]:null,type:e.type?dd[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Jm=Ku(`transactionReceipt`,qm);va(),A(),vs(),Ca(),Hi(),Bn(),N();let Ym=M(0,{size:32});async function Xm(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?_a(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?Sa({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?zi([n,t.dataSuffix]):n,to:t.to,value:t.value?M(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:M(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 ls(new k(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new hs(new k(e,{details:e}))}let t=[];for(let n of d){let i=Hm(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?j(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:zi([...n.map(e=>e.status===`fulfilled`?e.value:Ym),M(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Id(n,{...t,account:l,chain:t.chain})}}Ji(),In(),Bn();async function Zm(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=Fn(qi(t,-64,-32)),r=qi(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>Ym.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:zn(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?zn(i):void 0,receipts:a?.map(e=>({...e,blockNumber:j(e.blockNumber),gasUsed:j(e.gasUsed),status:Km[e.status]}))??[],statusCode:l,status:c,version:o}}A(),Qp(),no();async function Qm(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=to([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=Zp(),p,m=Pm(l,{resolve:d,reject:f},t=>{let s=Im(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await Gm(async()=>{let t=await E(e,Zm,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Wm(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 $m({id:n}))},s):void 0,await u}var $m=class extends k{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let eh=256,th;function nh(e=11){if(!th||eh+e>256*2){th=``,eh=0;for(let e=0;e<256;e++)th+=(256+Math.random()*256|0).toString(16).substring(1)}return th.substring(eh,eh+++e)}va();function rh(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?_a(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:nh(),...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(_)})}N();async function ih(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}id(),Oi(),A(),Up(),Bu(),Ri(),Gt(),Ji(),Bn();function ah(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!Fi(n))throw new Di({address:n});if(t<0)throw new Hp({chainId:t})}sh(e)}function oh(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new Ad;for(let e of t){let t=O(e),n=zn(Ui(e,0,1));if(t!==32)throw new jd({hash:e,size:t});if(n!==1)throw new Md({hash:e,version:n})}}sh(e)}function sh(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Hp({chainId:t});if(i&&!Fi(i))throw new Di({address:i});if(r&&r>rd)throw new ku({maxFeePerGas:r});if(n&&r&&n>r)throw new Ru({maxFeePerGas:r,maxPriorityFeePerGas:n})}function ch(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Hp({chainId:t});if(a&&!Fi(a))throw new Di({address:a});if(n||i)throw new k(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>rd)throw new ku({maxFeePerGas:r})}function lh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!Fi(a))throw new Di({address:a});if(t!==void 0&&t<=0)throw new Hp({chainId:t});if(n||i)throw new k(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>rd)throw new ku({maxFeePerGas:r})}Oi(),Do(),Ri();function uh(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 To({storageKey:i[e]});if(!Fi(r,{strict:!1}))throw new Di({address:r});t.push([r,i])}return t}Do(),Hi(),In(),N();function dh(e,t){let n=Fd(e);return n===`eip1559`?mh(e,t):n===`eip2930`?hh(e,t):n===`eip4844`?ph(e,t):n===`eip7702`?fh(e,t):gh(e,t)}function fh(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;ah(e);let f=uh(u),p=vh(n);return Vi([`0x04`,bu([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,..._h(e,t)])])}function ph(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;oh(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=>Un(e)),n=e.kzg,r=xd({blobs:t,kzg:n});f===void 0&&(f=Ed({commitments:r})),p===void 0&&(p=Pd({blobs:t,commitments:r,proofs:Sd({blobs:t,commitments:r,kzg:n})}))}let m=uh(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??[],..._h(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 Vi([`0x03`,bu(p?[h,g,_,v]:h)])}function mh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;sh(e);let d=uh(l);return Vi([`0x02`,bu([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,..._h(e,t)])])}function hh(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;ch(e);let u=uh(c);return Vi([`0x01`,bu([M(n),a?M(a):`0x`,l?M(l):`0x`,r?M(r):`0x`,o??`0x`,s?M(s):`0x`,i??`0x`,u,..._h(e,t)])])}function gh(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;lh(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 xo({v:t.v});return e})(),r=Fn(t.r),i=Fn(t.s);l=[...l,M(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,M(n),`0x`,`0x`]);return bu(l)}function _h(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=Fn(n.r),o=Fn(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]}N();function vh(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?Vn(e):`0x`,a,r?Vn(r):`0x`,..._h({},i)])}return t}Pi(),Gd();async function yh({address:e,authorization:t,signature:n}){return Wd(Mi(e),await Eu({authorization:t,signature:n}))}Ai();let bh=new ki(8192);function xh(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(bh.get(n))return bh.get(n);let r=e().finally(()=>bh.delete(n));return bh.set(n,r),r}A(),Vo(),vs(),N(),no();function Sh(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 es(Error(`method not supported`),{method:l});return xh(()=>Gm(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case Go.code:throw new Go(t);case Ko.code:throw new Ko(t);case qo.code:throw new qo(t,{method:n.method});case Jo.code:throw new Jo(t);case Yo.code:throw new Yo(t);case Xo.code:throw new Xo(t);case Zo.code:throw new Zo(t);case Qo.code:throw new Qo(t);case $o.code:throw new $o(t);case es.code:throw new es(t,{method:n.method});case ts.code:throw new ts(t);case ns.code:throw new ns(t);case rs.code:throw new rs(t);case is.code:throw new is(t);case as.code:throw new as(t);case os.code:throw new os(t);case ss.code:throw new ss(t);case cs.code:throw new cs(t);case ls.code:throw new ls(t);case us.code:throw new us(t);case ds.code:throw new ds(t);case fs.code:throw new fs(t);case ps.code:throw new ps(t);case ms.code:throw new ms(t);case hs.code:throw new hs(t);case 5e3:throw new rs(t);case gs.code:throw new gs(t);default:throw e instanceof k?e:new _s(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof Ro){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})=>Ch(e)}),{enabled:i,id:i?Wn(`${c}.${to(n)}`):void 0})}}function Ch(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===ts.code||e.code===Yo.code:e instanceof Ro&&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 wh(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 Th(){return{}}A(),Pn(),Pa(),tr(),N();function Eh(e,t=`hex`){return Dh(Ma((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Mn(e);return Xn(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Dh(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Un(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=Oh(e,n,128),i=e.readBytes(r);return t===`hex`?Un(i):i}return kh(e,Oh(e,n,192),t)}function Oh(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 k(`Invalid RLP prefix`)}function kh(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Dh(e,n));return i}Wt(),Gt();function Ah(e){return D(e)&&O(e)===32}function jh(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 Mh(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Nh=Mh();Vo(),no();function Ph(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 jh(async({signal:e})=>{let t={...l,body:to(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Nh.take(),...e})):{jsonrpc:`2.0`,id:i.id??Nh.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 Bo({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 Ro({body:i,details:to(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof Ro||e instanceof Bo?e:new Ro({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}}}Hi(),Gt(),N();function Ih(e){let t=typeof e==`string`?Wn(e):typeof e.raw==`string`?e.raw:Un(e.raw);return zi([Wn(`\u0019Ethereum Signed Message:\n${O(t)}`),t])}hi();function Lh(e,t){return mi(Ih(e),t)}no(),A();var Rh=class extends k{constructor({domain:e}){super(`Invalid domain \"${to(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},zh=class extends k{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`.\"]})}},Bh=class extends k{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};bn(),Oi(),Ri(),Gt(),N(),Zi(),no();function Vh(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 to({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Hh(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(Xi);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`&&!Fi(o))throw new Di({address:o});let c=r.match(Yi);if(c){let[e,t]=c;if(t&&O(o)!==Number.parseInt(t,10))throw new pn({expectedSize:Number.parseInt(t,10),givenSize:O(o)})}let l=i[r];l&&(Wh(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new Rh({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new zh({primaryType:r,types:i})}function Uh({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 Wh(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Bh({type:e})}ua(),Hi(),N(),hi();function Gh(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Uh({domain:t}),...e.types};Hh({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(Kh({domain:t,types:i})),r!==`EIP712Domain`&&a.push(qh({data:n,primaryType:r,types:i})),mi(zi(a))}function Kh({domain:e,types:t}){return qh({data:e,primaryType:`EIP712Domain`,types:t})}function qh({data:e,primaryType:t,types:n}){return mi(Jh({data:e,primaryType:t,types:n}))}function Jh({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Yh({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=Qh({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return Qi(r,i)}function Yh({primaryType:e,types:t}){return mi(Vn(Xh({primaryType:e,types:t})))}function Xh({primaryType:e,types:t}){let n=``,r=Zh({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 Zh({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])Zh({primaryType:e.type,types:t},n);return n}function Qh({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},mi(Jh({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},mi(r)];if(n===`string`)return[{type:`bytes32`},mi(Vn(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>Qh({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},mi(Qi(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}var $h=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 eg(e,t){return e.exec(t)?.groups}let tg=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ng=/^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)?$/,rg=/^\\(.+?\\).*?$/,ig=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function ag(e){let t=e.type;if(ig.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+=ag(i),r<n-1&&(t+=`, `)}let r=eg(ig,e.type);return t+=`)${r?.array||``}`,ag({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function og(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=ag(i),r!==n-1&&(t+=`, `)}return t}function sg(e){return e.type===`function`?`function ${e.name}(${og(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${og(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${og(e.inputs)})`:e.type===`error`?`error ${e.name}(${og(e.inputs)})`:e.type===`constructor`?`constructor(${og(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let cg=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function lg(e){return cg.test(e)}function ug(e){return eg(cg,e)}let dg=new Set([`memory`,`indexed`,`storage`,`calldata`]),fg=new Set([`calldata`,`memory`,`storage`]);var pg=class extends $h{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`})}},mg=class extends $h{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`})}},hg=class extends $h{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`})}},gg=class extends $h{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},_g=class extends $h{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`})}},vg=class extends $h{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`})}},yg=class extends $h{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`})}},bg=class extends $h{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`})}},xg=class extends $h{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Sg=class extends $h{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`})}},Cg=class extends $h{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`})}},wg=class extends $h{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 Tg(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 Eg=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}]]),Dg=/^(?<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$_]*))?$/,Og=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,kg=/^u?int$/;function Ag(e,t){let n=Tg(e,t?.type,t?.structs);if(Eg.has(n))return Eg.get(n);let r=rg.test(e),i=eg(r?Og:Dg,e);if(!i)throw new gg({param:e});if(i.name&&Pg(i.name))throw new _g({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=jg(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(Ag(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(kg.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Mg(c))throw new mg({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new vg({param:e,type:t?.type,modifier:i.modifier});if(fg.has(i.modifier)&&!Fg(c,!!i.array))throw new yg({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Eg.set(n,u),u}function jg(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?jg(o,[...t,n.trim()]):jg(o,t,`${n}${i}`,r);case`(`:return jg(o,t,`${n}${i}`,r+1);case`)`:return jg(o,t,`${n}${i}`,r-1);default:return jg(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new wg({current:n,depth:r});return t.push(n.trim()),t}function Mg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||tg.test(e)||ng.test(e)}let Ng=/^(?: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 Pg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||tg.test(e)||ng.test(e)||Ng.test(e)}function Fg(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Ig(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!lg(n))continue;let i=ug(n);if(!i)throw new xg({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=Ag(t,{type:`struct`});o.push(n)}if(!o.length)throw new Sg({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]=Rg(a,t)}return r}let Lg=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function Rg(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(rg.test(i.type))r.push(i);else{let e=eg(Lg,i.type);if(!e?.type)throw new bg({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new Cg({type:o});r.push({...i,type:`tuple${a??``}`,components:Rg(t[o],t,new Set([...n,o]))})}else if(Mg(o))r.push(i);else throw new pg({type:o})}}return r}function zg(e){let t=[];if(typeof e==`string`){let n=jg(e),r=n.length;for(let e=0;e<r;e++)t.push(Ag(n[e],{modifiers:dg}))}else{let n=Ig(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(lg(r))continue;let a=jg(r),o=a.length;for(let e=0;e<o;e++)t.push(Ag(a[e],{modifiers:dg,structs:n}))}}if(t.length===0)throw new hg({params:e});return t}let Bg={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;Gs(),pi(),Qf(),B();function Vg(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=di(kf(e));return n===`Bytes`?r:L(r)}function Hg(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=Ws(Cd,kf(e),kf(t));return r===`Bytes`?i:L(i)}function Ug(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=Cd(kf(e));return n===`Bytes`?r:L(r)}function Wg(e){return fp(e)&&op(e)===32}Qf(),sf(),B(),Ef();function Gg(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 Qg({prefix:r,cause:new e_});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new Qg({prefix:r,cause:new $g});return}throw new Zg({publicKey:e})}function Kg(e){let t=(()=>{if(fp(e))return Jg(e);if(Wf(e))return qg(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 Gg(t),t}function qg(e){return Jg(L(e))}function Jg(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new t_({publicKey:e});return e.length===130?{prefix:4,x:BigInt(z(e,0,32)),y:BigInt(z(e,32,64))}:e.length===132?{prefix:Number(z(e,0,1)),x:BigInt(z(e,1,33)),y:BigInt(z(e,33,65))}:{prefix:Number(z(e,0,1)),x:BigInt(z(e,1,33))}}function Yg(e,t={}){return jf(Xg(e,t))}function Xg(e,t={}){Gg(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return I(a?R(n,{size:1}):`0x`,R(r,{size:32}),typeof i==`bigint`?R(i,{size:32}):`0x`)}var Zg=class extends F{constructor({publicKey:e}){super(`Value \\`${wf(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`})}},Qg=class extends F{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`})}},$g=class extends F{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`})}},e_=class extends F{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},t_=class extends F{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 ${op(ep(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};Qf(),sf();let n_=/^0x[a-fA-F0-9]{40}$/;function r_(e,t={}){let{strict:n=!0}=t;if(!n_.test(e))throw new l_({address:e,cause:new u_});if(n){if(e.toLowerCase()===e)return;if(i_(e)!==e)throw new l_({address:e,cause:new d_})}}function i_(e){if(Bg.has(e))return Bg.get(e);r_(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Vg(Mf(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 Bg.set(e,i),i}function a_(e,t={}){let{checksum:n=!1}=t;return r_(e),n?i_(e):e}function o_(e,t={}){return a_(`0x${Vg(`0x${Xg(e).slice(4)}`).substring(26)}`,t)}function s_(e,t){return r_(e,{strict:!1}),r_(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function c_(e,t={}){let{strict:n=!0}=t??{};try{return r_(e,{strict:n}),!0}catch{return!1}}var l_=class extends F{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`})}},u_=class extends F{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`})}},d_=class extends F{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};let f_=/^(.*)\\[([0-9]*)\\]$/,p_=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,m_=/^(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 h_=2n**256n-1n;Qf(),sf(),B();function g_(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=P_(t.type);if(a){let[n,o]=a;return v_(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return S_(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return __(e,{checksum:r});if(t.type===`bool`)return y_(e);if(t.type.startsWith(`bytes`))return b_(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return x_(e,t);if(t.type===`string`)return C_(e,{staticPosition:i});throw new Z_(t.type)}function __(e,t={}){let{checksum:n=!1}=t;return[(e=>n?i_(e):e)(L(Lf(e.readBytes(32),-20))),32]}function v_(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Bf(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Bf(e.readBytes(32)),s=F_(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=g_(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(F_(t)){let n=a+Bf(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=g_(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]=g_(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function y_(e){return[zf(e.readBytes(32),{size:32}),32]}function b_(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Bf(e.readBytes(32));e.setPosition(n+t);let r=Bf(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[L(i),32]}return[L(e.readBytes(Number.parseInt(i,10),32)),32]}function x_(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?Rf(i,{signed:n}):Bf(i,{signed:n}),32]}function S_(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(F_(t)){let n=i+Bf(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=g_(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]=g_(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function C_(e,{staticPosition:t}){let n=t+Bf(e.readBytes(32));e.setPosition(n);let r=Bf(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Vf(Hf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function w_({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(T_({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function T_({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=P_(r.type);if(i){let[t,a]=i;return O_(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return N_(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return D_(n,{checksum:e});if(r.type===`bool`)return A_(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=m_.exec(r.type)??[];return j_(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return k_(n,{type:r.type});if(r.type===`string`)return M_(n);throw new Z_(r.type)}function E_(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=op(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+=op(s)):n.push(s)}return I(...n,...r)}function D_(e,t){let{checksum:n=!1}=t;return r_(e,{strict:n}),{dynamic:!1,encoded:rp(e.toLowerCase())}}function O_(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new X_(e);if(!a&&e.length!==r)throw new q_({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=T_({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=E_(s);if(a){let t=R(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?I(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:I(...s.map(({encoded:e})=>e))}}function k_(e,{type:t}){let[,n]=t.split(`bytes`),r=op(e);if(!n){let t=e;return r%32!=0&&(t=ip(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:I(rp(R(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new J_({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ip(e)}}function A_(e){if(typeof e!=`boolean`)throw new F(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:rp(tp(e))}}function j_(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 hp({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 M_(e){let t=np(e),n=Math.ceil(op(t)/32),r=[];for(let e=0;e<n;e++)r.push(ip(z(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:I(ip(R(op(t),{size:32})),...r)}}function N_(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=T_({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?E_(a):I(...a.map(({encoded:e})=>e))}}function P_(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function F_(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(F_);let n=P_(e.type);return!!(n&&F_({...e,type:n[1]}))}sf();let I_={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 B_({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new z_({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new R_({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 R_({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 L_(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(I_);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var R_=class extends F{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},z_=class extends F{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`})}},B_=class extends F{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`})}};Qf(),sf(),B();function V_(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?jf(t):t,o=L_(a);if(If(a)===0&&e.length>0)throw new K_;if(If(a)&&If(a)<32)throw new G_({data:typeof t==`string`?t:L(t),parameters:e,size:If(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]=g_(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function H_(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new Y_({expectedLength:e.length,givenLength:t.length});let i=E_(w_({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function U_(e,t){if(e.length!==t.length)throw new Y_({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(U_.encode(i,a))}return I(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return r_(e),rp(e.toLowerCase(),r?32:0)}if(e===`string`)return np(n);if(e===`bytes`)return n;if(e===`bool`)return rp(tp(n),r?32:1);let i=e.match(m_);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return R(n,{size:r?32:o,signed:t===`int`})}let a=e.match(p_);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new J_({expectedSize:Number.parseInt(t,10),value:n});return ip(n,r?32:0)}let o=e.match(f_);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`:I(...i)}throw new Z_(e)}e.encode=t})(U_||={});function W_(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?zg(e):e}var G_=class extends F{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${og(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},K_=class extends F{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},q_=class extends F{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`})}},J_=class extends F{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${op(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},Y_=class extends F{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`})}},X_=class extends F{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},Z_=class extends F{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};Qf(),sf(),B();function Q_(e){return $_(e,`Hex`)}function $_(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return ev(L_((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new vp(e);return jf(e)}return e})(),{recursiveReadLimit:1/0}),n)}function ev(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?L(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=tv(e,n,128),i=e.readBytes(r);return t===`Hex`?L(i):i}return nv(e,tv(e,n,192),t)}function tv(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 nv(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(ev(e,n));return i}function rv(e,t){let{as:n}=t,r=av(e),i=L_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?L(i.bytes):i.bytes}function iv(e,t={}){let{as:n=`Hex`}=t;return rv(e,{as:n})}function av(e){return Array.isArray(e)?ov(e.map(e=>av(e))):sv(e)}function ov(e){let t=e.reduce((e,t)=>e+t.length,0),n=cv(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 sv(e){let t=typeof e==`string`?jf(e):e,n=cv(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 cv(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new F(`Length is too large.`)}sf(),B(),Ef();function lv(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new Cv({signature:e});if(e.r<0n||e.r>h_)throw new wv({value:e.r});if(e.s<0n||e.s>h_)throw new Tv({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Ev({value:e.yParity})}function uv(e){return dv(L(e))}function dv(e){if(e.length!==130&&e.length!==132)throw new Sv({signature:e});let t=BigInt(z(e,0,32)),n=BigInt(z(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return bv(t)}catch{throw new Ev({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function fv(e){if(e.r!==void 0&&e.s!==void 0)return pv(e)}function pv(e){let t=typeof e==`string`?dv(e):e instanceof Uint8Array?uv(e):typeof e.r==`string`?hv(e):e.v?mv(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return lv(t),t}function mv(e){return{r:e.r,s:e.s,yParity:bv(e.v)}}function hv(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=bv(t)),typeof n!=`number`)throw new Ev({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function gv(e){let[t,n,r]=e;return pv({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function _v(e){lv(e);let t=e.r,n=e.s;return I(R(t,{size:32}),R(n,{size:32}),typeof e.yParity==`number`?R(xv(e.yParity),{size:1}):`0x`)}function vv(e){let{r:t,s:n,yParity:r}=e;return{r:R(t,{size:32}),s:R(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function yv(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:sp(R(t)),n===0n?`0x`:sp(R(n))]}function bv(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Dv({value:e})}function xv(e){if(e===0)return 27;if(e===1)return 28;throw new Ev({value:e})}var Sv=class extends F{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${op(ep(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},Cv=class extends F{constructor({signature:e}){super(`Signature \\`${wf(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},wv=class extends F{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`})}},Tv=class extends F{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`})}},Ev=class extends F{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`})}},Dv=class extends F{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`})}};B();function Ov(e,t={}){return typeof e.chainId==`string`?kv(e):{...e,...t.signature}}function kv(e){let{address:t,chainId:n,nonce:r}=e,i=fv(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function Av(e){return e.map(kv)}function jv(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:R(n),nonce:R(r),...vv(i)}}function Mv(e){return e.map(jv)}gu(),Qf(),B();function Nv(e){let{privateKey:t}=e;return Kg(tu.ProjectivePoint.fromPrivateKey(ep(t).slice(2)))}function Pv(e){return o_(Fv(e))}function Fv(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return Kg(new tu.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(ep(t).substring(2)))}function Iv(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=tu.sign(kf(r),kf(i),{extraEntropy:typeof t==`boolean`?t:ep(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Lv(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?s_(t,Pv({payload:r,signature:a})):tu.verify(a,kf(r),Yg(i),...n?[{prehash:!0,lowS:!0}]:[])}sf(),B();let Rv=W_(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function zv(e){if(typeof e==`string`){if(z(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Hv(e)}else lv(e.authorization)}function Bv(e){zv(e);let t=up(z(e,-64,-32)),n=z(e,-t-64,-64),r=z(e,0,-t-64),[i,a,o]=V_(Rv,n);return{authorization:Ov({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 Vv(e){try{return zv(e),!0}catch{return!1}}var Hv=class extends F{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`})}};Do(),Ji(),Bn();function Uv(e){let t=qi(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`&&zn(t)>=192)return`legacy`;throw new Co({serializedType:t})}Oi(),Do(),Ri(),Wt(),On(),In(),Bn();function Wv(e){let t=Uv(e);return t===`eip1559`?qv(e):t===`eip2930`?Jv(e):t===`eip4844`?Kv(e):t===`eip7702`?Gv(e):Yv(e)}function Gv(e){let t=Xv(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new wo({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:zn(n),type:`eip7702`};return D(s)&&s!==`0x`&&(h.to=s),D(o)&&o!==`0x`&&(h.gas=j(o)),D(l)&&l!==`0x`&&(h.data=l),D(r)&&(h.nonce=r===`0x`?0:zn(r)),D(c)&&c!==`0x`&&(h.value=j(c)),D(a)&&a!==`0x`&&(h.maxFeePerGas=j(a)),D(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=j(i)),u.length!==0&&u!==`0x`&&(h.accessList=Zv(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=Qv(d)),ah(h),{...t.length===13?$v(t):void 0,...h}}function Kv(e){let t=Xv(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 wo({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:zn(a),to:u,type:`eip4844`};return D(l)&&l!==`0x`&&(S.gas=j(l)),D(f)&&f!==`0x`&&(S.data=f),D(o)&&(S.nonce=o===`0x`?0:zn(o)),D(d)&&d!==`0x`&&(S.value=j(d)),D(m)&&m!==`0x`&&(S.maxFeePerBlobGas=j(m)),D(c)&&c!==`0x`&&(S.maxFeePerGas=j(c)),D(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=j(s)),p.length!==0&&p!==`0x`&&(S.accessList=Zv(p)),y&&b&&x&&(S.sidecars=Pd({blobs:y,commitments:b,proofs:x})),oh(S),{...r.length===14?$v(r):void 0,...S}}function qv(e){let t=Xv(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new wo({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:zn(n),type:`eip1559`};return D(s)&&s!==`0x`&&(m.to=s),D(o)&&o!==`0x`&&(m.gas=j(o)),D(l)&&l!==`0x`&&(m.data=l),D(r)&&(m.nonce=r===`0x`?0:zn(r)),D(c)&&c!==`0x`&&(m.value=j(c)),D(a)&&a!==`0x`&&(m.maxFeePerGas=j(a)),D(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=j(i)),u.length!==0&&u!==`0x`&&(m.accessList=Zv(u)),sh(m),{...t.length===12?$v(t):void 0,...m}}function Jv(e){let t=Xv(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new wo({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:zn(n),type:`eip2930`};return D(o)&&o!==`0x`&&(p.to=o),D(a)&&a!==`0x`&&(p.gas=j(a)),D(c)&&c!==`0x`&&(p.data=c),D(r)&&(p.nonce=r===`0x`?0:zn(r)),D(s)&&s!==`0x`&&(p.value=j(s)),D(i)&&i!==`0x`&&(p.gasPrice=j(i)),l.length!==0&&l!==`0x`&&(p.accessList=Zv(l)),ch(p),{...t.length===11?$v(t):void 0,...p}}function Yv(e){let t=Eh(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new wo({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(D(a)&&a!==`0x`&&(d.to=a),D(i)&&i!==`0x`&&(d.gas=j(i)),D(s)&&s!==`0x`&&(d.data=s),D(n)&&(d.nonce=n===`0x`?0:zn(n)),D(o)&&o!==`0x`&&(d.value=j(o)),D(r)&&r!==`0x`&&(d.gasPrice=j(r)),lh(d),t.length===6)return d;let f=D(c)&&c!==`0x`?j(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 xo({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Xv(e){return Eh(`0x${e.slice(4)}`,`hex`)}function Zv(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Fi(r,{strict:!1}))throw new Di({address:r});t.push({address:r,storageKeys:i.map(e=>Ah(e)?e:Fn(e))})}return t}function Qv(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:zn(r),nonce:a===`0x`?0:zn(a),...$v([o,s,c])})}return t}function $v(e){let t=e.slice(-3),n=t[0]===`0x`||j(t[0])===0n?27n:28n;return{r:En(t[1],{size:32}),s:En(t[2],{size:32}),v:n,yParity:n===27n?0:1}}A();var ey=class extends k{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function ty(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new ey({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}`)}jp(),Lp(),bn(),A(),Lo(),ef(),Ca(),Jp();async function ny(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 qp({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=Sa({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=ys(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=>E(e,Am,`readContract`)({...f===null?{code:Ip}:{address:f},abi:Ep,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 $t;if(!a)throw new Io({data:r});let e=Qd({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=ys(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 k(`multicall results mismatch`);return _}sf();function ry(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 F(`Unable to normalize signature.`);return i}function iy(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return c_(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)=>iy(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=>iy(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ay(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 ay(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`))&&c_(n[r],{strict:!1}))return o}}sf(),B();function oy(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=fp(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?sy(e)===z(t,0,4):e.type===`event`?ly(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new dy({name:t});if(o.length===1)return{...o[0],...i?{hash:ly(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:ly(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?iy(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=ay(e.inputs,s.inputs,r);if(t)throw new uy({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 dy({name:t});return{...c,...i?{hash:ly(c)}:{}}}function sy(...e){return z(ly((()=>{if(Array.isArray(e[0])){let[t,n]=e;return oy(t,n)}return e[0]})()),0,4)}function cy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return oy(t,n)}return e[0]})();return ry(typeof t==`string`?t:sg(t))}function ly(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return oy(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Vg(np(cy(t)))}var uy=class extends F{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${ry(sg(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${ry(sg(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`})}},dy=class extends F{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`})}};function fy(e){return sy(e)}sf(),B();function py(e){if(z(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new gy(e)}function my(e){let{data:t,signature:n,to:r}=e;return I(H_(W_(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function hy(e){try{return py(e),!0}catch{return!1}}var gy=class extends F{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`})}};gu(),Bn(),tr();function _y({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 tu.Signature(j(e),j(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Xn(o)}jp(),Lp(),Lo(),Kp(),Ca(),Pi(),Gd(),Hi(),Wt(),Bn(),N(),km();async function vy(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 D(e)?e:typeof e==`object`&&`r`in e&&`s`in e?_y(e):Un(e)})();try{if(s===`eoa`)try{if(Wd(Mi(n),await yu({hash:i,signature:c})))return!0}catch{}return Vv(c)?await yy(e,{...t,multicallAddress:o,signature:c}):await by(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Wd(Mi(n),await yu({hash:i,signature:c})))return!0}catch{}if(e instanceof Sy)return!1;throw e}}async function yy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Bv(t.signature);if(await ih(e,{address:n,blockNumber:r,blockTag:i})===Vi([`0xef0100`,s.address]))return await xy(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 yh({address:n,authorization:d}))throw new Sy;let f=await E(e,Am,`readContract`)({...o?{address:o}:{code:Ip},authorizationList:[d],abi:Ep,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Sa({abi:kp,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Sy}async function by(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||hy(o)?o:my({data:i,signature:o,to:r}))(),u=s?{to:s,data:Sa({abi:Ap,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Wp({abi:Ap,args:[n,a,l],bytecode:Fp}),...c},{data:d}=await E(e,Cm,`call`)(u).catch(e=>{throw e instanceof jo?new Sy:e});if(Rn(d??`0x0`))return!0;throw new Sy}async function xy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await E(e,Am,`readContract`)({address:n,abi:kp,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof Mo?new Sy:e})).startsWith(`0x1626ba7e`))return!0;throw new Sy}var Sy=class extends Error{};async function Cy(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await E(e,Xm,`sendCalls`)(t);return await E(e,Qm,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}va(),N(),Qu(),od();async function wy(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Lm({docsPath:`/docs/actions/wallet/signTransaction`});let a=_a(n);ad({account:a,...t});let o=await E(e,Ld,`getChainId`)({});r!==null&&zm({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Ju;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:M(o),from:a.address}]},{retryCount:0})}va();async function Ty(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Lm({docsPath:`/docs/actions/wallet/signTypedData`});let o=_a(n),s={EIP712Domain:Uh({domain:r}),...t.types};if(Hh({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Vh({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function Ey({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=nh();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:Sh(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Dy(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>Ey({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}A();var Oy=class extends k{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};Vo(),tm();function ky(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 Oy;let b=Ph(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return Ey({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=$p({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 zo({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Hs(),Ol(),Rl(),Yc(),Tl();let Ay=Lc(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),jy=Ay.create(BigInt(`-3`)),My=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Ny=Dl({a:jy,b:My,Fp:Ay,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},zs),Py=Ny,Fy=vl(Ay,{A:jy,B:My,Z:Ay.create(BigInt(`-10`))}),Iy=Il(Py.ProjectivePoint,e=>Fy(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:Ay.ORDER,m:1,k:128,expand:`xmd`,hash:zs}),Ly=Lc(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),Ry=Ly.create(BigInt(`-3`)),zy=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),By=Dl({a:Ry,b:zy,Fp:Ly,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Vs),Vy=vl(Ly,{A:Ry,B:zy,Z:Ly.create(BigInt(`-12`))});Il(By.ProjectivePoint,e=>Vy(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Ly.ORDER,m:1,k:192,expand:`xmd`,hash:Vs});let Hy=Lc(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Uy=Hy.create(BigInt(`-3`)),Wy=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Gy=Dl({a:Uy,b:Wy,Fp:Hy,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Bs),Ky=vl(Hy,{A:Uy,B:Wy,Z:Hy.create(BigInt(`-4`))});Il(Gy.ProjectivePoint,e=>Ky(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Hy.ORDER,m:1,k:256,expand:`xmd`,hash:Bs});let qy=Ny,Jy=Ny;Iy.hashToCurve,Iy.encodeToCurve,Qf(),B();function Yy(e){let{privateKey:t}=e;return Kg(Jy.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):L(t).slice(2)))}function Xy(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Jy.sign(r instanceof Uint8Array?r:jf(r),i instanceof Uint8Array?i:jf(i),{extraEntropy:typeof t==`boolean`?t:ep(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Zy(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Jy.verify(i,n instanceof Uint8Array?n:jf(n),Xg(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}Qf();let Qy=new TextEncoder,$y=new TextDecoder,eb=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),tb={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function nb(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]=eb[r>>18],i[t+1]=eb[r>>12&63],i[t+2]=eb[r>>6&63],i[t+3]=eb[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=$y.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function rb(e,t={}){return nb(jf(e),t)}function ib(e,t={}){return nb(Mf(e),t)}function ab(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);Qy.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(tb[r[e]]<<18)+(tb[r[e+1]]<<12)+(tb[r[e+2]]<<6)+tb[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 ob(e){return Vf(ab(e))}Qf(),sf(),B();function sb(e,t={}){let{as:n=`Hex`}=t,r=xb(e),i=L_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?L(i.bytes):i.bytes}var cb=class extends F{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},lb=class extends F{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},ub=class extends F{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},db=class extends F{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`})}},fb=class extends F{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},pb=class extends F{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},mb=class extends F{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},hb=class extends F{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},gb=class extends F{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`})}},_b=class extends F{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},vb=class extends F{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},yb=class extends F{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},bb=class extends F{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 xb(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 xb.number(e);if(typeof e==`bigint`)throw new mb;if(typeof e==`string`)return xb.string(e);if(Array.isArray(e))return xb.array(e);if(e instanceof Uint8Array)return xb.byteString(e);if(e instanceof ArrayBuffer)return xb.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return xb.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return xb.map(e);if(typeof e==`object`)return xb.object(e);throw new hb({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 gb({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 gb({number:e.toString(10)})}e.number=t;function n(e){let t=Mf(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 _b({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 vb({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 bb({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 yb({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 yb({size:i})}e.map=o})(xb||={});function Sb(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Sb.readUnsignedInteger(e,r);case 1:return Sb.readNegativeInteger(e,r);case 2:return Sb.readByteString(e,r);case 3:return Sb.readTextString(e,r);case 4:return Sb.readArray(e,r);case 5:return Sb.readMap(e,r);case 6:throw new db({tag:r});case 7:return Sb.readSimpleOrFloat(e,r);default:throw new cb({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 ub:new lb({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 fb({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 fb({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Vf(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 pb({value:t});return}throw new lb({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}})(Sb||={}),sf();function Cb(e){let t=Yg(e),n=t.slice(1,33),r=t.slice(33,65);return sb(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}function wb(e){let t=qy.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}B();function Tb(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=I(Ug(np(r)),R(n,{size:1}),R(i,{size:4}));if(!t)return a;let o=L(new Uint8Array(16)),s=L(t.id);return I(a,o,R(t.id.length,{size:2}),s,Cb(t.publicKey))}function Eb(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:rb(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}Qf(),sf(),B();function Db(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:ab(e),type:`public-key`})):[{id:ab(t),type:`public-key`}]}:{},challenge:jf(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function Ob(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Tb({flag:i,rpId:o,signCount:s}),u=Eb({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Ug(np(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:I(l,d)}}async function kb(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Db(n);try{let e=await t(r);if(!e)throw new Ab;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=wb(o);return{id:s,metadata:{authenticatorData:L(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new Ab({cause:e})}}var Ab=class extends F{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function jb(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=jf(s);if(u.length<37||a!==void 0&&!Nf(u.slice(0,32),Ug(np(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||L(ab(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Zy({hash:!0,payload:Of(u,Ug(Mf(c),{as:`Bytes`})),publicKey:i,signature:o})}let Mb=Ob;async function Nb(e){return kb(e)}function Pb(e){return jb(e)}sf(),B(),Ef();let Fb=`0x01`,Ib=`0x02`,Lb=`0x03`,Rb=`0x04`,zb=`0x7777777777777777777777777777777777777777777777777777777777777777`;function Bb(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:Bb({...e,signature:t.inner}):o_(Vb(e))}function Vb(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Fv({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return Vb({payload:t,signature:n.inner})}}function Hb(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?z(e,0,-op(zb)):e;if(op(t)===65){let e=dv(t);return lv(e),{signature:e,type:`secp256k1`}}let n=z(t,0,1),r=z(t,1),i=op(r);if(n===Fb){if(i!==129)throw new Xb({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:cp(z(r,64,96)),y:cp(z(r,96,128))},prehash:up(z(r,128,129))!==0,signature:{r:cp(z(r,0,32)),s:cp(z(r,32,64))},type:`p256`}}if(n===Ib){if(i<128)throw new Xb({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=z(r,0,e),a,o;for(let t=37;t<e;t++){let e=dp(z(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=z(n,0,t),o=e;break}catch{}}if(!a||!o)throw new Xb({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:cp(z(r,e+64,e+96)),y:cp(z(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:cp(z(r,e,e+32)),s:cp(z(r,e+32,e+64))},type:`webAuthn`}}if(n===Lb||n===Rb)return{userAddress:z(r,0,20),inner:Hb(z(r,20)),type:`keychain`,version:n===Rb?`v2`:`v1`};throw new Xb({reason:`Unknown signature type identifier: ${n}. Expected ${Fb} (P256), ${Ib} (WebAuthn), ${Lb} (Keychain V1), or ${Rb} (Keychain V2)`,serialized:t})}function Ub(e,t){if(typeof e==`string`)return Hb(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=Gb(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:o_(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:o_(Fv({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function Wb(e){if(e.type===`secp256k1`)return{signature:hv(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:cp(e.pubKeyX),y:cp(e.pubKeyY)},signature:{r:cp(e.r),s:cp(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=op(t),r,i;for(let e=37;e<n;e++){let n=dp(z(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=z(t,0,e),i=n;break}catch{}}if(!r||!i)throw new Xb({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:cp(e.pubKeyX),y:cp(e.pubKeyY)},signature:{r:cp(e.r),s:cp(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:Wb(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new Yb({envelope:e})}function Gb(e){if(typeof e!=`object`||!e)throw new Yb({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 Yb({envelope:e})}function Kb(e,t={}){let n=Gb(e);if(n===`secp256k1`)return I(_v(e.signature),t.magic?zb:`0x`);if(n===`p256`){let n=e;return I(Fb,R(n.signature.r,{size:32}),R(n.signature.s,{size:32}),R(n.publicKey.x,{size:32}),R(n.publicKey.y,{size:32}),R(+!!n.prehash,{size:1}),t.magic?zb:`0x`)}if(n===`webAuthn`){let n=e;return I(Ib,I(n.metadata.authenticatorData,np(n.metadata.clientDataJSON)),R(n.signature.r,{size:32}),R(n.signature.s,{size:32}),R(n.publicKey.x,{size:32}),R(n.publicKey.y,{size:32}),t.magic?zb:`0x`)}if(n===`keychain`){let n=e;return I(n.version===`v1`?Lb:Rb,n.userAddress,Kb(n.inner),t.magic?zb:`0x`)}throw new Yb({envelope:e})}function qb(e){let t=Gb(e);if(t===`secp256k1`)return{...vv(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:R(t.publicKey.x,{size:32}),pubKeyY:R(t.publicKey.y,{size:32}),r:R(t.signature.r,{size:32}),s:R(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=I(t.metadata.authenticatorData,np(t.metadata.clientDataJSON));return{pubKeyX:R(t.publicKey.x,{size:32}),pubKeyY:R(t.publicKey.y,{size:32}),r:R(t.signature.r,{size:32}),s:R(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:qb(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new Yb({envelope:e})}function Jb(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return o_(t.publicKey)})();if(!r)return!1;let i=Ub(e);if(i.type===`secp256k1`)return r?Lv({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return s_(o_(i.publicKey),r)?Zy({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return s_(o_(i.publicKey),r)?Pb({challenge:ep(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new Zb(`Unable to verify signature envelope of type \"${i.type}\".`)}var Yb=class extends F{constructor({envelope:e}){super(`Unable to coerce value (\\`${wf(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},Xb=class extends F{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`})}},Zb=class extends F{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};sf(),B();function Qb(e){return e.startsWith(`tempo`)?$b(e).address:e}function $b(e){if(!e.startsWith(`tempox`))throw new ex({address:e});let t=e.slice(6);return $f(t,{strict:!0}),{address:i_(t)}}var ex=class extends F{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`})}};B();function tx(e,t={}){if(typeof e.chainId==`string`)return nx(e);let n={...e,address:Qb(e.address)};return t.signature?{...n,signature:t.signature}:n}function nx(e){let{address:t,chainId:n,nonce:r}=e,i=Wb(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function rx(e){return e.map(e=>nx(e))}function ix(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=Hb(i)),tx(a)}function ax(e){let t=[];for(let n of e)t.push(ix(n));return t}function ox(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:R(n),nonce:R(r),signature:qb(i)}}function sx(e){return e.map(e=>ox(e))}function cx(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?Kb(e.signature):void 0;return[n?R(n):`0x`,t,r?R(r):`0x`,...i?[i]:[]]}function lx(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(cx(n));return t}B();function ux(e,t={}){if(`keyId`in e)return dx(e);let n=e,r={...n,address:Qb(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:Qb(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:Qb(e.address),selector:wx(e.selector),...e.recipients?{recipients:e.recipients.map(e=>Qb(e))}:{}}))}:{}};return t.signature?{...r,signature:Ub(t.signature)}:r}function dx(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=Wb(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:Cx(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:cp(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&Sx(e.period)>0?{period:Sx(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function fx(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:Sx(o)||void 0,type:l,chainId:r===`0x`?0n:cp(r),...o===void 0?{}:{expiry:Sx(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:xx(n),...r===void 0?{}:{period:Sx(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=Hb(n)),ux(u)}function px(e){return hx(e)}function mx(e){return fx(Q_(e))}function hx(e){let[t]=vx(e);return Vg(iv(t))}function gx(e){return iv(vx(e))}function _x(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:wx(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`:R(r),expiry:typeof i==`number`?R(i):null,keyId:Qb(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:R(t),...n?{period:bx(n)}:{}})),signature:qb(s),...c?{allowedCalls:c}:{}}}function vx(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?Kb(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,yx(e.limit)];return e.period&&e.period>0&&t.push(bx(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([wx(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[yx(n),s,t,i!=null&&i!==0||c||l?bx(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function yx(e){return e===0n?`0x`:R(e)}function bx(e){return e===0?`0x`:R(e)}function xx(e){return e===`0x`?0n:BigInt(e)}function Sx(e){return e===`0x`?0:up(e)}function Cx(e){return typeof e==`string`?e:Array.isArray(e)?L(new Uint8Array(e)):e}function wx(e){if(e)return e.startsWith(`0x`)?e:sy(e)}B();let Tx=`0x20c0`;function Ex(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):Dx(e)}function Dx(e){let t=Qb(e);if(!t.toLowerCase().startsWith(Tx))throw Error(`invalid tip20 address.`);return cp(z(t,6))}function Ox(e){if(typeof e==`string`){let t=Qb(e);return r_(t),t}return I(Tx,R(e,{size:18}))}B();let kx={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function Ax(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Vg(np(kx[e]??e))}let jx={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Mx={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Nx(e,t={}){if(!e)return null;let n=fv(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=Av(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=Mx[e.type]??e.type),n&&(r.v=xv(n.yParity)),r}let Px={...jx,tempo:`0x76`},Fx={...Mx,\"0x76\":`tempo`};function Ix(e,t={}){if(!e)return null;let n=Nx(e);return n.type=Fx[e.type],e.aaAuthorizationList&&(n.authorizationList=rx(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=Wb(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=dx(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=hv(e.feePayerSignature),n.feePayerSignature.v=xv(n.feePayerSignature.yParity)),n}B();function Lx(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Mv(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=R(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=R(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=R(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=R(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=R(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=R(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=R(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=jx[e.type]||e.type),e.value!==void 0&&(t.value=R(e.value)),t}B();function Rx(e){let t=Lx({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=sx(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?Qb(e.to):e.to,value:e.value?R(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?Qb(e.to):void 0,value:e.value?R(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=Ox(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=_x(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=R(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=R(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return ap(6);if(typeof e.nonceKey==`bigint`)return R(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=Px.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}sf(),B();function zx(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&r_(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Wg(e)?e:sp(e))})}return t}function Bx(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(op(r[e])!==32)throw new Vx({storageKey:r[e]});n&&r_(n,{strict:!1}),t.push([n,r])}return t}var Vx=class extends F{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${op(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};sf();let Hx={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Ux(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 Wx(e,t=`wei`){return Ux(e,Hx.gwei-Hx[t])}sf();var Gx=class extends F{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Wx(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`})}},Kx=class extends F{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`})}},qx=class extends F{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`})}},Jx=class extends F{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Wx(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Wx(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};sf(),B();let Yx=`tempo`;function Xx(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new rS;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new iS({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&r_(e.to,{strict:!1});if(n<=0)throw new Kx({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Gx({feeCap:r});if(i&&r&&i>r)throw new Jx({maxFeePerGas:r,maxPriorityFeePerGas:i})}function Zx(e){let t=Q_(z(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 qx({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:Yx});let y={chainId:Number(n),type:Yx};fp(a)&&a!==`0x`&&(y.gas=BigInt(a)),fp(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),fp(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),fp(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),fp(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),fp(u)&&u!==`0x`&&(y.validBefore=Number(u)),fp(d)&&d!==`0x`&&(y.validAfter=Number(d)),fp(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=zx(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=ax(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||c_(p)?(y.feePayerSignature=null,c_(p)&&(y.from=p)):y.feePayerSignature=gv(p)),_&&(y.keyAuthorization=fx(_));let b=v?Hb(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=Bb({payload:eS(Qx(y)),signature:b,root:!0})}catch{}return Xx(y),y}function Qx(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?Zx(e):e;return i.from&&=Qb(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:Qb(e.to)}:{}})),Xx(i),{...i,...r?{signature:Ub(r)}:{},...n?{feePayerSignature:pv(n)}:{},type:`tempo`}}function $x(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;Xx(e);let h=Bx(n),g=t.signature||e.signature,_=lx(r),v=i.map(e=>[e.to?Qb(e.to):`0x`,e.value?R(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=Ub(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return o_(t.publicKey);if(t.type===`secp256k1`)return Pv({payload:eS(Qx(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?yv(n):`0x`})(),x=[R(a),f?R(f):`0x`,d?R(d):`0x`,s?R(s):`0x`,v,h,u?R(u):`0x`,l?R(l):`0x`,typeof p==`number`?R(p):`0x`,typeof m==`number`?R(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?Ox(o):`0x`,b,_,...c?[vx(c)]:[],...g?[Kb(Ub(g))]:[]];return I(t.format===`feePayer`?`0x78`:`0x76`,iv(x))}function eS(e,t={}){let n=tS(e,{presign:!0});return t.from?Vg(I(`0x04`,n,Qb(t.from))):n}function tS(e,t={}){return Vg($x({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function nS(e,t){let n=Qb(t.sender);return Vg($x({...e,signature:void 0},{sender:n,format:`feePayer`}))}var rS=class extends F{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},iS=class extends F{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`})}};let V=[{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:[]}],aS=[{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:[]}],oS=[{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`}]}];Qf();async function sS(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=Kg(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function cS(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,kf(t)),i=Af(new Uint8Array(r)),a=Rf(Lf(i,0,32)),o=Rf(Lf(i,32,64));return o>qy.CURVE.n/2n&&(o=qy.CURVE.n-o),{r:a,s:o}}B();function lS(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:Fd(e)}function uS(e){try{return lS(e)===`tempo`}catch{return!1}}function dS(e){let t=z(e,0,1);return t===`0x76`||t===`0x78`?pS(e):Wv(e)}async function fS(e,t){if(!uS(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 dh(e,{r:R(n,{size:32}),s:R(r,{size:32}),yParity:i})}return dh(e,t)}if(lS(e)===`tempo`)return mS(e,t);throw Error(`Unsupported transaction type`)}function pS(e){let{feePayerSignature:t,nonce:n,...r}=Zx(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:R(t.r,{size:32}),s:R(t.s,{size:32}),yParity:t.yParity}}}async function mS(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return Ub({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=Qx(c,{signature:n}),r=nS(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Pv({payload:eS(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return $x(t,{feePayerSignature:pv(await e.feePayer.sign({hash:r}))})}return i===!0?n?$x(c,{format:`feePayer`,sender:e.from,signature:n}):$x(c,{feePayerSignature:null}):$x({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}B(),va(),hi();function hS(e){let{access:t}=e;return t?CS(e):SS(e)}function gS(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Yy({privateKey:e});return hS({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Mb({...t,challenge:n,rpId:r,origin:i});return Kb({metadata:a,signature:Xy({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function _S(e,t={}){let{access:n,internal_version:r}=t,i=Yy({privateKey:e});return hS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return Kb({signature:Xy({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function vS(e,t={}){let{access:n,internal_version:r}=t;return hS({access:n,internal_version:r,keyType:`secp256k1`,publicKey:Nv({privateKey:e}),async sign(t){let{hash:n}=t;return _v(Iv({payload:n,privateKey:e}))}})}function yS(e,t={}){let{id:n}=e,r=Jg(e.publicKey);return hS({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Nb({...t,challenge:e,credentialId:n});return Kb({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function bS(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return hS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return Kb({signature:await cS({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function xS(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??o_(e.publicKey),o=Xg(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?mi(I(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?Kb(Ub({userAddress:n,inner:Ub(o),type:`keychain`,version:i})):t===`secp256k1`?o:I(o,zb)}return{address:i_(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=Ub(await s({hash:Tu({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:R(a,{size:32}),s:R(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Lh(t)})},async signTransaction(e,t){let{serializer:n=fS}=t??{};return await n(e,Ub(await s({hash:mi(await n(e))})))},async signTypedData(e){return await s({hash:Gh(e)})},publicKey:o,source:r,type:`local`}}function SS(e){let t=xS(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return ux({address:o,chainId:r,expiry:i,limits:a,signature:Ub(await t.sign({hash:px({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function CS(e){let{access:t}=e,{address:n}=_a(t);return{...xS({...e,parentAddress:n}),accessKeyAddress:o_(e.publicKey),source:`accessKey`}}let wS=`0xdec0000000000000000000000000000000000000`;function H(e){return{...e,data:Sa(e),to:e.address}}B(),va();async function TS(e,t){return TS.inner(Um,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 H({address:wS,abi:aS,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(TS||={});async function ES(e,t){return ES.inner(Um,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 H({address:wS,abi:aS,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(ES||={});async function DS(e,t){return DS.inner(Um,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 H({address:wS,abi:aS,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(DS||={});async function OS(e,t){return OS.inner(Um,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 H({address:wS,abi:aS,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(OS||={});async function kS(e,t){let{account:n=e.account,token:r,...i}=t,a=n?_a(n).address:void 0;if(!a)throw Error(`account is required.`);return Am(e,{...i,...kS.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:wS,abi:aS,args:[t,n],functionName:`balanceOf`})}e.call=t})(kS||={});async function AS(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return Am(e,{...a,...AS.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(AS||={});async function jS(e,t){let{orderId:n,...r}=t;return Am(e,{...r,...jS.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return H({address:wS,abi:aS,args:[t],functionName:`getOrder`})}e.call=t})(jS||={});async function MS(e,t){let{base:n,quote:r,...i}=t;return Am(e,{...i,...MS.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return H({address:wS,abi:aS,args:[zS(t,n)],functionName:`books`})}e.call=t})(MS||={});async function NS(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await Am(e,{...a,...NS.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 H({address:wS,abi:aS,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(NS||={});async function PS(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return Am(e,{...a,...PS.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(PS||={});async function FS(e,t){return FS.inner(Um,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 H({address:wS,abi:aS,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=Xd({abi:aS,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(FS||={});async function IS(e,t){return IS.inner(Um,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 H({address:wS,abi:aS,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=Xd({abi:aS,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})(IS||={});async function LS(e,t){return LS.inner(Um,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 H({address:wS,abi:aS,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(LS||={});async function RS(e,t){return RS.inner(Um,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 H({address:wS,abi:aS,functionName:`withdraw`,args:[t,n]})}e.call=n})(RS||={});function zS(e,t){return Vg(I(e,t))}B(),va(),Ca();async function BS(e,t){let{token:n,...r}=t;return BS.inner(Um,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 H({address:Ox(r),abi:V,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(BS||={});async function VS(e,t){return VS.inner(Um,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 H({address:Ox(r),abi:V,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(VS||={});async function HS(e,t){return HS.inner(Um,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,rp(n,32)]}:{functionName:`burn`,args:[t]};return H({address:Ox(r),abi:V,...i})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(HS||={});async function US(e,t){return US.inner(Um,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 H({address:Ox(t),abi:V,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(US||={});async function WS(e,t){return WS.inner(Um,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?_a(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=ap(32)}=e;return H({address:`0x20fc000000000000000000000000000000000000`,abi:oS,args:[t,n,r,Ox(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=Xd({abi:oS,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(WS||={});async function GS(e,t){let{account:n=e.account}=t,r=n?_a(n).address:void 0;if(!r)throw Error(`account is required.`);return Am(e,{...t,...GS.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return H({address:Ox(r),abi:V,functionName:`allowance`,args:[t,n]})}e.call=t})(GS||={});async function KS(e,t){let{account:n=e.account,...r}=t,i=n?_a(n).address:void 0;if(!i)throw Error(`account is required.`);return Am(e,{...r,...KS.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:Ox(n),abi:V,functionName:`balanceOf`,args:[t]})}e.call=t})(KS||={});async function qS(e,t){let{token:n,...r}=t,i=Ox(n),a=V;return Ex(n)===Dx(`0x20c0000000000000000000000000000000000000`)?ny(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})):ny(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 JS(e,t){return Am(e,{...t,...JS.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return H({address:Ox(n),abi:V,functionName:`getRoleAdmin`,args:[Ax(t)]})}e.call=t})(JS||={});async function YS(e,t){let{account:n=e.account}=t,r=n?_a(n).address:void 0;if(!r)throw Error(`account is required.`);return Am(e,{...t,...YS.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return H({address:Ox(r),abi:V,functionName:`hasRole`,args:[t,Ax(n)]})}e.call=t})(YS||={});async function XS(e,t){return XS.inner(Hm,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:Sa(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=Ax(r);return H({address:Ox(t),abi:V,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=Xd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(XS||={});async function ZS(e,t){return ZS.inner(Um,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,rp(r,32)]}:{functionName:`mint`,args:[t,n]};return H({address:Ox(i),abi:V,...a})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(ZS||={});async function QS(e,t){return QS.inner(Um,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 H({address:Ox(t),abi:V,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(QS||={});async function $S(e,t){return $S.inner(Hm,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:Sa(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=Ax(n);return H({address:Ox(t),abi:V,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=Xd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})($S||={});async function eC(e,t){return eC.inner(Hm,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:Sa(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=Ax(r);return H({address:Ox(t),abi:V,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=Xd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(eC||={});async function tC(e,t){return tC.inner(Um,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 H({address:Ox(t),abi:V,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(tC||={});async function nC(e,t){return nC.inner(Um,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=Ax(n),a=Ax(r);return H({address:Ox(t),abi:V,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(nC||={});async function rC(e,t){return rC.inner(Um,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,rp(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,rp(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return H({address:Ox(i),abi:V,...o})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(rC||={});async function iC(e,t){return iC.inner(Um,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 H({address:Ox(t),abi:V,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(iC||={});async function aC(e,t){return aC.inner(Um,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 H({address:Ox(t),abi:V,functionName:`setNextQuoteToken`,args:[Ox(n)]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(aC||={});async function oC(e,t){return oC.inner(Um,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 H({address:Ox(t),abi:V,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=Xd({abi:V,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(oC||={}),B(),va(),Qu();function sC(e){if(!uS(e))return fd(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=Ix(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:R(t.r,{size:32}),s:R(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:Px[i.type],type:i.type}}function cC(e){return qm(e)}function lC(e,t){let n=e,r=n.account?_a(n.account):void 0;if(!uS(n))return Ju(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=Rx({...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`?_a(n.feePayer):n.feePayer}:{}}}var uC=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 dC(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw fC(r.error);return r.result}function fC(e){let t=e;if(t instanceof Error&&!(`code`in t))return new wC({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===wC.code?new wC(t):n===mC.code?new mC(t):n===CC.code?new CC(t):n===xC.code?new xC(t):n===yC.code?new yC(t):n===SC.code?new SC(t):n===vC.code?new vC(t):n===TC.code?new TC(t):n===hC.code?new hC(t):n===gC.code?new gC(t):n===_C.code?new _C(t):n===bC.code?new bC(t):new wC({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var pC=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??``}},mC=class e extends pC{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(mC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var hC=class e extends pC{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(hC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var gC=class e extends pC{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(gC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var _C=class e extends pC{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(_C,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var vC=class e extends pC{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(vC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var yC=class e extends pC{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(yC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var bC=class e extends pC{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(bC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var xC=class e extends pC{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(xC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var SC=class e extends pC{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(SC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var CC=class e extends pC{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(CC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var wC=class e extends pC{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(wC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var TC=class e extends pC{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(TC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),sf();var EC=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}},DC=class extends EC{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(DC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var OC=class extends EC{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(OC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var kC=class extends EC{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(kC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var AC=class extends EC{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(AC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var jC=class extends EC{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(jC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var MC=class extends EC{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(MC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var NC=class extends EC{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(NC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var PC=class extends EC{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(PC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var FC=class extends EC{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(FC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var IC=class extends EC{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(IC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var LC=class extends EC{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(LC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var RC=class extends EC{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(RC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var zC=class extends EC{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(zC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function BC(){let e=new uC.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 VC(e,t={}){if(!e)throw new UC;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?dC(n):n}catch(e){throw HC(e)}}}}function HC(e){let t=fC(e);if(t instanceof wC){if(!t.data)return t;let{code:e}=t.data;if(e===AC.code)return new AC(t);if(e===jC.code)return new jC(t);if(e===DC.code)return new DC(t);if(e===OC.code)return new OC(t);if(e===kC.code)return new kC(t);if(e===MC.code)return new MC(t);if(e===RC.code)return new RC(t);if(e===zC.code)return new zC(t);if(e===LC.code)return new LC(t);if(e===IC.code)return new IC(t);if(e===FC.code)return new FC(t);if(e===PC.code)return new PC(t);if(e===NC.code)return new NC(t)}return t}var UC=class extends F{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function WC(e={}){let t=e.id??0;return{prepare(e){return GC({id:t++,...e})},get id(){return t}}}function GC(e){return{...e,jsonrpc:`2.0`}}function KC(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return Ey({key:KC.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(dS(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:KC.type})}}function qC(){return null}var JC;function U(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 YC=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},XC=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(JC=globalThis).__zod_globalConfig??(JC.__zod_globalConfig={});let ZC=globalThis.__zod_globalConfig;function QC(e){return e&&Object.assign(ZC,e),ZC}function $C(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 ew(e,t){return typeof t==`bigint`?t.toString():t}function tw(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function nw(e){return e==null}function rw(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let iw=Symbol(`evaluating`);function W(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==iw)return r===void 0&&(r=iw,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let aw=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function ow(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function sw(e){if(ow(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(ow(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let cw=new Set([`string`,`number`,`symbol`]),lw=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function uw(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function dw(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function fw(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 pw(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function mw(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 hw(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 gw(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function _w(e){return typeof e==`string`?e:e?.message}function vw(e,t,n){let r=e.message?e.message:_w(e.inst?._zod.def?.error?.(e))??_w(t?.error?.(e))??_w(n.customError?.(e))??_w(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 yw(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function bw(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let xw=(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,ew,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Sw=U(`$ZodError`,xw),Cw=U(`$ZodError`,xw,{Parent:Error}),ww=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 YC;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>vw(e,a,QC())));throw aw(t,i?.callee),t}return o.value},Tw=ww(Cw),Ew=(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=>vw(e,a,QC())));throw aw(t,i?.callee),t}return o.value})(Cw),Dw=(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 YC;return a.issues.length?{success:!1,error:new(e??Sw)(a.issues.map(e=>vw(e,i,QC())))}:{success:!0,data:a.value}})(Cw),Ow=(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=>vw(e,i,QC())))}:{success:!0,data:a.value}})(Cw),kw=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return ww(e)(t,n,i)})(Cw),Aw=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},jw=/^-?\\d+n?$/,Mw=/^-?\\d+(?:\\.\\d+)?$/,Nw=/^(?:true|false)$/i,Pw=/^null$/i,Fw=/^undefined$/i,Iw=U(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Lw={number:`number`,bigint:`bigint`,object:`date`},Rw=U(`$ZodCheckLessThan`,(e,t)=>{Iw.init(e,t);let n=Lw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),zw=U(`$ZodCheckGreaterThan`,(e,t)=>{Iw.init(e,t);let n=Lw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bw=U(`$ZodCheckMaxLength`,(e,t)=>{var n;Iw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!nw(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=yw(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Vw=U(`$ZodCheckMinLength`,(e,t)=>{var n;Iw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!nw(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=yw(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Hw=U(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Iw.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=()=>{})}),Uw=U(`$ZodCheckRegex`,(e,t)=>{Hw.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})}}),Ww={major:4,minor:4,patch:3},Gw=U(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ww;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=mw(e),i;for(let a of t){if(a._zod.def.when){if(hw(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 YC;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=mw(e,t))});else{if(e.issues.length===t)continue;r||=mw(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(mw(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new YC;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 YC;return o.then(e=>t(e,r,a))}return t(o,r,a)}}W(e,`~standard`,()=>({validate:t=>{try{let n=Dw(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Ow(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Kw=U(`$ZodString`,(e,t)=>{Gw.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Aw(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}}),qw=U(`$ZodNumber`,(e,t)=>{Gw.init(e,t),e._zod.pattern=e._zod.bag.pattern??Mw,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}}),Jw=U(`$ZodBoolean`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Nw,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}}),Yw=U(`$ZodBigInt`,(e,t)=>{Gw.init(e,t),e._zod.pattern=jw,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}}),Xw=U(`$ZodUndefined`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Fw,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}}),Zw=U(`$ZodNull`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Pw,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}}),Qw=U(`$ZodUnknown`,(e,t)=>{Gw.init(e,t),e._zod.parse=e=>e});function $w(e,t,n){e.issues.length&&t.issues.push(...gw(n,e.issues)),t.value[n]=e.value}let eT=U(`$ZodArray`,(e,t)=>{Gw.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=>$w(t,n,e))):$w(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function tT(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...gw(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 nT(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=pw(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function rT(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=>tT(e,n,i,t,u,d))):tT(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 iT=U(`$ZodObject`,(e,t)=>{if(Gw.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=tw(()=>nT(t));W(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=ow,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=>tT(n,t,e,s,r,i))):tT(a,t,e,s,r,i)}return i?rT(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function aT(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=>!mw(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=>vw(e,r,QC())))}),t)}let oT=U(`$ZodUnion`,(e,t)=>{Gw.init(e,t),W(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),W(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),W(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),W(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=>rw(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=>aT(t,r,e,i)):aT(o,r,e,i)}}),sT=U(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,oT.init(e,t);let n=e._zod.parse;W(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=tw(()=>{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(!ow(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)}}),cT=U(`$ZodTuple`,(e,t)=>{Gw.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=lT(n,`optin`),c=lT(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=>uT(t,r,e))):uT(a,r,e)}}return o.length?Promise.all(o).then(()=>dT(l,r,n,a,c)):dT(l,r,n,a,c)}});function lT(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function uT(e,t,n){e.issues.length&&t.issues.push(...gw(n,e.issues)),t.value[n]=e.value}function dT(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(...gw(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 fT=U(`$ZodRecord`,(e,t)=>{Gw.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!sw(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=>vw(e,r,QC())),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(...gw(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...gw(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`&&Mw.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=>vw(e,r,QC())),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(...gw(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...gw(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),pT=U(`$ZodEnum`,(e,t)=>{Gw.init(e,t);let n=$C(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>cw.has(typeof e)).map(e=>typeof e==`string`?uw(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}}),mT=U(`$ZodLiteral`,(e,t)=>{if(Gw.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`?uw(e):e?uw(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}}),hT=U(`$ZodTransform`,(e,t)=>{Gw.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new XC(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.fallback=!0,n));if(i instanceof Promise)throw new YC;return n.value=i,n.fallback=!0,n}});function gT(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}let _T=U(`$ZodOptional`,(e,t)=>{Gw.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,W(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),W(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${rw(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>gT(e,r)):gT(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),vT=U(`$ZodNullable`,(e,t)=>{Gw.init(e,t),W(e._zod,`optin`,()=>t.innerType._zod.optin),W(e._zod,`optout`,()=>t.innerType._zod.optout),W(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${rw(e.source)}|null)$`):void 0}),W(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)}),yT=U(`$ZodPipe`,(e,t)=>{Gw.init(e,t),W(e._zod,`values`,()=>t.in._zod.values),W(e._zod,`optin`,()=>t.in._zod.optin),W(e._zod,`optout`,()=>t.out._zod.optout),W(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=>bT(e,t.in,n)):bT(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>bT(e,t.out,n)):bT(r,t.out,n)}});function bT(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}let xT=U(`$ZodCodec`,(e,t)=>{Gw.init(e,t),W(e._zod,`values`,()=>t.in._zod.values),W(e._zod,`optin`,()=>t.in._zod.optin),W(e._zod,`optout`,()=>t.out._zod.optout),W(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=>ST(e,t,n)):ST(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>ST(e,t,n)):ST(r,t,n)}}});function ST(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=>CT(e,r,t.out,n)):CT(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>CT(e,r,t.in,n)):CT(e,r,t.in,n)}}function CT(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let wT=U(`$ZodReadonly`,(e,t)=>{Gw.init(e,t),W(e._zod,`propValues`,()=>t.innerType._zod.propValues),W(e._zod,`values`,()=>t.innerType._zod.values),W(e._zod,`optin`,()=>t.innerType?._zod?.optin),W(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(TT):TT(r)}});function TT(e){return e.value=Object.freeze(e.value),e}let ET=U(`$ZodTemplateLiteral`,(e,t)=>{Gw.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||lw.has(typeof e))n.push(uw(`${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)}),DT=U(`$ZodCustom`,(e,t)=>{Iw.init(e,t),Gw.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=>OT(t,n,r,e));OT(i,n,r,e)}});function OT(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(bw(e))}}function kT(e,t){return new e({type:`string`,...fw(t)})}function AT(e,t){return new e({type:`number`,checks:[],...fw(t)})}function jT(e,t){return new e({type:`boolean`,...fw(t)})}function MT(e,t){return new e({type:`bigint`,...fw(t)})}function NT(e,t){return new e({type:`undefined`,...fw(t)})}function PT(e,t){return new e({type:`null`,...fw(t)})}function FT(e){return new e({type:`unknown`})}function IT(e,t){return new Rw({check:`less_than`,...fw(t),value:e,inclusive:!0})}function LT(e,t){return new zw({check:`greater_than`,...fw(t),value:e,inclusive:!0})}function RT(e,t){return new Bw({check:`max_length`,...fw(t),maximum:e})}function zT(e,t){return new Vw({check:`min_length`,...fw(t),minimum:e})}function BT(e,t){return new Uw({check:`string_format`,format:`regex`,...fw(t),pattern:e})}function VT(e,t,n){let r=fw(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function HT(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...fw(n)})}let UT=U(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);Gw.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Tw(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Dw(e,t,n),e.parseAsync=async(t,n)=>Ew(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ow(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)=>dw(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),WT=U(`ZodMiniString`,(e,t)=>{Kw.init(e,t),UT.init(e,t)});function G(e){return kT(WT,e)}let GT=U(`ZodMiniNumber`,(e,t)=>{qw.init(e,t),UT.init(e,t)});function KT(e){return AT(GT,e)}let qT=U(`ZodMiniBoolean`,(e,t)=>{Jw.init(e,t),UT.init(e,t)});function JT(e){return jT(qT,e)}let YT=U(`ZodMiniBigInt`,(e,t)=>{Yw.init(e,t),UT.init(e,t)});function XT(e){return MT(YT,e)}let ZT=U(`ZodMiniUndefined`,(e,t)=>{Xw.init(e,t),UT.init(e,t)});function QT(e){return NT(ZT,e)}let $T=U(`ZodMiniNull`,(e,t)=>{Zw.init(e,t),UT.init(e,t)});function eE(e){return PT($T,e)}let tE=U(`ZodMiniUnknown`,(e,t)=>{Qw.init(e,t),UT.init(e,t)});function nE(){return FT(tE)}let rE=U(`ZodMiniArray`,(e,t)=>{eT.init(e,t),UT.init(e,t)});function K(e,t){return new rE({type:`array`,element:e,...fw(t)})}let iE=U(`ZodMiniObject`,(e,t)=>{iT.init(e,t),UT.init(e,t),W(e,`shape`,()=>t.shape)});function q(e,t){return new iE({type:`object`,shape:e??{},...fw(t)})}let aE=U(`ZodMiniUnion`,(e,t)=>{oT.init(e,t),UT.init(e,t)});function oE(e,t){return new aE({type:`union`,options:e,...fw(t)})}let sE=U(`ZodMiniDiscriminatedUnion`,(e,t)=>{sT.init(e,t),UT.init(e,t)});function cE(e,t,n){return new sE({type:`union`,options:t,discriminator:e,...fw(n)})}let lE=U(`ZodMiniTuple`,(e,t)=>{cT.init(e,t),UT.init(e,t)});function uE(e,t,n){let r=t instanceof Gw;return new lE({type:`tuple`,items:e,rest:r?t:null,...fw(r?n:t)})}let dE=U(`ZodMiniRecord`,(e,t)=>{fT.init(e,t),UT.init(e,t)});function fE(e,t,n){return!t||!t._zod?new dE({type:`record`,keyType:G(),valueType:e,...fw(t)}):new dE({type:`record`,keyType:e,valueType:t,...fw(n)})}let pE=U(`ZodMiniEnum`,(e,t)=>{pT.init(e,t),UT.init(e,t),e.options=Object.values(t.entries)});function mE(e,t){return new pE({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...fw(t)})}let hE=U(`ZodMiniLiteral`,(e,t)=>{mT.init(e,t),UT.init(e,t)});function J(e,t){return new hE({type:`literal`,values:Array.isArray(e)?e:[e],...fw(t)})}let gE=U(`ZodMiniTransform`,(e,t)=>{hT.init(e,t),UT.init(e,t)});function _E(e){return new gE({type:`transform`,transform:e})}let vE=U(`ZodMiniOptional`,(e,t)=>{_T.init(e,t),UT.init(e,t)});function Y(e){return new vE({type:`optional`,innerType:e})}let yE=U(`ZodMiniNullable`,(e,t)=>{vT.init(e,t),UT.init(e,t)});function bE(e){return new yE({type:`nullable`,innerType:e})}let xE=U(`ZodMiniPipe`,(e,t)=>{yT.init(e,t),UT.init(e,t)});function SE(e,t){return new xE({type:`pipe`,in:e,out:t})}let CE=U(`ZodMiniCodec`,(e,t)=>{xE.init(e,t),xT.init(e,t)});function wE(e,t,n){return new CE({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let TE=U(`ZodMiniReadonly`,(e,t)=>{wT.init(e,t),UT.init(e,t)});function X(e){return new TE({type:`readonly`,innerType:e})}let EE=U(`ZodMiniTemplateLiteral`,(e,t)=>{ET.init(e,t),UT.init(e,t)});function DE(e,t){return new EE({type:`template_literal`,parts:e,...fw(t)})}let OE=U(`ZodMiniCustom`,(e,t)=>{DT.init(e,t),UT.init(e,t)});function kE(e,t){return VT(OE,e??(()=>!0),t)}function AE(e,t={}){return HT(OE,e,t)}function jE(e){return e}function ME(e){return e}let Z=()=>DE([`0x`,G()],`Expected address`),NE=()=>wE(oE([Q(),XT()]),XT(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:cp(e),encode:e=>R(e)}),Q=()=>DE([`0x`,G()],`Expected hex value`),PE=()=>wE(oE([Q(),KT()]),KT(),{decode:e=>typeof e==`number`?e:e===`0x`?0:up(e),encode:e=>R(e)}),FE=q({address:Z(),blockHash:Q(),blockNumber:NE(),data:Q(),logIndex:PE(),removed:JT(),topics:X(K(Q())),transactionHash:Q(),transactionIndex:PE()}),IE=q({blobGasPrice:Y(NE()),blobGasUsed:Y(NE()),blockHash:Q(),blockNumber:NE(),contractAddress:bE(Z()),cumulativeGasUsed:NE(),effectiveGasPrice:NE(),feePayer:Y(Z()),feeToken:Y(Z()),from:Z(),gasUsed:NE(),logs:K(FE),logsBloom:Q(),root:Y(Q()),status:wE(Q(),mE([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:bE(Z()),transactionHash:Q(),transactionIndex:PE(),type:Q()}),LE=kE(),RE=oE([J(`secp256k1`),J(`p256`),J(`webAuthn`)]),zE=q({address:Z(),chainId:NE(),expiry:oE([PE(),eE(),QT()]),keyId:Z(),keyType:RE,limits:Y(X(K(q({token:Z(),limit:NE(),period:Y(PE())})))),signature:LE}),BE=q({data:Y(Q()),to:Y(Z()),value:Y(NE())}),VE=q({accessList:Y(K(q({address:Z(),storageKeys:K(Q())}))),calls:Y(X(K(BE))),chainId:Y(PE()),data:Y(Q()),feePayer:Y(oE([JT(),G()])),feePayerSignature:Y(fE(G(),nE())),feeToken:Y(Z()),from:Y(Z()),gas:Y(NE()),keyAuthorization:Y(zE),keyData:Y(Q()),keyId:Y(Z()),keyType:Y(RE),maxFeePerGas:Y(NE()),maxPriorityFeePerGas:Y(NE()),nonce:Y(PE()),nonceKey:Y(NE()),to:Y(Z()),validAfter:Y(PE()),validBefore:Y(PE()),value:Y(NE())});var HE;(function(e){e.schema=jE({method:J(`eth_accounts`),params:void 0,returns:X(K(Z()))})})(HE||={});var UE;(function(e){e.schema=jE({method:J(`eth_chainId`),params:void 0,returns:Q()})})(UE||={});var WE;(function(e){e.schema=jE({method:J(`eth_requestAccounts`),params:void 0,returns:X(K(Z()))})})(WE||={});var GE;(function(e){e.schema=jE({method:J(`eth_sendTransaction`),params:X(uE([VE])),returns:Q()})})(GE||={});var KE;(function(e){let t=q({address:Z(),decimals:KT(),direction:mE([`incoming`,`outgoing`]),formatted:G(),name:G(),recipients:X(K(Z())),symbol:G(),value:Q()}),n=q({decimals:KT(),formatted:G(),name:G(),symbol:G(),token:Z(),value:Q()});e.schema=jE({method:J(`eth_fillTransaction`),params:X(uE([VE])),returns:q({capabilities:q({balanceDiffs:Y(fE(Z(),X(K(t)))),error:Y(q({abiItem:Y(fE(G(),nE())),data:Y(Q()),errorName:G(),message:G()})),fee:Y(q({amount:Q(),decimals:KT(),formatted:G(),symbol:G()})),requireFunds:Y(q({amount:Q(),decimals:KT(),formatted:G(),token:Z(),symbol:G()})),autoSwap:Y(q({maxIn:n,minOut:n,slippage:KT()})),sponsor:Y(q({address:Z(),name:Y(G()),url:Y(G())})),sponsored:JT()}),tx:fE(G(),nE())})})})(KE||={});var qE;(function(e){e.schema=jE({method:J(`eth_signTransaction`),params:X(uE([VE])),returns:Q()})})(qE||={});var JE;(function(e){e.schema=jE({method:J(`eth_sendTransactionSync`),params:X(uE([VE])),returns:IE})})(JE||={});var YE;(function(e){e.schema=jE({method:J(`eth_signTypedData_v4`),params:X(uE([Z(),G()])),returns:Q()})})(YE||={});var XE;(function(e){e.schema=jE({method:J(`personal_sign`),params:X(uE([Q(),Z()])),returns:Q()})})(XE||={});let ZE=Y(q({feePayer:Y(oE([JT(),G()])),sync:Y(JT())}));var QE;(function(e){e.schema=jE({method:J(`wallet_sendCalls`),params:Y(X(uE([q({atomicRequired:Y(JT()),calls:X(K(BE)),capabilities:ZE,chainId:Y(PE()),from:Y(Z()),version:Y(G())})]))),returns:q({atomic:Y(JT()),capabilities:ZE,chainId:Y(PE()),id:G(),receipts:Y(K(IE)),status:Y(KT()),version:Y(G())})})})(QE||={});var $E;(function(e){e.schema=jE({method:J(`wallet_getBalances`),params:Y(X(uE([q({account:Y(Z()),chainId:Y(PE()),tokens:Y(X(K(Z())))})]))),returns:X(K(q({address:Z(),balance:NE(),decimals:KT(),display:G(),name:G(),symbol:G()})))})})($E||={});var eD;(function(e){e.schema=jE({method:J(`wallet_getCapabilities`),params:Y(X(oE([uE([Z()]),uE([Z(),X(K(Q()))])]))),returns:fE(Q(),q({accessKeys:Y(q({status:oE([J(`supported`),J(`unsupported`)])})),atomic:q({status:oE([J(`supported`),J(`ready`),J(`unsupported`)])}),feePayer:Y(q({status:oE([J(`supported`),J(`unsupported`)])}))}))})})(eD||={});var tD;(function(e){e.parameters=q({address:Y(Z()),chainId:Y(NE()),expiry:KT(),keyType:Y(RE),limits:Y(X(K(q({token:Z(),limit:NE(),period:Y(KT())})))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(oE([Q(),G()])),recipients:Y(X(K(Z())))}))))}),e.returns=q({keyAuthorization:zE,rootAddress:Z()}),e.schema=jE({method:J(`wallet_authorizeAccessKey`),params:X(uE([e.parameters])),returns:e.returns})})(tD||={});var nD;(function(e){e.parameters=q({address:Y(Z()),expiry:KT(),keyType:Y(RE),limits:X(K(q({token:Z(),limit:NE(),period:Y(KT())}))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(oE([Q(),G()])),recipients:Y(X(K(Z())))}))))})})(nD||={});var rD;(function(e){e.schema=jE({method:J(`wallet_revokeAccessKey`),params:X(uE([q({address:Z(),accessKeyAddress:Z()})])),returns:void 0})})(rD||={});var iD;(function(e){e.authorizeAccessKey=Y(tD.parameters),e.capabilities={request:Y(oE([q({digest:Y(Q()),authorizeAccessKey:e.authorizeAccessKey,method:J(`register`),name:Y(G()),userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:e.authorizeAccessKey,method:Y(J(`login`)),selectAccount:Y(JT())})])),result:q({email:Y(bE(G())),keyAuthorization:Y(zE),signature:Y(Q()),username:Y(bE(G()))})},e.schema=jE({method:J(`wallet_connect`),params:Y(X(uE([q({capabilities:e.capabilities.request,chainId:Y(PE()),version:Y(G())})]))),returns:q({accounts:X(K(q({address:Z(),capabilities:e.capabilities.result})))})})})(iD||={});var aD;(function(e){let t=Y(nD.parameters);e.parameters=q({capabilities:Y(oE([q({digest:Y(Q()),authorizeAccessKey:t,method:J(`register`),name:Y(G()),userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:t,method:Y(J(`login`)),selectAccount:Y(JT())})])),chainId:Y(PE()),version:Y(G())})})(aD||={});var oD;(function(e){e.schema=jE({method:J(`wallet_disconnect`),params:void 0,returns:void 0})})(oD||={});var sD;(function(e){e.schema=jE({method:J(`wallet_getCallsStatus`),params:Y(X(uE([G()]))),returns:q({atomic:JT(),chainId:PE(),id:G(),receipts:Y(K(IE)),status:KT(),version:G()})})})(sD||={});var cD;(function(e){e.parameters=q({feePayer:Y(oE([JT(),G()])),to:Y(Z()),token:Y(Z()),value:Y(G())}),e.schema=jE({method:J(`wallet_send`),params:Y(X(uE([e.parameters]))),returns:q({chainId:PE(),receipt:IE})})})(cD||={});let lD=q({amount:Y(G()),pairToken:Y(Z()),slippage:Y(KT().check(LT(0),IT(1))),token:Y(Z()),type:Y(oE([J(`buy`),J(`sell`)]))});var uD;(function(e){e.schema=jE({method:J(`wallet_swap`),params:Y(X(uE([lD]))),returns:q({receipt:IE})})})(uD||={});var dD;(function(e){e.schema=jE({method:J(`wallet_switchEthereumChain`),params:X(uE([q({chainId:PE()})])),returns:void 0})})(dD||={});var fD;(function(e){e.schema=jE({method:J(`wallet_deposit`),params:X(uE([q({address:Y(Z()),chainId:Y(PE()),displayName:Y(G()),token:Y(Z()),value:Y(G())})])),returns:Y(q({receipts:Y(X(K(IE)))}))})})(fD||={});var pD;(function(e){e.parameters=q({amount:Y(G()),feePayer:Y(oE([JT(),G()])),token:Y(Z()),zoneId:Y(PE())}),e.schema=jE({method:J(`wallet_depositZone`),params:Y(X(uE([e.parameters]))),returns:q({receipt:IE})})})(pD||={});var mD;(function(e){e.parameters=q({amount:Y(G()),token:Y(Z()),zoneId:Y(PE())}),e.schema=jE({method:J(`wallet_withdrawZone`),params:Y(X(uE([e.parameters]))),returns:q({receipt:IE})})})(mD||={}),nD.parameters,aD.parameters;let hD=ME([HE.schema,UE.schema,KE.schema,WE.schema,GE.schema,JE.schema,qE.schema,YE.schema,XE.schema,tD.schema,iD.schema,fD.schema,pD.schema,oD.schema,$E.schema,sD.schema,eD.schema,rD.schema,cD.schema,QE.schema,uD.schema,dD.schema,mD.schema]),gD=qC();function _D(e){return e.params?q({method:e.method,params:e.params}):q({method:e.method})}let vD=cE(`method`,hD.map(_D));function yD(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 bD=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},xD=class extends bD{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}.`)}},$=class extends bD{name=`VerificationFailedError`;title=`Verification Failed`;type=`https://paymentauth.org/problems/verification-failed`;constructor(e={}){let{reason:t}=e;super(t?`Payment verification failed: ${t}.`:`Payment verification failed.`)}},SD=class extends bD{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 CD(e,t){if(!e)throw new xD({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new xD({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new SD({expires:e})}function wD(e){let t=ob(e);return JSON.parse(t)}function TD(e){return ib(Sf(e),{pad:!1,url:!0})}function ED(){return G().check(BT(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function DD(){return G().check(BT(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function OD(e=`Invalid ISO 8601 datetime`){return SE(oE([DD(),kE(e=>e instanceof Date)]),_E(kD)).check(AE(e=>Number.isFinite(e.getTime()),e))}function kD(e){return e instanceof Date?e:new Date(e)}function AD(e){return e instanceof Date?Number.isFinite(e.getTime())?e.toISOString():`Invalid Date`:e}function jD(){return G().check(BT(/^0x[0-9a-fA-F]{40}$/,`Invalid address`))}function MD(){return G().check(BT(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function ND(){return G().check(BT(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let PD=q({description:Y(G()),digest:Y(G().check(BT(/^sha-256=/,`Invalid digest format`))),expires:Y(DD()),id:G(),intent:G(),method:G(),meta:Y(fE(G(),G())),opaque:Y(G()),realm:G(),request:fE(G(),nE())});function FD(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires?AD(e.expires):void 0,d=e.opaque??(i===void 0?void 0:TD(i)),f=l?JD({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return PD.parse({id:f,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i!==void 0&&{meta:i},...d!==void 0&&{opaque:d}})}function ID(e,t){let n=LD(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=RD(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 FD({...a,request:wD(r),...i&&{opaque:i}},t)}function LD(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(!VD(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 RD(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]=zD(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function zD(e,t){if(e[t]===`\"`)return BD(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function BD(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 VD(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 HD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return ID(n,t)}function UD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return HD(e.headers,t)}function WD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return GD(e.headers,t)}function GD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return KD(n,t)}function KD(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 ID(e.slice(r,a).replace(/,\\s*$/,``),t)})}function qD(e){return[e.realm,e.method,e.intent,TD(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?TD(e.meta):``)].join(`|`)}function JD(e,t){let n=qD(e);return nb(Hg(Mf(t.secretKey),Mf(n),{as:`Bytes`}),{url:!0,pad:!1})}function YD(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=tO(n)}return t}function XD(e,t){let n=YD(e),r=sO(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[tO(e)]??1,index:t}));return{definition:r,entries:i,header:QD(i),keys:n}}function ZD(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)=>aO(e,t))}function QD(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${dO(n)}`}).join(`, `)}function $D(e,t){return e.map((e,n)=>{let r=nO(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 eO(e,t,n){let r=new Map;for(let e of t){let t=tO(e);r.has(t)||r.set(t,e)}let i=$D(e.filter(e=>r.has(tO(e))),n)[0];if(i)return{challenge:i,method:r.get(tO(i))}}function tO(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function nO(e,t){let n;for(let r of t){if(!rO(e,r))continue;let t={...r,specificity:iO(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 rO(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function iO(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function aO(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}`);fO(r,`method`),fO(i,`intent`);let a=1;for(let t of oO(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=lO(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function oO(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function sO(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>tO(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]=cO(t,`payment preference \"${e}\"`)}return a}function cO(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return uO(e,t)}function lO(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 uO(Number(e),t)}function uO(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 dO(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function fO(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let pO=Symbol.for(`mppx.fetch.wrapper`),mO;function hO(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=t??XD(i),s=xO(r),c=async(e,t)=>{let r=bO(e,t?.headers),c=r.has(`Accept-Payment`),l=wO(r,o),u=yO(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=WD(d),g=eO(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&&CD(_.expires,_.id);let y=(a?await a(_,{createCredential:async e=>CO(_,v,e??f)}):void 0)??await CO(_,v,f);return SO(y),s(u.input,{...m,headers:vO(u.headers,y)})};return c[pO]=s,c}function gO(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);mO||=globalThis.fetch,globalThis.fetch=hO({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(DO()?`same-origin`:`always`),fetch:globalThis.fetch})}function _O(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 vO(e,t){let n=_O(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function yO(e,t,n,r,i,a){let o=!!r&&!i&&TO(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 bO(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function xO(e){let t=e;for(;t[pO];)t=t[pO];return t}function SO(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 CO(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 wO(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:ZD(n),header:n}}catch{return t}}function TO(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=OO(e);return t===`same-origin`?DO()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>EO(n,e))}function EO(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 DO(){return globalThis.location!==void 0}function OO(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,DO()?globalThis.location.href:void 0)}var kO=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},AO=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function jO(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new kO;try{let e=ob(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=MO(r);return{challenge:PD.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:wD(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new AO}}function MO(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!NO(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:TD(e)}}function NO(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function PO(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:TD(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:TD(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${ib(JSON.stringify(o),{pad:!1,url:!0})}`}function FO(e){return e}function IO(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}let LO=new Map;async function RO(e){LO.set(e,(LO.get(e)??0)+1),await Promise.resolve();let t=(LO.get(e)??0)>1;return queueMicrotask(()=>{let t=LO.get(e)??0;t<=1?LO.delete(e):LO.set(e,t-1)}),t}id(),Qu();let zO={blockTime:1e3,extendSchema:Th(),formatters:{transaction:pd({exclude:[`aaAuthorizationList`],format:sC}),transactionReceipt:Jm({format:cC}),transactionRequest:Zu({format:lC})},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 RO(e):!1})()?(n.nonceKey=rd,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)=>fS(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=Hb(i);if(a.type!==`keychain`){let i=await ih(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return Jb(a,{address:n,payload:r})}}return await E(e,vy,`verifyHash`)({...t,chain:null})}},BO=wh({...zO,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`]}}}),VO=wh({...zO,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`]}}}),HO=wh({...zO,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),UO=wh({...zO,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`]}}});function WO(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 _a(r)}}function GO(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=rh({chain:i.chain,transport:KC(ky(e),ky(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?KC(ky(a),ky(n)):ky(a);return rh({chain:{...t,id:r},transport:o})}}let KO={mainnet:4217,testnet:42431},qO={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};KO.mainnet,qO.usdc,KO.testnet,qO.pathUsd;let JO={[KO.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[KO.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},YO={[KO.mainnet]:`https://rpc.tempo.xyz`,[KO.testnet]:`https://rpc.moderato.tempo.xyz`},XO=[`push`,`pull`],ZO=q({amount:ED(),memo:Y(MD()),recipient:SE(G(),_E(e=>e))}),QO=(1n<<64n)-1n,$O=SE(jD(),_E(e=>e.toLowerCase())),ek=q({accessKeyAddress:$O,keyType:mE([`p256`,`secp256k1`,`webAuthn`])}),tk=q({accessKey:Y(ek),chainId:Y(KT())}),nk=OD(`subscriptionExpires must be a valid date`).check(AE(e=>e.getTime()%1e3==0,`subscriptionExpires must be representable as whole seconds`)),rk=mE([`day`,`week`]),ik=SE(oE([G(),XT(),kE(e=>typeof e==`number`&&Number.isSafeInteger(e))]),_E(e=>e.toString())).check(BT(/^[1-9]\\d*$/,`Invalid periodCount`),AE(e=>{try{return BigInt(e)<=QO}catch{return!1}},`periodCount exceeds uint64`));function ak(e){return AE(e=>{let{amount:t,decimals:n}=e;return ty(t,n)>0n},e)}function ok(e){let{periodCount:t,periodUnit:n}=e;try{let e=n===`day`?86400n:604800n;return BigInt(t)*e<=QO}catch{return!1}}let sk=FO({name:`tempo`,intent:`charge`,schema:{credential:{payload:cE(`type`,[q({hash:MD(),type:J(`hash`)}),q({signature:ND(),type:J(`transaction`)}),q({signature:ND(),type:J(`proof`)})])},request:SE(q({amount:ED(),chainId:Y(KT()),currency:G(),decimals:KT(),description:Y(G()),externalId:Y(G()),feePayer:Y(SE(oE([JT(),kE()]),_E(e=>typeof e==`object`?!0:e))),memo:Y(MD()),recipient:Y(G()),splits:Y(K(ZO).check(zT(1),RT(10))),supportedModes:Y(K(mE(XO)).check(zT(1)))}).check(AE(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=ty(e,t),i=n.reduce((e,n)=>e+ty(n.amount,t),0n);return n.every(e=>ty(e.amount,t)>0n)&&i<r},`Invalid splits`)),_E(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:ty(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:ty(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),ck=FO({name:`tempo`,intent:`session`,schema:{credential:{payload:cE(`action`,[q({action:J(`open`),authorizedSigner:Y(G()),channelId:MD(),cumulativeAmount:ED(),signature:ND(),transaction:ND(),type:J(`transaction`)}),q({action:J(`topUp`),additionalDeposit:ED(),channelId:MD(),transaction:ND(),type:J(`transaction`)}),q({action:J(`voucher`),channelId:MD(),cumulativeAmount:ED(),signature:ND()}),q({action:J(`close`),channelId:MD(),cumulativeAmount:ED(),signature:ND()})])},request:SE(q({amount:ED(),chainId:Y(KT()),channelId:Y(MD()),currency:G(),decimals:KT(),escrowContract:Y(G()),feePayer:Y(SE(oE([JT(),kE()]),_E(e=>typeof e==`object`?!0:e))),minVoucherDelta:Y(ED()),recipient:Y(G()),suggestedDeposit:Y(ED()),unitType:G()}).check(AE(({amount:e,decimals:t})=>ty(e,t)>0n,`Session amount must be greater than 0`)),_E(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:ty(e,r).toString(),...s?{suggestedDeposit:ty(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:ty(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}}),lk=FO({name:`tempo`,intent:`subscription`,schema:{credential:{payload:q({signature:ND(),type:J(`keyAuthorization`)})},request:SE(q({amount:ED(),accessKey:Y(ek),chainId:Y(KT()),currency:$O,decimals:KT(),description:Y(G()),externalId:Y(G()),methodDetails:Y(tk),periodCount:ik,periodUnit:rk,recipient:$O,subscriptionExpires:nk}).check(ak(`Subscription amount must be greater than 0`),AE(ok,`Subscription period exceeds uint64`)),_E(({accessKey:e,amount:t,chainId:n,decimals:r,methodDetails:i,subscriptionExpires:a,...o})=>{let s={...i,...e!==void 0&&{accessKey:e},...n!==void 0&&{chainId:n}};return{...o,amount:ty(t,r).toString(),subscriptionExpires:a.toISOString(),...Object.keys(s).length>0?{methodDetails:s}:{}}}))}}),uk=(1n<<64n)-1n;function dk(e){return e instanceof Date?e:new Date(e)}function fk(e){let t=e.getTime();if(!Number.isFinite(t))throw new $({reason:`subscriptionExpires is invalid`});if(t%1e3!=0)throw new $({reason:`subscriptionExpires must be representable as whole seconds`});let n=t/1e3;if(n<=0||!Number.isSafeInteger(n))throw new $({reason:`subscriptionExpires cannot be represented in a Tempo key authorization`});return n}function pk(e){if(!/^[1-9]\\d*$/.test(e.periodCount))throw new $({reason:`periodCount is invalid`});if(e.periodUnit!==`day`&&e.periodUnit!==`week`)throw new $({reason:`periodUnit is invalid`});let t=e.periodUnit===`day`?86400n:604800n,n=BigInt(e.periodCount)*t;if(n>uk)throw new $({reason:`subscription period cannot be represented as an unsigned 64-bit integer`});if(n>BigInt(2**53-1))throw new $({reason:`subscription period cannot be represented exactly by this Tempo client`});return Number(n)}function mk(e){let{challengeExpires:t,request:n}=e;pk(n);let r=fk(dk(n.subscriptionExpires));if(t){let e=Math.floor(new Date(t).getTime()/1e3);if(!Number.isFinite(e)||r<=e)throw new $({reason:`subscriptionExpires must be strictly later than challenge expires`})}}function hk(e){let t=Ok(e.currency,`currency`),n=Ok(e.recipient,`recipient`);return[{address:t,selector:`0xa9059cbb`,recipients:[n]},{address:t,selector:`0x95777d59`,recipients:[n]}]}function gk(e){let[t,n]=hk(e);return[{target:Ok(e.currency,`currency`),selectorRules:[{selector:t.selector,recipients:t.recipients},{selector:n.selector,recipients:n.recipients}]}]}async function _k(e){let{accessKey:t,account:n,chainId:r,request:i}=e;if(typeof n.sign!=`function`)return;let a=yk({accessKey:t,chainId:r,request:i});return ux(a,{signature:Ub(await n.sign({hash:px(a)}))})}function vk(e){let{accessKey:t,chainId:n,payload:r,request:i}=e;if(r.type!==`keyAuthorization`)throw new $({reason:`invalid keyAuthorization payload`});let a=bk(r.signature),o=xk(a);return Sk({accessKey:t,authorization:a,chainId:n}),Ck(a,i),Tk(wk(a),i),Ek(a.scopes,i),{authorization:a,source:{address:Dk(a,o),chainId:n}}}function yk(e){let{accessKey:t,chainId:n,request:r}=e;return ux({address:Ok(t.accessKeyAddress,`accessKeyAddress`),chainId:BigInt(n),expiry:fk(dk(r.subscriptionExpires)),limits:[{token:Ok(r.currency,`currency`),limit:BigInt(r.amount),period:pk(r)}],scopes:hk(r),type:t.keyType})}function bk(e){try{return mx(e)}catch{throw new $({reason:`invalid keyAuthorization payload`})}}function xk(e){let t=e.signature;if(!t||t.type===`keychain`)throw new $({reason:`keyAuthorization must use a primitive signature`});return t}function Sk(e){let{accessKey:t,authorization:n,chainId:r}=e;if(n.chainId!==BigInt(r))throw new $({reason:`keyAuthorization chainId mismatch`});if(t){if(!Wd(n.address,Ok(t.accessKeyAddress,`accessKeyAddress`)))throw new $({reason:`keyAuthorization access key mismatch`});if(n.type!==t.keyType)throw new $({reason:`keyAuthorization key type mismatch`})}}function Ck(e,t){if(mk({request:t}),e.expiry!==fk(dk(t.subscriptionExpires)))throw new $({reason:`keyAuthorization expiry mismatch`})}function wk(e){let[t]=e.limits??[];if(!t||e.limits?.length!==1)throw new $({reason:`keyAuthorization must contain exactly one token limit`});return t}function Tk(e,t){if(!Wd(e.token,Ok(t.currency,`currency`)))throw new $({reason:`keyAuthorization currency mismatch`});if(e.limit!==BigInt(t.amount))throw new $({reason:`keyAuthorization amount mismatch`});if(e.period!==pk(t))throw new $({reason:`keyAuthorization period mismatch`})}function Ek(e,t){if(!e||e.length<1||e.length>2)throw new $({reason:`keyAuthorization must contain recipient-scoped transfer calls`});let n=Ok(t.currency,`currency`),r=Ok(t.recipient,`recipient`),i=new Set;for(let t of e){if(!Wd(t.address,n))throw new $({reason:`keyAuthorization call target mismatch`});let e=kk(t.selector);if(e!==`0xa9059cbb`&&e!==`0x95777d59`)throw new $({reason:`keyAuthorization selector not allowed`});if(i.has(e))throw new $({reason:`keyAuthorization duplicate selector`});if(i.add(e),t.recipients?.length!==1||!Wd(t.recipients[0],r))throw new $({reason:`keyAuthorization recipient mismatch`})}if(!i.has(`0xa9059cbb`))throw new $({reason:`keyAuthorization must allow transfer`});if(!i.has(`0x95777d59`))throw new $({reason:`keyAuthorization must allow transferWithMemo`})}function Dk(e,t){let n=px(e);try{let e=Bb({payload:n,signature:t});if(!Jb(t,{address:e,payload:n}))throw new $({reason:`keyAuthorization signature is invalid`});return e}catch(e){throw e instanceof $?e:new $({reason:`keyAuthorization signature is invalid`})}}function Ok(e,t){if(!Fi(e))throw new $({reason:`${t} must be an address`});return e.toLowerCase()}function kk(e){return typeof e==`string`?e.toLowerCase():``}let Ak=q({accessKey:Y(kE()),account:Y(kE())});function jk(e={}){let t=GO({chain:BO,getClient:e.getClient,rpcUrl:YO}),n=WO({account:e.account});return IO(lk,{context:Ak,async createCredential({challenge:r,context:i}){let a=r.request.methodDetails?.chainId??KO.testnet,o=await t({chainId:a}),s=n(o,i),c=i?.accessKey??e.accessKey??r.request.methodDetails?.accessKey;if(!c)throw Error(\"No `accessKey` provided. The subscription challenge must include `accessKey`, or the client must pass one to parameters/context.\");Nk(r.request),await e.validateRequest?.(r.request);let l=await Mk(o,{accessKey:c,account:s,chainId:a,request:r.request});if(!Wd(vk({accessKey:c,chainId:a,payload:{signature:gx(l),type:`keyAuthorization`},request:r.request}).source.address,s.address))throw Error(`keyAuthorization signer does not match the selected account`);return PO({challenge:r,payload:{signature:gx(l),type:`keyAuthorization`},source:`did:pkh:eip155:${a}:${s.address.toLowerCase()}`})}})}async function Mk(e,t){let{accessKey:n,account:r,chainId:i,request:a}=t;return await _k({accessKey:n,account:r,chainId:i,request:a})||dx((await e.request({method:`wallet_authorizeAccessKey`,params:[{address:n.accessKeyAddress,allowedCalls:gk(a),expiry:fk(dk(a.subscriptionExpires)),keyType:n.keyType,limits:[{token:a.currency,limit:BigInt(a.amount),period:pk(a)}]}]})).keyAuthorization)}function Nk(e){pk(e),fk(dk(e.subscriptionExpires))}let Pk=z(Vg(Mf(`mpp`),{as:`Hex`}),0,4);function Fk(e){return lp(z(Vg(Mf(e),{as:`Hex`}),0,10))}function Ik(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(lp(Pk),0),i[4]=1,i.set(Fk(t),5),n&&i.set(Fk(n),15),i.set(Lk(r),25),L(i)}function Lk(e){return lp(z(Vg(Mf(e),{as:`Hex`}),0,7))}function Rk(e,t){return e.toLowerCase()===t.toLowerCase()}let zk=[qO.pathUsd,qO.usdc];async function Bk(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!Rk(e,i)),c=await Promise.allSettled([Am(e,KS.call({account:n,token:i})),...s.map(t=>Am(e,KS.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 AS(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[BS.call({token:l,spender:wS,amount:e}),TS.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new Hk({currency:i})}}function Vk(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>Rk(e,t)))]:t,slippage:e.slippage??1}:!1}var Hk=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function Uk(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 Wk={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function Gk(e){return{name:`MPP`,version:`2`,chainId:e}}function Kk(e,t){return{challengeId:e,realm:t}}function qk(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}function Jk(e={}){let{clientId:t}=e,n=GO({chain:BO,getClient:e.getClient,rpcUrl:YO}),r=WO({account:e.account});return IO(sk,{context:q({account:Y(kE()),autoSwap:Y(kE()),mode:Y(mE(XO))}),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 PO({challenge:i,payload:{signature:await Ty(s,{account:c,domain:Gk(o),types:Wk,primaryType:`Proof`,message:Kk(i.id,i.realm)}),type:`proof`},source:qk({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:Ik({challengeId:i.id,clientId:t,serverId:i.realm}),g=Uk({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>rC.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=Vk(a?.autoSwap??e.autoSwap,zk),v=[...(_?await Bk(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 Cy(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return PO({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Hd(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,PO({challenge:i,payload:{signature:await wy(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function Yk(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let Xk={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function Zk(e,t,n,r,i,a){let o=await Ty(e,{account:t,domain:Yk(r,i),types:Xk,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=Ub(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return _v(e.inner.signature)}catch{}return o}function Qk(e){return Vg(H_(W_([`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 $k=[{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 eA(e,t,n){return Am(e,{address:t,abi:$k,functionName:`getChannel`,args:[n]})}pa({abi:$k,name:`open`}),pa({abi:$k,name:`topUp`});function tA(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??JO[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function nA(e,t,n,r){return PO({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function rA(e,t,n,r,i,a,o){let s=await Zk(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function iA(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=ap(32),f=Qk({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Sa({abi:V,functionName:`approve`,args:[r,o]}),m=Sa({abi:$k,functionName:`open`,args:[i,a,o,d,u]}),h=await Hd(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await wy(e,h),_=await Zk(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 aA(e,t,n,r){try{let i=await eA(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 oA=q({account:Y(kE()),action:Y(mE([`open`,`topUp`,`voucher`,`close`])),channelId:Y(G()),cumulativeAmount:Y(ED()),cumulativeAmountRaw:Y(G()),transaction:Y(G()),authorizedSigner:Y(G()),additionalDeposit:Y(ED()),additionalDepositRaw:Y(G()),depositRaw:Y(G())});function sA(e={}){let{decimals:t=6}=e,n=GO({chain:BO,getClient:e.getClient,rpcUrl:YO}),r=WO({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:ty(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 tA(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 ty(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),C=u(v,y,_),w=s.get(C);if(!w){let e=p?.channelId??m?.channelId;if(e){let n=await aA(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?ty(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(C,n),c.set(n.channelId,C),o.set(n.channelId,_),w=n,l(w)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let T;if(w?.opened)w.cumulativeAmount+=b,T=await rA(g,f,w.channelId,w.cumulativeAmount,_,h,te),l(w);else{let e=await iA(g,f,{authorizedSigner:te,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(C,e.entry),c.set(e.entry.channelId,C),o.set(e.entry.channelId,_),T=e.payload,l(e.entry)}return nA(r,T,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?ty(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?ty(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 Zk(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 rA(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 Zk(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 nA(e,S,u,r)}return IO(ck,{context:oA,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 cA(e){let t=ob(e);return JSON.parse(t)}function lA(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 uA(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function dA(){return JSON.stringify({mpp:`payment-close-request`})}function fA(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`&&pA(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`&&mA(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&pA(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function pA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function mA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let hA={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function gA(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:ty(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,_=sA({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=hO({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`);ne(t),ne(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 C(e){if(!m)return;let t=m;m=null,t.reject(e)}function w(e){if(!f)return;let t=f;f=null,t.reject(e)}function T(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 ne(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function re(e){let t=e.headers.get(`Payment-Receipt`),n=t?cA(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ie(e,t){return o=e,re(await v(e,t))}function ae(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=hA.CLOSED,r=null}if(e===`open`&&(i=hA.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 — 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:ie,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ie(e,{...s,headers:{..._O(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=lA(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);ne(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 T=WD(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!T)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=T;let re=await _.createCredential({challenge:T,context:{}});d=null,c=T,h=0n,g=BigInt(T.request.amount);let ie=jO(re);l=ie.payload.channelId;let oe=new n(v,f);u=oe;let se=ae(oe),ce=e=>{C(Error(e)),w(Error(e)),(oe.readyState===hA.CONNECTING||oe.readyState===hA.OPEN)&&oe.close(3008,e)},le=e=>e.challengeId===T.id&&e.channelId===l,ue=new Promise((e,t)=>{let n=()=>{oe.removeEventListener(`error`,r),se.emit(`open`,{type:`open`}),e()},r=()=>{oe.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};oe.addEventListener(`open`,n,{once:!0}),oe.addEventListener(`error`,r,{once:!0})});return oe.addEventListener(`close`,e=>{u===oe&&(u=null),c===T&&(c=null),l===ie.payload.channelId&&(l=null),p=null,C(Error(`WebSocket closed before the payment flow completed.`)),w(Error(`WebSocket closed before the payment flow completed.`)),se.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),oe.addEventListener(`error`,()=>{se.emit(`error`,{type:`error`})}),oe.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=fA(t);if(!n){se.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,se.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!le(n.data)){ce(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){ce(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),te(n.data),se.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:C(Error(n.message)),w(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){ce(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{ne(e)}catch(e){ce(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:T,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});oe.send(uA(r));break}case`payment-receipt`:if(!le(n.data)){ce(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){ce(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),w(Error(`WebSocket payment flow aborted.`)),oe.close()},{once:!0}),await ue,oe.send(uA(re)),await x(),se.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===hA.OPEN){let t=d??await(async()=>(u.send(dA()),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(uA(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(T(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return ne(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?cA(m):void 0}}}function _A(e={}){return[Jk(e),sA(e)]}(function(e){e.charge=Jk,e.session=gA,e.subscription=jk})(_A||={});function vA(e){return e}function yA(){return vA({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return WD(e)},getChallenge(e){return UD(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function bA(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=yA()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=XD(o,e.paymentPreferences),c=t,l={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},...c&&{onChallenge:c},methods:o},u=hO(l);return n&&gO(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=eO(r,o,xA(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&&CD(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 xA(e,t){return t?typeof t==`string`?ZD(t):t:e}function SA(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 CA(e={}){let{account:t}=e,n=await sS();return{accessKey:bS(n,t?{access:t}:void 0),keyPair:n}}function wA(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 TA(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 EA(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 DA(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 OC({message:`Account \"${n}\" not found.`}):new AC({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(AA(t,e))return OA(t)}}return kA(l,{signable:r})}function OA(e){if(`keyPair`in e&&e.keyPair)return bS(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return vS(e.privateKey,{access:e.access});case`p256`:return _S(e.privateKey,{access:e.access})}throw new OC({message:`External access key cannot be hydrated for signing.`})}function kA(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 OC({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return vS(e.privateKey);case`p256`:return _S(e.privateKey);case`webCrypto`:return bS(e.keyPair);case`webAuthn`:return yS(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return gS(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new OC({message:`Unknown key type.`})}}function AA(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:fy(e.selector)).toLowerCase():!0:!1)})}function jA(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function MA(e={}){let{dialog:t=ee()?ie():re(),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.`),jA({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=WC();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 DC);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new DC({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=VC({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:gD});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await CA();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){EA({address:e,keyAuthorization:dx(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=SA(n,{store:i});try{let e=await t(n,r??void 0);return TA(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),wA(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:kw(iD.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:kw(iD.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 Hd(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:[kw(VE,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 Hd(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:[kw(VE,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 Hd(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:[kw(VE,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[kw(iD.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:[kw(cD.parameters,e)]})},async swap(e,t){return await l.request(t)},async depositZone(e,t){return await l.request({...t,params:[kw(pD.parameters,e)]})},async withdrawZone(e,t){return await l.request({...t,params:[kw(mD.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let NA=new Map;function PA(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return IA(r);if(r?.url)return IA(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=NA.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=ky(),r=i?FA(i,t):t;u=rh({chain:e,transport:o?LA(r,o,s):r,pollingInterval:1e3}),NA.set(l,u)}return u}function FA(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function IA(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function LA(e,t,n){return r=>{let i=e(r),a=ky(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=dS(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 RA(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(RA.cache.get(n))return RA.cache.get(n);let r=e().finally(()=>RA.cache.delete(n));return RA.cache.set(n,r),r}RA.cache=new Map;function zA(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function BA(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=zA(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let VA;function HA(){return VA||=BA(`keyval-store`,`keyval`),VA}function UA(e,t=HA()){return t(`readonly`,t=>zA(t.get(e)))}function WA(e,t,n=HA()){return n(`readwrite`,n=>(n.put(t,e),zA(n.transaction)))}function GA(e,t=HA()){return t(`readwrite`,t=>(t.delete(e),zA(t.transaction)))}function KA(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 qA(e={}){let t=typeof indexedDB<`u`?BA(`tempo`,`store`):void 0;return KA({async getItem(e){let n=await UA(e,t);return n===null?null:n},async setItem(e,n){await WA(e,n,t)},async removeItem(e){await GA(e,t)}},e)}function JA(e={}){let t=new Map;return KA({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let YA=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 XA(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 ZA=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return ZA(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return ZA(t)(e)}}}},QA=(e,t)=>(n,r,i)=>{let a={storage:XA(()=>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 ZA(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},$A=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},ej=(e=>e?$A(e):$A);function tj(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?qA({key:`tempo`}):JA({key:`tempo`})}=e;return ej(YA(QA(()=>({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 nj(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function rj(e,t){let n=Dw(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new kC({message:`Unsupported method \"${t?.method}\".`}):new EC(-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 aj=new Set;function oj(e={}){let{adapter:t=MA(),chains:n=[BO,UO,VO],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?qA():JA()}=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=tj({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>DA({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return PA(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=BC();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`,R(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:R(c.getState().chainId)}):m.emit(`disconnect`,new AC)});function h(){if(c.getState().accounts.length===0)throw new AC({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(VC({...m,async request({method:t,params:r}){return await nj(c),RA(async()=>{let i;try{i=rj(vD,{method:t,params:r})}catch(e){if(!(e instanceof kC))throw e;return await PA(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 R(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=SA(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,..._x(n)}});return TA(e,{store:c}),r}catch{return wA(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=I(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[kw(VE,l)]}),rp(R(c.getState().chainId),32),cj);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[kw(VE,l)]}),d=u.transactionHash,f=R(c.getState().chainId),m=I(d,rp(f,32),cj);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 AC({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new CC({message:\"`tokens` is required.\"});let s=PA(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([KS(s,{account:a,token:e}),qS(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:R(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(cj.slice(2)))throw Error(\"`id` not supported\");$f(e);let t=z(e,0,32),r=R(Number(z(e,32,64))),a=await PA(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 OC({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(R(e.id))):n,o={};for(let e of a)o[R(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??ap(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 kC({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 kC({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 kC({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new kC({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_swap`:if(h(),!p.swap)throw new kC({message:\"`swap` not supported by adapter.\"});return await p.swap(i._decoded.params?.[0]??{},i);case`wallet_depositZone`:{if(h(),!p.depositZone)throw new kC({message:\"`depositZone` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.depositZone(t,i)}case`wallet_withdrawZone`:if(h(),!p.withdrawZone)throw new kC({message:\"`withdrawZone` not supported by adapter.\"});return await p.withdrawZone(i._decoded.params?.[0]??{},i);case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new PC({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:wf({method:t,params:r})})}},{schema:gD}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return PA(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,``)}`;aj.has(e)||(aj.add(e),yD({info:{icon:t.icon??sj,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&bA({methods:[_A({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let sj=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,cj=Vg(np(`TEMPO_5792`)),lj={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},uj={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},dj={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var fj=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let pj={accent:new fj(`accent`),background:new fj(`background`),border:new fj(`border`),foreground:new fj(`foreground`),muted:new fj(`muted`),negative:new fj(`negative`),positive:new fj(`positive`),surface:new fj(`surface`),fontFamily:new fj(`font-family`),fontSizeBase:new fj(`font-size-base`),radius:new fj(`radius`),spacingUnit:new fj(`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: ${pj.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 mj(e){let t=new URL(location.href);t.searchParams.set(uj.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 hj(e){let t=document.getElementById(lj.data),n=Cf(t.textContent),r=t.getAttribute(dj.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(dj.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(dj.challengeId),o=a?(i.removeAttribute(dj.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(lj.error)?.remove();return}let t=document.getElementById(lj.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=lj.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:mj,vars:pj}}let gj=hj(`tempo`),_j=String.raw,vj=document.createElement(`style`);vj.textContent=_j`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${gj.vars.spacingUnit} * 8);\n }\n button {\n background: ${gj.vars.accent};\n border-radius: ${gj.vars.radius};\n color: ${gj.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${gj.vars.spacingUnit} * 4) calc(${gj.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`,gj.root.append(vj);let yj=oj({testnet:gj.challenge.request.methodDetails?.chainId===UO.id||gj.challenge.request.methodDetails?.chainId===HO.id}),bj=document.createElement(`button`);bj.innerHTML=`${gj.text.pay===`Pay`?`Continue with`:gj.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>`,bj.onclick=async()=>{try{gj.error(),bj.disabled=!0;let e=await(async()=>{let e=await yj.request({method:`eth_accounts`});return e.length>0?e.at(0):(await yj.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await _A({account:e,getClient:e=>{let t=e.chainId??gj.challenge.request.methodDetails?.chainId;return rh({chain:[...yj?.chains??[],UO,HO].find(e=>e.id===t),transport:Dy(yj)})}})[0].createCredential({challenge:gj.challenge,context:{}});await gj.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;gj.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{bj.disabled=!1}},gj.root.appendChild(bj)})();</script>"
2
+ export 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,n){return n&&v(t,n)?!0:e.some(e=>e.startsWith(`*.`)?t.endsWith(e.slice(1))&&t.length>e.length-1:e===t)}function v(e,t){return y(e)===y(t)}function y(e){let t=e.split(`:`)[0].toLowerCase(),n=t.split(`.`);return n.length<=2?t:n.slice(-2).join(`.`)}function b(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 x={height:440,width:360};function S(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function ee(){return typeof window>`u`?!1:window.location.protocol===`http:`?!0:!window.isSecureContext}function te(){if(typeof navigator>`u`)return!1;let e=navigator.userAgent.toLowerCase();return e.includes(`safari`)&&!e.includes(`chrome`)}let C,w,T,ne=[];function re(){return typeof window>`u`?ae():S({name:`iframe`},e=>{let{host:t}=e;if(C&&C.host===t){let t=w;return w=e.store,t&&t!==w&&!ne.includes(t)&&ne.push(t),T?.destroy(),T=ie()(e),C.instance.syncTheme(e.theme),C.instance}C?.instance.destroy(),w=e.store,T=ie()(e);let n=!1,r=de(),i=new URL(t);i.searchParams.set(`chainId`,String(w.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))),b(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=>{se(oe(w,ne,e.id),e)}),e.waitForReady().then(t=>{c=t,t.colorScheme&&(o.style.colorScheme=t.colorScheme),le(e)}),e.on(`sync`,({valid:e})=>{e===!1&&w?.setState({accessKeys:[],accounts:[],activeAccount:0})}),e.on(`switch-mode`,()=>{fe(),S(),n=!1,l=!0;let e=w?.getState().requestQueue.filter(e=>e.status===`pending`);e&&e.length>0&&T?.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=()=>ce(w),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 x=!1,S=()=>{x&&(x=!1,a.removeEventListener(`cancel`,v),a.removeEventListener(`click`,v),a.style.pointerEvents=`none`,g?.focus(),g=null,document.body.style.overflow=h)},ee=()=>{x||(x=!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`)},re=!1,ae=()=>{re||(re=!0,document.activeElement instanceof HTMLElement&&(g=document.activeElement),a.removeAttribute(`hidden`),a.removeAttribute(`aria-closed`),a.showModal())},fe=()=>{if(re){re=!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(){T.close(),n=!1,fe(),S()},destroy(){C?.instance===pe&&(C=void 0),T?.close(),n=!1,S(),fe(),T?.destroy(),f.destroy(),a.remove(),y.disconnect(),w=void 0,T=void 0,ne=[]},open(){n||(n=!0,ae(),ee())},async syncRequests(e){if(l){T.syncRequests(e);return}let{trustedHosts:t}=c??await f.waitForReady();if(te()&&e.some(e=>[`wallet_connect`,`eth_requestAccounts`].includes(e.request.method))){T.syncRequests(e);return}let r=d(),a=window.location.hostname.replace(/^www\\./,``),o=!!(t&&_(t,a,i.hostname));if(!(r||o))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`)),T.syncRequests(e);else{let t=e.some(e=>e.status===`pending`);!n&&t&&this.open(),f.send(`rpc-requests`,{account:ue(w),chainId:w.getState().chainId,requests:e})}},syncTheme(e){o.style.colorScheme=e?.scheme??`light dark`,f.send(`theme`,e??{})}};return C={host:t,instance:pe},pe})}function ie(e={}){if(typeof window>`u`)return ae();let{size:t=x}=e;return S({name:`popup`},e=>{let{host:n,store:r}=e,i=null,a=(()=>{let e=setInterval(()=>{i?.closed&&ce(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`,()=>ce(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=de(),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))),b(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=>se(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:ue(r),chainId:r.getState().chainId,requests:e})},syncTheme(){}}})}function ae(){return S({name:`noop`},()=>({open(){},close(){},destroy(){},async syncRequests(){},syncTheme(){}}))}function oe(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 se(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 ce(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 le(e){if(!w)return;let{accounts:t}=w.getState();t.length!==0&&e.send(`sync`,{addresses:t.map(e=>e.address)})}function ue(e){let{accounts:t,activeAccount:n}=e.getState(),r=t[n];if(r)return{address:r.address}}function de(){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 fe,pe=o((()=>{fe=`1.2.3`})),me,he=o((()=>{pe(),me=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@${fe}`].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 ge(e,t){return e.exec(t)?.groups}var _e,ve,ye,be=o((()=>{_e=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,ve=/^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)?$/,ye=/^\\(.+?\\).*?$/}));function xe(e){let t=e.type;if(Se.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+=xe(i),r<n-1&&(t+=`, `)}let r=ge(Se,e.type);return t+=`)${r?.array||``}`,xe({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}var Se,Ce=o((()=>{be(),Se=/^tuple(?<array>(\\[(\\d*)\\])*)$/}));function we(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=xe(i),r!==n-1&&(t+=`, `)}return t}var Te=o((()=>{Ce()}));function Ee(e){return e.type===`function`?`function ${e.name}(${we(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${we(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${we(e.inputs)})`:e.type===`error`?`error ${e.name}(${we(e.inputs)})`:e.type===`constructor`?`constructor(${we(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}var De=o((()=>{Te()}));function Oe(e){return Ve.test(e)}function ke(e){return ge(Ve,e)}function Ae(e){return He.test(e)}function je(e){return ge(He,e)}function Me(e){return Ue.test(e)}function Ne(e){return ge(Ue,e)}function Pe(e){return We.test(e)}function Fe(e){return ge(We,e)}function Ie(e){return Ge.test(e)}function Le(e){return ge(Ge,e)}function Re(e){return Ke.test(e)}function ze(e){return ge(Ke,e)}function Be(e){return qe.test(e)}var Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe=o((()=>{be(),Ve=/^error (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,He=/^event (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)$/,Ue=/^function (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*)\\((?<parameters>.*?)\\)(?: (?<scope>external|public{1}))?(?: (?<stateMutability>pure|view|nonpayable|payable{1}))?(?: returns\\s?\\((?<returns>.*?)\\))?$/,We=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/,Ge=/^constructor\\((?<parameters>.*?)\\)(?:\\s(?<stateMutability>payable{1}))?$/,Ke=/^fallback\\(\\) external(?:\\s(?<stateMutability>payable{1}))?$/,qe=/^receive\\(\\) external payable$/,Je=new Set([`indexed`]),Ye=new Set([`calldata`,`memory`,`storage`])})),Ze,Qe,$e=o((()=>{he(),Ze=class extends me{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`})}},Qe=class extends me{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`})}}})),et,tt,nt,rt,it,at=o((()=>{he(),et=class extends me{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},tt=class extends me{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 me{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 me{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 me{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((()=>{he(),ot=class extends me{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 me{constructor({signature:e}){super(`Unknown signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`UnknownSignatureError`})}},ct=class extends me{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((()=>{he(),ut=class extends me{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((()=>{he(),ft=class extends me{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(Me(e))return vt(e,t);if(Ae(e))return yt(e,t);if(Oe(e))return bt(e,t);if(Ie(e))return xt(e,t);if(Re(e))return St(e);if(Be(e))return{type:`receive`,stateMutability:`payable`};throw new st({signature:e})}function vt(e,t={}){let n=Ne(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:Ye,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:Ye,structs:t,type:`function`}))}return{name:n.name,type:`function`,stateMutability:n.stateMutability??`nonpayable`,inputs:i,outputs:o}}function yt(e,t={}){let n=je(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:Je,structs:t,type:`event`}));return{name:n.name,type:`event`,inputs:i}}function bt(e,t={}){let n=ke(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=Le(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=ze(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=ye.test(e),i=ge(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 Qe({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new nt({param:e,type:t?.type,modifier:i.modifier});if(Ye.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`||_e.test(e)||ve.test(e)}function Et(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||_e.test(e)||ve.test(e)||jt.test(e)}function Dt(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}var Ot,kt,At,jt,Mt=o((()=>{be(),$e(),at(),lt(),pt(),gt(),Xe(),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(!Pe(n))continue;let i=Fe(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(ye.test(i.type))r.push(i);else{let e=ge(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 Ze({type:o})}}return r}var Ft,It=o((()=>{be(),$e(),at(),lt(),dt(),Xe(),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];Pe(r)||n.push(_t(r,t))}return n}var Rt=o((()=>{Xe(),It(),Mt()})),zt=o((()=>{he(),De(),Ce(),Te(),Rt(),$e(),Xe(),It(),Mt(),at(),lt(),pt(),dt()}));function E(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 Bt(e,{includeName:t=!1}={}){if(e.type!==`function`&&e.type!==`event`&&e.type!==`error`)throw new bn(e.type);return`${e.name}(${Vt(e.inputs,{includeName:t})})`}function Vt(e,{includeName:t=!1}={}){return e?e.map(e=>Ht(e,{includeName:t})).join(t?`, `:`,`):``}function Ht(e,{includeName:t}){return e.type.startsWith(`tuple`)?`(${Vt(e.components,{includeName:t})})${e.type.slice(5)}`:e.type+(t&&e.name?` ${e.name}`:``)}var Ut=o((()=>{xn()}));function D(e,{strict:t=!0}={}){return!e||typeof e!=`string`?!1:t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith(`0x`)}var Wt=o((()=>{}));function Gt(e){return D(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}var Kt=o((()=>{Wt()})),qt,Jt=o((()=>{qt=`2.47.6`}));function Yt(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause!==void 0?Yt(e.cause,t):t?null:e}var Xt,O,k=o((()=>{Jt(),Xt={getDocsUrl:({docsBaseUrl:e,docsPath:t=``,docsSlug:n})=>t?`${e??`https://viem.sh`}${t}${n?`#${n}`:``}`:void 0,version:`viem@${qt}`},O=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=Xt.getDocsUrl?.({...n,docsPath:i}),o=[t||`An error occurred.`,``,...n.metaMessages?[...n.metaMessages,``]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...Xt.version?[`Version: ${Xt.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=qt}walk(e){return Yt(this,e)}}})),Zt,Qt,$t,en,tn,nn,rn,an,on,sn,cn,ln,un,dn,fn,pn,mn,hn,gn,_n,vn,yn,bn,xn=o((()=>{Ut(),Kt(),k(),Zt=class extends O{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`})}},Qt=class extends O{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`})}},$t=class extends O{constructor({data:e,params:t,size:n}){super([`Data size of ${n} bytes is too small for given parameters.`].join(`\n`),{metaMessages:[`Params: (${Vt(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}},en=class extends O{constructor({cause:e}={}){super(`Cannot decode zero data (\"0x\") with ABI parameters.`,{name:`AbiDecodingZeroDataError`,cause:e})}},tn=class extends O{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`})}},nn=class extends O{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${Gt(t)}) does not match expected size (bytes${e}).`,{name:`AbiEncodingBytesSizeMismatchError`})}},rn=class extends O{constructor({expectedLength:e,givenLength:t}){super([`ABI encoding params/values length mismatch.`,`Expected length (params): ${e}`,`Given length (values): ${t}`].join(`\n`),{name:`AbiEncodingLengthMismatchError`})}},an=class extends O{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`})}},on=class extends O{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`})}},sn=class extends O{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}},cn=class extends O{constructor({docsPath:e}){super(`Cannot extract event signature from empty topics.`,{docsPath:e,name:`AbiEventSignatureEmptyTopicsError`})}},ln=class extends O{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`})}},un=class extends O{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`})}},dn=class extends O{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`})}},fn=class extends O{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`})}},pn=class extends O{constructor(e,t){super(`Found ambiguous types in overloaded ABI items.`,{metaMessages:[`\\`${e.type}\\` in \\`${Bt(e.abiItem)}\\`, and`,`\\`${t.type}\\` in \\`${Bt(t.abiItem)}\\``,``,`These types encode differently and cannot be distinguished at runtime.`,`Remove one of the ambiguous items in the ABI.`],name:`AbiItemAmbiguityError`})}},mn=class extends O{constructor({expectedSize:e,givenSize:t}){super(`Expected bytes${e}, got bytes${t}.`,{name:`BytesSizeMismatchError`})}},hn=class extends O{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: (${Vt(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}},gn=class extends O{constructor({abiItem:e,param:t}){super([`Expected a topic for indexed event parameter${t.name?` \"${t.name}\"`:``} on event \"${Bt(e,{includeName:!0})}\".`].join(`\n`),{name:`DecodeLogTopicsMismatch`}),Object.defineProperty(this,`abiItem`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.abiItem=e}},_n=class extends O{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`})}},vn=class extends O{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`})}},yn=class extends O{constructor(e){super([`Value \"${e}\" is not a valid array.`].join(`\n`),{name:`InvalidArrayError`})}},bn=class extends O{constructor(e){super([`\"${e}\" is not a valid definition type.`,`Valid types: \"function\", \"event\", \"error\"`].join(`\n`),{name:`InvalidDefinitionTypeError`})}}})),Sn,Cn,wn,Tn=o((()=>{k(),Sn=class extends O{constructor({offset:e,position:t,size:n}){super(`Slice ${t===`start`?`starting`:`ending`} at offset \"${e}\" is out-of-bounds (size: ${n}).`,{name:`SliceOffsetOutOfBoundsError`})}},Cn=class extends O{constructor({size:e,targetSize:t,type:n}){super(`${n.charAt(0).toUpperCase()}${n.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:`SizeExceedsPaddingSizeError`})}},wn=class extends O{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 En(e,{dir:t,size:n=32}={}){return typeof e==`string`?Dn(e,{dir:t,size:n}):On(e,{dir:t,size:n})}function Dn(e,{dir:t,size:n=32}={}){if(n===null)return e;let r=e.replace(`0x`,``);if(r.length>n*2)throw new Cn({size:Math.ceil(r.length/2),targetSize:n,type:`hex`});return`0x${r[t===`right`?`padEnd`:`padStart`](n*2,`0`)}`}function On(e,{dir:t,size:n=32}={}){if(n===null)return e;if(e.length>n)throw new Cn({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 kn=o((()=>{Tn()})),An,jn,Mn,Nn,Pn,Fn=o((()=>{k(),An=class extends O{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`})}},jn=class extends O{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`})}},Mn=class extends O{constructor(e){super(`Hex value \"${e}\" is not a valid boolean. The hex value must be \"0x0\" (false) or \"0x1\" (true).`,{name:`InvalidHexBooleanError`})}},Nn=class extends O{constructor(e){super(`Hex value \"${e}\" is an odd length (${e.length}). It must be an even length.`,{name:`InvalidHexValueError`})}},Pn=class extends O{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:`SizeOverflowError`})}}}));function In(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 Ln=o((()=>{}));function Rn(e,{size:t}){if(Gt(e)>t)throw new Pn({givenSize:Gt(e),maxSize:t})}function A(e,t={}){let{signed:n}=t;t.size&&Rn(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 zn(e,t={}){let n=e;if(t.size&&(Rn(n,{size:t.size}),n=In(n)),In(n)===`0x00`)return!1;if(In(n)===`0x01`)return!0;throw new Mn(n)}function Bn(e,t={}){let n=A(e,t),r=Number(n);if(!Number.isSafeInteger(r))throw new An({max:`${2**53-1}`,min:`${-(2**53-1)}`,signed:t.signed,size:t.size,value:`${n}n`});return r}var Vn=o((()=>{Fn(),Kt(),Ln()}));function Hn(e,t={}){return typeof e==`number`||typeof e==`bigint`?j(e,t):typeof e==`string`?Gn(e,t):typeof e==`boolean`?Un(e,t):Wn(e,t)}function Un(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(Rn(n,{size:t.size}),En(n,{size:t.size})):n}function Wn(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=Kn[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(Rn(r,{size:t.size}),En(r,{dir:`right`,size:t.size})):r}function j(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 An({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?En(s,{size:r}):s}function Gn(e,t={}){return Wn(qn.encode(e),t)}var Kn,qn,M=o((()=>{Fn(),kn(),Vn(),Kn=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),qn=new TextEncoder}));function Jn(e,t={}){return typeof e==`number`||typeof e==`bigint`?Qn(e,t):typeof e==`boolean`?Yn(e,t):D(e)?Zn(e,t):$n(e,t)}function Yn(e,t={}){let n=new Uint8Array(1);return n[0]=Number(e),typeof t.size==`number`?(Rn(n,{size:t.size}),En(n,{size:t.size})):n}function Xn(e){if(e>=tr.zero&&e<=tr.nine)return e-tr.zero;if(e>=tr.A&&e<=tr.F)return e-(tr.A-10);if(e>=tr.a&&e<=tr.f)return e-(tr.a-10)}function Zn(e,t={}){let n=e;t.size&&(Rn(n,{size:t.size}),n=En(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=Xn(r.charCodeAt(t++)),i=Xn(r.charCodeAt(t++));if(n===void 0||i===void 0)throw new O(`Invalid byte sequence (\"${r[t-2]}${r[t-1]}\" in \"${r}\").`);a[e]=n*16+i}return a}function Qn(e,t){return Zn(j(e,t))}function $n(e,t={}){let n=er.encode(e);return typeof t.size==`number`?(Rn(n,{size:t.size}),En(n,{dir:`right`,size:t.size})):n}var er,tr,nr=o((()=>{k(),Wt(),kn(),Vn(),M(),er=new TextEncoder,tr={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function rr(e,t=!1){return t?{h:Number(e&or),l:Number(e>>sr&or)}:{h:Number(e>>sr&or)|0,l:Number(e&or)|0}}function ir(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}=rr(e[a],t);[r[a],i[a]]=[n,o]}return[r,i]}function ar(e,t,n,r){let i=(t>>>0)+(r>>>0);return{h:e+n+(i/2**32|0)|0,l:i|0}}var or,sr,cr,lr,ur,dr,fr,pr,mr,hr,gr,_r,vr,yr,br,xr,Sr,Cr,wr=o((()=>{or=BigInt(2**32-1),sr=BigInt(32),cr=(e,t,n)=>e>>>n,lr=(e,t,n)=>e<<32-n|t>>>n,ur=(e,t,n)=>e>>>n|t<<32-n,dr=(e,t,n)=>e<<32-n|t>>>n,fr=(e,t,n)=>e<<64-n|t>>>n-32,pr=(e,t,n)=>e>>>n-32|t<<64-n,mr=(e,t,n)=>e<<n|t>>>32-n,hr=(e,t,n)=>t<<n|e>>>32-n,gr=(e,t,n)=>t<<n-32|e>>>64-n,_r=(e,t,n)=>e<<n-32|t>>>64-n,vr=(e,t,n)=>(e>>>0)+(t>>>0)+(n>>>0),yr=(e,t,n,r)=>t+n+r+(e/2**32|0)|0,br=(e,t,n,r)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0),xr=(e,t,n,r,i)=>t+n+r+i+(e/2**32|0)|0,Sr=(e,t,n,r,i)=>(e>>>0)+(t>>>0)+(n>>>0)+(r>>>0)+(i>>>0),Cr=(e,t,n,r,i,a)=>t+n+r+i+a+(e/2**32|0)|0})),Tr,Er=o((()=>{Tr=typeof globalThis==`object`&&`crypto`in globalThis?globalThis.crypto:void 0}));function Dr(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Or(e){if(!Number.isSafeInteger(e)||e<0)throw Error(`positive integer expected, got `+e)}function kr(e,...t){if(!Dr(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 Ar(e){if(typeof e!=`function`||typeof e.create!=`function`)throw Error(`Hash should be wrapped by utils.createHasher`);Or(e.outputLen),Or(e.blockLen)}function jr(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 Mr(e,t){kr(e);let n=t.outputLen;if(e.length<n)throw Error(`digestInto() expects output buffer of length at least `+n)}function Nr(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function Pr(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Fr(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Ir(e,t){return e<<32-t|e>>>t}function Lr(e){return e<<24&4278190080|e<<8&16711680|e>>>8&65280|e>>>24&255}function Rr(e){for(let t=0;t<e.length;t++)e[t]=Lr(e[t]);return e}function zr(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function Br(e){return typeof e==`string`&&(e=zr(e)),kr(e),e}function Vr(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];kr(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 Hr(e){let t=t=>e().update(Br(t)).digest(),n=e();return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=()=>e(),t}function Ur(e){let t=(t,n)=>e(n).update(Br(t)).digest(),n=e({});return t.outputLen=n.outputLen,t.blockLen=n.blockLen,t.create=t=>e(t),t}function Wr(e=32){if(Tr&&typeof Tr.getRandomValues==`function`)return Tr.getRandomValues(new Uint8Array(e));if(Tr&&typeof Tr.randomBytes==`function`)return Uint8Array.from(Tr.randomBytes(e));throw Error(`crypto.getRandomValues must be defined`)}var Gr,Kr,qr,Jr=o((()=>{Er(),Gr=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68,Kr=Gr?e=>e:Rr,typeof Uint8Array.from([]).toHex==`function`&&Uint8Array.fromHex,qr=class{}}));function Yr(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=ci(a,o,1)^n[r],c=li(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=ri[n],a=ci(t,i,r),o=li(t,i,r),s=ni[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]^=oi[r],e[1]^=si[r]}Pr(n)}var Xr,Zr,Qr,$r,ei,ti,ni,ri,ii,ai,oi,si,ci,li,ui,di,fi,pi,mi=o((()=>{wr(),Jr(),Xr=BigInt(0),Zr=BigInt(1),Qr=BigInt(2),$r=BigInt(7),ei=BigInt(256),ti=BigInt(113),ni=[],ri=[],ii=[];for(let e=0,t=Zr,n=1,r=0;e<24;e++){[n,r]=[r,(2*n+3*r)%5],ni.push(2*(5*r+n)),ri.push((e+1)*(e+2)/2%64);let i=Xr;for(let e=0;e<7;e++)t=(t<<Zr^(t>>$r)*ti)%ei,t&Qr&&(i^=Zr<<(Zr<<BigInt(e))-Zr);ii.push(i)}ai=ir(ii,!0),oi=ai[0],si=ai[1],ci=(e,t,n)=>n>32?gr(e,t,n):mr(e,t,n),li=(e,t,n)=>n>32?_r(e,t,n):hr(e,t,n),ui=class e extends qr{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,Or(n),!(0<e&&e<200))throw Error(`only keccak-f1600 function is supported`);this.state=new Uint8Array(200),this.state32=Nr(this.state)}clone(){return this._cloneInto()}keccak(){Kr(this.state32),Yr(this.state32,this.rounds),Kr(this.state32),this.posOut=0,this.pos=0}update(e){jr(this),e=Br(e),kr(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){jr(this,!1),kr(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 Or(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(Mr(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,Pr(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}},di=(e,t,n)=>Hr(()=>new ui(t,e,n)),di(6,144,224/8),di(6,136,256/8),di(6,104,384/8),di(6,72,512/8),di(1,144,224/8),fi=di(1,136,256/8),di(1,104,384/8),di(1,72,512/8),pi=(e,t,n)=>Ur((r={})=>new ui(t,e,r.dkLen===void 0?n:r.dkLen,!0)),pi(31,168,128/8),pi(31,136,256/8)}));function hi(e,t){let n=t||`hex`,r=fi(D(e,{strict:!1})?Jn(e):e);return n===`bytes`?r:Hn(r)}var gi=o((()=>{mi(),Wt(),nr(),M()}));function _i(e){return vi(e)}var vi,yi=o((()=>{nr(),gi(),vi=e=>hi(Jn(e))}));function bi(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 O(`Unable to normalize signature.`);return i}var xi=o((()=>{k()})),Si,Ci=o((()=>{zt(),xi(),Si=e=>bi(typeof e==`string`?e:Ee(e))}));function wi(e){return _i(Si(e))}var Ti=o((()=>{yi(),Ci()})),Ei,Di=o((()=>{Ti(),Ei=wi})),Oi,ki=o((()=>{k(),Oi=class extends O{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`})}}})),Ai,ji=o((()=>{Ai=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 Mi(e,t){if(Pi.has(`${e}.${t}`))return Pi.get(`${e}.${t}`);let n=t?`${t}${e.toLowerCase()}`:e.substring(2).toLowerCase(),r=hi($n(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 Pi.set(`${e}.${t}`,a),a}function Ni(e,t){if(!Ii(e,{strict:!1}))throw new Oi({address:e});return Mi(e,t)}var Pi,Fi=o((()=>{ki(),nr(),gi(),ji(),zi(),Pi=new Ai(8192)}));function Ii(e,t){let{strict:n=!0}=t??{},r=`${e}.${n}`;if(Ri.has(r))return Ri.get(r);let i=Li.test(e)?e.toLowerCase()===e?!0:n?Mi(e)===e:!0:!1;return Ri.set(r,i),i}var Li,Ri,zi=o((()=>{ji(),Fi(),Li=/^0x[a-fA-F0-9]{40}$/,Ri=new Ai(8192)}));function Bi(e){return typeof e[0]==`string`?Hi(e):Vi(e)}function Vi(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 Hi(e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}var Ui=o((()=>{}));function Wi(e,t,n,{strict:r}={}){return D(e,{strict:!1})?Ji(e,t,n,{strict:r}):qi(e,t,n,{strict:r})}function Gi(e,t){if(typeof t==`number`&&t>0&&t>Gt(e)-1)throw new Sn({offset:t,position:`start`,size:Gt(e)})}function Ki(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Gt(e)!==n-t)throw new Sn({offset:n,position:`end`,size:Gt(e)})}function qi(e,t,n,{strict:r}={}){Gi(e,t);let i=e.slice(t,n);return r&&Ki(i,t,n),i}function Ji(e,t,n,{strict:r}={}){Gi(e,t);let i=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return r&&Ki(i,t,n),i}var Yi=o((()=>{Tn(),Wt(),Kt()})),Xi,Zi,Qi=o((()=>{Xi=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,Zi=/^(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 $i(e,t){if(e.length!==t.length)throw new rn({expectedLength:e.length,givenLength:t.length});let n=na(ea({params:e,values:t}));return n.length===0?`0x`:n}function ea({params:e,values:t}){let n=[];for(let r=0;r<e.length;r++)n.push(ta({param:e[r],value:t[r]}));return n}function ta({param:e,value:t}){let n=ua(e.type);if(n){let[r,i]=n;return ia(t,{length:r,param:{...e,type:i}})}if(e.type===`tuple`)return la(t,{param:e});if(e.type===`address`)return ra(t);if(e.type===`bool`)return oa(t);if(e.type.startsWith(`uint`)||e.type.startsWith(`int`)){let n=e.type.startsWith(`int`),[,,r=`256`]=Zi.exec(e.type)??[];return sa(t,{signed:n,size:Number(r)})}if(e.type.startsWith(`bytes`))return aa(t,{param:e});if(e.type===`string`)return ca(t);throw new _n(e.type,{docsPath:`/docs/contract/encodeAbiParameters`})}function na(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=Gt(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(j(t+i,{size:32})),r.push(s),i+=Gt(s)):n.push(s)}return Bi([...n,...r])}function ra(e){if(!Ii(e))throw new Oi({address:e});return{dynamic:!1,encoded:Dn(e.toLowerCase())}}function ia(e,{length:t,param:n}){let r=t===null;if(!Array.isArray(e))throw new yn(e);if(!r&&e.length!==t)throw new tn({expectedLength:t,givenLength:e.length,type:`${n.type}[${t}]`});let i=!1,a=[];for(let t=0;t<e.length;t++){let r=ta({param:n,value:e[t]});r.dynamic&&(i=!0),a.push(r)}if(r||i){let e=na(a);if(r){let t=j(a.length,{size:32});return{dynamic:!0,encoded:a.length>0?Bi([t,e]):t}}if(i)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:Bi(a.map(({encoded:e})=>e))}}function aa(e,{param:t}){let[,n]=t.type.split(`bytes`),r=Gt(e);if(!n){let t=e;return r%32!=0&&(t=Dn(t,{dir:`right`,size:Math.ceil((e.length-2)/2/32)*32})),{dynamic:!0,encoded:Bi([Dn(j(r,{size:32})),t])}}if(r!==Number.parseInt(n,10))throw new nn({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:Dn(e,{dir:`right`})}}function oa(e){if(typeof e!=`boolean`)throw new O(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:Dn(Un(e))}}function sa(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 An({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:j(e,{size:32,signed:t})}}function ca(e){let t=Gn(e),n=Math.ceil(Gt(t)/32),r=[];for(let e=0;e<n;e++)r.push(Dn(Wi(t,e*32,(e+1)*32),{dir:`right`}));return{dynamic:!0,encoded:Bi([Dn(j(Gt(t),{size:32})),...r])}}function la(e,{param:t}){let n=!1,r=[];for(let i=0;i<t.components.length;i++){let a=t.components[i],o=ta({param:a,value:e[Array.isArray(e)?i:a.name]});r.push(o),o.dynamic&&(n=!0)}return{dynamic:n,encoded:n?na(r):Bi(r.map(({encoded:e})=>e))}}function ua(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}var da=o((()=>{xn(),ki(),k(),Fn(),zi(),Ui(),kn(),Kt(),Yi(),M(),Qi()})),fa,pa=o((()=>{Yi(),Ti(),fa=e=>Wi(wi(e),0,4)}));function ma(e){let{abi:t,args:n=[],name:r}=e,i=D(r,{strict:!1}),a=t.filter(e=>i?e.type===`function`?fa(e)===r:e.type===`event`?Ei(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?ha(t,r):!1})){if(o&&`inputs`in o&&o.inputs){let t=ga(e.inputs,o.inputs,n);if(t)throw new pn({abiItem:e,type:t[0]},{abiItem:o,type:t[1]})}o=e}}return o||a[0]}function ha(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return Ii(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`&&ha(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=>ha(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function ga(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 ga(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`))&&Ii(n[r],{strict:!1}))return o}}var _a=o((()=>{xn(),Wt(),zi(),Di(),pa()}));function va(e){return typeof e==`string`?{address:e,type:`json-rpc`}:e}var ya=o((()=>{}));function ba(e){let{abi:t,args:n,functionName:r}=e,i=t[0];if(r){let e=ma({abi:t,args:n,name:r});if(!e)throw new un(r,{docsPath:xa});i=e}if(i.type!==`function`)throw new un(void 0,{docsPath:xa});return{abi:[i],functionName:fa(Bt(i))}}var xa,Sa=o((()=>{xn(),pa(),Ut(),_a(),xa=`/docs/contract/encodeFunctionData`}));function Ca(e){let{args:t}=e,{abi:n,functionName:r}=e.abi.length===1&&e.functionName?.startsWith(`0x`)?e:ba(e),i=n[0];return Hi([r,(`inputs`in i&&i.inputs?$i(i.inputs,t??[]):void 0)??`0x`])}var wa=o((()=>{Ui(),da(),Sa()})),Ta,Ea,Da,Oa=o((()=>{Ta={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.`},Ea={inputs:[{name:`message`,type:`string`}],name:`Error`,type:`error`},Da={inputs:[{name:`reason`,type:`uint256`}],name:`Panic`,type:`error`}})),ka,Aa,ja,Ma=o((()=>{k(),ka=class extends O{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`,{name:`NegativeOffsetError`})}},Aa=class extends O{constructor({length:e,position:t}){super(`Position \\`${t}\\` is out of bounds (\\`0 < position < ${e}\\`).`,{name:`PositionOutOfBoundsError`})}},ja=class extends O{constructor({count:e,limit:t}){super(`Recursive read limit of \\`${t}\\` exceeded (recursive read count: \\`${e}\\`).`,{name:`RecursiveReadLimitExceededError`})}}}));function Na(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(Pa);return n.bytes=e,n.dataView=new DataView(e.buffer??e,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var Pa,Fa=o((()=>{Ma(),Pa={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 ja({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new Aa({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new ka({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 ka({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 Ia(e,t={}){return t.size!==void 0&&Rn(e,{size:t.size}),A(Wn(e,t),t)}function La(e,t={}){let n=e;if(t.size!==void 0&&(Rn(n,{size:t.size}),n=In(n)),n.length>1||n[0]>1)throw new jn(n);return!!n[0]}function Ra(e,t={}){return t.size!==void 0&&Rn(e,{size:t.size}),Bn(Wn(e,t),t)}function za(e,t={}){let n=e;return t.size!==void 0&&(Rn(n,{size:t.size}),n=In(n,{dir:`right`})),new TextDecoder().decode(n)}var Ba=o((()=>{Fn(),Ln(),Vn(),M()}));function Va(e,t){let n=typeof t==`string`?Zn(t):t,r=Na(n);if(Gt(n)===0&&e.length>0)throw new en;if(Gt(t)&&Gt(t)<32)throw new $t({data:typeof t==`string`?t:Wn(t),params:e,size:Gt(t)});let i=0,a=[];for(let t=0;t<e.length;++t){let n=e[t];r.setPosition(i);let[o,s]=Ha(r,n,{staticPosition:0});i+=s,a.push(o)}return a}function Ha(e,t,{staticPosition:n}){let r=ua(t.type);if(r){let[i,a]=r;return Wa(e,{...t,type:a},{length:i,staticPosition:n})}if(t.type===`tuple`)return Ja(e,t,{staticPosition:n});if(t.type===`address`)return Ua(e);if(t.type===`bool`)return Ga(e);if(t.type.startsWith(`bytes`))return Ka(e,t,{staticPosition:n});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return qa(e,t);if(t.type===`string`)return Ya(e,{staticPosition:n});throw new vn(t.type,{docsPath:`/docs/contract/decodeAbiParameters`})}function Ua(e){return[Mi(Wn(qi(e.readBytes(32),-20))),32]}function Wa(e,t,{length:n,staticPosition:r}){if(!n){let n=r+Ra(e.readBytes(Qa)),i=n+Za;e.setPosition(n);let a=Ra(e.readBytes(Za)),o=Xa(t),s=0,c=[];for(let n=0;n<a;++n){e.setPosition(i+(o?n*32:s));let[r,a]=Ha(e,t,{staticPosition:i});s+=a,c.push(r)}return e.setPosition(r+32),[c,32]}if(Xa(t)){let i=r+Ra(e.readBytes(Qa)),a=[];for(let r=0;r<n;++r){e.setPosition(i+r*32);let[n]=Ha(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]=Ha(e,t,{staticPosition:r+i});i+=o,a.push(n)}return[a,i]}function Ga(e){return[La(e.readBytes(32),{size:32}),32]}function Ka(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Ra(e.readBytes(32));e.setPosition(n+t);let r=Ra(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[Wn(i),32]}return[Wn(e.readBytes(Number.parseInt(i,10),32)),32]}function qa(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?Ia(i,{signed:n}):Ra(i,{signed:n}),32]}function Ja(e,t,{staticPosition:n}){let r=t.components.length===0||t.components.some(({name:e})=>!e),i=r?[]:{},a=0;if(Xa(t)){let o=n+Ra(e.readBytes(Qa));for(let n=0;n<t.components.length;++n){let s=t.components[n];e.setPosition(o+a);let[c,l]=Ha(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]=Ha(e,s,{staticPosition:n});i[r?o:s?.name]=c,a+=l}return[i,a]}function Ya(e,{staticPosition:t}){let n=t+Ra(e.readBytes(32));e.setPosition(n);let r=Ra(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=za(In(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function Xa(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(Xa);let n=ua(e.type);return!!(n&&Xa({...e,type:n[1]}))}var Za,Qa,$a=o((()=>{xn(),Fi(),Fa(),Kt(),Yi(),Ln(),Ba(),nr(),M(),da(),Za=32,Qa=32}));function eo(e){let{abi:t,data:n,cause:r}=e,i=Wi(n,0,4);if(i===`0x`)throw new en({cause:r});let a=[...t||[],Ea,Da].find(e=>e.type===`error`&&i===fa(Bt(e)));if(!a)throw new sn(i,{docsPath:`/docs/contract/decodeErrorResult`,cause:r});return{abiItem:a,args:`inputs`in a&&a.inputs&&a.inputs.length>0?Va(a.inputs,Wi(n,4)):void 0,errorName:a.name}}var to=o((()=>{Oa(),xn(),Yi(),pa(),$a(),Ut()})),no,ro=o((()=>{no=(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 io({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`?no(t[n]):t[n]}`).join(`, `)})`}var ao=o((()=>{ro()})),oo,so,co=o((()=>{oo={gwei:9,wei:18},so={ether:-9,wei:9}}));function lo(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 uo=o((()=>{}));function fo(e,t=`wei`){return lo(e,oo[t])}var po=o((()=>{co(),uo()}));function mo(e,t=`wei`){return lo(e,so[t])}var ho=o((()=>{co(),uo()}));function go(e){return e.reduce((e,{slot:t,value:n})=>`${e} ${t}: ${n}\\n`,``)}function _o(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+=go(n.state)),n.stateDiff&&(r+=` stateDiff:\n`,r+=go(n.stateDiff)),r},` State Override:\n`).slice(0,-1)}var vo,yo,bo=o((()=>{k(),vo=class extends O{constructor({address:e}){super(`State for account \"${e}\" is set multiple times.`,{name:`AccountStateConflictError`})}},yo=class extends O{constructor(){super(`state and stateDiff are set on the same account.`,{name:`StateAssignmentConflictError`})}}}));function xo(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 So,Co,wo,To,Eo,Do,Oo=o((()=>{po(),ho(),k(),So=class extends O{constructor({v:e}){super(`Invalid \\`v\\` value \"${e}\". Expected 27 or 28.`,{name:`InvalidLegacyVError`})}},Co=class extends O{constructor({transaction:e}){super(`Cannot infer a transaction type from provided transaction.`,{metaMessages:[`Provided Transaction:`,`{`,xo(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`})}},wo=class extends O{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}},To=class extends O{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}},Eo=class extends O{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${Math.floor((e.length-2)/2)} bytes.`,{name:`InvalidStorageKeySizeError`})}},Do=class extends O{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=xo({chain:r&&`${r?.name} (id: ${r?.id})`,from:t?.address,to:u,value:d!==void 0&&`${fo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${mo(o)} gwei`,maxFeePerGas:s!==void 0&&`${mo(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${mo(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}}})),ko,Ao,jo=o((()=>{ko=e=>e,Ao=e=>e})),Mo,No,Po,Fo,Io,Lo,Ro=o((()=>{ya(),Oa(),to(),Ut(),ao(),_a(),po(),ho(),xn(),k(),bo(),Oo(),jo(),Mo=class extends O{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=xo({from:(t?va(t):void 0)?.address,to:u,value:d!==void 0&&`${fo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${mo(o)} gwei`,maxFeePerGas:s!==void 0&&`${mo(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${mo(c)} gwei`,nonce:l});f&&(p+=`\\n${_o(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}},No=class extends O{constructor(e,{abi:t,args:n,contractAddress:r,docsPath:i,functionName:a,sender:o}){let s=ma({abi:t,args:n,name:a}),c=s?io({abiItem:s,args:n,includeFunctionName:!1,includeName:!1}):void 0,l=s?Bt(s,{includeName:!0}):void 0,u=xo({address:r&&ko(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}},Po=class extends O{constructor({abi:e,data:t,functionName:n,message:r,cause:i}){let a,o,s,c;if(t&&t!==`0x`)try{o=eo({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=Ta[e]}else{let e=n?Bt(n,{includeName:!0}):void 0,t=n&&a?io({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 sn&&(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}},Fo=class extends O{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})}},Io=class extends O{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`})}},Lo=class extends O{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}}})),zo,Bo,Vo,Ho=o((()=>{ro(),k(),jo(),zo=class extends O{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: ${Ao(a)}`,e&&`Request body: ${no(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}},Bo=class extends O{constructor({body:e,error:t,url:n}){super(`RPC Request failed.`,{cause:t,details:t.message,metaMessages:[`URL: ${Ao(n)}`,`Request body: ${no(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}},Vo=class extends O{constructor({body:e,url:t}){super(`The request took too long to respond.`,{details:`The request timed out.`,metaMessages:[`URL: ${Ao(t)}`,`Request body: ${no(e)}`],name:`TimeoutError`}),Object.defineProperty(this,`url`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.url=t}}})),Uo,Wo,Go,Ko,qo,Jo,Yo,Xo,Zo,Qo,$o,es,ts,ns,rs,is,as,os,ss,cs,ls,us,ds,fs,ps,ms,hs,gs,_s,vs,ys=o((()=>{k(),Ho(),Uo=-1,Wo=class extends O{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 Bo?e.code:t??Uo}},Go=class extends Wo{constructor(e,t){super(e,t),Object.defineProperty(this,`data`,{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.data=t.data}},Ko=class e extends Wo{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(Ko,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),qo=class e extends Wo{constructor(t){super(t,{code:e.code,name:`InvalidRequestRpcError`,shortMessage:`JSON is not a valid request object.`})}},Object.defineProperty(qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600}),Jo=class e extends Wo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotFoundRpcError`,shortMessage:`The method${n?` \"${n}\"`:``} does not exist / is not available.`})}},Object.defineProperty(Jo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601}),Yo=class e extends Wo{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(Yo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602}),Xo=class e extends Wo{constructor(t){super(t,{code:e.code,name:`InternalRpcError`,shortMessage:`An internal error was received.`})}},Object.defineProperty(Xo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603}),Zo=class e extends Wo{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(Zo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3}),Qo=class e extends Wo{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(Qo,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001}),$o=class e extends Wo{constructor(t){super(t,{code:e.code,name:`ResourceUnavailableRpcError`,shortMessage:`Requested resource not available.`})}},Object.defineProperty($o,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002}),es=class e extends Wo{constructor(t){super(t,{code:e.code,name:`TransactionRejectedRpcError`,shortMessage:`Transaction creation failed.`})}},Object.defineProperty(es,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003}),ts=class e extends Wo{constructor(t,{method:n}={}){super(t,{code:e.code,name:`MethodNotSupportedRpcError`,shortMessage:`Method${n?` \"${n}\"`:``} is not supported.`})}},Object.defineProperty(ts,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004}),ns=class e extends Wo{constructor(t){super(t,{code:e.code,name:`LimitExceededRpcError`,shortMessage:`Request exceeds defined limit.`})}},Object.defineProperty(ns,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005}),rs=class e extends Wo{constructor(t){super(t,{code:e.code,name:`JsonRpcVersionUnsupportedError`,shortMessage:`Version of JSON-RPC protocol is not supported.`})}},Object.defineProperty(rs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006}),is=class e extends Go{constructor(t){super(t,{code:e.code,name:`UserRejectedRequestError`,shortMessage:`User rejected the request.`})}},Object.defineProperty(is,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001}),as=class e extends Go{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(as,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100}),os=class e extends Go{constructor(t,{method:n}={}){super(t,{code:e.code,name:`UnsupportedProviderMethodError`,shortMessage:`The Provider does not support the requested method${n?` \" ${n}\"`:``}.`})}},Object.defineProperty(os,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200}),ss=class e extends Go{constructor(t){super(t,{code:e.code,name:`ProviderDisconnectedError`,shortMessage:`The Provider is disconnected from all chains.`})}},Object.defineProperty(ss,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900}),cs=class e extends Go{constructor(t){super(t,{code:e.code,name:`ChainDisconnectedError`,shortMessage:`The Provider is not connected to the requested chain.`})}},Object.defineProperty(cs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901}),ls=class e extends Go{constructor(t){super(t,{code:e.code,name:`SwitchChainError`,shortMessage:`An error occurred when attempting to switch chain.`})}},Object.defineProperty(ls,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902}),us=class e extends Go{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(us,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700}),ds=class e extends Go{constructor(t){super(t,{code:e.code,name:`UnsupportedChainIdError`,shortMessage:`This Wallet does not support the requested chain ID.`})}},Object.defineProperty(ds,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710}),fs=class e extends Go{constructor(t){super(t,{code:e.code,name:`DuplicateIdError`,shortMessage:`There is already a bundle submitted with this ID.`})}},Object.defineProperty(fs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720}),ps=class e extends Go{constructor(t){super(t,{code:e.code,name:`UnknownBundleIdError`,shortMessage:`This bundle id is unknown / has not been submitted`})}},Object.defineProperty(ps,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730}),ms=class e extends Go{constructor(t){super(t,{code:e.code,name:`BundleTooLargeError`,shortMessage:`The call bundle is too large for the Wallet to process.`})}},Object.defineProperty(ms,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740}),hs=class e extends Go{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(hs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750}),gs=class e extends Go{constructor(t){super(t,{code:e.code,name:`AtomicityNotSupportedError`,shortMessage:`The wallet does not support atomic execution but the request requires it.`})}},Object.defineProperty(gs,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760}),_s=class e extends Go{constructor(t){super(t,{code:e.code,name:`WalletConnectSessionSettlementError`,shortMessage:`WalletConnect session settlement failed.`})}},Object.defineProperty(_s,`code`,{enumerable:!0,configurable:!0,writable:!0,value:7e3}),vs=class extends Wo{constructor(e){super(e,{name:`UnknownRpcError`,shortMessage:`An unknown RPC error occurred.`})}}}));xn(),k(),Ro(),Ho(),ys();function bs(e,{abi:t,address:n,args:r,docsPath:i,functionName:a,sender:o}){let s=e instanceof Lo?e:e instanceof O?e.walk(e=>`data`in e)||e.walk():{},{code:c,data:l,details:u,message:d,shortMessage:f}=s;return new No(e instanceof en?new Fo({functionName:a,cause:e}):[3,Xo.code].includes(c)&&(l||u||d||f)||c===Zo.code&&u===`execution reverted`&&l?new Po({abi:t,data:typeof l==`object`?l.data:l,functionName:a,message:s instanceof Bo?u:f??d,cause:e}):e,{abi:t,args:r,contractAddress:n,docsPath:i,functionName:a,sender:o})}Fi(),gi();function xs(e){return Mi(`0x${hi(`0x${e.substring(4)}`).substring(26)}`)}function Ss(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 Cs(e,t,n){return e&t^~e&n}function ws(e,t,n){return e&t^e&n^t&n}var Ts,Es,Ds,Os,ks=o((()=>{Jr(),Ts=class extends qr{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=Fr(this.buffer)}update(e){jr(this),e=Br(e),kr(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=Fr(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){jr(this),Mr(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:r,isLE:i}=this,{pos:a}=this;t[a++]=128,Pr(this.buffer.subarray(a)),this.padOffset>r-a&&(this.process(n,0),a=0);for(let e=a;e<r;e++)t[e]=0;Ss(n,r-8,BigInt(this.length*8),i),this.process(n,0);let o=Fr(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()}},Es=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ds=Uint32Array.from([3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]),Os=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209])})),As,js,Ms,Ns,Ps,Fs,Is,Ls,Rs,zs,Bs,Vs,Hs,Us=o((()=>{ks(),wr(),Jr(),As=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]),js=new Uint32Array(64),Ms=class extends Ts{constructor(e=32){super(64,e,8,!1),this.A=Es[0]|0,this.B=Es[1]|0,this.C=Es[2]|0,this.D=Es[3]|0,this.E=Es[4]|0,this.F=Es[5]|0,this.G=Es[6]|0,this.H=Es[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)js[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=js[e-15],n=js[e-2],r=Ir(t,7)^Ir(t,18)^t>>>3;js[e]=(Ir(n,17)^Ir(n,19)^n>>>10)+js[e-7]+r+js[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=Ir(o,6)^Ir(o,11)^Ir(o,25),u=l+t+Cs(o,s,c)+As[e]+js[e]|0,d=(Ir(n,2)^Ir(n,13)^Ir(n,22))+ws(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(){Pr(js)}destroy(){this.set(0,0,0,0,0,0,0,0),Pr(this.buffer)}},Ns=ir(`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))),Ps=Ns[0],Fs=Ns[1],Is=new Uint32Array(80),Ls=new Uint32Array(80),Rs=class extends Ts{constructor(e=64){super(128,e,16,!1),this.Ah=Os[0]|0,this.Al=Os[1]|0,this.Bh=Os[2]|0,this.Bl=Os[3]|0,this.Ch=Os[4]|0,this.Cl=Os[5]|0,this.Dh=Os[6]|0,this.Dl=Os[7]|0,this.Eh=Os[8]|0,this.El=Os[9]|0,this.Fh=Os[10]|0,this.Fl=Os[11]|0,this.Gh=Os[12]|0,this.Gl=Os[13]|0,this.Hh=Os[14]|0,this.Hl=Os[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)Is[n]=e.getUint32(t),Ls[n]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=Is[e-15]|0,n=Ls[e-15]|0,r=ur(t,n,1)^ur(t,n,8)^cr(t,n,7),i=dr(t,n,1)^dr(t,n,8)^lr(t,n,7),a=Is[e-2]|0,o=Ls[e-2]|0,s=ur(a,o,19)^fr(a,o,61)^cr(a,o,6),c=dr(a,o,19)^pr(a,o,61)^lr(a,o,6),l=br(i,c,Ls[e-7],Ls[e-16]);Is[e]=xr(l,r,s,Is[e-7],Is[e-16])|0,Ls[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=ur(u,d,14)^ur(u,d,18)^fr(u,d,41),v=dr(u,d,14)^dr(u,d,18)^pr(u,d,41),y=u&f^~u&m,b=d&p^~d&h,x=Sr(_,v,b,Fs[e],Ls[e]),S=Cr(x,g,t,y,Ps[e],Is[e]),ee=x|0,te=ur(n,r,28)^fr(n,r,34)^fr(n,r,39),C=dr(n,r,28)^pr(n,r,34)^pr(n,r,39),w=n&i^n&o^i&o,T=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}=ar(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 ne=vr(ee,C,T);n=yr(ne,S,te,w),r=ne|0}({h:n,l:r}=ar(this.Ah|0,this.Al|0,n|0,r|0)),{h:i,l:a}=ar(this.Bh|0,this.Bl|0,i|0,a|0),{h:o,l:s}=ar(this.Ch|0,this.Cl|0,o|0,s|0),{h:c,l}=ar(this.Dh|0,this.Dl|0,c|0,l|0),{h:u,l:d}=ar(this.Eh|0,this.El|0,u|0,d|0),{h:f,l:p}=ar(this.Fh|0,this.Fl|0,f|0,p|0),{h:m,l:h}=ar(this.Gh|0,this.Gl|0,m|0,h|0),{h:g,l:_}=ar(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(){Pr(Is,Ls)}destroy(){Pr(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}},zs=class extends Rs{constructor(){super(48),this.Ah=Ds[0]|0,this.Al=Ds[1]|0,this.Bh=Ds[2]|0,this.Bl=Ds[3]|0,this.Ch=Ds[4]|0,this.Cl=Ds[5]|0,this.Dh=Ds[6]|0,this.Dl=Ds[7]|0,this.Eh=Ds[8]|0,this.El=Ds[9]|0,this.Fh=Ds[10]|0,this.Fl=Ds[11]|0,this.Gh=Ds[12]|0,this.Gl=Ds[13]|0,this.Hh=Ds[14]|0,this.Hl=Ds[15]|0}},Bs=Hr(()=>new Ms),Vs=Hr(()=>new Rs),Hs=Hr(()=>new zs)})),Ws,Gs,Ks=o((()=>{Jr(),Ws=class extends qr{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,Ar(e);let n=Br(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),Pr(i)}update(e){return jr(this),this.iHash.update(e),this}digestInto(e){jr(this),kr(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()}},Gs=(e,t,n)=>new Ws(e,t).update(n).digest(),Gs.create=(e,t)=>new Ws(e,t)}));function qs(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&e.constructor.name===`Uint8Array`}function Js(e){if(!qs(e))throw Error(`Uint8Array expected`)}function Ys(e,t){if(typeof t!=`boolean`)throw Error(e+` boolean expected, got `+t)}function Xs(e){let t=e.toString(16);return t.length&1?`0`+t:t}function Zs(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);return e===``?hc:BigInt(`0x`+e)}function Qs(e){if(Js(e),_c)return e.toHex();let t=``;for(let n=0;n<e.length;n++)t+=vc[e[n]];return t}function $s(e){if(e>=yc._0&&e<=yc._9)return e-yc._0;if(e>=yc.A&&e<=yc.F)return e-(yc.A-10);if(e>=yc.a&&e<=yc.f)return e-(yc.a-10)}function ec(e){if(typeof e!=`string`)throw Error(`hex string expected, got `+typeof e);if(_c)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=$s(e.charCodeAt(i)),a=$s(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 tc(e){return Zs(Qs(e))}function nc(e){return Js(e),Zs(Qs(Uint8Array.from(e).reverse()))}function rc(e,t){return ec(e.toString(16).padStart(t*2,`0`))}function ic(e,t){return rc(e,t).reverse()}function ac(e,t,n){let r;if(typeof t==`string`)try{r=ec(t)}catch(t){throw Error(e+` must be hex string or Uint8Array, cause: `+t)}else if(qs(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 oc(...e){let t=0;for(let n=0;n<e.length;n++){let r=e[n];Js(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 sc(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 cc(e){if(typeof e!=`string`)throw Error(`string expected`);return new Uint8Array(new TextEncoder().encode(e))}function lc(e,t,n){return bc(e)&&bc(t)&&bc(n)&&t<=e&&e<n}function uc(e,t,n,r){if(!lc(t,n,r))throw Error(`expected valid `+e+`: `+n+` <= n < `+r+`, got `+t)}function dc(e){let t;for(t=0;e>hc;e>>=gc,t+=1);return t}function fc(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=Sc(e),i=Sc(e),a=0,o=()=>{r.fill(1),i.fill(0),a=0},s=(...e)=>n(i,r,...e),c=(e=Sc(0))=>{i=s(Cc([0]),e),r=s(),e.length!==0&&(i=s(Cc([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 oc(...n)};return(e,t)=>{o(),c(e);let n;for(;!(n=t(l()));)c();return o(),n}}function pc(e,t,n={}){let r=(t,n,r)=>{let i=wc[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 mc(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 hc,gc,_c,vc,yc,bc,xc,Sc,Cc,wc,Tc=o((()=>{hc=BigInt(0),gc=BigInt(1),_c=typeof Uint8Array.from([]).toHex==`function`&&typeof Uint8Array.fromHex==`function`,vc=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),yc={_0:48,_9:57,A:65,F:70,a:97,f:102},bc=e=>typeof e==`bigint`&&hc<=e,xc=e=>(gc<<BigInt(e))-gc,Sc=e=>new Uint8Array(e),Cc=e=>Uint8Array.from(e),wc={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`||qs(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 Ec(e,t){let n=e%t;return n>=Hc?n:t+n}function Dc(e,t,n){let r=e;for(;t-- >Hc;)r*=r,r%=n;return r}function Oc(e,t){if(e===Hc)throw Error(`invert: expected non-zero number`);if(t<=Hc)throw Error(`invert: expected positive modulus, got `+t);let n=Ec(e,t),r=t,i=Hc,a=Uc,o=Uc,s=Hc;for(;n!==Hc;){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!==Uc)throw Error(`invert: does not exist`);return Ec(i,t)}function kc(e,t){let n=(e.ORDER+Uc)/Kc,r=e.pow(t,n);if(!e.eql(e.sqr(r),t))throw Error(`Cannot find square root`);return r}function Ac(e,t){let n=(e.ORDER-qc)/Jc,r=e.mul(t,Wc),i=e.pow(r,n),a=e.mul(t,i),o=e.mul(e.mul(a,Wc),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 jc(e){if(e<BigInt(3))throw Error(`sqrt is not defined for small field`);let t=e-Uc,n=0;for(;t%Wc===Hc;)t/=Wc,n++;let r=Wc,i=Rc(e);for(;Ic(i,r)===1;)if(r++>1e3)throw Error(`Cannot find square root: probably non-prime P`);if(n===1)return kc;let a=i.pow(r,t),o=(t+Uc)/Wc;return function(e,r){if(e.is0(r))return r;if(Ic(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=Uc<<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 Mc(e){return e%Kc===Gc?kc:e%Jc===qc?Ac:jc(e)}function Nc(e){return pc(e,Yc.reduce((e,t)=>(e[t]=`function`,e),{ORDER:`bigint`,MASK:`bigint`,BYTES:`isSafeInteger`,BITS:`isSafeInteger`}))}function Pc(e,t,n){if(n<Hc)throw Error(`invalid exponent, negatives unsupported`);if(n===Hc)return e.ONE;if(n===Uc)return t;let r=e.ONE,i=t;for(;n>Hc;)n&Uc&&(r=e.mul(r,i)),i=e.sqr(i),n>>=Uc;return r}function Fc(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 Ic(e,t){let n=(e.ORDER-Uc)/Wc,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 Lc(e,t){t!==void 0&&Or(t);let n=t===void 0?e.toString(2).length:t;return{nBitLength:n,nByteLength:Math.ceil(n/8)}}function Rc(e,t,n=!1,r={}){if(e<=Hc)throw Error(`invalid field: expected ORDER > 0, got `+e);let{nBitLength:i,nByteLength:a}=Lc(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:xc(i),ZERO:Hc,ONE:Uc,create:t=>Ec(t,e),isValid:t=>{if(typeof t!=`bigint`)throw Error(`invalid field element: expected bigint, got `+typeof t);return Hc<=t&&t<e},is0:e=>e===Hc,isOdd:e=>(e&Uc)===Uc,neg:t=>Ec(-t,e),eql:(e,t)=>e===t,sqr:t=>Ec(t*t,e),add:(t,n)=>Ec(t+n,e),sub:(t,n)=>Ec(t-n,e),mul:(t,n)=>Ec(t*n,e),pow:(e,t)=>Pc(s,e,t),div:(t,n)=>Ec(t*Oc(n,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>Oc(t,e),sqrt:r.sqrt||(t=>(o||=Mc(e),o(s,t))),toBytes:e=>n?ic(e,a):rc(e,a),fromBytes:e=>{if(e.length!==a)throw Error(`Field.fromBytes: expected `+a+` bytes, got `+e.length);return n?nc(e):tc(e)},invertBatch:e=>Fc(s,e),cmov:(e,t,n)=>n?t:e});return Object.freeze(s)}function zc(e){if(typeof e!=`bigint`)throw Error(`field order must be bigint`);let t=e.toString(2).length;return Math.ceil(t/8)}function Bc(e){let t=zc(e);return t+Math.ceil(t/2)}function Vc(e,t,n=!1){let r=e.length,i=zc(t),a=Bc(t);if(r<16||r<a||r>1024)throw Error(`expected `+a+`-1024 bytes of input, got `+r);let o=Ec(n?nc(e):tc(e),t-Uc)+Uc;return n?ic(o,i):rc(o,i)}var Hc,Uc,Wc,Gc,Kc,qc,Jc,Yc,Xc=o((()=>{Jr(),Tc(),Hc=BigInt(0),Uc=BigInt(1),Wc=BigInt(2),Gc=BigInt(3),Kc=BigInt(4),qc=BigInt(5),Jc=BigInt(8),Yc=[`create`,`isValid`,`is0`,`neg`,`inv`,`sqrt`,`sqr`,`eql`,`add`,`sub`,`mul`,`pow`,`div`,`addN`,`subN`,`mulN`,`sqrN`]}));function Zc(e,t){let n=t.negate();return e?n:t}function Qc(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error(`invalid window size, expected [1..`+t+`], got W=`+e)}function $c(e,t){Qc(e,t);let n=Math.ceil(t/e)+1,r=2**(e-1),i=2**e;return{windows:n,windowSize:r,mask:xc(e),maxNumber:i,shiftBy:BigInt(e)}}function el(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+=cl);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 tl(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 nl(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 rl(e){return ul.get(e)||1}function il(e,t){return{constTimeNegate:Zc,hasPrecomputes(e){return rl(e)!==1},unsafeLadder(t,n,r=e.ZERO){let i=t;for(;n>sl;)n&cl&&(r=r.add(i)),i=i.double(),n>>=cl;return r},precomputeWindow(e,n){let{windows:r,windowSize:i}=$c(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=$c(n,t);for(let e=0;e<s.windows;e++){let{nextN:t,offset:n,isZero:c,isNeg:l,isNegF:u,offsetF:d}=el(i,e,s);i=t,c?o=o.add(Zc(u,r[d])):a=a.add(Zc(l,r[n]))}return{p:a,f:o}},wNAFUnsafe(n,r,i,a=e.ZERO){let o=$c(n,t);for(let e=0;e<o.windows&&i!==sl;e++){let{nextN:t,offset:n,isZero:s,isNeg:c}=el(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=ll.get(t);return r||(r=this.precomputeWindow(t,e),e!==1&&ll.set(t,n(r))),r},wNAFCached(e,t,n){let r=rl(e);return this.wNAF(r,this.getPrecomputes(r,e,n),t)},wNAFCachedUnsafe(e,t,n,r){let i=rl(e);return i===1?this.unsafeLadder(e,t,r):this.wNAFUnsafe(i,this.getPrecomputes(i,e,n),t,r)},setWindowSize(e,n){Qc(n,t),ul.set(e,n),ll.delete(e)}}}function al(e,t,n,r){tl(n,e),nl(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=dc(BigInt(i)),c=1;s>12?c=s-3:s>4?c=s-2:s>0&&(c=2);let l=xc(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 ol(e){return Nc(e.Fp),pc(e,{n:`bigint`,h:`bigint`,Gx:`field`,Gy:`field`},{nBitLength:`isSafeInteger`,nByteLength:`isSafeInteger`}),Object.freeze({...Lc(e.n,e.nBitLength),...e,p:e.Fp.ORDER})}var sl,cl,ll,ul,dl=o((()=>{Xc(),Tc(),sl=BigInt(0),cl=BigInt(1),ll=new WeakMap,ul=new WeakMap}));function fl(e){e.lowS!==void 0&&Ys(`lowS`,e.lowS),e.prehash!==void 0&&Ys(`prehash`,e.prehash)}function pl(e){let t=ol(e);pc(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 ml(e,t){return Qs(rc(e,t))}function hl(e){let t=pl(e),{Fp:n}=t,r=Rc(t.n,t.nBitLength),i=t.toBytes||((e,t,r)=>{let i=t.toAffine();return oc(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,wl),Tl),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 lc(e,N,t.n)}function d(e){let{allowedPrivateKeyLengths:n,nByteLength:r,wrapPrivateKey:i,n:a}=t;if(n&&typeof e!=`bigint`){if(qs(e)&&(e=Qs(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:tc(ac(`private key`,e,r))}catch{throw Error(`invalid private key, expected hex or `+r+` bytes, got `+typeof e)}return i&&(o=Ec(o,a)),uc(`private key`,o,N,a),o}function f(e){if(!(e instanceof h))throw Error(`ProjectivePoint expected`)}let p=mc((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=mc(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=Fc(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(ac(`pointHex`,e)));return t.assertValidity(),t}static fromPrivateKey(e){return h.BASE.multiply(d(e))}static msm(e,t){return al(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,wl),{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,wl),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;uc(`scalar`,e,Sl,i);let a=h.ZERO;if(e===Sl)return a;if(this.is0()||e===N)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>Sl||l>Sl;)s&N&&(u=u.add(f)),l&N&&(d=d.add(f)),f=f.double(),s>>=N,l>>=N;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;uc(`scalar`,e,N,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===Sl||t===N||!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===N)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===N?this:n?n(h,this):this.multiplyUnsafe(t.h)}toRawBytes(e=!0){return Ys(`isCompressed`,e),this.assertValidity(),i(h,this,e)}toHex(e=!0){return Ys(`isCompressed`,e),Qs(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=il(h,g?Math.ceil(_/2):_);return{CURVE:t,ProjectivePoint:h,normPrivateKeyToScalar:d,weierstrassEquation:o,isWithinCurveOrder:u}}function gl(e){let t=ol(e);return pc(t,{hash:`hash`,hmac:`function`,randomBytes:`function`},{bits2int:`function`,bits2int_modN:`function`,lowS:`boolean`}),Object.freeze({lowS:!0,...t})}function _l(e){let t=gl(e),{Fp:n,n:r,nByteLength:i,nBitLength:a}=t,o=n.BYTES+1,s=2*n.BYTES+1;function c(e){return Ec(e,r)}function l(e){return Oc(e,r)}let{ProjectivePoint:u,normPrivateKeyToScalar:d,weierstrassEquation:f,isWithinCurveOrder:p}=hl({...t,toBytes(e,t,r){let i=t.toAffine(),a=n.toBytes(i.x),o=oc;return Ys(`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=tc(i);if(!lc(e,N,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&N)===N;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>>N}function h(e){return m(e)?c(-e):e}let g=(e,t,n)=>tc(e.slice(t,n));class _{constructor(e,t,n){uc(`r`,e,N,r),uc(`s`,t,N,r),this.r=e,this.s=t,n!=null&&(this.recovery=n),Object.freeze(this)}static fromCompact(e){let t=i;return e=ac(`compactSignature`,e,t*2),new _(g(e,0,t),g(e,t,2*t))}static fromDER(e){let{r:t,s:n}=xl.toSig(ac(`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(ac(`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+ml(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 ec(this.toDERHex())}toDERHex(){return xl.hexFromSig(this)}toCompactRawBytes(){return ec(this.toCompactHex())}toCompactHex(){let e=i;return ml(this.r,e)+ml(this.s,e)}}let v={isValidPrivateKey(e){try{return d(e),!0}catch{return!1}},normPrivateKeyToScalar:d,randomPrivateKey:()=>{let e=Bc(t.n);return Vc(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=ac(`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=tc(e),n=e.length*8-a;return n>0?t>>BigInt(n):t},ee=t.bits2int_modN||function(e){return c(S(e))},te=xc(a);function C(e){return uc(`num < 2^`+a,e,Sl,te),rc(e,i)}function w(e,r,i=T){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=ac(`msgHash`,e),fl(i),f&&(e=ac(`prehashed msgHash`,a(e)));let v=ee(e),y=d(r),b=[C(y),C(v)];if(g!=null&&g!==!1){let e=g===!0?o(n.BYTES):g;b.push(ac(`extraEntropy`,e))}let x=oc(...b),te=v;function w(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===Sl)return;let a=c(n*c(te+i*y));if(a===Sl)return;let o=(r.x===i?0:2)|Number(r.y&N),d=a;return s&&m(a)&&(d=h(a),o^=1),new _(i,d,o)}return{seed:x,k2sig:w}}let T={lowS:t.lowS,prehash:!1},ne={lowS:t.lowS,prehash:!1};function re(e,n,r=T){let{seed:i,k2sig:a}=w(e,n,r),o=t;return fc(o.hash.outputLen,o.nByteLength,o.hmac)(i,a)}u.BASE._setWindowSize(8);function ie(e,n,r,i=ne){let a=e;n=ac(`msgHash`,n),r=ac(`publicKey`,r);let{lowS:o,prehash:s,format:d}=i;if(fl(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`||qs(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 xl.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:re,verify:ie,ProjectivePoint:u,Signature:_,utils:v}}function vl(e,t){let n=e.ORDER,r=Sl;for(let e=n-N;e%Cl===Sl;e/=Cl)r+=N;let i=r,a=Cl<<i-N-N,o=a*Cl,s=(n-N)/o,c=(s-N)/Cl,l=o-N,u=a,d=e.pow(t,s),f=e.pow(t,(s+N)/Cl),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>N;t--){let n=t-Cl;n=Cl<<n-N;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%Tl===wl){let n=(e.ORDER-wl)/Tl,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 yl(e,t){if(Nc(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error(`mapToCurveSimpleSWU: invalid opts`);let n=vl(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=Fc(e,[s],!0)[0];return u=e.mul(u,h),{x:u,y:d}}}var bl,xl,Sl,N,Cl,wl,Tl,El=o((()=>{dl(),Xc(),Tc(),bl=class extends Error{constructor(e=``){super(e)}},xl={Err:bl,_tlv:{encode:(e,t)=>{let{Err:n}=xl;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=Xs(r);if(i.length/2&128)throw new n(`tlv.encode: long form length too big`);let a=r>127?Xs(i.length/2|128):``;return Xs(e)+a+i+t},decode(e,t){let{Err:n}=xl,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}=xl;if(e<Sl)throw new t(`integer: negative integers are not allowed`);let n=Xs(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}=xl;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 tc(e)}},toSig(e){let{Err:t,_int:n,_tlv:r}=xl,i=ac(`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}=xl,r=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,r)}},Sl=BigInt(0),N=BigInt(1),Cl=BigInt(2),wl=BigInt(3),Tl=BigInt(4)}));function Dl(e){return{hash:e,hmac:(t,...n)=>Gs(e,t,Vr(...n)),randomBytes:Wr}}function Ol(e,t){let n=t=>_l({...e,...Dl(t)});return{...n(t),create:n}}var kl=o((()=>{Ks(),Jr(),El()}));function Al(e,t){if(Ml(e),Ml(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 jl(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 Ml(e){if(!Number.isSafeInteger(e))throw Error(`number expected`)}function Nl(e,t,n,r){Js(e),Js(t),Ml(n),t.length>255&&(t=r(oc(cc(`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=oc(t,Al(t.length,1)),c=Al(0,a),l=Al(n,2),u=Array(o),d=r(oc(c,e,l,Al(0,1),s));u[0]=r(oc(d,Al(1,1),s));for(let e=1;e<=o;e++)u[e]=r(oc(jl(d,u[e-1]),Al(e+1,1),s));return oc(...u).slice(0,n)}function Pl(e,t,n,r,i){if(Js(e),Js(t),Ml(n),t.length>255){let e=Math.ceil(2*r/8);t=i.create({dkLen:e}).update(cc(`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(Al(n,2)).update(t).update(Al(t.length,1)).digest()}function Fl(e,t,n){pc(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;Js(e),Ml(t);let l=typeof c==`string`?cc(c):c,u=r.toString(2).length,d=Math.ceil((u+i)/8),f=t*a*d,p;if(s===`xmd`)p=Nl(e,l,f,o);else if(s===`xof`)p=Pl(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]=Ec(Rl(p.subarray(i,i+d)),r)}m[e]=t}return m}function Il(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]=Fc(e,[a,s],!0);return t=e.mul(i,c),r=e.mul(r,e.mul(o,l)),{x:t,y:r}}}function Ll(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=Fl(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(Fl(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 Rl,zl=o((()=>{Xc(),Tc(),Rl=tc})),Bl=c({encodeToCurve:()=>gu,hashToCurve:()=>hu,schnorr:()=>du,secp256k1:()=>nu,secp256k1_hasher:()=>mu});function Vl(e){let t=Yl,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=Dc(Dc(Dc(u,n,t)*u%t,n,t)*u%t,$l,t)*l%t,f=Dc(d,i,t)*d%t,p=Dc(f,a,t)*f%t,m=Dc(p,s,t)*p%t,h=Dc(Dc(Dc(Dc(Dc(Dc(m,c,t)*m%t,s,t)*p%t,n,t)*u%t,o,t)*f%t,r,t)*l%t,$l,t);if(!tu.eql(tu.sqr(h),e))throw Error(`Cannot find square root`);return h}function Hl(e,...t){let n=ru[e];if(n===void 0){let t=Bs(Uint8Array.from(e,e=>e.charCodeAt(0)));n=oc(t,t),ru[e]=n}return Bs(oc(n,...t))}function Ul(e){let t=nu.utils.normPrivateKeyToScalar(e),n=cu.fromPrivateKey(t);return{scalar:n.hasEvenY()?t:su(-t),bytes:iu(n)}}function Wl(e){uc(`x`,e,Ql,Yl);let t=Vl(ou(ou(e*e)*e+BigInt(7)));t%$l!==Zl&&(t=ou(-t));let n=new cu(e,t,Ql);return n.assertValidity(),n}function Gl(...e){return su(uu(Hl(`BIP0340/challenge`,...e)))}function Kl(e){return Ul(e).bytes}function ql(e,t,n=Wr(32)){let r=ac(`message`,e),{bytes:i,scalar:a}=Ul(t),o=su(uu(Hl(`BIP0340/nonce`,au(a^uu(Hl(`BIP0340/aux`,ac(`auxRand`,n,32)))),i,r)));if(o===Zl)throw Error(`sign failed: k is zero`);let{bytes:s,scalar:c}=Ul(o),l=Gl(s,i,r),u=new Uint8Array(64);if(u.set(s,0),u.set(au(su(c+l*a)),32),!Jl(u,r,i))throw Error(`sign: Invalid signature produced`);return u}function Jl(e,t,n){let r=ac(`signature`,e,64),i=ac(`message`,t),a=ac(`publicKey`,n,32);try{let e=Wl(uu(a)),t=uu(r.subarray(0,32));if(!lc(t,Ql,Yl))return!1;let n=uu(r.subarray(32,64));if(!lc(n,Ql,Xl))return!1;let o=lu(e,n,su(-Gl(au(t),iu(e),i)));return!(!o||!o.hasEvenY()||o.toAffine().x!==t)}catch{return!1}}var Yl,Xl,Zl,Ql,$l,eu,tu,nu,ru,iu,au,ou,su,cu,lu,uu,du,fu,pu,mu,hu,gu,_u=o((()=>{Us(),Jr(),kl(),zl(),Xc(),Tc(),El(),Yl=BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f`),Xl=BigInt(`0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141`),Zl=BigInt(0),Ql=BigInt(1),$l=BigInt(2),eu=(e,t)=>(e+t/$l)/t,tu=Rc(Yl,void 0,void 0,{sqrt:Vl}),nu=Ol({a:Zl,b:BigInt(7),Fp:tu,n:Xl,Gx:BigInt(`55066263022277343669578718895168534326250603453777594175500187360389116729240`),Gy:BigInt(`32670510020758816978083085130507043184471273380659243275938904335757337482424`),h:BigInt(1),lowS:!0,endo:{beta:BigInt(`0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee`),splitScalar:e=>{let t=Xl,n=BigInt(`0x3086d221a7d46bcde86c90e49284eb15`),r=-Ql*BigInt(`0xe4437ed6010e88286f547fa90abfe4c3`),i=BigInt(`0x114ca50f7a8e2f3f657c1108d9d44cfd8`),a=n,o=BigInt(`0x100000000000000000000000000000000`),s=eu(a*e,t),c=eu(-r*e,t),l=Ec(e-s*n-c*i,t),u=Ec(-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}}}},Bs),ru={},iu=e=>e.toRawBytes(!0).slice(1),au=e=>rc(e,32),ou=e=>Ec(e,Yl),su=e=>Ec(e,Xl),cu=nu.ProjectivePoint,lu=(e,t,n)=>cu.BASE.multiplyAndAddUnsafe(e,t,n),uu=tc,du={getPublicKey:Kl,sign:ql,verify:Jl,utils:{randomPrivateKey:nu.utils.randomPrivateKey,lift_x:Wl,pointToBytes:iu,numberToBytesBE:rc,bytesToNumberBE:tc,taggedHash:Hl,mod:Ec}},fu=Il(tu,[[`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7`,`0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581`,`0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262`,`0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c`],[`0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b`,`0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14`,`0x0000000000000000000000000000000000000000000000000000000000000001`],[`0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c`,`0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3`,`0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931`,`0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84`],[`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b`,`0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573`,`0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f`,`0x0000000000000000000000000000000000000000000000000000000000000001`]].map(e=>e.map(e=>BigInt(e)))),pu=yl(tu,{A:BigInt(`0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533`),B:BigInt(`1771`),Z:tu.create(BigInt(`-11`))}),mu=Ll(nu.ProjectivePoint,e=>{let{x:t,y:n}=pu(tu.create(e[0]));return fu(t,n)},{DST:`secp256k1_XMD:SHA-256_SSWU_RO_`,encodeDST:`secp256k1_XMD:SHA-256_SSWU_NU_`,p:tu.ORDER,m:1,k:128,expand:`xmd`,hash:Bs}),hu=mu.hashToCurve,gu=mu.encodeToCurve}));Wt(),Kt(),Vn(),M();async function vu({hash:e,signature:t}){let n=D(e)?e:Hn(e),{secp256k1:r}=await Promise.resolve().then(()=>(_u(),Bl));return`0x${(()=>{if(typeof t==`object`&&`r`in t&&`s`in t){let{r:e,s:n,v:i,yParity:a}=t,o=yu(Number(a??i));return new r.Signature(A(e),A(n)).addRecoveryBit(o)}let e=D(t)?t:Hn(t);if(Gt(e)!==65)throw Error(`invalid signature length`);let n=yu(Bn(`0x${e.slice(130)}`));return r.Signature.fromCompact(e.substring(2,130)).addRecoveryBit(n)})().recoverPublicKey(n.substring(2)).toHex(!1)}`}function yu(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 bu({hash:e,signature:t}){return xs(await vu({hash:e,signature:t}))}k(),Fa(),nr(),M();function xu(e,t=`hex`){let n=Su(e),r=Na(new Uint8Array(n.length));return n.encode(r),t===`hex`?Wn(r.bytes):r.bytes}function Su(e){return Array.isArray(e)?Cu(e.map(e=>Su(e))):wu(e)}function Cu(e){let t=e.reduce((e,t)=>e+t.length,0),n=Tu(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 wu(e){let t=typeof e==`string`?Zn(e):e,n=Tu(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 Tu(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 O(`Length is too large.`)}Ui(),nr(),M(),gi();function Eu(e){let{chainId:t,nonce:n,to:r}=e,i=e.contractAddress??e.address,a=hi(Hi([`0x05`,xu([t?j(t):`0x`,i,n?j(n):`0x`])]));return r===`bytes`?Zn(a):a}async function Du(e){let{authorization:t,signature:n}=e;return bu({hash:Eu(t),signature:n??t})}po(),ho(),k(),Oo();var Ou=class extends O{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=xo({from:t?.address,to:u,value:d!==void 0&&`${fo(d)} ${r?.nativeCurrency?.symbol||`ETH`}`,data:i,gas:a,gasPrice:o!==void 0&&`${mo(o)} gwei`,maxFeePerGas:s!==void 0&&`${mo(s)} gwei`,maxPriorityFeePerGas:c!==void 0&&`${mo(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}},ku,Au,ju,Mu,Nu,Pu,Fu,Iu,Lu,Ru,zu,Bu,Vu=o((()=>{ho(),k(),ku=class extends O{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(ku,`code`,{enumerable:!0,configurable:!0,writable:!0,value:3}),Object.defineProperty(ku,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/execution reverted|gas required exceeds allowance/}),Au=class extends O{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${mo(t)} gwei`:``}) cannot be higher than the maximum allowed value (2^256-1).`,{cause:e,name:`FeeCapTooHighError`})}},Object.defineProperty(Au,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max fee per gas higher than 2\\^256-1|fee cap higher than 2\\^256-1/}),ju=class extends O{constructor({cause:e,maxFeePerGas:t}={}){super(`The fee cap (\\`maxFeePerGas\\`${t?` = ${mo(t)}`:``} gwei) cannot be lower than the block base fee.`,{cause:e,name:`FeeCapTooLowError`})}},Object.defineProperty(ju,`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/}),Mu=class extends O{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(Mu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too high/}),Nu=class extends O{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(Nu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce too low|transaction already imported|already known/}),Pu=class extends O{constructor({cause:e,nonce:t}={}){super(`Nonce provided for the transaction ${t?`(${t}) `:``}exceeds the maximum allowed nonce.`,{cause:e,name:`NonceMaxValueError`})}},Object.defineProperty(Pu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/nonce has max value/}),Fu=class extends O{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(Fu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/insufficient funds|exceeds transaction sender account balance/}),Iu=class extends O{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(Iu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too high|gas limit reached/}),Lu=class extends O{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(Lu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/intrinsic gas too low/}),Ru=class extends O{constructor({cause:e}){super(`The transaction type is not supported for this chain.`,{cause:e,name:`TransactionTypeNotSupportedError`})}},Object.defineProperty(Ru,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/transaction type not valid/}),zu=class extends O{constructor({cause:e,maxPriorityFeePerGas:t,maxFeePerGas:n}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${t?` = ${mo(t)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${n?` = ${mo(n)} gwei`:``}).`].join(`\n`),{cause:e,name:`TipAboveFeeCapError`})}},Object.defineProperty(zu,`nodeMessage`,{enumerable:!0,configurable:!0,writable:!0,value:/max priority fee per gas higher than max fee per gas|tip higher than fee cap/}),Bu=class extends O{constructor({cause:e}){super(`An error occurred while executing: ${e?.shortMessage}`,{cause:e,name:`UnknownNodeError`})}}}));function Hu(e,t){let n=(e.details||``).toLowerCase(),r=e instanceof O?e.walk(e=>e?.code===ku.code):e;return r instanceof O?new ku({cause:e,message:r.details}):ku.nodeMessage.test(n)?new ku({cause:e,message:e.details}):Au.nodeMessage.test(n)?new Au({cause:e,maxFeePerGas:t?.maxFeePerGas}):ju.nodeMessage.test(n)?new ju({cause:e,maxFeePerGas:t?.maxFeePerGas}):Mu.nodeMessage.test(n)?new Mu({cause:e,nonce:t?.nonce}):Nu.nodeMessage.test(n)?new Nu({cause:e,nonce:t?.nonce}):Pu.nodeMessage.test(n)?new Pu({cause:e,nonce:t?.nonce}):Fu.nodeMessage.test(n)?new Fu({cause:e}):Iu.nodeMessage.test(n)?new Iu({cause:e,gas:t?.gas}):Lu.nodeMessage.test(n)?new Lu({cause:e,gas:t?.gas}):Ru.nodeMessage.test(n)?new Ru({cause:e}):zu.nodeMessage.test(n)?new zu({cause:e,maxFeePerGas:t?.maxFeePerGas,maxPriorityFeePerGas:t?.maxPriorityFeePerGas}):new Bu({cause:e})}var Uu=o((()=>{k(),Vu()}));Vu(),Uu();function Wu(e,{docsPath:t,...n}){return new Ou((()=>{let t=Hu(e,n);return t instanceof Bu?e:t})(),{docsPath:t,...n})}function Gu(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 Ku=o((()=>{}));function qu(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 Ju=o((()=>{}));function Yu(e,t){let n={};return e.authorizationList!==void 0&&(n.authorizationList=Xu(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=>Wn(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=j(e.gas)),e.gasPrice!==void 0&&(n.gasPrice=j(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(n.maxFeePerBlobGas=j(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(n.maxFeePerGas=j(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(n.maxPriorityFeePerGas=j(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(n.nonce=j(e.nonce)),e.to!==void 0&&(n.to=e.to),e.type!==void 0&&(n.type=Zu[e.type]),e.value!==void 0&&(n.value=j(e.value)),n}function Xu(e){return e.map(e=>({address:e.address,r:e.r?j(BigInt(e.r)):e.r,s:e.s?j(BigInt(e.s)):e.s,chainId:j(e.chainId),nonce:j(e.nonce),...e.yParity===void 0?{}:{yParity:j(e.yParity)},...e.v!==void 0&&e.yParity===void 0?{v:j(e.v)}:{}}))}var Zu,Qu,$u=o((()=>{M(),Ju(),Zu={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Qu=qu(`transactionRequest`,Yu)}));function ed(e){if(!(!e||e.length===0))return e.reduce((e,{slot:t,value:n})=>{if(t.length!==66)throw new wn({size:t.length,targetSize:66,type:`hex`});if(n.length!==66)throw new wn({size:n.length,targetSize:66,type:`hex`});return e[t]=n,e},{})}function td(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=j(t)),n!==void 0&&(o.nonce=j(n)),r!==void 0&&(o.state=ed(r)),i!==void 0){if(o.state)throw new yo;o.stateDiff=ed(i)}return o}function nd(e){if(!e)return;let t={};for(let{address:n,...r}of e){if(!Ii(n,{strict:!1}))throw new Oi({address:n});if(t[n])throw new vo({address:n});t[n]=td(r)}return t}var rd=o((()=>{ki(),Tn(),bo(),zi(),M()})),id,ad=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)),id=2n**256n-1n}));function od(e){let{account:t,maxFeePerGas:n,maxPriorityFeePerGas:r,to:i}=e,a=t?va(t):void 0;if(a&&!Ii(a.address))throw new Oi({address:a.address});if(i&&!Ii(i))throw new Oi({address:i});if(n&&n>id)throw new Au({maxFeePerGas:n});if(r&&n&&r>n)throw new zu({maxFeePerGas:n,maxPriorityFeePerGas:r})}var sd=o((()=>{ya(),ad(),ki(),Vu(),zi()}));ho(),k();var cd=class extends O{constructor(){super(\"`baseFeeMultiplier` must be greater than 1.\",{name:`BaseFeeScalarError`})}},ld=class extends O{constructor(){super(`Chain does not support EIP-1559 fees.`,{name:`Eip1559FeesNotSupportedError`})}},ud=class extends O{constructor({maxPriorityFeePerGas:e}){super(`\\`maxFeePerGas\\` cannot be less than the \\`maxPriorityFeePerGas\\` (${mo(e)} gwei).`,{name:`MaxFeePerGasTooLowError`})}};k();var dd=class extends O{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`})}};Vn(),Ju();let fd={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function pd(e,t){let n={...e,blockHash:e.blockHash?e.blockHash:null,blockNumber:e.blockNumber?BigInt(e.blockNumber):null,chainId:e.chainId?Bn(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?Bn(e.nonce):void 0,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Number(e.transactionIndex):null,type:e.type?fd[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=hd(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 md=qu(`transaction`,pd);function hd(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 gd(e,t){let n=(e.transactions??[]).map(e=>typeof e==`string`?e:pd(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}}M();async function _d(e,{blockHash:t,blockNumber:n,blockTag:r=e.experimental_blockTag??`latest`,includeTransactions:i}={}){let a=i??!1,o=n===void 0?void 0:j(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 dd({blockHash:t,blockNumber:n});return(e.chain?.formatters?.block?.format||gd)(s,`getBlock`)}async function vd(e){let t=await e.request({method:`eth_gasPrice`});return BigInt(t)}Vn();async function yd(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 E(e,_d,`getBlock`)({}),client:e,request:i});if(r===null)throw Error();return r}return t===void 0?A(await e.request({method:`eth_maxPriorityFeePerGas`})):t}catch{let[t,r]=await Promise.all([n?Promise.resolve(n):E(e,_d,`getBlock`)({}),E(e,vd,`getGasPrice`)({})]);if(typeof t.baseFeePerGas!=`bigint`)throw new ld;let i=r-t.baseFeePerGas;return i<0n?0n:i}}async function bd(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 cd;let s=10**(o.toString().split(`.`)[1]?.length??0),c=e=>e*BigInt(Math.ceil(o*s))/BigInt(s),l=n||await E(e,_d,`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 ld;let t=typeof i?.maxPriorityFeePerGas==`bigint`?i.maxPriorityFeePerGas:await yd(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 E(e,vd,`getGasPrice`)({}))}}Vn(),M();async function xd(e,{address:t,blockTag:n=`latest`,blockNumber:r}){return Bn(await e.request({method:`eth_getTransactionCount`,params:[t,typeof r==`bigint`?j(r):n]},{dedupe:!!r}))}nr(),M();function Sd(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=>Zn(e)):e.blobs,i=[];for(let e of r)i.push(Uint8Array.from(t.blobToKzgCommitment(e)));return n===`bytes`?i:i.map(e=>Wn(e))}nr(),M();function Cd(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=>Zn(e)):e.blobs,i=typeof e.commitments[0]==`string`?e.commitments.map(e=>Zn(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=>Wn(e))}Us();let wd=Bs;Wt(),nr(),M();function Td(e,t){let n=t||`hex`,r=wd(D(e,{strict:!1})?Jn(e):e);return n===`bytes`?r:Hn(r)}M();function Ed(e){let{commitment:t,version:n=1}=e,r=e.to??(typeof t==`string`?`hex`:`bytes`),i=Td(t,`bytes`);return i.set([n],0),r===`bytes`?i:Wn(i)}function Dd(e){let{commitments:t,version:n}=e,r=e.to??(typeof t[0]==`string`?`hex`:`bytes`),i=[];for(let e of t)i.push(Ed({commitment:e,to:r,version:n}));return i}let Od=4096,kd=32*Od;kd*6-1-1*Od*6,k();var Ad=class extends O{constructor({maxSize:e,size:t}){super(`Blob size is too large.`,{metaMessages:[`Max: ${e} bytes`,`Given: ${t} bytes`],name:`BlobSizeTooLargeError`})}},jd=class extends O{constructor(){super(`Blob data must not be empty.`,{name:`EmptyBlobError`})}},Md=class extends O{constructor({hash:e,size:t}){super(`Versioned hash \"${e}\" size is invalid.`,{metaMessages:[`Expected: 32`,`Received: ${t}`],name:`InvalidVersionedHashSizeError`})}},Nd=class extends O{constructor({hash:e,version:t}){super(`Versioned hash \"${e}\" version is invalid.`,{metaMessages:[`Expected: 1`,`Received: ${t}`],name:`InvalidVersionedHashVersionError`})}};Fa(),Kt(),nr(),M();function Pd(e){let t=e.to??(typeof e.data==`string`?`hex`:`bytes`),n=typeof e.data==`string`?Zn(e.data):e.data,r=Gt(n);if(!r)throw new jd;if(r>761855)throw new Ad({maxSize:761855,size:r});let i=[],a=!0,o=0;for(;a;){let e=Na(new Uint8Array(kd)),t=0;for(;t<Od;){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=>Wn(e.bytes))}function Fd(e){let{data:t,kzg:n,to:r}=e,i=e.blobs??Pd({data:t,to:r}),a=e.commitments??Sd({blobs:i,kzg:n,to:r}),o=e.proofs??Cd({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}Oo();function Id(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 Co({transaction:e})}Vu(),Oo(),Uu();function Ld(e,{docsPath:t,...n}){return new Do((()=>{let t=Hu(e,n);return t instanceof Bu?e:t})(),{docsPath:t,...n})}Vn();async function Rd(e){return Bn(await e.request({method:`eth_chainId`},{dedupe:!0}))}ya(),Ku(),$u(),sd();async function zd(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=va(n),r=a?a.id:await E(e,Rd,`getChainId`)({});return await h.consume({address:t.address,chainId:r,client:e})})();od(t);let x=a?.formatters?.transactionRequest?.format,S=(x||Yu)({...Gu(y,{format:x}),account:n?va(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||pd)(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 E(e,_d,`getBlock`)({});return a.fees.baseFeeMultiplier({block:n,client:e,request:t})}return a?.fees?.baseFeeMultiplier??1.2})();if(i<1)throw new cd;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 Ld(n,{...t,chain:e.chain})}}ya(),ji(),sd();let Bd=[`blobVersionedHashes`,`chainId`,`fees`,`gas`,`nonce`,`type`],Vd=new Map,Hd=new Ai(128);async function Ud(e,t){let n=t;n.account??=e.account,n.parameters??=Bd;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 E(e,Rd,`getChainId`)({}),c):n.chainId)}let u=r&&va(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||Hd.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 E(e,zd,`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 Hd.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`)})&&Hd.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 E(e,_d,`getBlock`)({blockTag:`latest`}),_)}if(o.includes(`nonce`)&&d===void 0&&u&&!a&&(n.nonce=await E(e,xd,`getTransactionCount`)({address:u.address,blockTag:`pending`})),(o.includes(`blobVersionedHashes`)||o.includes(`sidecars`))&&p&&h){let e=Sd({blobs:p,kzg:h});if(o.includes(`blobVersionedHashes`)){let t=Dd({commitments:e,to:`hex`});n.blobVersionedHashes=t}if(o.includes(`sidecars`)){let t=Fd({blobs:p,commitments:e,proofs:Cd({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=Id(n)}catch{let t=Vd.get(e.uid);t===void 0&&(t=typeof(await v())?.baseFeePerGas==`bigint`,Vd.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 bd(e,{block:await v(),chain:i,request:n});if(n.maxPriorityFeePerGas===void 0&&n.maxFeePerGas&&n.maxFeePerGas<r)throw new ud({maxPriorityFeePerGas:r});n.maxPriorityFeePerGas=r,n.maxFeePerGas=t}}else{if(n.maxFeePerGas!==void 0||n.maxPriorityFeePerGas!==void 0)throw new ld;if(n.gasPrice===void 0){let{gasPrice:t}=await bd(e,{block:await v(),chain:i,request:n,type:`legacy`});n.gasPrice=t}}return o.includes(`gas`)&&m===void 0&&(n.gas=await E(e,Wd,`estimateGas`)({...n,account:u,prepare:u?.type===`local`?[]:[`blobVersionedHashes`]})),s?.fn&&s.runAt?.includes(`afterFillParameters`)&&(n=await s.fn({...n,chain:i},{phase:`afterFillParameters`})),od(n),delete n.parameters,n}ya(),k(),M(),Ku(),$u(),rd(),sd();async function Wd(e,t){let{account:n=e.account,prepare:r=!0}=t,i=n?va(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 Du({authorization:t.authorizationList[0]}).catch(()=>{throw new O(\"`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 Ud(e,{...t,parameters:a,to:n}):t;if(p&&t.gas!==p)return p;let S=(typeof u==`bigint`?j(u):void 0)||d,ee=nd(b);od(t);let te=e.chain?.formatters?.transactionRequest?.format,C=(te||Yu)({...Gu(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?[C,S??e.experimental_blockTag??`latest`,ee]:S?[C,S]:[C]}))}catch(n){throw Wu(n,{...t,account:i,chain:e.chain})}}function Gd(e,t){if(!Ii(e,{strict:!1}))throw new Oi({address:e});if(!Ii(t,{strict:!1}))throw new Oi({address:t});return e.toLowerCase()===t.toLowerCase()}var Kd=o((()=>{ki(),zi()}));function qd(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}:{}}}xn(),Ma(),Kt(),Di(),$a(),Ut();let Jd=`/docs/contract/decodeEventLog`;function Yd(e){let{abi:t,data:n,strict:r,topics:i}=e,a=r??!0,[o,...s]=i;if(!o)throw new cn({docsPath:Jd});let c=t.find(e=>e.type===`event`&&o===Ei(Bt(e)));if(!(c&&`name`in c)||c.type!==`event`)throw new ln(o,{docsPath:Jd});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 gn({abiItem:c,param:t});m.push([t,n]);continue}f[d?n:t.name||n]=Xd({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=Va(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 $t||e instanceof Aa?new hn({abiItem:c,data:n,params:g,size:Gt(n)}):e}else if(a)throw new hn({abiItem:c,data:`0x`,params:g,size:0})}return{eventName:l,args:Object.values(f).length>0?f:void 0}}function Xd({param:e,value:t}){return e.type===`string`||e.type===`bytes`||e.type===`tuple`||e.type.match(/^(.*)\\[(\\d+)?\\]$/)?t:(Va([e],t)||[])[0]}Kd(),nr(),gi(),Di();function Zd(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:Ei(e)}));return r.map(e=>{let t=typeof e.blockNumber==`string`?qd(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=Yd({...t,abi:[e.abi],strict:!0}),c=e;break}catch{}if(!s&&!i){c=r[0];try{s=Yd({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)||!Qd({args:s.args,inputs:c.abi.inputs,matchArgs:n})?null:{...s,...t}}).filter(Boolean)}function Qd(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`?Gd(t,n):e.type===`string`||e.type===`bytes`?hi(Jn(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 $d(e){let{abi:t,args:n,functionName:r,data:i}=e,a=t[0];if(r){let e=ma({abi:t,args:n,name:r});if(!e)throw new un(r,{docsPath:ef});a=e}if(a.type!==`function`)throw new un(void 0,{docsPath:ef});if(!a.outputs)throw new dn(a.name,{docsPath:ef});let o=Va(a.outputs,i);if(o&&o.length>1)return o;if(o&&o.length===1)return o[0]}var ef,tf=o((()=>{xn(),$a(),_a(),ef=`/docs/contract/decodeFunctionResult`})),nf,rf=o((()=>{nf=`0.1.1`}));function af(){return nf}var of=o((()=>{rf()}));function sf(e,t){return t?.(e)?e:e&&typeof e==`object`&&`cause`in e&&e.cause?sf(e.cause,t):t?null:e}var P,cf=o((()=>{of(),P=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 sf(this,e)}},Object.defineProperty(P,`defaultStaticOptions`,{enumerable:!0,configurable:!0,writable:!0,value:{docsOrigin:`https://oxlib.sh`,showVersion:!1,version:`ox@${af()}`}}),P.setStaticOptions(P.defaultStaticOptions)}));function lf(e,t){if(Lf(e)>t)throw new Xf({givenSize:Lf(e),maxSize:t})}function uf(e,t){if(typeof t==`number`&&t>0&&t>Lf(e)-1)throw new Zf({offset:t,position:`start`,size:Lf(e)})}function df(e,t,n){if(typeof t==`number`&&typeof n==`number`&&Lf(e)!==n-t)throw new Zf({offset:n,position:`end`,size:Lf(e)})}function ff(e){if(e>=hf.zero&&e<=hf.nine)return e-hf.zero;if(e>=hf.A&&e<=hf.F)return e-(hf.A-10);if(e>=hf.a&&e<=hf.f)return e-(hf.a-10)}function pf(e,t={}){let{dir:n,size:r=32}=t;if(r===0)return e;if(e.length>r)throw new Qf({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 mf(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 hf,gf=o((()=>{$f(),hf={zero:48,nine:57,A:65,F:70,a:97,f:102}}));function _f(e,t){if(sp(e)>t)throw new bp({givenSize:sp(e),maxSize:t})}function vf(e,t){if(typeof t==`number`&&t>0&&t>sp(e)-1)throw new xp({offset:t,position:`start`,size:sp(e)})}function yf(e,t,n){if(typeof t==`number`&&typeof n==`number`&&sp(e)!==n-t)throw new xp({offset:n,position:`end`,size:sp(e)})}function bf(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 Sp({size:Math.ceil(i.length/2),targetSize:r,type:`Hex`});return`0x${i[n===`right`?`padEnd`:`padStart`](r*2,`0`)}`}function xf(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 Sf=o((()=>{z()}));function Cf(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=>Cf(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)}:${Cf(r)}`),t},[]).join(`,`)}}`}function wf(e,t){return JSON.parse(e,(e,n)=>{let r=n;return typeof r==`string`&&r.endsWith(Ef)?BigInt(r.slice(0,-9)):typeof t==`function`?t(e,r):r})}function Tf(e,t,n){return JSON.stringify(e,(e,n)=>typeof t==`function`?t(e,n):typeof n==`bigint`?n.toString()+Ef:n,n)}var Ef,Df=o((()=>{Ef=`#__bigint`}));function Of(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 Yf(e)}function kf(...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 Af(e){return e instanceof Uint8Array?e:typeof e==`string`?Mf(e):jf(e)}function jf(e){return e instanceof Uint8Array?e:new Uint8Array(e)}function Mf(e,t={}){let{size:n}=t,r=e;n&&(_f(e,n),r=ap(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=ff(i.charCodeAt(t++)),r=ff(i.charCodeAt(t++));if(n===void 0||r===void 0)throw new P(`Invalid byte sequence (\"${i[t-2]}${i[t-1]}\" in \"${i}\").`);o[e]=n<<4|r}return o}function Nf(e,t={}){let{size:n}=t,r=qf.encode(e);return typeof n==`number`?(lf(r,n),Ff(r,n)):r}function Pf(e,t){return sc(e,t)}function Ff(e,t){return pf(e,{dir:`right`,size:t})}function If(e){return crypto.getRandomValues(new Uint8Array(e))}function Lf(e){return e.length}function Rf(e,t,n,r={}){let{strict:i}=r;uf(e,t);let a=e.slice(t,n);return i&&df(a,t,n),a}function zf(e,t={}){let{size:n}=t;return n!==void 0&&lf(e,n),lp(I(e,t),t)}function Bf(e,t={}){let{size:n}=t,r=e;if(n!==void 0&&(lf(r,n),r=Uf(r)),r.length>1||r[0]>1)throw new Jf(r);return!!r[0]}function Vf(e,t={}){let{size:n}=t;return n!==void 0&&lf(e,n),dp(I(e,t),t)}function Hf(e,t={}){let{size:n}=t,r=e;return n!==void 0&&(lf(r,n),r=Wf(r)),Kf.decode(r)}function Uf(e){return mf(e,{dir:`left`})}function Wf(e){return mf(e,{dir:`right`})}function Gf(e){try{return Of(e),!0}catch{return!1}}var Kf,qf,Jf,Yf,Xf,Zf,Qf,$f=o((()=>{Tc(),cf(),z(),gf(),Sf(),Df(),Kf=new TextDecoder,qf=new TextEncoder,Jf=class extends P{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`})}},Yf=class extends P{constructor(e){super(`Value \\`${typeof e==`object`?Tf(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`})}},Xf=class extends P{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`})}},Zf=class extends P{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`})}},Qf=class extends P{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`})}}}));function ep(e,t={}){let{strict:n=!1}=t;if(!e||typeof e!=`string`)throw new _p(e);if(n&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith(`0x`))throw new vp(e)}function F(...e){return`0x${e.reduce((e,t)=>e+t.replace(`0x`,``),``)}`}function tp(e){return e instanceof Uint8Array?I(e):Array.isArray(e)?I(new Uint8Array(e)):e}function np(e,t={}){let n=`0x${Number(e)}`;return typeof t.size==`number`?(_f(n,t.size),ip(n,t.size)):n}function I(e,t={}){let n=``;for(let t=0;t<e.length;t++)n+=hp[e[t]];let r=`0x${n}`;return typeof t.size==`number`?(_f(r,t.size),ap(r,t.size)):r}function L(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 gp({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?ip(s,r):s}function rp(e,t={}){return I(mp.encode(e),t)}function ip(e,t){return bf(e,{dir:`left`,size:t})}function ap(e,t){return bf(e,{dir:`right`,size:t})}function op(e){return I(If(e))}function R(e,t,n,r={}){let{strict:i}=r;vf(e,t);let a=`0x${e.replace(`0x`,``).slice((t??0)*2,(n??e.length)*2)}`;return i&&yf(a,t,n),a}function sp(e){return Math.ceil((e.length-2)/2)}function cp(e){return xf(e,{dir:`left`})}function lp(e,t={}){let{signed:n}=t;t.size&&_f(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 up(e,t={}){return Mf(e,t)}function dp(e,t={}){let{signed:n,size:r}=t;return Number(!n&&!r?e:lp(e,t))}function fp(e,t={}){let{size:n}=t,r=Mf(e);return n&&(lf(r,n),r=Wf(r)),new TextDecoder().decode(r)}function pp(e,t={}){let{strict:n=!1}=t;try{return ep(e,{strict:n}),!0}catch{return!1}}var mp,hp,gp,_p,vp,yp,bp,xp,Sp,z=o((()=>{$f(),cf(),gf(),Sf(),Df(),mp=new TextEncoder,hp=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,`0`)),gp=class extends P{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`})}},_p=class extends P{constructor(e){super(`Value \\`${typeof e==`object`?Tf(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`})}},vp=class extends P{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`})}},yp=class extends P{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`})}},bp=class extends P{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`})}},xp=class extends P{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`})}},Sp=class extends P{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 Cp(e){return{address:e.address,amount:L(e.amount),index:L(e.index),validatorIndex:L(e.validatorIndex)}}var wp=o((()=>{z()}));function Tp(e){return{...typeof e.baseFeePerGas==`bigint`&&{baseFeePerGas:L(e.baseFeePerGas)},...typeof e.blobBaseFee==`bigint`&&{blobBaseFee:L(e.blobBaseFee)},...typeof e.feeRecipient==`string`&&{feeRecipient:e.feeRecipient},...typeof e.gasLimit==`bigint`&&{gasLimit:L(e.gasLimit)},...typeof e.number==`bigint`&&{number:L(e.number)},...typeof e.prevRandao==`bigint`&&{prevRandao:L(e.prevRandao)},...typeof e.time==`bigint`&&{time:L(e.time)},...e.withdrawals&&{withdrawals:e.withdrawals.map(Cp)}}}var Ep=o((()=>{z(),wp()})),Dp,Op,kp,Ap,jp,Mp=o((()=>{Dp=[{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`}],Op=[{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`}]}],kp=[{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`}],[...kp],[...kp],Ap=[{name:`isValidSignature`,type:`function`,stateMutability:`view`,inputs:[{name:`hash`,type:`bytes32`},{name:`signature`,type:`bytes`}],outputs:[{name:``,type:`bytes4`}]}],jp=[{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`}]})),Np=o((()=>{})),Pp,Fp,Ip,Lp,Rp=o((()=>{Pp=`0x608060405234801561001057600080fd5b5060405161018e38038061018e83398101604081905261002f91610124565b6000808351602085016000f59050803b61004857600080fd5b6000808351602085016000855af16040513d6000823e81610067573d81fd5b3d81f35b634e487b7160e01b600052604160045260246000fd5b600082601f83011261009257600080fd5b81516001600160401b038111156100ab576100ab61006b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156100d9576100d961006b565b6040528181528382016020018510156100f157600080fd5b60005b82811015610110576020818601810151838301820152016100f4565b506000918101602001919091529392505050565b6000806040838503121561013757600080fd5b82516001600160401b0381111561014d57600080fd5b61015985828601610081565b602085015190935090506001600160401b0381111561017757600080fd5b61018385828601610081565b915050925092905056fe`,Fp=`0x608060405234801561001057600080fd5b506040516102c03803806102c083398101604081905261002f916101e6565b836001600160a01b03163b6000036100e457600080836001600160a01b03168360405161005c9190610270565b6000604051808303816000865af19150503d8060008114610099576040519150601f19603f3d011682016040523d82523d6000602084013e61009e565b606091505b50915091508115806100b857506001600160a01b0386163b155b156100e1578060405163101bb98d60e01b81526004016100d8919061028c565b60405180910390fd5b50505b6000808451602086016000885af16040513d6000823e81610103573d81fd5b3d81f35b80516001600160a01b038116811461011e57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561015457818101518382015260200161013c565b50506000910152565b600082601f83011261016e57600080fd5b81516001600160401b0381111561018757610187610123565b604051601f8201601f19908116603f011681016001600160401b03811182821017156101b5576101b5610123565b6040528181528382016020018510156101cd57600080fd5b6101de826020830160208701610139565b949350505050565b600080600080608085870312156101fc57600080fd5b61020585610107565b60208601519094506001600160401b0381111561022157600080fd5b61022d8782880161015d565b93505061023c60408601610107565b60608601519092506001600160401b0381111561025857600080fd5b6102648782880161015d565b91505092959194509250565b60008251610282818460208701610139565b9190910192915050565b60208152600082518060208401526102ab816040850160208701610139565b601f01601f1916919091016040019291505056fe`,Ip=`0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f9161051e565b600061003c848484610048565b9050806000526001601ff35b60007f64926492649264926492649264926492649264926492649264926492649264926100748361040c565b036101e7576000606080848060200190518101906100929190610577565b60405192955090935091506000906001600160a01b038516906100b69085906105dd565b6000604051808303816000865af19150503d80600081146100f3576040519150601f19603f3d011682016040523d82523d6000602084013e6100f8565b606091505b50509050876001600160a01b03163b60000361016057806101605760405162461bcd60e51b815260206004820152601e60248201527f5369676e617475726556616c696461746f723a206465706c6f796d656e74000060448201526064015b60405180910390fd5b604051630b135d3f60e11b808252906001600160a01b038a1690631626ba7e90610190908b9087906004016105f9565b602060405180830381865afa1580156101ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101d19190610633565b6001600160e01b03191614945050505050610405565b6001600160a01b0384163b1561027a57604051630b135d3f60e11b808252906001600160a01b03861690631626ba7e9061022790879087906004016105f9565b602060405180830381865afa158015610244573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102689190610633565b6001600160e01b031916149050610405565b81516041146102df5760405162461bcd60e51b815260206004820152603a602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e6174757265206c656e6774680000000000006064820152608401610157565b6102e7610425565b5060208201516040808401518451859392600091859190811061030c5761030c61065d565b016020015160f81c9050601b811480159061032b57508060ff16601c14155b1561038c5760405162461bcd60e51b815260206004820152603b602482015260008051602061067483398151915260448201527f3a20696e76616c6964207369676e617475726520762076616c756500000000006064820152608401610157565b60408051600081526020810180835289905260ff83169181019190915260608101849052608081018390526001600160a01b0389169060019060a0016020604051602081039080840390855afa1580156103ea573d6000803e3d6000fd5b505050602060405103516001600160a01b0316149450505050505b9392505050565b600060208251101561041d57600080fd5b508051015190565b60405180606001604052806003906020820280368337509192915050565b6001600160a01b038116811461045857600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048c578181015183820152602001610474565b50506000910152565b600082601f8301126104a657600080fd5b81516001600160401b038111156104bf576104bf61045b565b604051601f8201601f19908116603f011681016001600160401b03811182821017156104ed576104ed61045b565b60405281815283820160200185101561050557600080fd5b610516826020830160208701610471565b949350505050565b60008060006060848603121561053357600080fd5b835161053e81610443565b6020850151604086015191945092506001600160401b0381111561056157600080fd5b61056d86828701610495565b9150509250925092565b60008060006060848603121561058c57600080fd5b835161059781610443565b60208501519093506001600160401b038111156105b357600080fd5b6105bf86828701610495565b604086015190935090506001600160401b0381111561056157600080fd5b600082516105ef818460208701610471565b9190910192915050565b828152604060208201526000825180604084015261061e816060850160208701610471565b601f01601f1916919091016060019392505050565b60006020828403121561064557600080fd5b81516001600160e01b03198116811461040557600080fd5b634e487b7160e01b600052603260045260246000fdfe5369676e617475726556616c696461746f72237265636f7665725369676e6572`,Lp=`0x608060405234801561001057600080fd5b506115b9806100206000396000f3fe6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e14610325578063bce38bd714610350578063c3077fa914610380578063ee82ac5e146103b2576100f3565b80634d2301cc1461026257806372425d9d1461029f57806382ad56cb146102ca57806386d516e8146102fa576100f3565b80633408e470116100c65780633408e470146101af578063399542e9146101da5780633e64a6961461020c57806342cbb15c14610237576100f3565b80630f28c97d146100f8578063174dea7114610123578063252dba421461015357806327e86d6e14610184575b600080fd5b34801561010457600080fd5b5061010d6103ef565b60405161011a9190610c0a565b60405180910390f35b61013d60048036038101906101389190610c94565b6103f7565b60405161014a9190610e94565b60405180910390f35b61016d60048036038101906101689190610f0c565b610615565b60405161017b92919061101b565b60405180910390f35b34801561019057600080fd5b506101996107ab565b6040516101a69190611064565b60405180910390f35b3480156101bb57600080fd5b506101c46107b7565b6040516101d19190610c0a565b60405180910390f35b6101f460048036038101906101ef91906110ab565b6107bf565b6040516102039392919061110b565b60405180910390f35b34801561021857600080fd5b506102216107e1565b60405161022e9190610c0a565b60405180910390f35b34801561024357600080fd5b5061024c6107e9565b6040516102599190610c0a565b60405180910390f35b34801561026e57600080fd5b50610289600480360381019061028491906111a7565b6107f1565b6040516102969190610c0a565b60405180910390f35b3480156102ab57600080fd5b506102b4610812565b6040516102c19190610c0a565b60405180910390f35b6102e460048036038101906102df919061122a565b61081a565b6040516102f19190610e94565b60405180910390f35b34801561030657600080fd5b5061030f6109e4565b60405161031c9190610c0a565b60405180910390f35b34801561033157600080fd5b5061033a6109ec565b6040516103479190611286565b60405180910390f35b61036a600480360381019061036591906110ab565b6109f4565b6040516103779190610e94565b60405180910390f35b61039a60048036038101906103959190610f0c565b610ba6565b6040516103a99392919061110b565b60405180910390f35b3480156103be57600080fd5b506103d960048036038101906103d491906112cd565b610bca565b6040516103e69190611064565b60405180910390f35b600042905090565b60606000808484905090508067ffffffffffffffff81111561041c5761041b6112fa565b5b60405190808252806020026020018201604052801561045557816020015b610442610bd5565b81526020019060019003908161043a5790505b5092503660005b828110156105c957600085828151811061047957610478611329565b5b6020026020010151905087878381811061049657610495611329565b5b90506020028101906104a89190611367565b925060008360400135905080860195508360000160208101906104cb91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16818580606001906104f2919061138f565b604051610500929190611431565b60006040518083038185875af1925050503d806000811461053d576040519150601f19603f3d011682016040523d82523d6000602084013e610542565b606091505b5083600001846020018290528215151515815250505081516020850135176105bc577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b826001019250505061045c565b5082341461060c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610603906114a7565b60405180910390fd5b50505092915050565b6000606043915060008484905090508067ffffffffffffffff81111561063e5761063d6112fa565b5b60405190808252806020026020018201604052801561067157816020015b606081526020019060019003908161065c5790505b5091503660005b828110156107a157600087878381811061069557610694611329565b5b90506020028101906106a791906114c7565b92508260000160208101906106bc91906111a7565b73ffffffffffffffffffffffffffffffffffffffff168380602001906106e2919061138f565b6040516106f0929190611431565b6000604051808303816000865af19150503d806000811461072d576040519150601f19603f3d011682016040523d82523d6000602084013e610732565b606091505b5086848151811061074657610745611329565b5b60200260200101819052819250505080610795576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161078c9061153b565b60405180910390fd5b81600101915050610678565b5050509250929050565b60006001430340905090565b600046905090565b6000806060439250434091506107d68686866109f4565b905093509350939050565b600048905090565b600043905090565b60008173ffffffffffffffffffffffffffffffffffffffff16319050919050565b600044905090565b606060008383905090508067ffffffffffffffff81111561083e5761083d6112fa565b5b60405190808252806020026020018201604052801561087757816020015b610864610bd5565b81526020019060019003908161085c5790505b5091503660005b828110156109db57600084828151811061089b5761089a611329565b5b602002602001015190508686838181106108b8576108b7611329565b5b90506020028101906108ca919061155b565b92508260000160208101906108df91906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060400190610905919061138f565b604051610913929190611431565b6000604051808303816000865af19150503d8060008114610950576040519150601f19603f3d011682016040523d82523d6000602084013e610955565b606091505b5082600001836020018290528215151515815250505080516020840135176109cf577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b8160010191505061087e565b50505092915050565b600045905090565b600041905090565b606060008383905090508067ffffffffffffffff811115610a1857610a176112fa565b5b604051908082528060200260200182016040528015610a5157816020015b610a3e610bd5565b815260200190600190039081610a365790505b5091503660005b82811015610b9c576000848281518110610a7557610a74611329565b5b60200260200101519050868683818110610a9257610a91611329565b5b9050602002810190610aa491906114c7565b9250826000016020810190610ab991906111a7565b73ffffffffffffffffffffffffffffffffffffffff16838060200190610adf919061138f565b604051610aed929190611431565b6000604051808303816000865af19150503d8060008114610b2a576040519150601f19603f3d011682016040523d82523d6000602084013e610b2f565b606091505b508260000183602001829052821515151581525050508715610b90578060000151610b8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b869061153b565b60405180910390fd5b5b81600101915050610a58565b5050509392505050565b6000806060610bb7600186866107bf565b8093508194508295505050509250925092565b600081409050919050565b6040518060400160405280600015158152602001606081525090565b6000819050919050565b610c0481610bf1565b82525050565b6000602082019050610c1f6000830184610bfb565b92915050565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b60008083601f840112610c5457610c53610c2f565b5b8235905067ffffffffffffffff811115610c7157610c70610c34565b5b602083019150836020820283011115610c8d57610c8c610c39565b5b9250929050565b60008060208385031215610cab57610caa610c25565b5b600083013567ffffffffffffffff811115610cc957610cc8610c2a565b5b610cd585828601610c3e565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60008115159050919050565b610d2281610d0d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610d62578082015181840152602081019050610d47565b83811115610d71576000848401525b50505050565b6000601f19601f8301169050919050565b6000610d9382610d28565b610d9d8185610d33565b9350610dad818560208601610d44565b610db681610d77565b840191505092915050565b6000604083016000830151610dd96000860182610d19565b5060208301518482036020860152610df18282610d88565b9150508091505092915050565b6000610e0a8383610dc1565b905092915050565b6000602082019050919050565b6000610e2a82610ce1565b610e348185610cec565b935083602082028501610e4685610cfd565b8060005b85811015610e825784840389528151610e638582610dfe565b9450610e6e83610e12565b925060208a01995050600181019050610e4a565b50829750879550505050505092915050565b60006020820190508181036000830152610eae8184610e1f565b905092915050565b60008083601f840112610ecc57610ecb610c2f565b5b8235905067ffffffffffffffff811115610ee957610ee8610c34565b5b602083019150836020820283011115610f0557610f04610c39565b5b9250929050565b60008060208385031215610f2357610f22610c25565b5b600083013567ffffffffffffffff811115610f4157610f40610c2a565b5b610f4d85828601610eb6565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000610f918383610d88565b905092915050565b6000602082019050919050565b6000610fb182610f59565b610fbb8185610f64565b935083602082028501610fcd85610f75565b8060005b858110156110095784840389528151610fea8582610f85565b9450610ff583610f99565b925060208a01995050600181019050610fd1565b50829750879550505050505092915050565b60006040820190506110306000830185610bfb565b81810360208301526110428184610fa6565b90509392505050565b6000819050919050565b61105e8161104b565b82525050565b60006020820190506110796000830184611055565b92915050565b61108881610d0d565b811461109357600080fd5b50565b6000813590506110a58161107f565b92915050565b6000806000604084860312156110c4576110c3610c25565b5b60006110d286828701611096565b935050602084013567ffffffffffffffff8111156110f3576110f2610c2a565b5b6110ff86828701610eb6565b92509250509250925092565b60006060820190506111206000830186610bfb565b61112d6020830185611055565b818103604083015261113f8184610e1f565b9050949350505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061117482611149565b9050919050565b61118481611169565b811461118f57600080fd5b50565b6000813590506111a18161117b565b92915050565b6000602082840312156111bd576111bc610c25565b5b60006111cb84828501611192565b91505092915050565b60008083601f8401126111ea576111e9610c2f565b5b8235905067ffffffffffffffff81111561120757611206610c34565b5b60208301915083602082028301111561122357611222610c39565b5b9250929050565b6000806020838503121561124157611240610c25565b5b600083013567ffffffffffffffff81111561125f5761125e610c2a565b5b61126b858286016111d4565b92509250509250929050565b61128081611169565b82525050565b600060208201905061129b6000830184611277565b92915050565b6112aa81610bf1565b81146112b557600080fd5b50565b6000813590506112c7816112a1565b92915050565b6000602082840312156112e3576112e2610c25565b5b60006112f1848285016112b8565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b60008235600160800383360303811261138357611382611358565b5b80830191505092915050565b600080833560016020038436030381126113ac576113ab611358565b5b80840192508235915067ffffffffffffffff8211156113ce576113cd61135d565b5b6020830192506001820236038313156113ea576113e9611362565b5b509250929050565b600081905092915050565b82818337600083830152505050565b600061141883856113f2565b93506114258385846113fd565b82840190509392505050565b600061143e82848661140c565b91508190509392505050565b600082825260208201905092915050565b7f4d756c746963616c6c333a2076616c7565206d69736d61746368000000000000600082015250565b6000611491601a8361144a565b915061149c8261145b565b602082019050919050565b600060208201905081810360008301526114c081611484565b9050919050565b6000823560016040038336030381126114e3576114e2611358565b5b80830191505092915050565b7f4d756c746963616c6c333a2063616c6c206661696c6564000000000000000000600082015250565b600061152560178361144a565b9150611530826114ef565b602082019050919050565b6000602082019050818103600083015261155481611518565b9050919050565b60008235600160600383360303811261157757611576611358565b5b8083019150509291505056fea264697066735822122020c1bc9aacf8e4a6507193432a895a8e77094f45a1395583f07b24e860ef06cd64736f6c634300080c0033`})),zp,Bp,Vp,Hp,Up,Wp=o((()=>{k(),zp=class extends O{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`})}},Bp=class extends O{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} – ${e.name}).`,{metaMessages:[`Current Chain ID: ${t}`,`Expected Chain ID: ${e.id} – ${e.name}`],name:`ChainMismatchError`})}},Vp=class extends O{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`})}},Hp=class extends O{constructor(){super(`No chain was provided to the Client.`,{name:`ClientChainNotConfiguredError`})}},Up=class extends O{constructor({chainId:e}){super(typeof e==`number`?`Chain ID \"${e}\" is invalid.`:`Chain ID is invalid.`,{name:`InvalidChainIdError`})}}}));function Gp(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 Zt({docsPath:Kp});if(!(`inputs`in i)||!i.inputs||i.inputs.length===0)throw new Qt({docsPath:Kp});return Hi([r,$i(i.inputs,n)])}var Kp,qp=o((()=>{xn(),Ui(),da(),Kp=`/docs/contract/encodeDeployData`}));function Jp({blockNumber:e,chain:t,contract:n}){let r=t?.contracts?.[n];if(!r)throw new zp({chain:t,contract:{name:n}});if(e&&r.blockCreated&&r.blockCreated>e)throw new zp({blockNumber:e,chain:t,contract:{name:n,blockCreated:r.blockCreated}});return r.address}var Yp=o((()=>{Wp()}));function Xp(e,{docsPath:t,...n}){return new Mo((()=>{let t=Hu(e,n);return t instanceof Bu?e:t})(),{docsPath:t,...n})}var Zp=o((()=>{Ro(),Vu(),Uu()}));function Qp(){let e=()=>void 0,t=()=>void 0;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}var $p=o((()=>{}));function em({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=()=>tm.delete(t),s=()=>c().map(({args:e})=>e),c=()=>tm.get(t)||[],l=e=>tm.set(t,[...c(),e]);return{flush:o,async schedule(e){let{promise:t,resolve:i,reject:o}=Qp();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 tm,nm=o((()=>{$p(),tm=new Map})),rm,im,am,om=o((()=>{ro(),k(),jo(),rm=class extends O{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=>` ${Ao(e)}`)],` Sender: ${i}`,` Data: ${n}`,` Callback selector: ${e}`,` Extra data: ${r}`].flat(),name:`OffchainLookupError`})}},im=class extends O{constructor({result:e,url:t}){super(`Offchain gateway response is malformed. Response data must be a hex value.`,{metaMessages:[`Gateway URL: ${Ao(t)}`,`Response: ${no(e)}`],name:`OffchainLookupResponseMalformedError`})}},am=class extends O{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 sm(e){let{abi:t,data:n}=e,r=Wi(n,0,4),i=t.find(e=>e.type===`function`&&r===fa(Bt(e)));if(!i)throw new fn(r,{docsPath:`/docs/contract/decodeFunctionData`});return{functionName:i.name,args:`inputs`in i&&i.inputs&&i.inputs.length>0?Va(i.inputs,Wi(n,4)):void 0}}var cm=o((()=>{xn(),Yi(),pa(),$a(),Ut()}));function lm(e){let{abi:t,errorName:n,args:r}=e,i=t[0];if(n){let e=ma({abi:t,args:r,name:n});if(!e)throw new on(n,{docsPath:um});i=e}if(i.type!==`error`)throw new on(void 0,{docsPath:um});let a=fa(Bt(i)),o=`0x`;if(r&&r.length>0){if(!i.inputs)throw new an(i.name,{docsPath:um});o=$i(i.inputs,r)}return Hi([a,o])}var um,dm=o((()=>{xn(),Ui(),pa(),da(),Ut(),_a(),um=`/docs/contract/encodeErrorResult`}));function fm(e){let{abi:t,functionName:n,result:r}=e,i=t[0];if(n){let e=ma({abi:t,name:n});if(!e)throw new un(n,{docsPath:pm});i=e}if(i.type!==`function`)throw new un(void 0,{docsPath:pm});if(!i.outputs)throw new dn(i.name,{docsPath:pm});let a=(()=>{if(i.outputs.length===0)return[];if(i.outputs.length===1)return[r];if(Array.isArray(r))return r;throw new yn(r)})();return $i(i.outputs,a)}var pm,mm=o((()=>{xn(),da(),_a(),pm=`/docs/contract/encodeFunctionResult`}));async function hm(e){let{data:t,ccipRequest:n}=e,{args:[r]}=sm({abi:Op,data:t}),i=[],a=[];return await Promise.all(r.map(async(e,t)=>{try{a[t]=e.urls.includes(`x-batch-gateway:true`)?await hm({data:e.data,ccipRequest:n}):await n(e),i[t]=!1}catch(e){i[t]=!0,a[t]=gm(e)}})),fm({abi:Op,functionName:`query`,result:[i,a]})}function gm(e){return e.name===`HttpRequestError`&&e.status?lm({abi:Op,errorName:`HttpError`,args:[e.status,e.shortMessage]}):lm({abi:[Ea],errorName:`Error`,args:[`shortMessage`in e?e.shortMessage:e.message]})}var _m=o((()=>{Mp(),Oa(),cm(),dm(),mm()})),vm=c({ccipRequest:()=>bm,offchainLookup:()=>ym,offchainLookupAbiItem:()=>Sm,offchainLookupSignature:()=>xm});async function ym(e,{blockNumber:t,blockTag:n,data:r,to:i}){let{args:a}=eo({data:r,abi:[Sm]}),[o,s,c,l,u]=a,{ccipRead:d}=e,f=d&&typeof d?.request==`function`?d.request:bm;try{if(!Gd(i,o))throw new am({sender:o,to:i});let{data:r}=await wm(e,{blockNumber:t,blockTag:n,data:Bi([l,$i([{type:`bytes`},{type:`bytes`}],[s.includes(`x-batch-gateway:true`)?await hm({data:c,ccipRequest:f}):await f({data:c,sender:o,urls:s}),u])]),to:i});return r}catch(e){throw new rm({callbackSelector:l,cause:e,data:r,extraData:u,sender:o,urls:s})}}async function bm({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 zo({body:s,details:i?.error?no(i.error):n.statusText,headers:n.headers,status:n.status,url:a});continue}if(!D(i)){r=new im({result:i,url:a});continue}return i}catch(e){r=new zo({body:s,details:e.message,url:a})}}throw r}var xm,Sm,Cm=o((()=>{Am(),om(),Ho(),to(),da(),Kd(),Ui(),Wt(),_m(),ro(),xm=`0x556f1830`,Sm={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 wm(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?va(n):void 0;if(u&&(f||p))throw new O(\"Cannot provide both `code` & `factory`/`factoryData` as parameters.\");if(u&&b)throw new O(\"Cannot provide both `code` & `to` as parameters.\");let C=u&&d,w=f&&p&&b&&d,T=C||w,ne=C?Dm({code:u,data:d}):w?Om({data:d,factory:f,factoryData:p,to:b}):d;try{od(t);let n=(typeof a==`bigint`?j(a):void 0)||o,u=l?Tp(l):void 0,d=nd(S),f=e.chain?.formatters?.transactionRequest?.format,p=(f||Yu)({...Gu(ee,{format:f}),accessList:s,account:te,authorizationList:r,blobs:c,data:ne,gas:m,gasPrice:h,maxFeePerBlobGas:g,maxFeePerGas:_,maxPriorityFeePerGas:v,nonce:y,to:T?void 0:b,value:x},`call`);if(i&&Tm({request:p})&&!d&&!u)try{return await Em(e,{...p,blockNumber:a,blockTag:o})}catch(e){if(!(e instanceof Hp)&&!(e instanceof zp))throw e}let C=(()=>{let e=[p,n];return d&&u?[...e,d,u]:d?[...e,d]:u?[...e,{},u]:e})(),w=await e.request({method:`eth_call`,params:C});return w===`0x`?{data:void 0}:{data:w}}catch(n){let r=km(n),{offchainLookup:i,offchainLookupSignature:a}=await Promise.resolve().then(()=>(Cm(),vm));if(e.ccipRead!==!1&&r?.slice(0,10)===a&&b)return{data:await i(e,{data:r,to:b})};throw T&&r?.slice(0,10)===`0x101bb98d`?new Io({factory:f}):Xp(n,{...t,account:te,chain:e.chain})}}function Tm({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 Em(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 Jp({blockNumber:a,chain:e.chain,contract:`multicall3`});throw new Hp})(),u=(typeof a==`bigint`?j(a):void 0)||o,{schedule:d}=em({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=Ca({abi:Dp,args:[n],functionName:`aggregate3`}),i=await e.request({method:`eth_call`,params:[{...l===null?{data:Dm({code:Lp,data:r})}:{to:l,data:r}},u]});return $d({abi:Dp,args:[n],functionName:`aggregate3`,data:i||`0x`})}}),[{returnData:f,success:p}]=await d({data:s,to:c});if(!p)throw new Lo({data:f});return f===`0x`?{data:void 0}:{data:f}}function Dm(e){let{code:t,data:n}=e;return Gp({abi:Lt([`constructor(bytes, bytes)`]),bytecode:Pp,args:[t,n]})}function Om(e){let{data:t,factory:n,factoryData:r,to:i}=e;return Gp({abi:Lt([`constructor(address, bytes, address, bytes)`]),bytecode:Fp,args:[i,t,n,r]})}function km(e){if(!(e instanceof O))return;let t=e.walk();return typeof t?.data==`object`?t.data?.data:t.data}var Am=o((()=>{zt(),Ep(),ya(),Mp(),Np(),Rp(),k(),Wp(),Ro(),tf(),qp(),wa(),Yp(),M(),Zp(),Ku(),$u(),nm(),rd(),sd()}));tf(),wa(),Am();async function jm(e,t){let{abi:n,address:r,args:i,functionName:a,...o}=t,s=Ca({abi:n,args:i,functionName:a});try{let{data:t}=await E(e,wm,`call`)({...o,data:s,to:r});return $d({abi:n,args:i,functionName:a,data:t||`0x`})}catch(e){throw bs(e,{abi:n,address:r,args:i,docsPath:`/docs/contract/readContract`,functionName:a})}}let Mm=new Map,Nm=new Map,Pm=0;function Fm(e,t,n){let r=++Pm,i=()=>Mm.get(e)||[],a=()=>{let t=i();Mm.set(e,t.filter(e=>e.id!==r))},o=()=>{let t=i();if(!t.some(e=>e.id===r))return;let n=Nm.get(e);if(t.length===1&&n){let e=n();e instanceof Promise&&e.catch(()=>{})}a()},s=i();if(Mm.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`&&Nm.set(e,l),o}async function Im(e){return new Promise(t=>setTimeout(t,e))}function Lm(e,{emitOnBegin:t,initialWaitTime:n,interval:r}){let i=!0,a=()=>i=!1;return(async()=>{let o;t&&(o=await e({unpoll:a})),await Im(await n?.(o)??r);let s=async()=>{i&&(await e({unpoll:a}),await Im(r),s())};s()})(),a}k();var Rm=class extends O{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`})}},zm=class extends O{constructor({docsPath:e,metaMessages:t,type:n}){super(`Account type \"${n}\" is not supported.`,{docsPath:e,metaMessages:t,name:`AccountTypeNotSupportedError`})}};Wp();function Bm({chain:e,currentChainId:t}){if(!e)throw new Vp;if(t!==e.id)throw new Bp({chain:e,currentChainId:t})}async function Vm(e,{serializedTransaction:t}){return e.request({method:`eth_sendRawTransaction`,params:[t]},{retryCount:0})}ya(),k(),Ui(),Ku(),$u(),ji(),sd();let Hm=new Ai(128);async function Um(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 Rm({docsPath:`/docs/actions/wallet/sendTransaction`});let y=n?va(n):null;try{od(t);let n=await(async()=>{if(t.to)return t.to;if(t.to!==null&&o&&o.length>0)return await Du({authorization:o[0]}).catch(()=>{throw new O(\"`to` is required. Could not infer from `authorizationList`.\")})})();if(y?.type===`json-rpc`||y===null){let t;i!==null&&(t=await E(e,Rd,`getChainId`)({}),r&&Bm({currentChainId:t,chain:i}));let b=e.chain?.formatters?.transactionRequest?.format,x=(b||Yu)({...Gu(v,{format:b}),accessList:a,account:y,authorizationList:o,blobs:s,chainId:t,data:l?Bi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,to:n,type:g,value:_},`sendTransaction`),S=Hm.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=>(Hm.set(e.uid,!0),t)).catch(t=>{let r=t;throw r.name===`MethodNotFoundRpcError`||r.name===`MethodNotSupportedRpcError`?(Hm.set(e.uid,!1),n):r});throw n}}if(y?.type===`local`){let t=await E(e,Ud,`prepareTransactionRequest`)({account:y,accessList:a,authorizationList:o,blobs:s,chain:i,data:l?Bi([c??`0x`,l]):c,gas:u,gasPrice:d,maxFeePerBlobGas:f,maxFeePerGas:p,maxPriorityFeePerGas:m,nonce:h,nonceManager:y.nonceManager,parameters:[...Bd,`sidecars`],type:g,value:_,...v,to:n}),r=i?.serializers?.transaction,b=await y.signTransaction(t,{serializer:r});return await E(e,Vm,`sendRawTransaction`)({serializedTransaction:b})}throw y?.type===`smart`?new zm({metaMessages:[\"Consider using the `sendUserOperation` Action instead.\"],docsPath:`/docs/actions/bundler/sendUserOperation`,type:`smart`}):new zm({docsPath:`/docs/actions/wallet/sendTransaction`,type:y?.type})}catch(e){throw e instanceof zm?e:Ld(e,{...t,account:y,chain:t.chain||void 0})}}ya(),wa();async function Wm(e,t){return Wm.internal(e,Um,`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 Rm({docsPath:`/docs/contract/writeContract`});let u=a?va(a):null,d=Ca({abi:i,args:s,functionName:c});try{return await E(e,t,n)({data:d,to:o,account:u,...l})}catch(e){throw bs(e,{abi:i,address:o,args:s,docsPath:`/docs/contract/writeContract`,functionName:c,sender:u?.address})}}e.internal=t})(Wm||={}),k();var Gm=class extends O{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 Km(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 Im(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()})}Vn(),Ju();let qm={\"0x0\":`reverted`,\"0x1\":`success`};function Jm(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=>qd(e)):null,to:e.to?e.to:null,transactionIndex:e.transactionIndex?Bn(e.transactionIndex):null,status:e.status?qm[e.status]:null,type:e.type?fd[e.type]||e.type:null};return e.blobGasPrice&&(n.blobGasPrice=BigInt(e.blobGasPrice)),e.blobGasUsed&&(n.blobGasUsed=BigInt(e.blobGasUsed)),n}let Ym=qu(`transactionReceipt`,Jm);ya(),k(),ys(),wa(),Ui(),Vn(),M();let Xm=j(0,{size:32});async function Zm(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?va(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?Ca({abi:t.abi,functionName:t.functionName,args:t.args}):t.data;return{data:t.dataSuffix&&n?Bi([n,t.dataSuffix]):n,to:t.to,value:t.value?j(t.value):void 0}});try{let t=await e.request({method:`wallet_sendCalls`,params:[{atomicRequired:o,calls:d,capabilities:u,chainId:j(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 us(new O(e,{details:e}))}if(o&&d.length>1){let e=\"`forceAtomic` is not supported on fallback to `eth_sendTransaction`.\";throw new gs(new O(e,{details:e}))}let t=[];for(let n of d){let i=Um(e,{account:l,chain:r,data:n.data,to:n.to,value:n.value?A(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:Bi([...n.map(e=>e.status===`fulfilled`?e.value:Xm),j(r.id,{size:32}),`0x5792579257925792579257925792579257925792579257925792579257925792`])}}throw Ld(n,{...t,account:l,chain:t.chain})}}Yi(),Ln(),Vn();async function Qm(e,t){async function n(t){if(t.endsWith(`5792579257925792579257925792579257925792579257925792579257925792`)){let n=In(Ji(t,-64,-32)),r=Ji(t,0,-64).slice(2).match(/.{1,64}/g),i=await Promise.all(r.map(t=>Xm.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:Bn(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?Bn(i):void 0,receipts:a?.map(e=>({...e,blockNumber:A(e.blockNumber),gasUsed:A(e.gasUsed),status:qm[e.status]}))??[],statusCode:l,status:c,version:o}}k(),$p(),ro();async function $m(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=no([`waitForCallsStatus`,e.uid,n]),{promise:u,resolve:d,reject:f}=Qp(),p,m=Fm(l,{resolve:d,reject:f},t=>{let s=Lm(async()=>{let r=e=>{clearTimeout(p),s(),e(),m()};try{let s=await Km(async()=>{let t=await E(e,Qm,`getCallsStatus`)({id:n});if(c&&t.status===`failure`)throw new Gm(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 eh({id:n}))},s):void 0,await u}var eh=class extends O{constructor({id:e}){super(`Timed out while waiting for call bundle with id \"${e}\" to be confirmed.`,{name:`WaitForCallsStatusTimeoutError`})}};let th=256,nh;function rh(e=11){if(!nh||th+e>256*2){nh=``,th=0;for(let e=0;e<256;e++)nh+=(256+Math.random()*256|0).toString(16).substring(1)}return nh.substring(th,th+++e)}ya();function ih(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?va(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:rh(),...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(_)})}M();async function ah(e,{address:t,blockNumber:n,blockTag:r=`latest`}){let i=n===void 0?void 0:j(n),a=await e.request({method:`eth_getCode`,params:[t,i||r]},{dedupe:!!i});if(a!==`0x`)return a}ad(),ki(),k(),Wp(),Vu(),zi(),Kt(),Yi(),Vn();function oh(e){let{authorizationList:t}=e;if(t)for(let e of t){let{chainId:t}=e,n=e.address;if(!Ii(n))throw new Oi({address:n});if(t<0)throw new Up({chainId:t})}ch(e)}function sh(e){let{blobVersionedHashes:t}=e;if(t){if(t.length===0)throw new jd;for(let e of t){let t=Gt(e),n=Bn(Wi(e,0,1));if(t!==32)throw new Md({hash:e,size:t});if(n!==1)throw new Nd({hash:e,version:n})}}ch(e)}function ch(e){let{chainId:t,maxPriorityFeePerGas:n,maxFeePerGas:r,to:i}=e;if(t<=0)throw new Up({chainId:t});if(i&&!Ii(i))throw new Oi({address:i});if(r&&r>id)throw new Au({maxFeePerGas:r});if(n&&r&&n>r)throw new zu({maxFeePerGas:r,maxPriorityFeePerGas:n})}function lh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(t<=0)throw new Up({chainId:t});if(a&&!Ii(a))throw new Oi({address:a});if(n||i)throw new O(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid EIP-2930 Transaction attribute.\");if(r&&r>id)throw new Au({maxFeePerGas:r})}function uh(e){let{chainId:t,maxPriorityFeePerGas:n,gasPrice:r,maxFeePerGas:i,to:a}=e;if(a&&!Ii(a))throw new Oi({address:a});if(t!==void 0&&t<=0)throw new Up({chainId:t});if(n||i)throw new O(\"`maxFeePerGas`/`maxPriorityFeePerGas` is not a valid Legacy Transaction attribute.\");if(r&&r>id)throw new Au({maxFeePerGas:r})}ki(),Oo(),zi();function dh(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 Eo({storageKey:i[e]});if(!Ii(r,{strict:!1}))throw new Oi({address:r});t.push([r,i])}return t}Oo(),Ui(),Ln(),M();function fh(e,t){let n=Id(e);return n===`eip1559`?hh(e,t):n===`eip2930`?gh(e,t):n===`eip4844`?mh(e,t):n===`eip7702`?ph(e,t):_h(e,t)}function ph(e,t){let{authorizationList:n,chainId:r,gas:i,nonce:a,to:o,value:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;oh(e);let f=dh(u),p=yh(n);return Hi([`0x04`,xu([j(r),a?j(a):`0x`,l?j(l):`0x`,c?j(c):`0x`,i?j(i):`0x`,o??`0x`,s?j(s):`0x`,d??`0x`,f,p,...vh(e,t)])])}function mh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerBlobGas:s,maxFeePerGas:c,maxPriorityFeePerGas:l,accessList:u,data:d}=e;sh(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=>Wn(e)),n=e.kzg,r=Sd({blobs:t,kzg:n});f===void 0&&(f=Dd({commitments:r})),p===void 0&&(p=Fd({blobs:t,commitments:r,proofs:Cd({blobs:t,commitments:r,kzg:n})}))}let m=dh(u),h=[j(n),i?j(i):`0x`,l?j(l):`0x`,c?j(c):`0x`,r?j(r):`0x`,a??`0x`,o?j(o):`0x`,d??`0x`,m,s?j(s):`0x`,f??[],...vh(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 Hi([`0x03`,xu(p?[h,g,_,v]:h)])}function hh(e,t){let{chainId:n,gas:r,nonce:i,to:a,value:o,maxFeePerGas:s,maxPriorityFeePerGas:c,accessList:l,data:u}=e;ch(e);let d=dh(l);return Hi([`0x02`,xu([j(n),i?j(i):`0x`,c?j(c):`0x`,s?j(s):`0x`,r?j(r):`0x`,a??`0x`,o?j(o):`0x`,u??`0x`,d,...vh(e,t)])])}function gh(e,t){let{chainId:n,gas:r,data:i,nonce:a,to:o,value:s,accessList:c,gasPrice:l}=e;lh(e);let u=dh(c);return Hi([`0x01`,xu([j(n),a?j(a):`0x`,l?j(l):`0x`,r?j(r):`0x`,o??`0x`,s?j(s):`0x`,i??`0x`,u,...vh(e,t)])])}function _h(e,t){let{chainId:n=0,gas:r,data:i,nonce:a,to:o,value:s,gasPrice:c}=e;uh(e);let l=[a?j(a):`0x`,c?j(c):`0x`,r?j(r):`0x`,o??`0x`,s?j(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 So({v:t.v});return e})(),r=In(t.r),i=In(t.s);l=[...l,j(e),r===`0x00`?`0x`:r,i===`0x00`?`0x`:i]}else n>0&&(l=[...l,j(n),`0x`,`0x`]);return xu(l)}function vh(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=In(n.r),o=In(n.s);return[typeof i==`number`?i?j(1):`0x`:r===0n?`0x`:r===1n?j(1):r===27n?`0x`:j(1),a===`0x00`?`0x`:a,o===`0x00`?`0x`:o]}M();function yh(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?Hn(e):`0x`,a,r?Hn(r):`0x`,...vh({},i)])}return t}Fi(),Kd();async function bh({address:e,authorization:t,signature:n}){return Gd(Ni(e),await Du({authorization:t,signature:n}))}ji();let xh=new Ai(8192);function Sh(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(xh.get(n))return xh.get(n);let r=e().finally(()=>xh.delete(n));return xh.set(n,r),r}k(),Ho(),ys(),M(),ro();function Ch(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 ts(Error(`method not supported`),{method:l});return Sh(()=>Km(async()=>{try{return await e(n)}catch(e){let t=e;switch(t.code){case Ko.code:throw new Ko(t);case qo.code:throw new qo(t);case Jo.code:throw new Jo(t,{method:n.method});case Yo.code:throw new Yo(t);case Xo.code:throw new Xo(t);case Zo.code:throw new Zo(t);case Qo.code:throw new Qo(t);case $o.code:throw new $o(t);case es.code:throw new es(t);case ts.code:throw new ts(t,{method:n.method});case ns.code:throw new ns(t);case rs.code:throw new rs(t);case is.code:throw new is(t);case as.code:throw new as(t);case os.code:throw new os(t);case ss.code:throw new ss(t);case cs.code:throw new cs(t);case ls.code:throw new ls(t);case us.code:throw new us(t);case ds.code:throw new ds(t);case fs.code:throw new fs(t);case ps.code:throw new ps(t);case ms.code:throw new ms(t);case hs.code:throw new hs(t);case gs.code:throw new gs(t);case 5e3:throw new is(t);case _s.code:throw new _s(t);default:throw e instanceof O?e:new vs(t)}}},{delay:({count:e,error:t})=>{if(t&&t instanceof zo){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})=>wh(e)}),{enabled:i,id:i?Gn(`${c}.${no(n)}`):void 0})}}function wh(e){return`code`in e&&typeof e.code==`number`?e.code===-1||e.code===ns.code||e.code===Xo.code:e instanceof zo&&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 Eh(){return{}}k(),Fn(),Fa(),nr(),M();function Dh(e,t=`hex`){return Oh(Na((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new Nn(e);return Zn(e)}return e})(),{recursiveReadLimit:1/0}),t)}function Oh(e,t=`hex`){if(e.bytes.length===0)return t===`hex`?Wn(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=kh(e,n,128),i=e.readBytes(r);return t===`hex`?Wn(i):i}return Ah(e,kh(e,n,192),t)}function kh(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 O(`Invalid RLP prefix`)}function Ah(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(Oh(e,n));return i}Wt(),Kt();function jh(e){return D(e)&&Gt(e)===32}function Mh(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 Nh(){return{current:0,take(){return this.current++},reset(){this.current=0}}}let Ph=Nh();Ho(),ro();function Fh(e,t={}){let{url:n,headers:r}=Ih(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 Mh(async({signal:e})=>{let t={...l,body:no(Array.isArray(i)?i.map(e=>({jsonrpc:`2.0`,id:e.id??Ph.take(),...e})):{jsonrpc:`2.0`,id:i.id??Ph.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 Vo({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 zo({body:i,details:no(t.error)||e.statusText,headers:e.headers,status:e.status,url:n})}return t}catch(e){throw e instanceof zo||e instanceof Vo?e:new zo({body:i,cause:e,url:n})}}}}function Ih(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}}}Ui(),Kt(),M();function Lh(e){let t=typeof e==`string`?Gn(e):typeof e.raw==`string`?e.raw:Wn(e.raw);return Bi([Gn(`\u0019Ethereum Signed Message:\n${Gt(t)}`),t])}gi();function Rh(e,t){return hi(Lh(e),t)}ro(),k();var zh=class extends O{constructor({domain:e}){super(`Invalid domain \"${no(e)}\".`,{metaMessages:[`Must be a valid EIP-712 domain.`]})}},Bh=class extends O{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`.\"]})}},Vh=class extends O{constructor({type:e}){super(`Struct type \"${e}\" is invalid.`,{metaMessages:[`Struct type must not be a Solidity type.`],name:`InvalidStructTypeError`})}};xn(),ki(),zi(),Kt(),M(),Qi(),ro();function Hh(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 no({domain:!i.EIP712Domain||!t?{}:a(i.EIP712Domain,t),message:(()=>{if(r!==`EIP712Domain`)return a(i[r],n)})(),primaryType:r,types:i})}function Uh(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(Zi);if(s&&(typeof o==`number`||typeof o==`bigint`)){let[e,t,n]=s;j(o,{signed:t===`int`,size:Number.parseInt(n,10)/8})}if(r===`address`&&typeof o==`string`&&!Ii(o))throw new Oi({address:o});let c=r.match(Xi);if(c){let[e,t]=c;if(t&&Gt(o)!==Number.parseInt(t,10))throw new mn({expectedSize:Number.parseInt(t,10),givenSize:Gt(o)})}let l=i[r];l&&(Gh(r),a(l,o))}};if(i.EIP712Domain&&t){if(typeof t!=`object`)throw new zh({domain:t});a(i.EIP712Domain,t)}if(r!==`EIP712Domain`)if(i[r])a(i[r],n);else throw new Bh({primaryType:r,types:i})}function Wh({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 Gh(e){if(e===`address`||e===`bool`||e===`string`||e.startsWith(`bytes`)||e.startsWith(`uint`)||e.startsWith(`int`))throw new Vh({type:e})}da(),Ui(),M(),gi();function Kh(e){let{domain:t={},message:n,primaryType:r}=e,i={EIP712Domain:Wh({domain:t}),...e.types};Uh({domain:t,message:n,primaryType:r,types:i});let a=[`0x1901`];return t&&a.push(qh({domain:t,types:i})),r!==`EIP712Domain`&&a.push(Jh({data:n,primaryType:r,types:i})),hi(Bi(a))}function qh({domain:e,types:t}){return Jh({data:e,primaryType:`EIP712Domain`,types:t})}function Jh({data:e,primaryType:t,types:n}){return hi(Yh({data:e,primaryType:t,types:n}))}function Yh({data:e,primaryType:t,types:n}){let r=[{type:`bytes32`}],i=[Xh({primaryType:t,types:n})];for(let a of n[t]){let[t,o]=$h({types:n,name:a.name,type:a.type,value:e[a.name]});r.push(t),i.push(o)}return $i(r,i)}function Xh({primaryType:e,types:t}){return hi(Hn(Zh({primaryType:e,types:t})))}function Zh({primaryType:e,types:t}){let n=``,r=Qh({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 Qh({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])Qh({primaryType:e.type,types:t},n);return n}function $h({types:e,name:t,type:n,value:r}){if(e[n]!==void 0)return[{type:`bytes32`},hi(Yh({data:r,primaryType:n,types:e}))];if(n===`bytes`)return[{type:`bytes32`},hi(r)];if(n===`string`)return[{type:`bytes32`},hi(Hn(r))];if(n.lastIndexOf(`]`)===n.length-1){let i=n.slice(0,n.lastIndexOf(`[`)),a=r.map(n=>$h({name:t,type:i,types:e,value:n}));return[{type:`bytes32`},hi($i(a.map(([e])=>e),a.map(([,e])=>e)))]}return[{type:n},r]}var eg=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 tg(e,t){return e.exec(t)?.groups}let ng=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,rg=/^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)?$/,ig=/^\\(.+?\\).*?$/,ag=/^tuple(?<array>(\\[(\\d*)\\])*)$/;function og(e){let t=e.type;if(ag.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+=og(i),r<n-1&&(t+=`, `)}let r=tg(ag,e.type);return t+=`)${r?.array||``}`,og({...e,type:t})}return`indexed`in e&&e.indexed&&(t=`${t} indexed`),e.name?`${t} ${e.name}`:t}function sg(e){let t=``,n=e.length;for(let r=0;r<n;r++){let i=e[r];t+=og(i),r!==n-1&&(t+=`, `)}return t}function cg(e){return e.type===`function`?`function ${e.name}(${sg(e.inputs)})${e.stateMutability&&e.stateMutability!==`nonpayable`?` ${e.stateMutability}`:``}${e.outputs?.length?` returns (${sg(e.outputs)})`:``}`:e.type===`event`?`event ${e.name}(${sg(e.inputs)})`:e.type===`error`?`error ${e.name}(${sg(e.inputs)})`:e.type===`constructor`?`constructor(${sg(e.inputs)})${e.stateMutability===`payable`?` payable`:``}`:e.type===`fallback`?`fallback() external${e.stateMutability===`payable`?` payable`:``}`:`receive() external payable`}let lg=/^struct (?<name>[a-zA-Z$_][a-zA-Z0-9$_]*) \\{(?<properties>.*?)\\}$/;function ug(e){return lg.test(e)}function dg(e){return tg(lg,e)}let fg=new Set([`memory`,`indexed`,`storage`,`calldata`]),pg=new Set([`calldata`,`memory`,`storage`]);var mg=class extends eg{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`})}},hg=class extends eg{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`})}},gg=class extends eg{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`})}},_g=class extends eg{constructor({param:e}){super(`Invalid ABI parameter.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidParameterError`})}},vg=class extends eg{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`})}},yg=class extends eg{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`})}},bg=class extends eg{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`})}},xg=class extends eg{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`})}},Sg=class extends eg{constructor({signature:e,type:t}){super(`Invalid ${t} signature.`,{details:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`InvalidSignatureError`})}},Cg=class extends eg{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`})}},wg=class extends eg{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`})}},Tg=class extends eg{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 Eg(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 Dg=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}]]),Og=/^(?<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$_]*))?$/,kg=/^\\((?<type>.+?)\\)(?<array>(?:\\[\\d*?\\])+?)?(?:\\s(?<modifier>calldata|indexed|memory|storage{1}))?(?:\\s(?<name>[a-zA-Z$_][a-zA-Z0-9$_]*))?$/,Ag=/^u?int$/;function jg(e,t){let n=Eg(e,t?.type,t?.structs);if(Dg.has(n))return Dg.get(n);let r=ig.test(e),i=tg(r?kg:Og,e);if(!i)throw new _g({param:e});if(i.name&&Fg(i.name))throw new vg({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=Mg(i.type),t=[],n=e.length;for(let r=0;r<n;r++)t.push(jg(e[r],{structs:s}));l={components:t}}else if(i.type in s)c=`tuple`,l={components:s[i.type]};else if(Ag.test(i.type))c=`${i.type}256`;else if(i.type===`address payable`)c=`address`;else if(c=i.type,t?.type!==`struct`&&!Ng(c))throw new hg({type:c});if(i.modifier){if(!t?.modifiers?.has?.(i.modifier))throw new yg({param:e,type:t?.type,modifier:i.modifier});if(pg.has(i.modifier)&&!Ig(c,!!i.array))throw new bg({param:e,type:t?.type,modifier:i.modifier})}let u={type:`${c}${i.array??``}`,...a,...o,...l};return Dg.set(n,u),u}function Mg(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?Mg(o,[...t,n.trim()]):Mg(o,t,`${n}${i}`,r);case`(`:return Mg(o,t,`${n}${i}`,r+1);case`)`:return Mg(o,t,`${n}${i}`,r-1);default:return Mg(o,t,`${n}${i}`,r)}}if(n===``)return t;if(r!==0)throw new Tg({current:n,depth:r});return t.push(n.trim()),t}function Ng(e){return e===`address`||e===`bool`||e===`function`||e===`string`||ng.test(e)||rg.test(e)}let Pg=/^(?: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 Fg(e){return e===`address`||e===`bool`||e===`function`||e===`string`||e===`tuple`||ng.test(e)||rg.test(e)||Pg.test(e)}function Ig(e,t){return t||e===`bytes`||e===`string`||e===`tuple`}function Lg(e){let t={},n=e.length;for(let r=0;r<n;r++){let n=e[r];if(!ug(n))continue;let i=dg(n);if(!i)throw new Sg({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=jg(t,{type:`struct`});o.push(n)}if(!o.length)throw new Cg({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]=zg(a,t)}return r}let Rg=/^(?<type>[a-zA-Z$_][a-zA-Z0-9$_]*)(?<array>(?:\\[\\d*?\\])+?)?$/;function zg(e=[],t={},n=new Set){let r=[],i=e.length;for(let a=0;a<i;a++){let i=e[a];if(ig.test(i.type))r.push(i);else{let e=tg(Rg,i.type);if(!e?.type)throw new xg({abiParameter:i});let{array:a,type:o}=e;if(o in t){if(n.has(o))throw new wg({type:o});r.push({...i,type:`tuple${a??``}`,components:zg(t[o],t,new Set([...n,o]))})}else if(Ng(o))r.push(i);else throw new mg({type:o})}}return r}function Bg(e){let t=[];if(typeof e==`string`){let n=Mg(e),r=n.length;for(let e=0;e<r;e++)t.push(jg(n[e],{modifiers:fg}))}else{let n=Lg(e),r=e.length;for(let i=0;i<r;i++){let r=e[i];if(ug(r))continue;let a=Mg(r),o=a.length;for(let e=0;e<o;e++)t.push(jg(a[e],{modifiers:fg,structs:n}))}}if(t.length===0)throw new gg({params:e});return t}let Vg={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;Ks(),mi(),$f(),z();function Hg(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=fi(Af(e));return n===`Bytes`?r:I(r)}function Ug(e,t,n={}){let{as:r=typeof t==`string`?`Hex`:`Bytes`}=n,i=Gs(wd,Af(e),Af(t));return r===`Bytes`?i:I(i)}function Wg(e,t={}){let{as:n=typeof e==`string`?`Hex`:`Bytes`}=t,r=wd(Af(e));return n===`Bytes`?r:I(r)}function Gg(e){return pp(e)&&sp(e)===32}$f(),cf(),z(),Df();function Kg(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 $g({prefix:r,cause:new t_});return}if(n===!0||typeof i==`bigint`&&a===void 0){if(r!==3&&r!==2)throw new $g({prefix:r,cause:new e_});return}throw new Qg({publicKey:e})}function qg(e){let t=(()=>{if(pp(e))return Yg(e);if(Gf(e))return Jg(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 Kg(t),t}function Jg(e){return Yg(I(e))}function Yg(e){if(e.length!==132&&e.length!==130&&e.length!==68)throw new n_({publicKey:e});return e.length===130?{prefix:4,x:BigInt(R(e,0,32)),y:BigInt(R(e,32,64))}:e.length===132?{prefix:Number(R(e,0,1)),x:BigInt(R(e,1,33)),y:BigInt(R(e,33,65))}:{prefix:Number(R(e,0,1)),x:BigInt(R(e,1,33))}}function Xg(e,t={}){return Mf(Zg(e,t))}function Zg(e,t={}){Kg(e);let{prefix:n,x:r,y:i}=e,{includePrefix:a=!0}=t;return F(a?L(n,{size:1}):`0x`,L(r,{size:32}),typeof i==`bigint`?L(i,{size:32}):`0x`)}var Qg=class extends P{constructor({publicKey:e}){super(`Value \\`${Tf(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`})}},$g=class extends P{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`})}},e_=class extends P{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`})}},t_=class extends P{constructor(){super(`Prefix must be 4 for uncompressed public keys.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidUncompressedPrefixError`})}},n_=class extends P{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 ${sp(tp(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`PublicKey.InvalidSerializedSizeError`})}};$f(),cf();let r_=/^0x[a-fA-F0-9]{40}$/;function i_(e,t={}){let{strict:n=!0}=t;if(!r_.test(e))throw new u_({address:e,cause:new d_});if(n){if(e.toLowerCase()===e)return;if(a_(e)!==e)throw new u_({address:e,cause:new f_})}}function a_(e){if(Vg.has(e))return Vg.get(e);i_(e,{strict:!1});let t=e.substring(2).toLowerCase(),n=Hg(Nf(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 Vg.set(e,i),i}function o_(e,t={}){let{checksum:n=!1}=t;return i_(e),n?a_(e):e}function s_(e,t={}){return o_(`0x${Hg(`0x${Zg(e).slice(4)}`).substring(26)}`,t)}function c_(e,t){return i_(e,{strict:!1}),i_(t,{strict:!1}),e.toLowerCase()===t.toLowerCase()}function l_(e,t={}){let{strict:n=!0}=t??{};try{return i_(e,{strict:n}),!0}catch{return!1}}var u_=class extends P{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`})}},d_=class extends P{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`})}},f_=class extends P{constructor(){super(`Address does not match its checksum counterpart.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Address.InvalidChecksumError`})}};let p_=/^(.*)\\[([0-9]*)\\]$/,m_=/^bytes([1-9]|1[0-9]|2[0-9]|3[0-2])?$/,h_=/^(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 g_=2n**256n-1n;$f(),cf(),z();function __(e,t,n){let{checksumAddress:r,staticPosition:i}=n,a=F_(t.type);if(a){let[n,o]=a;return y_(e,{...t,type:o},{checksumAddress:r,length:n,staticPosition:i})}if(t.type===`tuple`)return C_(e,t,{checksumAddress:r,staticPosition:i});if(t.type===`address`)return v_(e,{checksum:r});if(t.type===`bool`)return b_(e);if(t.type.startsWith(`bytes`))return x_(e,t,{staticPosition:i});if(t.type.startsWith(`uint`)||t.type.startsWith(`int`))return S_(e,t);if(t.type===`string`)return w_(e,{staticPosition:i});throw new Q_(t.type)}function v_(e,t={}){let{checksum:n=!1}=t;return[(e=>n?a_(e):e)(I(Rf(e.readBytes(32),-20))),32]}function y_(e,t,n){let{checksumAddress:r,length:i,staticPosition:a}=n;if(!i){let n=a+Vf(e.readBytes(32)),i=n+32;e.setPosition(n);let o=Vf(e.readBytes(32)),s=I_(t),c=0,l=[];for(let n=0;n<o;++n){e.setPosition(i+(s?n*32:c));let[a,o]=__(e,t,{checksumAddress:r,staticPosition:i});c+=o,l.push(a)}return e.setPosition(a+32),[l,32]}if(I_(t)){let n=a+Vf(e.readBytes(32)),o=[];for(let a=0;a<i;++a){e.setPosition(n+a*32);let[i]=__(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]=__(e,t,{checksumAddress:r,staticPosition:a+o});o+=i,s.push(n)}return[s,o]}function b_(e){return[Bf(e.readBytes(32),{size:32}),32]}function x_(e,t,{staticPosition:n}){let[r,i]=t.type.split(`bytes`);if(!i){let t=Vf(e.readBytes(32));e.setPosition(n+t);let r=Vf(e.readBytes(32));if(r===0)return e.setPosition(n+32),[`0x`,32];let i=e.readBytes(r);return e.setPosition(n+32),[I(i),32]}return[I(e.readBytes(Number.parseInt(i,10),32)),32]}function S_(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?zf(i,{signed:n}):Vf(i,{signed:n}),32]}function C_(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(I_(t)){let n=i+Vf(e.readBytes(32));for(let i=0;i<t.components.length;++i){let c=t.components[i];e.setPosition(n+s);let[l,u]=__(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]=__(e,c,{checksumAddress:r,staticPosition:i});o[a?n:c?.name]=l,s+=u}return[o,s]}function w_(e,{staticPosition:t}){let n=t+Vf(e.readBytes(32));e.setPosition(n);let r=Vf(e.readBytes(32));if(r===0)return e.setPosition(t+32),[``,32];let i=Hf(Uf(e.readBytes(r,32)));return e.setPosition(t+32),[i,32]}function T_({checksumAddress:e,parameters:t,values:n}){let r=[];for(let i=0;i<t.length;i++)r.push(E_({checksumAddress:e,parameter:t[i],value:n[i]}));return r}function E_({checksumAddress:e=!1,parameter:t,value:n}){let r=t,i=F_(r.type);if(i){let[t,a]=i;return k_(n,{checksumAddress:e,length:t,parameter:{...r,type:a}})}if(r.type===`tuple`)return P_(n,{checksumAddress:e,parameter:r});if(r.type===`address`)return O_(n,{checksum:e});if(r.type===`bool`)return j_(n);if(r.type.startsWith(`uint`)||r.type.startsWith(`int`)){let e=r.type.startsWith(`int`),[,,t=`256`]=h_.exec(r.type)??[];return M_(n,{signed:e,size:Number(t)})}if(r.type.startsWith(`bytes`))return A_(n,{type:r.type});if(r.type===`string`)return N_(n);throw new Q_(r.type)}function D_(e){let t=0;for(let n=0;n<e.length;n++){let{dynamic:r,encoded:i}=e[n];r?t+=32:t+=sp(i)}let n=[],r=[],i=0;for(let a=0;a<e.length;a++){let{dynamic:o,encoded:s}=e[a];o?(n.push(L(t+i,{size:32})),r.push(s),i+=sp(s)):n.push(s)}return F(...n,...r)}function O_(e,t){let{checksum:n=!1}=t;return i_(e,{strict:n}),{dynamic:!1,encoded:ip(e.toLowerCase())}}function k_(e,t){let{checksumAddress:n,length:r,parameter:i}=t,a=r===null;if(!Array.isArray(e))throw new Z_(e);if(!a&&e.length!==r)throw new J_({expectedLength:r,givenLength:e.length,type:`${i.type}[${r}]`});let o=!1,s=[];for(let t=0;t<e.length;t++){let r=E_({checksumAddress:n,parameter:i,value:e[t]});r.dynamic&&(o=!0),s.push(r)}if(a||o){let e=D_(s);if(a){let t=L(s.length,{size:32});return{dynamic:!0,encoded:s.length>0?F(t,e):t}}if(o)return{dynamic:!0,encoded:e}}return{dynamic:!1,encoded:F(...s.map(({encoded:e})=>e))}}function A_(e,{type:t}){let[,n]=t.split(`bytes`),r=sp(e);if(!n){let t=e;return r%32!=0&&(t=ap(t,Math.ceil((e.length-2)/2/32)*32)),{dynamic:!0,encoded:F(ip(L(r,{size:32})),t)}}if(r!==Number.parseInt(n,10))throw new Y_({expectedSize:Number.parseInt(n,10),value:e});return{dynamic:!1,encoded:ap(e)}}function j_(e){if(typeof e!=`boolean`)throw new P(`Invalid boolean value: \"${e}\" (type: ${typeof e}). Expected: \\`true\\` or \\`false\\`.`);return{dynamic:!1,encoded:ip(np(e))}}function M_(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 gp({max:r.toString(),min:i.toString(),signed:t,size:n/8,value:e.toString()})}return{dynamic:!1,encoded:L(e,{size:32,signed:t})}}function N_(e){let t=rp(e),n=Math.ceil(sp(t)/32),r=[];for(let e=0;e<n;e++)r.push(ap(R(t,e*32,(e+1)*32)));return{dynamic:!0,encoded:F(ap(L(sp(t),{size:32})),...r)}}function P_(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=E_({checksumAddress:n,parameter:o,value:e[Array.isArray(e)?t:o.name]});a.push(s),s.dynamic&&(i=!0)}return{dynamic:i,encoded:i?D_(a):F(...a.map(({encoded:e})=>e))}}function F_(e){let t=e.match(/^(.*)\\[(\\d+)?\\]$/);return t?[t[2]?Number(t[2]):null,t[1]]:void 0}function I_(e){let{type:t}=e;if(t===`string`||t===`bytes`||t.endsWith(`[]`))return!0;if(t===`tuple`)return e.components?.some(I_);let n=F_(e.type);return!!(n&&I_({...e,type:n[1]}))}cf();let L_={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 V_({count:this.recursiveReadCount+1,limit:this.recursiveReadLimit})},assertPosition(e){if(e<0||e>this.bytes.length-1)throw new B_({length:this.bytes.length,position:e})},decrementPosition(e){if(e<0)throw new z_({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 z_({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 R_(e,{recursiveReadLimit:t=8192}={}){let n=Object.create(L_);return n.bytes=e,n.dataView=new DataView(e.buffer,e.byteOffset,e.byteLength),n.positionReadCount=new Map,n.recursiveReadLimit=t,n}var z_=class extends P{constructor({offset:e}){super(`Offset \\`${e}\\` cannot be negative.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cursor.NegativeOffsetError`})}},B_=class extends P{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`})}},V_=class extends P{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`})}};$f(),cf(),z();function H_(e,t,n={}){let{as:r=`Array`,checksumAddress:i=!1}=n,a=typeof t==`string`?Mf(t):t,o=R_(a);if(Lf(a)===0&&e.length>0)throw new q_;if(Lf(a)&&Lf(a)<32)throw new K_({data:typeof t==`string`?t:I(t),parameters:e,size:Lf(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]=__(o,n,{checksumAddress:i,staticPosition:0});s+=l,r===`Array`?c.push(a):c[n.name??t]=a}return c}function U_(e,t,n){let{checksumAddress:r=!1}=n??{};if(e.length!==t.length)throw new X_({expectedLength:e.length,givenLength:t.length});let i=D_(T_({checksumAddress:r,parameters:e,values:t}));return i.length===0?`0x`:i}function W_(e,t){if(e.length!==t.length)throw new X_({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(W_.encode(i,a))}return F(...n)}(function(e){function t(e,n,r=!1){if(e===`address`){let e=n;return i_(e),ip(e.toLowerCase(),r?32:0)}if(e===`string`)return rp(n);if(e===`bytes`)return n;if(e===`bool`)return ip(np(n),r?32:1);let i=e.match(h_);if(i){let[e,t,a=`256`]=i,o=Number.parseInt(a,10)/8;return L(n,{size:r?32:o,signed:t===`int`})}let a=e.match(m_);if(a){let[e,t]=a;if(Number.parseInt(t,10)!==(n.length-2)/2)throw new Y_({expectedSize:Number.parseInt(t,10),value:n});return ap(n,r?32:0)}let o=e.match(p_);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`:F(...i)}throw new Q_(e)}e.encode=t})(W_||={});function G_(e){return Array.isArray(e)&&typeof e[0]==`string`||typeof e==`string`?Bg(e):e}var K_=class extends P{constructor({data:e,parameters:t,size:n}){super(`Data size of ${n} bytes is too small for given parameters.`,{metaMessages:[`Params: (${sg(t)})`,`Data: ${e} (${n} bytes)`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.DataSizeTooSmallError`})}},q_=class extends P{constructor(){super(`Cannot decode zero data (\"0x\") with ABI parameters.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.ZeroDataError`})}},J_=class extends P{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`})}},Y_=class extends P{constructor({expectedSize:e,value:t}){super(`Size of bytes \"${t}\" (bytes${sp(t)}) does not match expected size (bytes${e}).`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.BytesSizeMismatchError`})}},X_=class extends P{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`})}},Z_=class extends P{constructor(e){super(`Value \\`${e}\\` is not a valid array.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidArrayError`})}},Q_=class extends P{constructor(e){super(`Type \\`${e}\\` is not a valid ABI Type.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AbiParameters.InvalidTypeError`})}};$f(),cf(),z();function $_(e){return ev(e,`Hex`)}function ev(e,t){let n=t??(typeof e==`string`?`Hex`:`Bytes`);return tv(R_((()=>{if(typeof e==`string`){if(e.length>3&&e.length%2!=0)throw new yp(e);return Mf(e)}return e})(),{recursiveReadLimit:1/0}),n)}function tv(e,t=`Hex`){if(e.bytes.length===0)return t===`Hex`?I(e.bytes):e.bytes;let n=e.readByte();if(n<128&&e.decrementPosition(1),n<192){let r=nv(e,n,128),i=e.readBytes(r);return t===`Hex`?I(i):i}return rv(e,nv(e,n,192),t)}function nv(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 P(`Invalid RLP prefix`)}function rv(e,t,n){let r=e.position,i=[];for(;e.position-r<t;)i.push(tv(e,n));return i}function iv(e,t){let{as:n}=t,r=ov(e),i=R_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?I(i.bytes):i.bytes}function av(e,t={}){let{as:n=`Hex`}=t;return iv(e,{as:n})}function ov(e){return Array.isArray(e)?sv(e.map(e=>ov(e))):cv(e)}function sv(e){let t=e.reduce((e,t)=>e+t.length,0),n=lv(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 cv(e){let t=typeof e==`string`?Mf(e):e,n=lv(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 lv(e){if(e<=255)return 1;if(e<=65535)return 2;if(e<=16777215)return 3;if(e<=4294967295)return 4;throw new P(`Length is too large.`)}cf(),z(),Df();function uv(e,t={}){let{recovered:n}=t;if(e.r===void 0||e.s===void 0||n&&e.yParity===void 0)throw new wv({signature:e});if(e.r<0n||e.r>g_)throw new Tv({value:e.r});if(e.s<0n||e.s>g_)throw new Ev({value:e.s});if(typeof e.yParity==`number`&&e.yParity!==0&&e.yParity!==1)throw new Dv({value:e.yParity})}function dv(e){return fv(I(e))}function fv(e){if(e.length!==130&&e.length!==132)throw new Cv({signature:e});let t=BigInt(R(e,0,32)),n=BigInt(R(e,32,64)),r=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return xv(t)}catch{throw new Dv({value:t})}})();return r===void 0?{r:t,s:n}:{r:t,s:n,yParity:r}}function pv(e){if(e.r!==void 0&&e.s!==void 0)return mv(e)}function mv(e){let t=typeof e==`string`?fv(e):e instanceof Uint8Array?dv(e):typeof e.r==`string`?gv(e):e.v?hv(e):{r:e.r,s:e.s,...e.yParity===void 0?{}:{yParity:e.yParity}};return uv(t),t}function hv(e){return{r:e.r,s:e.s,yParity:xv(e.v)}}function gv(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=xv(t)),typeof n!=`number`)throw new Dv({value:e.yParity});return n})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function _v(e){let[t,n,r]=e;return mv({r:n===`0x`?0n:BigInt(n),s:r===`0x`?0n:BigInt(r),yParity:t===`0x`?0:Number(t)})}function vv(e){uv(e);let t=e.r,n=e.s;return F(L(t,{size:32}),L(n,{size:32}),typeof e.yParity==`number`?L(Sv(e.yParity),{size:1}):`0x`)}function yv(e){let{r:t,s:n,yParity:r}=e;return{r:L(t,{size:32}),s:L(n,{size:32}),yParity:r===0?`0x0`:`0x1`}}function bv(e){let{r:t,s:n,yParity:r}=e;return[r?`0x01`:`0x`,t===0n?`0x`:cp(L(t)),n===0n?`0x`:cp(L(n))]}function xv(e){if(e===0||e===27)return 0;if(e===1||e===28)return 1;if(e>=35)return+(e%2==0);throw new Ov({value:e})}function Sv(e){if(e===0)return 27;if(e===1)return 28;throw new Dv({value:e})}var Cv=class extends P{constructor({signature:e}){super(`Value \\`${e}\\` is an invalid signature size.`,{metaMessages:[`Expected: 64 bytes or 65 bytes.`,`Received ${sp(tp(e))} bytes.`]}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.InvalidSerializedSizeError`})}},wv=class extends P{constructor({signature:e}){super(`Signature \\`${Tf(e)}\\` is missing either an \\`r\\`, \\`s\\`, or \\`yParity\\` property.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Signature.MissingPropertiesError`})}},Tv=class extends P{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`})}},Ev=class extends P{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`})}},Dv=class extends P{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`})}},Ov=class extends P{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`})}};z();function kv(e,t={}){return typeof e.chainId==`string`?Av(e):{...e,...t.signature}}function Av(e){let{address:t,chainId:n,nonce:r}=e,i=pv(e);return{address:t,chainId:Number(n),nonce:BigInt(r),...i}}function jv(e){return e.map(Av)}function Mv(e){let{address:t,chainId:n,nonce:r,...i}=e;return{address:t,chainId:L(n),nonce:L(r),...yv(i)}}function Nv(e){return e.map(Mv)}_u(),$f(),z();function Pv(e){let{privateKey:t}=e;return qg(nu.ProjectivePoint.fromPrivateKey(tp(t).slice(2)))}function Fv(e){return s_(Iv(e))}function Iv(e){let{payload:t,signature:n}=e,{r,s:i,yParity:a}=n;return qg(new nu.Signature(BigInt(r),BigInt(i)).addRecoveryBit(a).recoverPublicKey(tp(t).substring(2)))}function Lv(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=nu.sign(Af(r),Af(i),{extraEntropy:typeof t==`boolean`?t:tp(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Rv(e){let{address:t,hash:n,payload:r,publicKey:i,signature:a}=e;return t?c_(t,Fv({payload:r,signature:a})):nu.verify(a,Af(r),Xg(i),...n?[{prehash:!0,lowS:!0}]:[])}cf(),z();let zv=G_(`(uint256 chainId, address delegation, uint256 nonce, uint8 yParity, uint256 r, uint256 s), address to, bytes data`);function Bv(e){if(typeof e==`string`){if(R(e,-32)!==`0x8010801080108010801080108010801080108010801080108010801080108010`)throw new Uv(e)}else uv(e.authorization)}function Vv(e){Bv(e);let t=dp(R(e,-64,-32)),n=R(e,-t-64,-64),r=R(e,0,-t-64),[i,a,o]=H_(zv,n);return{authorization:kv({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 Hv(e){try{return Bv(e),!0}catch{return!1}}var Uv=class extends P{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`})}};Oo(),Yi(),Vn();function Wv(e){let t=Ji(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`&&Bn(t)>=192)return`legacy`;throw new wo({serializedType:t})}ki(),Oo(),zi(),Wt(),kn(),Ln(),Vn();function Gv(e){let t=Wv(e);return t===`eip1559`?Jv(e):t===`eip2930`?Yv(e):t===`eip4844`?qv(e):t===`eip7702`?Kv(e):Xv(e)}function Kv(e){let t=Zv(e),[n,r,i,a,o,s,c,l,u,d,f,p,m]=t;if(t.length!==10&&t.length!==13)throw new To({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:Bn(n),type:`eip7702`};return D(s)&&s!==`0x`&&(h.to=s),D(o)&&o!==`0x`&&(h.gas=A(o)),D(l)&&l!==`0x`&&(h.data=l),D(r)&&(h.nonce=r===`0x`?0:Bn(r)),D(c)&&c!==`0x`&&(h.value=A(c)),D(a)&&a!==`0x`&&(h.maxFeePerGas=A(a)),D(i)&&i!==`0x`&&(h.maxPriorityFeePerGas=A(i)),u.length!==0&&u!==`0x`&&(h.accessList=Qv(u)),d.length!==0&&d!==`0x`&&(h.authorizationList=$v(d)),oh(h),{...t.length===13?ey(t):void 0,...h}}function qv(e){let t=Zv(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 To({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:Bn(a),to:u,type:`eip4844`};return D(l)&&l!==`0x`&&(S.gas=A(l)),D(f)&&f!==`0x`&&(S.data=f),D(o)&&(S.nonce=o===`0x`?0:Bn(o)),D(d)&&d!==`0x`&&(S.value=A(d)),D(m)&&m!==`0x`&&(S.maxFeePerBlobGas=A(m)),D(c)&&c!==`0x`&&(S.maxFeePerGas=A(c)),D(s)&&s!==`0x`&&(S.maxPriorityFeePerGas=A(s)),p.length!==0&&p!==`0x`&&(S.accessList=Qv(p)),y&&b&&x&&(S.sidecars=Fd({blobs:y,commitments:b,proofs:x})),sh(S),{...r.length===14?ey(r):void 0,...S}}function Jv(e){let t=Zv(e),[n,r,i,a,o,s,c,l,u,d,f,p]=t;if(!(t.length===9||t.length===12))throw new To({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:Bn(n),type:`eip1559`};return D(s)&&s!==`0x`&&(m.to=s),D(o)&&o!==`0x`&&(m.gas=A(o)),D(l)&&l!==`0x`&&(m.data=l),D(r)&&(m.nonce=r===`0x`?0:Bn(r)),D(c)&&c!==`0x`&&(m.value=A(c)),D(a)&&a!==`0x`&&(m.maxFeePerGas=A(a)),D(i)&&i!==`0x`&&(m.maxPriorityFeePerGas=A(i)),u.length!==0&&u!==`0x`&&(m.accessList=Qv(u)),ch(m),{...t.length===12?ey(t):void 0,...m}}function Yv(e){let t=Zv(e),[n,r,i,a,o,s,c,l,u,d,f]=t;if(!(t.length===8||t.length===11))throw new To({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:Bn(n),type:`eip2930`};return D(o)&&o!==`0x`&&(p.to=o),D(a)&&a!==`0x`&&(p.gas=A(a)),D(c)&&c!==`0x`&&(p.data=c),D(r)&&(p.nonce=r===`0x`?0:Bn(r)),D(s)&&s!==`0x`&&(p.value=A(s)),D(i)&&i!==`0x`&&(p.gasPrice=A(i)),l.length!==0&&l!==`0x`&&(p.accessList=Qv(l)),lh(p),{...t.length===11?ey(t):void 0,...p}}function Xv(e){let t=Dh(e,`hex`),[n,r,i,a,o,s,c,l,u]=t;if(!(t.length===6||t.length===9))throw new To({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(D(a)&&a!==`0x`&&(d.to=a),D(i)&&i!==`0x`&&(d.gas=A(i)),D(s)&&s!==`0x`&&(d.data=s),D(n)&&(d.nonce=n===`0x`?0:Bn(n)),D(o)&&o!==`0x`&&(d.value=A(o)),D(r)&&r!==`0x`&&(d.gasPrice=A(r)),uh(d),t.length===6)return d;let f=D(c)&&c!==`0x`?A(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 So({v:p});return d.v=p,d.s=u,d.r=l,d.yParity=+(p%2n==0n),d}function Zv(e){return Dh(`0x${e.slice(4)}`,`hex`)}function Qv(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];if(!Ii(r,{strict:!1}))throw new Oi({address:r});t.push({address:r,storageKeys:i.map(e=>jh(e)?e:In(e))})}return t}function $v(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:Bn(r),nonce:a===`0x`?0:Bn(a),...ey([o,s,c])})}return t}function ey(e){let t=e.slice(-3),n=t[0]===`0x`||A(t[0])===0n?27n:28n;return{r:Dn(t[1],{size:32}),s:Dn(t[2],{size:32}),v:n,yParity:n===27n?0:1}}k();var ty=class extends O{constructor({value:e}){super(`Number \\`${e}\\` is not a valid decimal number.`,{name:`InvalidDecimalNumberError`})}};function ny(e,t){if(!/^(-?)([0-9]*)\\.?([0-9]*)$/.test(e))throw new ty({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}`)}Mp(),Rp(),xn(),k(),Ro(),tf(),wa(),Yp();async function ry(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 Jp({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=Ca({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=bs(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=>E(e,jm,`readContract`)({...f===null?{code:Lp}:{address:f},abi:Dp,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 en;if(!a)throw new Lo({data:r});let e=$d({abi:s,args:d,data:r,functionName:u});_.push(i?{result:e,status:`success`}:e)}catch(e){let t=bs(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 O(`multicall results mismatch`);return _}cf();function iy(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 P(`Unable to normalize signature.`);return i}function ay(e,t){let n=typeof e,r=t.type;switch(r){case`address`:return l_(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)=>ay(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=>ay(e,{...t,type:r.replace(/(\\[[0-9]{0,}\\])$/,``)})):!1}}function oy(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 oy(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`))&&l_(n[r],{strict:!1}))return o}}cf(),z();function sy(e,t,n){let{args:r=[],prepare:i=!0}=n??{},a=pp(t,{strict:!1}),o=e.filter(e=>a?e.type===`function`||e.type===`error`?cy(e)===R(t,0,4):e.type===`event`?uy(e)===t:!1:`name`in e&&e.name===t);if(o.length===0)throw new fy({name:t});if(o.length===1)return{...o[0],...i?{hash:uy(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:uy(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?ay(t,r):!1})){if(s&&`inputs`in s&&s.inputs){let t=oy(e.inputs,s.inputs,r);if(t)throw new dy({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 fy({name:t});return{...c,...i?{hash:uy(c)}:{}}}function cy(...e){return R(uy((()=>{if(Array.isArray(e[0])){let[t,n]=e;return sy(t,n)}return e[0]})()),0,4)}function ly(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return sy(t,n)}return e[0]})();return iy(typeof t==`string`?t:cg(t))}function uy(...e){let t=(()=>{if(Array.isArray(e[0])){let[t,n]=e;return sy(t,n)}return e[0]})();return typeof t!=`string`&&`hash`in t&&t.hash?t.hash:Hg(rp(ly(t)))}var dy=class extends P{constructor(e,t){super(`Found ambiguous types in overloaded ABI Items.`,{metaMessages:[`\\`${e.type}\\` in \\`${iy(cg(e.abiItem))}\\`, and`,`\\`${t.type}\\` in \\`${iy(cg(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`})}},fy=class extends P{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`})}};function py(e){return cy(e)}cf(),z();function my(e){if(R(e,-32)!==`0x6492649264926492649264926492649264926492649264926492649264926492`)throw new _y(e)}function hy(e){let{data:t,signature:n,to:r}=e;return F(U_(G_(`address, bytes, bytes`),[r,t,n]),`0x6492649264926492649264926492649264926492649264926492649264926492`)}function gy(e){try{return my(e),!0}catch{return!1}}var _y=class extends P{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`})}};_u(),Vn(),nr();function vy({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 nu.Signature(A(e),A(t)).toCompactHex()}${a===0?`1b`:`1c`}`;return n===`hex`?o:Zn(o)}Mp(),Rp(),Ro(),qp(),wa(),Fi(),Kd(),Ui(),Wt(),Vn(),M(),Am();async function yy(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 D(e)?e:typeof e==`object`&&`r`in e&&`s`in e?vy(e):Wn(e)})();try{if(s===`eoa`)try{if(Gd(Ni(n),await bu({hash:i,signature:c})))return!0}catch{}return Hv(c)?await by(e,{...t,multicallAddress:o,signature:c}):await xy(e,{...t,verifierAddress:a,signature:c})}catch(e){if(s!==`eoa`)try{if(Gd(Ni(n),await bu({hash:i,signature:c})))return!0}catch{}if(e instanceof Cy)return!1;throw e}}async function by(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,multicallAddress:o}=t,{authorization:s,data:c,signature:l,to:u}=Vv(t.signature);if(await ah(e,{address:n,blockNumber:r,blockTag:i})===Hi([`0xef0100`,s.address]))return await Sy(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:j(s.r,{size:32}),s:j(s.s,{size:32}),yParity:s.yParity};if(!await bh({address:n,authorization:d}))throw new Cy;let f=await E(e,jm,`readContract`)({...o?{address:o}:{code:Lp},authorizationList:[d],abi:Dp,blockNumber:r,blockTag:`pending`,functionName:`aggregate3`,args:[[...c?[{allowFailure:!0,target:u??n,callData:c}]:[],{allowFailure:!0,target:n,callData:Ca({abi:Ap,functionName:`isValidSignature`,args:[a,l]})}]]});if((f[f.length-1]?.returnData)?.startsWith(`0x1626ba7e`))return!0;throw new Cy}async function xy(e,t){let{address:n,factory:r,factoryData:i,hash:a,signature:o,verifierAddress:s,...c}=t,l=await(async()=>!r&&!i||gy(o)?o:hy({data:i,signature:o,to:r}))(),u=s?{to:s,data:Ca({abi:jp,functionName:`isValidSig`,args:[n,a,l]}),...c}:{data:Gp({abi:jp,args:[n,a,l],bytecode:Ip}),...c},{data:d}=await E(e,wm,`call`)(u).catch(e=>{throw e instanceof Mo?new Cy:e});if(zn(d??`0x0`))return!0;throw new Cy}async function Sy(e,t){let{address:n,blockNumber:r,blockTag:i,hash:a,signature:o}=t;if((await E(e,jm,`readContract`)({address:n,abi:Ap,args:[a,o],blockNumber:r,blockTag:i,functionName:`isValidSignature`}).catch(e=>{throw e instanceof No?new Cy:e})).startsWith(`0x1626ba7e`))return!0;throw new Cy}var Cy=class extends Error{};async function wy(e,t){let{chain:n=e.chain}=t,r=t.timeout??Math.max((n?.blockTime??0)*3,5e3),i=await E(e,Zm,`sendCalls`)(t);return await E(e,$m,`waitForCallsStatus`)({...t,id:i.id,timeout:r})}ya(),M(),$u(),sd();async function Ty(e,t){let{account:n=e.account,chain:r=e.chain,...i}=t;if(!n)throw new Rm({docsPath:`/docs/actions/wallet/signTransaction`});let a=va(n);od({account:a,...t});let o=await E(e,Rd,`getChainId`)({});r!==null&&Bm({currentChainId:o,chain:r});let s=(r?.formatters||e.chain?.formatters)?.transactionRequest?.format||Yu;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:j(o),from:a.address}]},{retryCount:0})}ya();async function Ey(e,t){let{account:n=e.account,domain:r,message:i,primaryType:a}=t;if(!n)throw new Rm({docsPath:`/docs/actions/wallet/signTypedData`});let o=va(n),s={EIP712Domain:Wh({domain:r}),...t.types};if(Uh({domain:r,message:i,primaryType:a,types:s}),o.signTypedData)return o.signTypedData({domain:r,message:i,primaryType:a,types:s});let c=Hh({domain:r,message:i,primaryType:a,types:s});return e.request({method:`eth_signTypedData_v4`,params:[o.address,c]},{retryCount:0})}function Dy({key:e,methods:t,name:n,request:r,retryCount:i=3,retryDelay:a=150,timeout:o,type:s},c){let l=rh();return{config:{key:e,methods:t,name:n,request:r,retryCount:i,retryDelay:a,timeout:o,type:s},request:Ch(r,{methods:t,retryCount:i,retryDelay:a,uid:l}),value:c}}function Oy(e,t={}){let{key:n=`custom`,methods:r,name:i=`Custom Provider`,retryDelay:a}=t;return({retryCount:o})=>Dy({key:n,methods:r,name:i,request:e.request.bind(e),retryCount:t.retryCount??o,retryDelay:a,type:`custom`})}k();var ky=class extends O{constructor(){super(`No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.`,{docsPath:`/docs/clients/intro`,name:`UrlRequiredError`})}};Ho(),nm();function Ay(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 ky;let b=Fh(y,{fetchFn:r,fetchOptions:i,onRequest:c,onResponse:l,timeout:v});return Dy({key:a,methods:o,name:s,async request({method:e,params:t}){let r={method:e,params:t},{schedule:i}=em({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 Bo({body:r,error:a,url:y});return o},retryCount:_,retryDelay:u,timeout:v,type:`http`},{fetchOptions:i,url:y})}}Us(),kl(),zl(),Xc(),El();let jy=Rc(BigInt(`0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff`)),My=jy.create(BigInt(`-3`)),Ny=BigInt(`0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b`),Py=Ol({a:My,b:Ny,Fp:jy,n:BigInt(`0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551`),Gx:BigInt(`0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296`),Gy:BigInt(`0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5`),h:BigInt(1),lowS:!1},Bs),Fy=Py,Iy=yl(jy,{A:My,B:Ny,Z:jy.create(BigInt(`-10`))}),Ly=Ll(Fy.ProjectivePoint,e=>Iy(e[0]),{DST:`P256_XMD:SHA-256_SSWU_RO_`,encodeDST:`P256_XMD:SHA-256_SSWU_NU_`,p:jy.ORDER,m:1,k:128,expand:`xmd`,hash:Bs}),Ry=Rc(BigInt(`0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff`)),zy=Ry.create(BigInt(`-3`)),By=BigInt(`0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef`),Vy=Ol({a:zy,b:By,Fp:Ry,n:BigInt(`0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973`),Gx:BigInt(`0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7`),Gy:BigInt(`0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f`),h:BigInt(1),lowS:!1},Hs),Hy=yl(Ry,{A:zy,B:By,Z:Ry.create(BigInt(`-12`))});Ll(Vy.ProjectivePoint,e=>Hy(e[0]),{DST:`P384_XMD:SHA-384_SSWU_RO_`,encodeDST:`P384_XMD:SHA-384_SSWU_NU_`,p:Ry.ORDER,m:1,k:192,expand:`xmd`,hash:Hs});let Uy=Rc(BigInt(`0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff`)),Wy=Uy.create(BigInt(`-3`)),Gy=BigInt(`0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00`),Ky=Ol({a:Wy,b:Gy,Fp:Uy,n:BigInt(`0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409`),Gx:BigInt(`0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66`),Gy:BigInt(`0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650`),h:BigInt(1),lowS:!1,allowedPrivateKeyLengths:[130,131,132]},Vs),qy=yl(Uy,{A:Wy,B:Gy,Z:Uy.create(BigInt(`-4`))});Ll(Ky.ProjectivePoint,e=>qy(e[0]),{DST:`P521_XMD:SHA-512_SSWU_RO_`,encodeDST:`P521_XMD:SHA-512_SSWU_NU_`,p:Uy.ORDER,m:1,k:256,expand:`xmd`,hash:Vs});let Jy=Py,Yy=Py;Ly.hashToCurve,Ly.encodeToCurve,$f(),z();function Xy(e){let{privateKey:t}=e;return qg(Yy.ProjectivePoint.fromPrivateKey(typeof t==`string`?t.slice(2):I(t).slice(2)))}function Zy(e){let{extraEntropy:t=!1,hash:n,payload:r,privateKey:i}=e,{r:a,s:o,recovery:s}=Yy.sign(r instanceof Uint8Array?r:Mf(r),i instanceof Uint8Array?i:Mf(i),{extraEntropy:typeof t==`boolean`?t:tp(t).slice(2),lowS:!0,...n?{prehash:!0}:{}});return{r:a,s:o,yParity:s}}function Qy(e){let{hash:t,payload:n,publicKey:r,signature:i}=e;return Yy.verify(i,n instanceof Uint8Array?n:Mf(n),Zg(r).substring(2),{lowS:!0,...t?{prehash:!0}:{}})}$f();let $y=new TextEncoder,eb=new TextDecoder,tb=Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[t,e.charCodeAt(0)])),nb={...Object.fromEntries(Array.from(`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`).map((e,t)=>[e.charCodeAt(0),t])),61:0,45:62,95:63};function rb(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]=tb[r>>18],i[t+1]=tb[r>>12&63],i[t+2]=tb[r>>6&63],i[t+3]=tb[r&63]}let a=e.length%3,o=Math.floor(e.length/3)*4+(a&&a+1),s=eb.decode(new Uint8Array(i.buffer,0,o));return n&&a===1&&(s+=`==`),n&&a===2&&(s+=`=`),r&&(s=s.replaceAll(`+`,`-`).replaceAll(`/`,`_`)),s}function ib(e,t={}){return rb(Mf(e),t)}function ab(e,t={}){return rb(Nf(e),t)}function ob(e){let t=e.replace(/=+$/,``),n=t.length,r=new Uint8Array(n+3);$y.encodeInto(t+`===`,r);for(let e=0,n=0;e<t.length;e+=4,n+=3){let t=(nb[r[e]]<<18)+(nb[r[e+1]]<<12)+(nb[r[e+2]]<<6)+nb[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 sb(e){return Hf(ob(e))}$f(),cf(),z();function cb(e,t={}){let{as:n=`Hex`}=t,r=Sb(e),i=R_(new Uint8Array(r.length));return r.encode(i),n===`Hex`?I(i.bytes):i.bytes}var lb=class extends P{constructor({majorType:e}){super(`Invalid CBOR major type: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidMajorTypeError`})}},ub=class extends P{constructor({additionalInfo:e}){super(`Invalid CBOR additional info: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidAdditionalInfoError`})}},db=class extends P{constructor(){super(`64-bit integers are not supported in CBOR decoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.Unsupported64BitIntegerError`})}},fb=class extends P{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`})}},pb=class extends P{constructor({type:e}){super(`Invalid chunk type in indefinite-length ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidIndefiniteLengthChunkError`})}},mb=class extends P{constructor({value:e}){super(`Invalid CBOR simple value: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.InvalidSimpleValueError`})}},hb=class extends P{constructor(){super(`BigInt values are not supported in CBOR encoding.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnsupportedBigIntError`})}},gb=class extends P{constructor({token:e}){super(`Unexpected token: ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.UnexpectedTokenError`})}},_b=class extends P{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`})}},vb=class extends P{constructor({size:e}){super(`String length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.StringTooLargeError`})}},yb=class extends P{constructor({size:e}){super(`Array length exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ArrayTooLargeError`})}},bb=class extends P{constructor({size:e}){super(`Object size exceeds maximum (4294967295): ${e}`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Cbor.ObjectTooLargeError`})}},xb=class extends P{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 Sb(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 Sb.number(e);if(typeof e==`bigint`)throw new hb;if(typeof e==`string`)return Sb.string(e);if(Array.isArray(e))return Sb.array(e);if(e instanceof Uint8Array)return Sb.byteString(e);if(e instanceof ArrayBuffer)return Sb.byteString(new Uint8Array(e));if(ArrayBuffer.isView(e))return Sb.byteString(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));if(e instanceof Map)return Sb.map(e);if(typeof e==`object`)return Sb.object(e);throw new gb({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 _b({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 _b({number:e.toString(10)})}e.number=t;function n(e){let t=Nf(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 vb({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 yb({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 xb({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 bb({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 bb({size:i})}e.map=o})(Sb||={});function Cb(e){let t=e.readUint8(),n=t>>5,r=t&31;switch(n){case 0:return Cb.readUnsignedInteger(e,r);case 1:return Cb.readNegativeInteger(e,r);case 2:return Cb.readByteString(e,r);case 3:return Cb.readTextString(e,r);case 4:return Cb.readArray(e,r);case 5:return Cb.readMap(e,r);case 6:throw new fb({tag:r});case 7:return Cb.readSimpleOrFloat(e,r);default:throw new lb({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 db:new ub({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 pb({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 pb({type:`text string`});t.push(r)}return t.join(``)}let i=t(n,r);return Hf(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 mb({value:t});return}throw new ub({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}})(Cb||={}),cf();function wb(e){let t=Xg(e),n=t.slice(1,33),r=t.slice(33,65);return cb(new Map([[1,2],[3,-7],[-1,1],[-2,n],[-3,r]]))}function Tb(e){let t=Jy.Signature.fromDER(e).normalizeS();return{r:t.r,s:t.s}}z();function Eb(e={}){let{credential:t,flag:n=5,rpId:r=window.location.hostname,signCount:i=0}=e,a=F(Wg(rp(r)),L(n,{size:1}),L(i,{size:4}));if(!t)return a;let o=I(new Uint8Array(16)),s=I(t.id);return F(a,o,L(t.id.length,{size:2}),s,wb(t.publicKey))}function Db(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:ib(t,{url:!0,pad:!1}),origin:i,crossOrigin:n,...r})}$f(),cf(),z();function Ob(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:ob(e),type:`public-key`})):[{id:ob(t),type:`public-key`}]}:{},challenge:Mf(n),...r&&{extensions:r},rpId:i,userVerification:a}}}function kb(e){let{challenge:t,crossOrigin:n,extraClientData:r,flag:i,origin:a,rpId:o,signCount:s,userVerification:c=`required`}=e,l=Eb({flag:i,rpId:o,signCount:s}),u=Db({challenge:t,crossOrigin:n,extraClientData:r,origin:a}),d=Wg(rp(u));return{metadata:{authenticatorData:l,clientDataJSON:u,challengeIndex:u.indexOf(`\"challenge\"`),typeIndex:u.indexOf(`\"type\"`),userVerificationRequired:c===`required`},payload:F(l,d)}}async function Ab(e){let{getFn:t=e=>window.navigator.credentials.get(e),...n}=e,r=`publicKey`in n?n:Ob(n);try{let e=await t(r);if(!e)throw new jb;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=Tb(o);return{id:s,metadata:{authenticatorData:I(a),clientDataJSON:c,challengeIndex:l,typeIndex:u,userVerificationRequired:r.publicKey.userVerification===`required`},signature:d,raw:e}}catch(e){throw new jb({cause:e})}}var jb=class extends P{constructor({cause:e}={}){super(`Failed to request credential.`,{cause:e}),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Authentication.SignFailedError`})}};function Mb(e){let{challenge:t,metadata:n,origin:r,publicKey:i,rpId:a,signature:o}=e,{authenticatorData:s,clientDataJSON:c,userVerificationRequired:l}=n,u=Mf(s);if(u.length<37||a!==void 0&&!Pf(u.slice(0,32),Wg(rp(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||I(ob(f.challenge))!==t||r!==void 0&&!(Array.isArray(r)?r:[r]).includes(f.origin)?!1:Qy({hash:!0,payload:kf(u,Wg(Nf(c),{as:`Bytes`})),publicKey:i,signature:o})}let Nb=kb;async function Pb(e){return Ab(e)}function Fb(e){return Mb(e)}cf(),z(),Df();let Ib=`0x01`,Lb=`0x02`,Rb=`0x03`,zb=`0x04`,Bb=`0x7777777777777777777777777777777777777777777777777777777777777777`;function Vb(e){let{signature:t,root:n}=e;return t.type===`keychain`?n?t.userAddress:Vb({...e,signature:t.inner}):s_(Hb(e))}function Hb(e){let{payload:t,signature:n}=e;switch(n.type){case`secp256k1`:return Iv({payload:t,signature:n.signature});case`p256`:case`webAuthn`:return n.publicKey;case`keychain`:return Hb({payload:t,signature:n.inner})}}function Ub(e){let t=e.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)?R(e,0,-sp(Bb)):e;if(sp(t)===65){let e=fv(t);return uv(e),{signature:e,type:`secp256k1`}}let n=R(t,0,1),r=R(t,1),i=sp(r);if(n===Ib){if(i!==129)throw new Zb({reason:`Invalid P256 signature envelope size: expected 129 bytes, got ${i} bytes`,serialized:t});return{publicKey:{prefix:4,x:lp(R(r,64,96)),y:lp(R(r,96,128))},prehash:dp(R(r,128,129))!==0,signature:{r:lp(R(r,0,32)),s:lp(R(r,32,64))},type:`p256`}}if(n===Lb){if(i<128)throw new Zb({reason:`Invalid WebAuthn signature envelope size: expected at least 128 bytes, got ${i} bytes`,serialized:t});let e=i-128,n=R(r,0,e),a,o;for(let t=37;t<e;t++){let e=fp(R(n,t));if(e.startsWith(`{`)&&e.endsWith(`}`))try{JSON.parse(e),a=R(n,0,t),o=e;break}catch{}}if(!a||!o)throw new Zb({reason:`Unable to parse WebAuthn metadata: could not extract valid authenticatorData and clientDataJSON`,serialized:t});return{publicKey:{prefix:4,x:lp(R(r,e+64,e+96)),y:lp(R(r,e+96,e+128))},metadata:{authenticatorData:a,clientDataJSON:o},signature:{r:lp(R(r,e,e+32)),s:lp(R(r,e+32,e+64))},type:`webAuthn`}}if(n===Rb||n===zb)return{userAddress:R(r,0,20),inner:Ub(R(r,20)),type:`keychain`,version:n===zb?`v2`:`v1`};throw new Zb({reason:`Unknown signature type identifier: ${n}. Expected ${Ib} (P256), ${Lb} (WebAuthn), ${Rb} (Keychain V1), or ${zb} (Keychain V2)`,serialized:t})}function Wb(e,t){if(typeof e==`string`)return Ub(e);if(typeof e==`object`&&e&&`r`in e&&`s`in e&&`yParity`in e)return{signature:e,type:`secp256k1`};let n=Kb(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:s_(n.publicKey)}:n.type===`secp256k1`&&t?.payload?{keyId:s_(Iv({payload:t.payload,signature:n.signature}))}:{}})()}:{},type:n}}function Gb(e){if(e.type===`secp256k1`)return{signature:gv(e),type:`secp256k1`};if(e.type===`p256`)return{prehash:e.preHash,publicKey:{prefix:4,x:lp(e.pubKeyX),y:lp(e.pubKeyY)},signature:{r:lp(e.r),s:lp(e.s)},type:`p256`};if(e.type===`webAuthn`){let t=e.webauthnData,n=sp(t),r,i;for(let e=37;e<n;e++){let n=fp(R(t,e));if(n.startsWith(`{`)&&n.endsWith(`}`))try{JSON.parse(n),r=R(t,0,e),i=n;break}catch{}}if(!r||!i)throw new Zb({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:lp(e.pubKeyX),y:lp(e.pubKeyY)},signature:{r:lp(e.r),s:lp(e.s)},type:`webAuthn`}}if(e.type===`keychain`||`userAddress`in e&&`signature`in e)return{type:`keychain`,userAddress:e.userAddress,inner:Gb(e.signature),...e.keyId?{keyId:e.keyId}:{},...e.version?{version:e.version}:{}};throw new Xb({envelope:e})}function Kb(e){if(typeof e!=`object`||!e)throw new Xb({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 Xb({envelope:e})}function qb(e,t={}){let n=Kb(e);if(n===`secp256k1`)return F(vv(e.signature),t.magic?Bb:`0x`);if(n===`p256`){let n=e;return F(Ib,L(n.signature.r,{size:32}),L(n.signature.s,{size:32}),L(n.publicKey.x,{size:32}),L(n.publicKey.y,{size:32}),L(+!!n.prehash,{size:1}),t.magic?Bb:`0x`)}if(n===`webAuthn`){let n=e;return F(Lb,F(n.metadata.authenticatorData,rp(n.metadata.clientDataJSON)),L(n.signature.r,{size:32}),L(n.signature.s,{size:32}),L(n.publicKey.x,{size:32}),L(n.publicKey.y,{size:32}),t.magic?Bb:`0x`)}if(n===`keychain`){let n=e;return F(n.version===`v1`?Rb:zb,n.userAddress,qb(n.inner),t.magic?Bb:`0x`)}throw new Xb({envelope:e})}function Jb(e){let t=Kb(e);if(t===`secp256k1`)return{...yv(e.signature),type:`secp256k1`};if(t===`p256`){let t=e;return{preHash:t.prehash,pubKeyX:L(t.publicKey.x,{size:32}),pubKeyY:L(t.publicKey.y,{size:32}),r:L(t.signature.r,{size:32}),s:L(t.signature.s,{size:32}),type:`p256`}}if(t===`webAuthn`){let t=e,n=F(t.metadata.authenticatorData,rp(t.metadata.clientDataJSON));return{pubKeyX:L(t.publicKey.x,{size:32}),pubKeyY:L(t.publicKey.y,{size:32}),r:L(t.signature.r,{size:32}),s:L(t.signature.s,{size:32}),type:`webAuthn`,webauthnData:n}}if(t===`keychain`){let t=e;return{type:`keychain`,userAddress:t.userAddress,signature:Jb(t.inner),...t.keyId?{keyId:t.keyId}:{},...t.version?{version:t.version}:{}}}throw new Xb({envelope:e})}function Yb(e,t){let{payload:n}=t,r=(()=>{if(t.address)return t.address;if(t.publicKey)return s_(t.publicKey)})();if(!r)return!1;let i=Wb(e);if(i.type===`secp256k1`)return r?Rv({address:r,payload:n,signature:i.signature}):!1;if(i.type===`p256`)return c_(s_(i.publicKey),r)?Qy({hash:i.prehash,publicKey:i.publicKey,payload:n,signature:i.signature}):!1;if(i.type===`webAuthn`)return c_(s_(i.publicKey),r)?Fb({challenge:tp(n),metadata:i.metadata,publicKey:i.publicKey,signature:i.signature}):!1;throw new Qb(`Unable to verify signature envelope of type \"${i.type}\".`)}var Xb=class extends P{constructor({envelope:e}){super(`Unable to coerce value (\\`${Tf(e)}\\`) to a valid signature envelope.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.CoercionError`})}},Zb=class extends P{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`})}},Qb=class extends P{constructor(){super(...arguments),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`SignatureEnvelope.VerificationError`})}};cf(),z();function $b(e){return e.startsWith(`tempo`)?ex(e).address:e}function ex(e){if(!e.startsWith(`tempox`))throw new tx({address:e});let t=e.slice(6);return ep(t,{strict:!0}),{address:a_(t)}}var tx=class extends P{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`})}};z();function nx(e,t={}){if(typeof e.chainId==`string`)return rx(e);let n={...e,address:$b(e.address)};return t.signature?{...n,signature:t.signature}:n}function rx(e){let{address:t,chainId:n,nonce:r}=e,i=Gb(e.signature);return{address:t,chainId:Number(n),nonce:BigInt(r),signature:i}}function ix(e){return e.map(e=>rx(e))}function ax(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=Ub(i)),nx(a)}function ox(e){let t=[];for(let n of e)t.push(ax(n));return t}function sx(e){let{address:t,chainId:n,nonce:r,signature:i}=e;return{address:t,chainId:L(n),nonce:L(r),signature:Jb(i)}}function cx(e){return e.map(e=>sx(e))}function lx(e){let{address:t,chainId:n,nonce:r}=e,i=e.signature?qb(e.signature):void 0;return[n?L(n):`0x`,t,r?L(r):`0x`,...i?[i]:[]]}function ux(e){if(!e||e.length===0)return[];let t=[];for(let n of e)t.push(lx(n));return t}z();function dx(e,t={}){if(`keyId`in e)return fx(e);let n=e,r={...n,address:$b(n.address),...n.limits?{limits:n.limits.map(e=>({...e,token:$b(e.token)}))}:{},...n.scopes?{scopes:n.scopes.map(e=>({...e,address:$b(e.address),selector:Tx(e.selector),...e.recipients?{recipients:e.recipients.map(e=>$b(e))}:{}}))}:{}};return t.signature?{...r,signature:Wb(t.signature)}:r}function fx(e){let{allowedCalls:t,chainId:n,keyId:r,expiry:i,limits:a,keyType:o}=e,s=Gb(e.signature),c=t?t.flatMap(e=>!e.selectorRules||e.selectorRules.length===0?[{address:e.target}]:e.selectorRules.map(t=>({address:e.target,selector:wx(t.selector),...t.recipients&&t.recipients.length>0?{recipients:t.recipients}:{}}))):void 0;return{address:r,chainId:n===`0x`?0n:lp(n),...i==null?{}:{expiry:Number(i)},limits:a?.map(e=>({token:e.token,limit:BigInt(e.limit),...e.period&&Cx(e.period)>0?{period:Cx(e.period)}:{}})),...c?{scopes:c}:{},signature:s,type:o}}function px(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:Cx(o)||void 0,type:l,chainId:r===`0x`?0n:lp(r),...o===void 0?{}:{expiry:Cx(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:Sx(n),...r===void 0?{}:{period:Cx(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=Ub(n)),dx(u)}function mx(e){return gx(e)}function hx(e){return px($_(e))}function gx(e){let[t]=yx(e);return Hg(av(t))}function _x(e){return av(yx(e))}function vx(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:Tx(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`:L(r),expiry:typeof i==`number`?L(i):null,keyId:$b(t),keyType:o,limits:a?.map(({token:e,limit:t,period:n})=>({token:e,limit:L(t),...n?{period:xx(n)}:{}})),signature:Jb(s),...c?{allowedCalls:c}:{}}}function yx(e){let{address:t,chainId:n,scopes:r,expiry:i,limits:a}=e,o=e.signature?qb(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,bx(e.limit)];return e.period&&e.period>0&&t.push(xx(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([Tx(t.selector),t.recipients??[]])}return[...e.entries()].map(([e,t])=>[e,t.map(([e,t])=>[e,t])])})();return[[bx(n),s,t,i!=null&&i!==0||c||l?xx(i??0):void 0,c||l?c??[]:void 0,l].filter(e=>e!==void 0),...o?[o]:[]]}function bx(e){return e===0n?`0x`:L(e)}function xx(e){return e===0?`0x`:L(e)}function Sx(e){return e===`0x`?0n:BigInt(e)}function Cx(e){return e===`0x`?0:dp(e)}function wx(e){return typeof e==`string`?e:Array.isArray(e)?I(new Uint8Array(e)):e}function Tx(e){if(e)return e.startsWith(`0x`)?e:cy(e)}z();let Ex=`0x20c0`;function Dx(e){return typeof e==`bigint`||typeof e==`number`?BigInt(e):Ox(e)}function Ox(e){let t=$b(e);if(!t.toLowerCase().startsWith(Ex))throw Error(`invalid tip20 address.`);return lp(R(t,6))}function B(e){if(typeof e==`string`){let t=$b(e);return i_(t),t}return F(Ex,L(e,{size:18}))}z();let kx={defaultAdmin:`DEFAULT_ADMIN_ROLE`,pause:`PAUSE_ROLE`,unpause:`UNPAUSE_ROLE`,issuer:`ISSUER_ROLE`,burnBlocked:`BURN_BLOCKED_ROLE`};function Ax(e){return e===`defaultAdmin`?`0x0000000000000000000000000000000000000000000000000000000000000000`:Hg(rp(kx[e]??e))}let jx={legacy:`0x0`,eip2930:`0x1`,eip1559:`0x2`,eip4844:`0x3`,eip7702:`0x4`},Mx={\"0x0\":`legacy`,\"0x1\":`eip2930`,\"0x2\":`eip1559`,\"0x3\":`eip4844`,\"0x4\":`eip7702`};function Nx(e,t={}){if(!e)return null;let n=pv(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=jv(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=Mx[e.type]??e.type),n&&(r.v=Sv(n.yParity)),r}let Px={...jx,tempo:`0x76`},Fx={...Mx,\"0x76\":`tempo`};function Ix(e,t={}){if(!e)return null;let n=Nx(e);return n.type=Fx[e.type],e.aaAuthorizationList&&(n.authorizationList=ix(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=Gb(e.signature)),e.validAfter&&(n.validAfter=Number(e.validAfter)),e.validBefore&&(n.validBefore=Number(e.validBefore)),e.keyAuthorization&&(n.keyAuthorization=fx(e.keyAuthorization)),e.feePayerSignature&&(n.feePayerSignature=gv(e.feePayerSignature),n.feePayerSignature.v=Sv(n.feePayerSignature.yParity)),n}z();function Lx(e){let t={};return e.accessList!==void 0&&(t.accessList=e.accessList),e.authorizationList!==void 0&&(t.authorizationList=Nv(e.authorizationList)),e.blobVersionedHashes!==void 0&&(t.blobVersionedHashes=e.blobVersionedHashes),e.blobs!==void 0&&(t.blobs=e.blobs),e.chainId!==void 0&&(t.chainId=L(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=L(e.gas)),e.gasPrice!==void 0&&(t.gasPrice=L(e.gasPrice)),e.maxFeePerBlobGas!==void 0&&(t.maxFeePerBlobGas=L(e.maxFeePerBlobGas)),e.maxFeePerGas!==void 0&&(t.maxFeePerGas=L(e.maxFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=L(e.maxPriorityFeePerGas)),e.maxPriorityFeePerGas!==void 0&&(t.maxPriorityFeePerGas=L(e.maxPriorityFeePerGas)),e.nonce!==void 0&&(t.nonce=L(e.nonce)),e.to!==void 0&&(t.to=e.to),e.type!==void 0&&(t.type=jx[e.type]||e.type),e.value!==void 0&&(t.value=L(e.value)),t}z();function Rx(e){let t=Lx({...e,authorizationList:void 0});e.authorizationList&&(t.authorizationList=cx(e.authorizationList)),e.calls?t.calls=e.calls.map(e=>({to:e.to?$b(e.to):e.to,value:e.value?L(e.value):`0x`,data:e.data??`0x`})):(e.to||e.data||e.value)&&(t.calls=[{to:e.to?$b(e.to):void 0,value:e.value?L(e.value):`0x`,data:e.data??`0x`}]),e.feeToken!==void 0&&(t.feeToken=B(e.feeToken)),e.keyAuthorization&&(t.keyAuthorization=vx(e.keyAuthorization)),e.validBefore!==void 0&&(t.validBefore=L(e.validBefore)),e.validAfter!==void 0&&(t.validAfter=L(e.validAfter));let n=(()=>{if(e.nonceKey===`random`)return op(6);if(typeof e.nonceKey==`bigint`)return L(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=Px.tempo,delete t.data,delete t.input,delete t.to,delete t.value),t}cf(),z();function zx(e){let t=[];for(let n=0;n<e.length;n++){let[r,i]=e[n];r&&i_(r,{strict:!1}),t.push({address:r,storageKeys:i.map(e=>Gg(e)?e:cp(e))})}return t}function Bx(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(sp(r[e])!==32)throw new Vx({storageKey:r[e]});n&&i_(n,{strict:!1}),t.push([n,r])}return t}var Vx=class extends P{constructor({storageKey:e}){super(`Size for storage key \"${e}\" is invalid. Expected 32 bytes. Got ${sp(e)} bytes.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`AccessList.InvalidStorageKeySizeError`})}};cf();let Hx={wei:0,gwei:9,szabo:12,finney:15,ether:18};function Ux(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 Wx(e,t=`wei`){return Ux(e,Hx.gwei-Hx[t])}cf();var Gx=class extends P{constructor({feeCap:e}={}){super(`The fee cap (\\`maxFeePerGas\\`/\\`maxPriorityFeePerGas\\`${e?` = ${Wx(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`})}},Kx=class extends P{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`})}},qx=class extends P{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`})}},Jx=class extends P{constructor({maxPriorityFeePerGas:e,maxFeePerGas:t}={}){super([`The provided tip (\\`maxPriorityFeePerGas\\`${e?` = ${Wx(e)} gwei`:``}) cannot be higher than the fee cap (\\`maxFeePerGas\\`${t?` = ${Wx(t)} gwei`:``}).`].join(`\n`)),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TransactionEnvelope.TipAboveFeeCapError`})}};cf(),z();let Yx=`tempo`;function Xx(e){let{calls:t,chainId:n,maxFeePerGas:r,maxPriorityFeePerGas:i,validBefore:a,validAfter:o}=e;if(!t||t.length===0)throw new rS;if(typeof a==`number`&&typeof o==`number`&&a<=o)throw new iS({validBefore:a,validAfter:o});if(t)for(let e of t)e.to&&i_(e.to,{strict:!1});if(n<=0)throw new Kx({chainId:n});if(r&&BigInt(r)>2n**256n-1n)throw new Gx({feeCap:r});if(i&&r&&i>r)throw new Jx({maxFeePerGas:r,maxPriorityFeePerGas:i})}function Zx(e){let t=$_(R(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 qx({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:Yx});let y={chainId:Number(n),type:Yx};pp(a)&&a!==`0x`&&(y.gas=BigInt(a)),pp(l)&&(y.nonce=l===`0x`?0n:BigInt(l)),pp(i)&&i!==`0x`&&(y.maxFeePerGas=BigInt(i)),pp(r)&&r!==`0x`&&(y.maxPriorityFeePerGas=BigInt(r)),pp(c)&&(y.nonceKey=c===`0x`?0n:BigInt(c)),pp(u)&&u!==`0x`&&(y.validBefore=Number(u)),pp(d)&&d!==`0x`&&(y.validAfter=Number(d)),pp(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=zx(s)),m?.length!==0&&m!==`0x`&&(y.authorizationList=ox(m)),p!==`0x`&&p!==void 0&&(p===`0x00`||l_(p)?(y.feePayerSignature=null,l_(p)&&(y.from=p)):y.feePayerSignature=_v(p)),_&&(y.keyAuthorization=px(_));let b=v?Ub(v):void 0;if(b&&(y={...y,signature:b}),!y.from&&b)try{y.from=Vb({payload:eS(Qx(y)),signature:b,root:!0})}catch{}return Xx(y),y}function Qx(e,t={}){let{feePayerSignature:n,signature:r}=t,i=typeof e==`string`?Zx(e):e;return i.from&&=$b(i.from),i.calls&&=i.calls.map(e=>({...e,...e.to?{to:$b(e.to)}:{}})),Xx(i),{...i,...r?{signature:Wb(r)}:{},...n?{feePayerSignature:mv(n)}:{},type:`tempo`}}function $x(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;Xx(e);let h=Bx(n),g=t.signature||e.signature,_=ux(r),v=i.map(e=>[e.to?$b(e.to):`0x`,e.value?L(e.value):`0x`,e.data??`0x`]),y=!1,b=(()=>{if(t.sender)return t.sender;if(t.format===`feePayer`&&g){let t=Wb(g);if(t.type===`keychain`)return t.userAddress;if(t.type===`p256`||t.type===`webAuthn`)return s_(t.publicKey);if(t.type===`secp256k1`)return Fv({payload:eS(Qx(e)),signature:t.signature})}let n=t.feePayerSignature===void 0?e.feePayerSignature:t.feePayerSignature;return n===null?(y=!0,`0x00`):n?bv(n):`0x`})(),x=[L(a),f?L(f):`0x`,d?L(d):`0x`,s?L(s):`0x`,v,h,u?L(u):`0x`,l?L(l):`0x`,typeof p==`number`?L(p):`0x`,typeof m==`number`?L(m):`0x`,!y&&(typeof o==`bigint`||typeof o==`string`)?B(o):`0x`,b,_,...c?[yx(c)]:[],...g?[qb(Wb(g))]:[]];return F(t.format===`feePayer`?`0x78`:`0x76`,av(x))}function eS(e,t={}){let n=tS(e,{presign:!0});return t.from?Hg(F(`0x04`,n,$b(t.from))):n}function tS(e,t={}){return Hg($x({...e,...t.presign?{signature:void 0,...e.feePayerSignature===void 0?{}:{feePayerSignature:null}}:{}}))}function nS(e,t){let n=$b(t.sender);return Hg($x({...e,signature:void 0},{sender:n,format:`feePayer`}))}var rS=class extends P{constructor(){super(`Calls list cannot be empty.`),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`TxEnvelopeTempo.CallsEmptyError`})}},iS=class extends P{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`})}};let V=[{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:[]}],aS=[{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:[]}],oS=[{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`}]}];$f();async function sS(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=qg(new Uint8Array(r));return{privateKey:n.privateKey,publicKey:i}}async function cS(e){let{payload:t,privateKey:n}=e,r=await globalThis.crypto.subtle.sign({name:`ECDSA`,hash:`SHA-256`},n,Af(t)),i=jf(new Uint8Array(r)),a=zf(Rf(i,0,32)),o=zf(Rf(i,32,64));return o>Jy.CURVE.n/2n&&(o=Jy.CURVE.n-o),{r:a,s:o}}z();function lS(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:Id(e)}function uS(e){try{return lS(e)===`tempo`}catch{return!1}}function dS(e){let t=R(e,0,1);return t===`0x76`||t===`0x78`?pS(e):Gv(e)}async function fS(e,t){if(!uS(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 fh(e,{r:L(n,{size:32}),s:L(r,{size:32}),yParity:i})}return fh(e,t)}if(lS(e)===`tempo`)return mS(e,t);throw Error(`Unsupported transaction type`)}function pS(e){let{feePayerSignature:t,nonce:n,...r}=Zx(e);return{...r,nonce:Number(n??0n),feePayerSignature:t&&{r:L(t.r,{size:32}),s:L(t.s,{size:32}),yParity:t.yParity}}}async function mS(e,t){let n=(()=>{if(e.signature)return e.signature;if(t&&`type`in t)return t;if(t)return Wb({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=Qx(c,{signature:n}),r=nS(t,{sender:(()=>{if(e.from)return e.from;if(n.type===`secp256k1`)return Fv({payload:eS(t),signature:n.signature});throw Error(`Unable to extract sender from transaction or signature.`)})()});return $x(t,{feePayerSignature:mv(await e.feePayer.sign({hash:r}))})}return i===!0?n?$x(c,{format:`feePayer`,sender:e.from,signature:n}):$x(c,{feePayerSignature:null}):$x({...c,...i?{feeToken:void 0}:{}},{feePayerSignature:void 0,signature:n})}z(),ya(),gi();function hS(e){let{access:t}=e;return t?CS(e):SS(e)}function gS(e,t){let{access:n,rpId:r,origin:i,internal_version:a}=t,o=Xy({privateKey:e});return hS({access:n,internal_version:a,keyType:`webAuthn`,publicKey:o,async sign({hash:n}){let{metadata:a,payload:s}=Nb({...t,challenge:n,rpId:r,origin:i});return qb({metadata:a,signature:Zy({payload:s,privateKey:e,hash:!0}),publicKey:o,type:`webAuthn`})}})}function _S(e,t={}){let{access:n,internal_version:r}=t,i=Xy({privateKey:e});return hS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:t}){return qb({signature:Zy({payload:t,privateKey:e}),publicKey:i,type:`p256`})}})}function vS(e,t={}){let{access:n,internal_version:r}=t;return hS({access:n,internal_version:r,keyType:`secp256k1`,publicKey:Pv({privateKey:e}),async sign(t){let{hash:n}=t;return vv(Lv({payload:n,privateKey:e}))}})}function yS(e,t={}){let{id:n}=e,r=Yg(e.publicKey);return hS({keyType:`webAuthn`,publicKey:r,async sign({hash:e}){let{metadata:i,signature:a}=await Pb({...t,challenge:e,credentialId:n});return qb({publicKey:r,metadata:i,signature:a,type:`webAuthn`})}})}function bS(e,t={}){let{access:n,internal_version:r}=t,{publicKey:i,privateKey:a}=e;return hS({access:n,internal_version:r,keyType:`p256`,publicKey:i,async sign({hash:e}){return qb({signature:await cS({payload:e,privateKey:a}),prehash:!0,publicKey:i,type:`p256`})}})}function xS(e){let{keyType:t=`secp256k1`,parentAddress:n,source:r=`privateKey`,internal_version:i=`v2`}=e,a=n??s_(e.publicKey),o=Zg(e.publicKey,{includePrefix:!1});async function s({hash:r}){let a=n&&i===`v2`?hi(F(`0x04`,r,n)):r,o=await e.sign({hash:a});return n?qb(Wb({userAddress:n,inner:Wb(o),type:`keychain`,version:i})):t===`secp256k1`?o:F(o,Bb)}return{address:a_(a),keyType:t,sign:s,async signAuthorization(e){let{chainId:t,nonce:n}=e,r=e.contractAddress??e.address,i=Wb(await s({hash:Eu({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:L(a,{size:32}),s:L(o,{size:32}),yParity:c}},async signMessage(e){let{message:t}=e;return await s({hash:Rh(t)})},async signTransaction(e,t){let{serializer:n=fS}=t??{};return await n(e,Wb(await s({hash:hi(await n(e))})))},async signTypedData(e){return await s({hash:Kh(e)})},publicKey:o,source:r,type:`local`}}function SS(e){let t=xS(e);return{...t,source:`root`,async signKeyAuthorization(e,n){let{chainId:r,expiry:i,limits:a}=n,{accessKeyAddress:o,keyType:s}=e;return dx({address:o,chainId:r,expiry:i,limits:a,signature:Wb(await t.sign({hash:mx({address:o,chainId:r,expiry:i,limits:a,type:s})})),type:s})}}}function CS(e){let{access:t}=e,{address:n}=va(t);return{...xS({...e,parentAddress:n}),accessKeyAddress:s_(e.publicKey),source:`accessKey`}}let wS=`0xdec0000000000000000000000000000000000000`;function H(e){return{...e,data:Ca(e),to:e.address}}z(),ya();async function TS(e,t){return TS.inner(Wm,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 H({address:wS,abi:aS,functionName:`swapExactAmountOut`,args:[t,n,r,i]})}e.call=n})(TS||={});async function ES(e,t){return ES.inner(Wm,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 H({address:wS,abi:aS,functionName:`cancel`,args:[t]})}e.call=n;function r(e){let[t]=Zd({abi:aS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(ES||={});async function DS(e,t){return DS.inner(Wm,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 H({address:wS,abi:aS,functionName:`cancelStaleOrder`,args:[t]})}e.call=n;function r(e){let[t]=Zd({abi:aS,logs:e,eventName:`OrderCancelled`,strict:!0});if(!t)throw Error(\"`OrderCancelled` event not found.\");return t}e.extractEvent=r})(DS||={});async function OS(e,t){return OS.inner(Wm,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 H({address:wS,abi:aS,functionName:`createPair`,args:[t]})}e.call=n;function r(e){let[t]=Zd({abi:aS,logs:e,eventName:`PairCreated`,strict:!0});if(!t)throw Error(\"`PairCreated` event not found.\");return t}e.extractEvent=r})(OS||={});async function kS(e,t){let{account:n=e.account,token:r,...i}=t,a=n?va(n).address:void 0;if(!a)throw Error(`account is required.`);return jm(e,{...i,...kS.call({account:a,token:r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:wS,abi:aS,args:[t,n],functionName:`balanceOf`})}e.call=t})(kS||={});async function AS(e,t){let{tokenIn:n,tokenOut:r,amountOut:i,...a}=t;return jm(e,{...a,...AS.call({tokenIn:n,tokenOut:r,amountOut:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountOut:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`quoteSwapExactAmountOut`})}e.call=t})(AS||={});async function jS(e,t){let{orderId:n,...r}=t;return jm(e,{...r,...jS.call({orderId:n})})}(function(e){function t(e){let{orderId:t}=e;return H({address:wS,abi:aS,args:[t],functionName:`getOrder`})}e.call=t})(jS||={});async function MS(e,t){let{base:n,quote:r,...i}=t;return jm(e,{...i,...MS.call({base:n,quote:r})})}(function(e){function t(e){let{base:t,quote:n}=e;return H({address:wS,abi:aS,args:[zS(t,n)],functionName:`books`})}e.call=t})(MS||={});async function NS(e,t){let{base:n,tick:r,isBid:i,...a}=t,[o,s,c]=await jm(e,{...a,...NS.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 H({address:wS,abi:aS,args:[t,n,r],functionName:`getTickLevel`})}e.call=t})(NS||={});async function PS(e,t){let{tokenIn:n,tokenOut:r,amountIn:i,...a}=t;return jm(e,{...a,...PS.call({tokenIn:n,tokenOut:r,amountIn:i})})}(function(e){function t(e){let{tokenIn:t,tokenOut:n,amountIn:r}=e;return H({address:wS,abi:aS,args:[t,n,r],functionName:`quoteSwapExactAmountIn`})}e.call=t})(PS||={});async function FS(e,t){return FS.inner(Wm,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 H({address:wS,abi:aS,functionName:`place`,args:[t,n,r===`buy`,i]})}e.call=n;function r(e){let[t]=Zd({abi:aS,logs:e,eventName:`OrderPlaced`,strict:!0});if(!t)throw Error(\"`OrderPlaced` event not found.\");return t}e.extractEvent=r})(FS||={});async function IS(e,t){return IS.inner(Wm,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 H({address:wS,abi:aS,functionName:`placeFlip`,args:[t,n,r===`buy`,i,a]})}e.call=n;function r(e){let t=Zd({abi:aS,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})(IS||={});async function LS(e,t){return LS.inner(Wm,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 H({address:wS,abi:aS,functionName:`swapExactAmountIn`,args:[t,n,r,i]})}e.call=n})(LS||={});async function RS(e,t){return RS.inner(Wm,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 H({address:wS,abi:aS,functionName:`withdraw`,args:[t,n]})}e.call=n})(RS||={});function zS(e,t){return Hg(F(e,t))}z(),ya(),wa();async function BS(e,t){let{token:n,...r}=t;return BS.inner(Wm,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 H({address:B(r),abi:V,functionName:`approve`,args:[t,n]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`Approval`});if(!t)throw Error(\"`Approval` event not found.\");return t}e.extractEvent=r})(BS||={});async function VS(e,t){return VS.inner(Wm,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 H({address:B(r),abi:V,functionName:`burnBlocked`,args:[t,n]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`BurnBlocked`});if(!t)throw Error(\"`BurnBlocked` event not found.\");return t}e.extractEvent=r})(VS||={});async function HS(e,t){return HS.inner(Wm,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,ip(n,32)]}:{functionName:`burn`,args:[t]};return H({address:B(r),abi:V,...i})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`Burn`});if(!t)throw Error(\"`Burn` event not found.\");return t}e.extractEvent=r})(HS||={});async function US(e,t){return US.inner(Wm,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 H({address:B(t),abi:V,functionName:`changeTransferPolicyId`,args:[n]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`TransferPolicyUpdate`});if(!t)throw Error(\"`TransferPolicyUpdate` event not found.\");return t}e.extractEvent=r})(US||={});async function WS(e,t){return WS.inner(Wm,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?va(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=op(32)}=e;return H({address:`0x20fc000000000000000000000000000000000000`,abi:oS,args:[t,n,r,B(i),a,o],functionName:`createToken`})}e.call=n;function r(e){let[t]=Zd({abi:oS,logs:e,eventName:`TokenCreated`,strict:!0});if(!t)throw Error(\"`TokenCreated` event not found.\");return t}e.extractEvent=r})(WS||={});async function GS(e,t){let{account:n=e.account}=t,r=n?va(n).address:void 0;if(!r)throw Error(`account is required.`);return jm(e,{...t,...GS.call({...t,account:r})})}(function(e){function t(e){let{account:t,spender:n,token:r}=e;return H({address:B(r),abi:V,functionName:`allowance`,args:[t,n]})}e.call=t})(GS||={});async function KS(e,t){let{account:n=e.account,...r}=t,i=n?va(n).address:void 0;if(!i)throw Error(`account is required.`);return jm(e,{...r,...KS.call({account:i,...r})})}(function(e){function t(e){let{account:t,token:n}=e;return H({address:B(n),abi:V,functionName:`balanceOf`,args:[t]})}e.call=t})(KS||={});async function qS(e,t){let{token:n,...r}=t,i=B(n),a=V;return Dx(n)===Ox(`0x20c0000000000000000000000000000000000000`)?ry(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})):ry(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 JS(e,t){return jm(e,{...t,...JS.call(t)})}(function(e){function t(e){let{role:t,token:n}=e;return H({address:B(n),abi:V,functionName:`getRoleAdmin`,args:[Ax(t)]})}e.call=t})(JS||={});async function YS(e,t){let{account:n=e.account}=t,r=n?va(n).address:void 0;if(!r)throw Error(`account is required.`);return jm(e,{...t,...YS.call({...t,account:r})})}(function(e){function t(e){let{account:t,role:n,token:r}=e;return H({address:B(r),abi:V,functionName:`hasRole`,args:[t,Ax(n)]})}e.call=t})(YS||={});async function XS(e,t){return XS.inner(Um,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:Ca(n)}})})}e.inner=t;function n(e){let{token:t,to:n,role:r}=e,i=Ax(r);return H({address:B(t),abi:V,functionName:`grantRole`,args:[i,n]})}e.call=n;function r(e){let t=Zd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(XS||={});async function ZS(e,t){return ZS.inner(Wm,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,ip(r,32)]}:{functionName:`mint`,args:[t,n]};return H({address:B(i),abi:V,...a})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`Mint`});if(!t)throw Error(\"`Mint` event not found.\");return t}e.extractEvent=r})(ZS||={});async function QS(e,t){return QS.inner(Wm,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 H({address:B(t),abi:V,functionName:`pause`,args:[]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(QS||={});async function $S(e,t){return $S.inner(Um,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:Ca(n)}})})}e.inner=t;function n(e){let{token:t,role:n}=e,r=Ax(n);return H({address:B(t),abi:V,functionName:`renounceRole`,args:[r]})}e.call=n;function r(e){let t=Zd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})($S||={});async function eC(e,t){return eC.inner(Um,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:Ca(n)}})})}e.inner=t;function n(e){let{token:t,from:n,role:r}=e,i=Ax(r);return H({address:B(t),abi:V,functionName:`revokeRole`,args:[i,n]})}e.call=n;function r(e){let t=Zd({abi:V,logs:e,eventName:`RoleMembershipUpdated`});if(t.length===0)throw Error(\"`RoleMembershipUpdated` events not found.\");return t}e.extractEvents=r})(eC||={});async function tC(e,t){return tC.inner(Wm,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 H({address:B(t),abi:V,functionName:`setSupplyCap`,args:[n]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`SupplyCapUpdate`});if(!t)throw Error(\"`SupplyCapUpdate` event not found.\");return t}e.extractEvent=r})(tC||={});async function nC(e,t){return nC.inner(Wm,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=Ax(n),a=Ax(r);return H({address:B(t),abi:V,functionName:`setRoleAdmin`,args:[i,a]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`RoleAdminUpdated`});if(!t)throw Error(\"`RoleAdminUpdated` event not found.\");return t}e.extractEvent=r})(nC||={});async function rC(e,t){return rC.inner(Wm,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,ip(r,32)]}:r?{functionName:`transferWithMemo`,args:[a,t,ip(r,32)]}:n?{functionName:`transferFrom`,args:[n,a,t]}:{functionName:`transfer`,args:[a,t]};return H({address:B(i),abi:V,...o})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`Transfer`});if(!t)throw Error(\"`Transfer` event not found.\");return t}e.extractEvent=r})(rC||={});async function iC(e,t){return iC.inner(Wm,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 H({address:B(t),abi:V,functionName:`unpause`,args:[]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`PauseStateUpdate`});if(!t)throw Error(\"`PauseStateUpdate` event not found.\");return t}e.extractEvent=r})(iC||={});async function aC(e,t){return aC.inner(Wm,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 H({address:B(t),abi:V,functionName:`setNextQuoteToken`,args:[B(n)]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`NextQuoteTokenSet`});if(!t)throw Error(\"`NextQuoteTokenSet` event not found.\");return t}e.extractEvent=r})(aC||={});async function oC(e,t){return oC.inner(Wm,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 H({address:B(t),abi:V,functionName:`completeQuoteTokenUpdate`,args:[]})}e.call=n;function r(e){let[t]=Zd({abi:V,logs:e,eventName:`QuoteTokenUpdate`});if(!t)throw Error(\"`QuoteTokenUpdateCompleted` event not found.\");return t}e.extractEvent=r})(oC||={}),z(),ya(),$u();function sC(e){if(!uS(e))return pd(e);let{feePayerSignature:t,gasPrice:n,nonce:r,...i}=Ix(e);return{...i,accessList:i.accessList,feePayerSignature:t?{r:L(t.r,{size:32}),s:L(t.s,{size:32}),v:BigInt(t.v??27),yParity:t.yParity}:void 0,nonce:Number(r),typeHex:Px[i.type],type:i.type}}function cC(e){return Jm(e)}function lC(e,t){let n=e,r=n.account?va(n.account):void 0;if(!uS(n))return Yu(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=Rx({...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`?va(n.feePayer):n.feePayer}:{}}}var uC=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 dC(e,t={}){let{raw:n=!1}=t,r=e;if(n)return e;if(r.error)throw fC(r.error);return r.result}function fC(e){let t=e;if(t instanceof Error&&!(`code`in t))return new wC({cause:t,data:t,message:t.message,stack:t.stack});let{code:n}=t;return n===wC.code?new wC(t):n===mC.code?new mC(t):n===CC.code?new CC(t):n===xC.code?new xC(t):n===yC.code?new yC(t):n===SC.code?new SC(t):n===vC.code?new vC(t):n===TC.code?new TC(t):n===hC.code?new hC(t):n===gC.code?new gC(t):n===_C.code?new _C(t):n===bC.code?new bC(t):new wC({cause:t instanceof Error?t:void 0,data:t,message:t.message,stack:t instanceof Error?t.stack:void 0})}var pC=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??``}},mC=class e extends pC{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(mC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32e3});var hC=class e extends pC{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(hC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32001});var gC=class e extends pC{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(gC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32002});var _C=class e extends pC{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(_C,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32003});var vC=class e extends pC{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(vC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32004});var yC=class e extends pC{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(yC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32005});var bC=class e extends pC{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(bC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32006});var xC=class e extends pC{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(xC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32600});var SC=class e extends pC{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(SC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32601});var CC=class e extends pC{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(CC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32602});var wC=class e extends pC{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(wC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32603});var TC=class e extends pC{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(TC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:-32700}),cf();var EC=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}},DC=class extends EC{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(DC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4001});var OC=class extends EC{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(OC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4100});var kC=class extends EC{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(kC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4200});var AC=class extends EC{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(AC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4900});var jC=class extends EC{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(jC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4901});var MC=class extends EC{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(MC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:4902});var NC=class extends EC{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(NC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5700});var PC=class extends EC{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(PC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5710});var FC=class extends EC{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(FC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5720});var IC=class extends EC{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(IC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5730});var LC=class extends EC{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(LC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5740});var RC=class extends EC{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(RC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5750});var zC=class extends EC{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(zC,`code`,{enumerable:!0,configurable:!0,writable:!0,value:5760});function BC(){let e=new uC.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 VC(e,t={}){if(!e)throw new UC;return{...e,async request(t){try{let n=await e.request(t);return n&&typeof n==`object`&&`jsonrpc`in n?dC(n):n}catch(e){throw HC(e)}}}}function HC(e){let t=fC(e);if(t instanceof wC){if(!t.data)return t;let{code:e}=t.data;if(e===AC.code)return new AC(t);if(e===jC.code)return new jC(t);if(e===DC.code)return new DC(t);if(e===OC.code)return new OC(t);if(e===kC.code)return new kC(t);if(e===MC.code)return new MC(t);if(e===RC.code)return new RC(t);if(e===zC.code)return new zC(t);if(e===LC.code)return new LC(t);if(e===IC.code)return new IC(t);if(e===FC.code)return new FC(t);if(e===PC.code)return new PC(t);if(e===NC.code)return new NC(t)}return t}var UC=class extends P{constructor(){super(\"`provider` is undefined.\"),Object.defineProperty(this,`name`,{enumerable:!0,configurable:!0,writable:!0,value:`Provider.IsUndefinedError`})}};function WC(e={}){let t=e.id??0;return{prepare(e){return GC({id:t++,...e})},get id(){return t}}}function GC(e){return{...e,jsonrpc:`2.0`}}function KC(e,t,n){let{policy:r=`sign-only`}=n??{};return n=>{let i=e(n),a=t(n);return Dy({key:KC.type,name:`Relay Proxy`,async request({method:e,params:t},n){if(e===`eth_sendRawTransactionSync`||e===`eth_sendRawTransaction`){let o=t[0];if(dS(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:KC.type})}}function qC(){return null}var JC;function U(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 YC=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},XC=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(JC=globalThis).__zod_globalConfig??(JC.__zod_globalConfig={});let ZC=globalThis.__zod_globalConfig;function QC(e){return e&&Object.assign(ZC,e),ZC}function $C(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 ew(e,t){return typeof t==`bigint`?t.toString():t}function tw(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function nw(e){return e==null}function rw(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}let iw=Symbol(`evaluating`);function W(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==iw)return r===void 0&&(r=iw,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}let aw=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function ow(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function sw(e){if(ow(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(ow(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}let cw=new Set([`string`,`number`,`symbol`]),lw=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function uw(e){return e.replace(/[.*+?^${}()|[\\]\\\\]/g,`\\\\$&`)}function dw(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function fw(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 pw(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function mw(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 hw(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 gw(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function _w(e){return typeof e==`string`?e:e?.message}function vw(e,t,n){let r=e.message?e.message:_w(e.inst?._zod.def?.error?.(e))??_w(t?.error?.(e))??_w(n.customError?.(e))??_w(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 yw(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function bw(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}let xw=(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,ew,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},Sw=U(`$ZodError`,xw),Cw=U(`$ZodError`,xw,{Parent:Error}),ww=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 YC;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>vw(e,a,QC())));throw aw(t,i?.callee),t}return o.value},Tw=ww(Cw),Ew=(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=>vw(e,a,QC())));throw aw(t,i?.callee),t}return o.value})(Cw),Dw=(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 YC;return a.issues.length?{success:!1,error:new(e??Sw)(a.issues.map(e=>vw(e,i,QC())))}:{success:!0,data:a.value}})(Cw),Ow=(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=>vw(e,i,QC())))}:{success:!0,data:a.value}})(Cw),kw=(e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return ww(e)(t,n,i)})(Cw),Aw=e=>{let t=e?`[\\\\s\\\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\\\s\\\\S]*`;return RegExp(`^${t}$`)},jw=/^-?\\d+n?$/,Mw=/^-?\\d+(?:\\.\\d+)?$/,Nw=/^(?:true|false)$/i,Pw=/^null$/i,Fw=/^undefined$/i,Iw=U(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Lw={number:`number`,bigint:`bigint`,object:`date`},Rw=U(`$ZodCheckLessThan`,(e,t)=>{Iw.init(e,t);let n=Lw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),zw=U(`$ZodCheckGreaterThan`,(e,t)=>{Iw.init(e,t);let n=Lw[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Bw=U(`$ZodCheckMaxLength`,(e,t)=>{var n;Iw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!nw(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=yw(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Vw=U(`$ZodCheckMinLength`,(e,t)=>{var n;Iw.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!nw(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=yw(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Hw=U(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Iw.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=()=>{})}),Uw=U(`$ZodCheckRegex`,(e,t)=>{Hw.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})}}),Ww={major:4,minor:4,patch:3},Gw=U(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Ww;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=mw(e),i;for(let a of t){if(a._zod.def.when){if(hw(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 YC;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=mw(e,t))});else{if(e.issues.length===t)continue;r||=mw(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(mw(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new YC;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 YC;return o.then(e=>t(e,r,a))}return t(o,r,a)}}W(e,`~standard`,()=>({validate:t=>{try{let n=Dw(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return Ow(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),Kw=U(`$ZodString`,(e,t)=>{Gw.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Aw(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}}),qw=U(`$ZodNumber`,(e,t)=>{Gw.init(e,t),e._zod.pattern=e._zod.bag.pattern??Mw,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}}),Jw=U(`$ZodBoolean`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Nw,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}}),Yw=U(`$ZodBigInt`,(e,t)=>{Gw.init(e,t),e._zod.pattern=jw,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}}),Xw=U(`$ZodUndefined`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Fw,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}}),Zw=U(`$ZodNull`,(e,t)=>{Gw.init(e,t),e._zod.pattern=Pw,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}}),Qw=U(`$ZodUnknown`,(e,t)=>{Gw.init(e,t),e._zod.parse=e=>e});function $w(e,t,n){e.issues.length&&t.issues.push(...gw(n,e.issues)),t.value[n]=e.value}let eT=U(`$ZodArray`,(e,t)=>{Gw.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=>$w(t,n,e))):$w(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function tT(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...gw(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 nT(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=pw(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function rT(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=>tT(e,n,i,t,u,d))):tT(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 iT=U(`$ZodObject`,(e,t)=>{if(Gw.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=tw(()=>nT(t));W(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=ow,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=>tT(n,t,e,s,r,i))):tT(a,t,e,s,r,i)}return i?rT(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}});function aT(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=>!mw(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=>vw(e,r,QC())))}),t)}let oT=U(`$ZodUnion`,(e,t)=>{Gw.init(e,t),W(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),W(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),W(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),W(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=>rw(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=>aT(t,r,e,i)):aT(o,r,e,i)}}),sT=U(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,oT.init(e,t);let n=e._zod.parse;W(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=tw(()=>{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(!ow(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)}}),cT=U(`$ZodTuple`,(e,t)=>{Gw.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=lT(n,`optin`),c=lT(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=>uT(t,r,e))):uT(a,r,e)}}return o.length?Promise.all(o).then(()=>dT(l,r,n,a,c)):dT(l,r,n,a,c)}});function lT(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function uT(e,t,n){e.issues.length&&t.issues.push(...gw(n,e.issues)),t.value[n]=e.value}function dT(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(...gw(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 fT=U(`$ZodRecord`,(e,t)=>{Gw.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!sw(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=>vw(e,r,QC())),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(...gw(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...gw(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`&&Mw.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=>vw(e,r,QC())),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(...gw(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...gw(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),pT=U(`$ZodEnum`,(e,t)=>{Gw.init(e,t);let n=$C(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>cw.has(typeof e)).map(e=>typeof e==`string`?uw(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}}),mT=U(`$ZodLiteral`,(e,t)=>{if(Gw.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`?uw(e):e?uw(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}}),hT=U(`$ZodTransform`,(e,t)=>{Gw.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new XC(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.fallback=!0,n));if(i instanceof Promise)throw new YC;return n.value=i,n.fallback=!0,n}});function gT(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}let _T=U(`$ZodOptional`,(e,t)=>{Gw.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,W(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),W(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${rw(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>gT(e,r)):gT(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),vT=U(`$ZodNullable`,(e,t)=>{Gw.init(e,t),W(e._zod,`optin`,()=>t.innerType._zod.optin),W(e._zod,`optout`,()=>t.innerType._zod.optout),W(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${rw(e.source)}|null)$`):void 0}),W(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)}),yT=U(`$ZodPipe`,(e,t)=>{Gw.init(e,t),W(e._zod,`values`,()=>t.in._zod.values),W(e._zod,`optin`,()=>t.in._zod.optin),W(e._zod,`optout`,()=>t.out._zod.optout),W(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=>bT(e,t.in,n)):bT(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>bT(e,t.out,n)):bT(r,t.out,n)}});function bT(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}let xT=U(`$ZodCodec`,(e,t)=>{Gw.init(e,t),W(e._zod,`values`,()=>t.in._zod.values),W(e._zod,`optin`,()=>t.in._zod.optin),W(e._zod,`optout`,()=>t.out._zod.optout),W(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=>ST(e,t,n)):ST(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>ST(e,t,n)):ST(r,t,n)}}});function ST(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=>CT(e,r,t.out,n)):CT(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>CT(e,r,t.in,n)):CT(e,r,t.in,n)}}function CT(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}let wT=U(`$ZodReadonly`,(e,t)=>{Gw.init(e,t),W(e._zod,`propValues`,()=>t.innerType._zod.propValues),W(e._zod,`values`,()=>t.innerType._zod.values),W(e._zod,`optin`,()=>t.innerType?._zod?.optin),W(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(TT):TT(r)}});function TT(e){return e.value=Object.freeze(e.value),e}let ET=U(`$ZodTemplateLiteral`,(e,t)=>{Gw.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||lw.has(typeof e))n.push(uw(`${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)}),DT=U(`$ZodCustom`,(e,t)=>{Iw.init(e,t),Gw.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=>OT(t,n,r,e));OT(i,n,r,e)}});function OT(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(bw(e))}}function kT(e,t){return new e({type:`string`,...fw(t)})}function AT(e,t){return new e({type:`number`,checks:[],...fw(t)})}function jT(e,t){return new e({type:`boolean`,...fw(t)})}function MT(e,t){return new e({type:`bigint`,...fw(t)})}function NT(e,t){return new e({type:`undefined`,...fw(t)})}function PT(e,t){return new e({type:`null`,...fw(t)})}function FT(e){return new e({type:`unknown`})}function IT(e,t){return new Rw({check:`less_than`,...fw(t),value:e,inclusive:!0})}function LT(e,t){return new zw({check:`greater_than`,...fw(t),value:e,inclusive:!0})}function RT(e,t){return new Bw({check:`max_length`,...fw(t),maximum:e})}function zT(e,t){return new Vw({check:`min_length`,...fw(t),minimum:e})}function BT(e,t){return new Uw({check:`string_format`,format:`regex`,...fw(t),pattern:e})}function VT(e,t,n){let r=fw(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function HT(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...fw(n)})}let UT=U(`ZodMiniType`,(e,t)=>{if(!e._zod)throw Error(`Uninitialized schema in ZodMiniType.`);Gw.init(e,t),e.def=t,e.type=t.type,e.parse=(t,n)=>Tw(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Dw(e,t,n),e.parseAsync=async(t,n)=>Ew(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Ow(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)=>dw(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.apply=t=>t(e)}),WT=U(`ZodMiniString`,(e,t)=>{Kw.init(e,t),UT.init(e,t)});function G(e){return kT(WT,e)}let GT=U(`ZodMiniNumber`,(e,t)=>{qw.init(e,t),UT.init(e,t)});function KT(e){return AT(GT,e)}let qT=U(`ZodMiniBoolean`,(e,t)=>{Jw.init(e,t),UT.init(e,t)});function JT(e){return jT(qT,e)}let YT=U(`ZodMiniBigInt`,(e,t)=>{Yw.init(e,t),UT.init(e,t)});function XT(e){return MT(YT,e)}let ZT=U(`ZodMiniUndefined`,(e,t)=>{Xw.init(e,t),UT.init(e,t)});function QT(e){return NT(ZT,e)}let $T=U(`ZodMiniNull`,(e,t)=>{Zw.init(e,t),UT.init(e,t)});function eE(e){return PT($T,e)}let tE=U(`ZodMiniUnknown`,(e,t)=>{Qw.init(e,t),UT.init(e,t)});function nE(){return FT(tE)}let rE=U(`ZodMiniArray`,(e,t)=>{eT.init(e,t),UT.init(e,t)});function K(e,t){return new rE({type:`array`,element:e,...fw(t)})}let iE=U(`ZodMiniObject`,(e,t)=>{iT.init(e,t),UT.init(e,t),W(e,`shape`,()=>t.shape)});function q(e,t){return new iE({type:`object`,shape:e??{},...fw(t)})}let aE=U(`ZodMiniUnion`,(e,t)=>{oT.init(e,t),UT.init(e,t)});function oE(e,t){return new aE({type:`union`,options:e,...fw(t)})}let sE=U(`ZodMiniDiscriminatedUnion`,(e,t)=>{sT.init(e,t),UT.init(e,t)});function cE(e,t,n){return new sE({type:`union`,options:t,discriminator:e,...fw(n)})}let lE=U(`ZodMiniTuple`,(e,t)=>{cT.init(e,t),UT.init(e,t)});function uE(e,t,n){let r=t instanceof Gw;return new lE({type:`tuple`,items:e,rest:r?t:null,...fw(r?n:t)})}let dE=U(`ZodMiniRecord`,(e,t)=>{fT.init(e,t),UT.init(e,t)});function fE(e,t,n){return!t||!t._zod?new dE({type:`record`,keyType:G(),valueType:e,...fw(t)}):new dE({type:`record`,keyType:e,valueType:t,...fw(n)})}let pE=U(`ZodMiniEnum`,(e,t)=>{pT.init(e,t),UT.init(e,t),e.options=Object.values(t.entries)});function mE(e,t){return new pE({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...fw(t)})}let hE=U(`ZodMiniLiteral`,(e,t)=>{mT.init(e,t),UT.init(e,t)});function J(e,t){return new hE({type:`literal`,values:Array.isArray(e)?e:[e],...fw(t)})}let gE=U(`ZodMiniTransform`,(e,t)=>{hT.init(e,t),UT.init(e,t)});function _E(e){return new gE({type:`transform`,transform:e})}let vE=U(`ZodMiniOptional`,(e,t)=>{_T.init(e,t),UT.init(e,t)});function Y(e){return new vE({type:`optional`,innerType:e})}let yE=U(`ZodMiniNullable`,(e,t)=>{vT.init(e,t),UT.init(e,t)});function bE(e){return new yE({type:`nullable`,innerType:e})}let xE=U(`ZodMiniPipe`,(e,t)=>{yT.init(e,t),UT.init(e,t)});function SE(e,t){return new xE({type:`pipe`,in:e,out:t})}let CE=U(`ZodMiniCodec`,(e,t)=>{xE.init(e,t),xT.init(e,t)});function wE(e,t,n){return new CE({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}let TE=U(`ZodMiniReadonly`,(e,t)=>{wT.init(e,t),UT.init(e,t)});function X(e){return new TE({type:`readonly`,innerType:e})}let EE=U(`ZodMiniTemplateLiteral`,(e,t)=>{ET.init(e,t),UT.init(e,t)});function DE(e,t){return new EE({type:`template_literal`,parts:e,...fw(t)})}let OE=U(`ZodMiniCustom`,(e,t)=>{DT.init(e,t),UT.init(e,t)});function kE(e,t){return VT(OE,e??(()=>!0),t)}function AE(e,t={}){return HT(OE,e,t)}function jE(e){return e}function ME(e){return e}let Z=()=>DE([`0x`,G()],`Expected address`),NE=()=>wE(oE([Q(),XT()]),XT(),{decode:e=>typeof e==`bigint`?e:e===`0x`?0n:lp(e),encode:e=>L(e)}),Q=()=>DE([`0x`,G()],`Expected hex value`),PE=()=>wE(oE([Q(),KT()]),KT(),{decode:e=>typeof e==`number`?e:e===`0x`?0:dp(e),encode:e=>L(e)}),FE=q({address:Z(),blockHash:Q(),blockNumber:NE(),data:Q(),logIndex:PE(),removed:JT(),topics:X(K(Q())),transactionHash:Q(),transactionIndex:PE()}),IE=q({blobGasPrice:Y(NE()),blobGasUsed:Y(NE()),blockHash:Q(),blockNumber:NE(),contractAddress:bE(Z()),cumulativeGasUsed:NE(),effectiveGasPrice:NE(),feePayer:Y(Z()),feeToken:Y(Z()),from:Z(),gasUsed:NE(),logs:K(FE),logsBloom:Q(),root:Y(Q()),status:wE(Q(),mE([`success`,`reverted`]),{decode:e=>e===`0x1`?`success`:`reverted`,encode:e=>e===`success`?`0x1`:`0x0`}),to:bE(Z()),transactionHash:Q(),transactionIndex:PE(),type:Q()}),LE=kE(),RE=oE([J(`secp256k1`),J(`p256`),J(`webAuthn`)]),zE=q({address:Z(),chainId:NE(),expiry:oE([PE(),eE(),QT()]),keyId:Z(),keyType:RE,limits:Y(X(K(q({token:Z(),limit:NE(),period:Y(PE())})))),signature:LE}),BE=q({data:Y(Q()),to:Y(Z()),value:Y(NE())}),VE=q({accessList:Y(K(q({address:Z(),storageKeys:K(Q())}))),calls:Y(X(K(BE))),chainId:Y(PE()),data:Y(Q()),feePayer:Y(oE([JT(),G()])),feePayerSignature:Y(fE(G(),nE())),feeToken:Y(Z()),from:Y(Z()),gas:Y(NE()),keyAuthorization:Y(zE),keyData:Y(Q()),keyId:Y(Z()),keyType:Y(RE),maxFeePerGas:Y(NE()),maxPriorityFeePerGas:Y(NE()),nonce:Y(PE()),nonceKey:Y(NE()),to:Y(Z()),validAfter:Y(PE()),validBefore:Y(PE()),value:Y(NE())});var HE;(function(e){e.schema=jE({method:J(`eth_accounts`),params:void 0,returns:X(K(Z()))})})(HE||={});var UE;(function(e){e.schema=jE({method:J(`eth_chainId`),params:void 0,returns:Q()})})(UE||={});var WE;(function(e){e.schema=jE({method:J(`eth_requestAccounts`),params:void 0,returns:X(K(Z()))})})(WE||={});var GE;(function(e){e.schema=jE({method:J(`eth_sendTransaction`),params:X(uE([VE])),returns:Q()})})(GE||={});var KE;(function(e){let t=q({address:Z(),decimals:KT(),direction:mE([`incoming`,`outgoing`]),formatted:G(),name:G(),recipients:X(K(Z())),symbol:G(),value:Q()}),n=q({decimals:KT(),formatted:G(),name:G(),symbol:G(),token:Z(),value:Q()});e.schema=jE({method:J(`eth_fillTransaction`),params:X(uE([VE])),returns:q({capabilities:q({balanceDiffs:Y(fE(Z(),X(K(t)))),error:Y(q({abiItem:Y(fE(G(),nE())),data:Y(Q()),errorName:G(),message:G()})),fee:Y(q({amount:Q(),decimals:KT(),formatted:G(),symbol:G()})),requireFunds:Y(q({amount:Q(),decimals:KT(),formatted:G(),token:Z(),symbol:G()})),autoSwap:Y(q({maxIn:n,minOut:n,slippage:KT()})),sponsor:Y(q({address:Z(),name:Y(G()),url:Y(G())})),sponsored:JT()}),tx:fE(G(),nE())})})})(KE||={});var qE;(function(e){e.schema=jE({method:J(`eth_signTransaction`),params:X(uE([VE])),returns:Q()})})(qE||={});var JE;(function(e){e.schema=jE({method:J(`eth_sendTransactionSync`),params:X(uE([VE])),returns:IE})})(JE||={});var YE;(function(e){e.schema=jE({method:J(`eth_signTypedData_v4`),params:X(uE([Z(),G()])),returns:Q()})})(YE||={});var XE;(function(e){e.schema=jE({method:J(`personal_sign`),params:X(uE([Q(),Z()])),returns:Q()})})(XE||={});let ZE=Y(q({feePayer:Y(oE([JT(),G()])),sync:Y(JT())}));var QE;(function(e){e.schema=jE({method:J(`wallet_sendCalls`),params:Y(X(uE([q({atomicRequired:Y(JT()),calls:X(K(BE)),capabilities:ZE,chainId:Y(PE()),from:Y(Z()),version:Y(G())})]))),returns:q({atomic:Y(JT()),capabilities:ZE,chainId:Y(PE()),id:G(),receipts:Y(K(IE)),status:Y(KT()),version:Y(G())})})})(QE||={});var $E;(function(e){e.schema=jE({method:J(`wallet_getBalances`),params:Y(X(uE([q({account:Y(Z()),chainId:Y(PE()),tokens:Y(X(K(Z())))})]))),returns:X(K(q({address:Z(),balance:NE(),decimals:KT(),display:G(),name:G(),symbol:G()})))})})($E||={});var eD;(function(e){e.schema=jE({method:J(`wallet_getCapabilities`),params:Y(X(oE([uE([Z()]),uE([Z(),X(K(Q()))])]))),returns:fE(Q(),q({accessKeys:Y(q({status:oE([J(`supported`),J(`unsupported`)])})),atomic:q({status:oE([J(`supported`),J(`ready`),J(`unsupported`)])}),feePayer:Y(q({status:oE([J(`supported`),J(`unsupported`)])}))}))})})(eD||={});var tD;(function(e){e.parameters=q({address:Y(Z()),chainId:Y(NE()),expiry:KT(),keyType:Y(RE),limits:Y(X(K(q({token:Z(),limit:NE(),period:Y(KT())})))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(oE([Q(),G()])),recipients:Y(X(K(Z())))}))))}),e.returns=q({keyAuthorization:zE,rootAddress:Z()}),e.schema=jE({method:J(`wallet_authorizeAccessKey`),params:X(uE([e.parameters])),returns:e.returns})})(tD||={});var nD;(function(e){e.parameters=q({address:Y(Z()),expiry:KT(),keyType:Y(RE),limits:X(K(q({token:Z(),limit:NE(),period:Y(KT())}))),publicKey:Y(Q()),scopes:Y(X(K(q({address:Z(),selector:Y(oE([Q(),G()])),recipients:Y(X(K(Z())))}))))})})(nD||={});var rD;(function(e){e.schema=jE({method:J(`wallet_revokeAccessKey`),params:X(uE([q({address:Z(),accessKeyAddress:Z()})])),returns:void 0})})(rD||={});var iD;(function(e){e.authorizeAccessKey=Y(tD.parameters),e.capabilities={request:Y(oE([q({digest:Y(Q()),authorizeAccessKey:e.authorizeAccessKey,method:J(`register`),name:Y(G()),userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:e.authorizeAccessKey,method:Y(J(`login`)),selectAccount:Y(JT())})])),result:q({email:Y(bE(G())),keyAuthorization:Y(zE),signature:Y(Q()),username:Y(bE(G()))})},e.schema=jE({method:J(`wallet_connect`),params:Y(X(uE([q({capabilities:e.capabilities.request,chainId:Y(PE()),version:Y(G())})]))),returns:q({accounts:X(K(q({address:Z(),capabilities:e.capabilities.result})))})})})(iD||={});var aD;(function(e){let t=Y(nD.parameters);e.parameters=q({capabilities:Y(oE([q({digest:Y(Q()),authorizeAccessKey:t,method:J(`register`),name:Y(G()),userId:Y(G())}),q({digest:Y(Q()),credentialId:Y(G()),authorizeAccessKey:t,method:Y(J(`login`)),selectAccount:Y(JT())})])),chainId:Y(PE()),version:Y(G())})})(aD||={});var oD;(function(e){e.schema=jE({method:J(`wallet_disconnect`),params:void 0,returns:void 0})})(oD||={});var sD;(function(e){e.schema=jE({method:J(`wallet_getCallsStatus`),params:Y(X(uE([G()]))),returns:q({atomic:JT(),chainId:PE(),id:G(),receipts:Y(K(IE)),status:KT(),version:G()})})})(sD||={});var cD;(function(e){e.parameters=q({feePayer:Y(oE([JT(),G()])),to:Y(Z()),token:Y(Z()),value:Y(G())}),e.schema=jE({method:J(`wallet_send`),params:Y(X(uE([e.parameters]))),returns:q({chainId:PE(),receipt:IE})})})(cD||={});let lD=q({amount:Y(G()),pairToken:Y(Z()),slippage:Y(KT().check(LT(0),IT(1))),token:Y(Z()),type:Y(oE([J(`buy`),J(`sell`)]))});var uD;(function(e){e.schema=jE({method:J(`wallet_swap`),params:Y(X(uE([lD]))),returns:q({receipt:IE})})})(uD||={});var dD;(function(e){e.schema=jE({method:J(`wallet_switchEthereumChain`),params:X(uE([q({chainId:PE()})])),returns:void 0})})(dD||={});var fD;(function(e){e.schema=jE({method:J(`wallet_deposit`),params:X(uE([q({address:Y(Z()),chainId:Y(PE()),displayName:Y(G()),token:Y(Z()),value:Y(G())})])),returns:Y(q({receipts:Y(X(K(IE)))}))})})(fD||={});var pD;(function(e){e.parameters=q({amount:Y(G()),feePayer:Y(oE([JT(),G()])),token:Y(Z()),zoneId:Y(PE())}),e.schema=jE({method:J(`wallet_depositZone`),params:Y(X(uE([e.parameters]))),returns:q({receipt:IE})})})(pD||={});var mD;(function(e){e.parameters=q({amount:Y(G()),token:Y(Z()),zoneId:Y(PE())}),e.schema=jE({method:J(`wallet_withdrawZone`),params:Y(X(uE([e.parameters]))),returns:q({receipt:IE})})})(mD||={}),nD.parameters,aD.parameters;let hD=ME([HE.schema,UE.schema,KE.schema,WE.schema,GE.schema,JE.schema,qE.schema,YE.schema,XE.schema,tD.schema,iD.schema,fD.schema,pD.schema,oD.schema,$E.schema,sD.schema,eD.schema,rD.schema,cD.schema,QE.schema,uD.schema,dD.schema,mD.schema]),gD=qC();function _D(e){return e.params?q({method:e.method,params:e.params}):q({method:e.method})}let vD=cE(`method`,hD.map(_D));function yD(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 bD=class extends Error{status=402;toProblemDetails(e){return{type:this.type,title:this.title,status:this.status,detail:this.message,...e&&{challengeId:e}}}},xD=class extends bD{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}.`)}},$=class extends bD{name=`VerificationFailedError`;title=`Verification Failed`;type=`https://paymentauth.org/problems/verification-failed`;constructor(e={}){let{reason:t}=e;super(t?`Payment verification failed: ${t}.`:`Payment verification failed.`)}},SD=class extends bD{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 CD(e,t){if(!e)throw new xD({...t&&{id:t},reason:`missing required expires field`});if(Number.isNaN(new Date(e).getTime()))throw new xD({...t&&{id:t},reason:`malformed expires timestamp`});if(new Date(e)<new Date)throw new SD({expires:e})}function wD(e){let t=sb(e);return JSON.parse(t)}function TD(e){return ab(Cf(e),{pad:!1,url:!0})}function ED(){return G().check(BT(/^\\d+(\\.\\d+)?$/,`Invalid amount`))}function DD(){return G().check(BT(/^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2})$/,`Invalid ISO 8601 datetime`))}function OD(e=`Invalid ISO 8601 datetime`){return SE(oE([DD(),kE(e=>e instanceof Date)]),_E(kD)).check(AE(e=>Number.isFinite(e.getTime()),e))}function kD(e){return e instanceof Date?e:new Date(e)}function AD(e){return e instanceof Date?Number.isFinite(e.getTime())?e.toISOString():`Invalid Date`:e}function jD(){return G().check(BT(/^0x[0-9a-fA-F]{40}$/,`Invalid address`))}function MD(){return G().check(BT(/^0x[0-9a-fA-F]{64}$/,`Invalid hash`))}function ND(){return G().check(BT(/^0x[0-9a-fA-F]+$/,`Invalid signature`))}let PD=q({description:Y(G()),digest:Y(G().check(BT(/^sha-256=/,`Invalid digest format`))),expires:Y(DD()),id:G(),intent:G(),method:G(),meta:Y(fE(G(),G())),opaque:Y(G()),realm:G(),request:fE(G(),nE())});function FD(e,t){let{description:n,digest:r,meta:i,method:a,intent:o,realm:s,request:c,secretKey:l}=e,u=e.expires?AD(e.expires):void 0,d=e.opaque??(i===void 0?void 0:TD(i)),f=l?JD({...e,expires:u,...i!==void 0&&{meta:i},opaque:d},{secretKey:l}):e.id;return PD.parse({id:f,realm:s,method:a,intent:o,request:c,...n&&{description:n},...r&&{digest:r},...u&&{expires:u},...i!==void 0&&{meta:i},...d!==void 0&&{opaque:d}})}function ID(e,t){let n=LD(e);if(!n)throw Error(`Missing Payment scheme.`);let{request:r,opaque:i,...a}=RD(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 FD({...a,request:wD(r),...i&&{opaque:i}},t)}function LD(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(!VD(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 RD(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]=zD(e,n);if(n=o,i in t)throw Error(`Duplicate parameter: ${i}`);t[i]=a}return t}function zD(e,t){if(e[t]===`\"`)return BD(e,t+1);let n=t;for(;n<e.length&&e[n]!==`,`;)n++;return[e.slice(t,n).trim(),n]}function BD(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 VD(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 HD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return ID(n,t)}function UD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return HD(e.headers,t)}function WD(e,t){if(e.status!==402)throw Error(`Response status is not 402.`);return GD(e.headers,t)}function GD(e,t){let n=e.get(`WWW-Authenticate`);if(!n)throw Error(`Missing WWW-Authenticate header.`);return KD(n,t)}function KD(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 ID(e.slice(r,a).replace(/,\\s*$/,``),t)})}function qD(e){return[e.realm,e.method,e.intent,TD(e.request),e.expires??``,e.digest??``,e.opaque??(e.meta?TD(e.meta):``)].join(`|`)}function JD(e,t){let n=qD(e);return rb(Ug(Nf(t.secretKey),Nf(n),{as:`Bytes`}),{url:!0,pad:!1})}function YD(e){let t={};for(let n of e){let e=t[n.name]??={};e[n.intent]=tO(n)}return t}function XD(e,t){let n=YD(e),r=sO(e,n,t),i=e.map((e,t)=>({intent:e.intent,method:e.name,q:r[tO(e)]??1,index:t}));return{definition:r,entries:i,header:QD(i),keys:n}}function ZD(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)=>aO(e,t))}function QD(e){return e.map(({method:e,intent:t,q:n})=>{let r=`${e}/${t}`;return n===1?r:`${r};q=${dO(n)}`}).join(`, `)}function $D(e,t){return e.map((e,n)=>{let r=nO(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 eO(e,t,n){let r=new Map;for(let e of t){let t=tO(e);r.has(t)||r.set(t,e)}let i=$D(e.filter(e=>r.has(tO(e))),n)[0];if(i)return{challenge:i,method:r.get(tO(i))}}function tO(e){let t=e.method??e.name;if(!t)throw Error(`Missing payment method name.`);return`${t}/${e.intent}`}function nO(e,t){let n;for(let r of t){if(!rO(e,r))continue;let t={...r,specificity:iO(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 rO(e,t){return(t.method===`*`||t.method===e.method)&&(t.intent===`*`||t.intent===e.intent)}function iO(e){return Number(e.method!==`*`)+Number(e.intent!==`*`)}function aO(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}`);fO(r,`method`),fO(i,`intent`);let a=1;for(let t of oO(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=lO(i,`Accept-Payment entry \"${e}\"`))}return{intent:i,method:r,q:a,index:t}}function oO(e){return e?e.split(/\\s*;\\s*/).filter(Boolean):[]}function sO(e,t,n){if(!n)return{};let r=typeof n==`function`?n(t):n,i=new Set(e.map(e=>tO(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]=cO(t,`payment preference \"${e}\"`)}return a}function cO(e,t){if(typeof e!=`number`||Number.isNaN(e)||!Number.isFinite(e))throw Error(`Invalid q-value for ${t}. Expected a finite number.`);return uO(e,t)}function lO(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 uO(Number(e),t)}function uO(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 dO(e){return e.toFixed(3).replace(/\\.0+$/,``).replace(/(\\.\\d*?)0+$/,`$1`)}function fO(e,t){if(e!==`*`&&!/^[a-z0-9-]+$/.test(e))throw Error(`Invalid Accept-Payment ${t}: ${e}`)}let pO=Symbol.for(`mppx.fetch.wrapper`),mO;function hO(e){let{acceptPayment:t,acceptPaymentPolicy:n=`always`,fetch:r=globalThis.fetch,methods:i,onChallenge:a}=e,o=e.eventDispatcher??vO(),s=t??XD(i),c=LO(r),l=async(e,t)=>{let r=IO(e,t?.headers),l=r.has(`Accept-Payment`),u=BO(r,s),d=FO(e,t,r,u.header,l,n),f=await c(d.input,d.init);if(f.status!==402)return f;let p=t?.context,{context:m,...h}=d.init??{},g,_,v;try{_=WD(f);let n=eO(_,i,u.entries);if(!n)throw Error(`No method found for challenges: ${_.map(e=>`${e.method}.${e.intent}`).join(`, `)}. Available: ${i.map(e=>`${e.name}.${e.intent}`).join(`, `)}`);let r=n.challenge;g=r,v=n.method,g.expires&&CD(g.expires,g.id);let s=SO(e=>zO(r,n.method,e??p)),l=await o.emit(`challenge.received`,CO({challenge:r,challenges:_,createCredential:s,init:t,input:e,method:n.method,response:f}))??(a?await a(g,{createCredential:s}):void 0)??await s();RO(l),await o.emit(`credential.created`,wO({challenge:r,credential:l,init:t,input:e,method:n.method,response:f}));let m=await c(d.input,{...h,headers:PO(d.headers,l)});return m.ok&&await o.emit(`payment.response`,TO({challenge:r,credential:l,init:t,input:e,method:n.method,response:m})),m}catch(n){throw await o.emit(`payment.failed`,EO({challenge:g,challenges:_,error:n,init:t,input:e,method:v,response:f})),n}};return l[pO]=c,l}function gO(e){let t=Object.getOwnPropertyDescriptor(globalThis,`fetch`);if(!t||!t.writable&&!t.set)throw Error(`globalThis.fetch is not writable`);mO||=globalThis.fetch,globalThis.fetch=hO({...e,acceptPaymentPolicy:e.acceptPaymentPolicy??(UO()?`same-origin`:`always`),fetch:globalThis.fetch})}function _O(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 vO(){let e={\"*\":new Set,\"challenge.received\":new Set,\"credential.created\":new Set,\"payment.failed\":new Set,\"payment.response\":new Set};return{async emit(t,n){switch(t){case`challenge.received`:{let r;for(let t of e[`challenge.received`]){let e=await yO(t,n);if(typeof e==`string`&&e.length>0){r=e;break}}return await xO(e[`*`],t,n),r}case`credential.created`:await bO(e[`credential.created`],n),await xO(e[`*`],t,n);return;case`payment.failed`:await bO(e[`payment.failed`],n),await xO(e[`*`],t,n);return;case`payment.response`:await bO(e[`payment.response`],n),await xO(e[`*`],t,n);return}},on:(t,n)=>{switch(t){case`*`:case`challenge.received`:case`credential.created`:case`payment.failed`:case`payment.response`:return e[t].add(n),()=>e[t].delete(n);default:throw Error(`Unknown client event \"${String(t)}\".`)}}}}async function yO(e,t){try{return await e(t)}catch{return}}async function bO(e,t){for(let n of e)try{await n(t)}catch{}}async function xO(e,t,n){await bO(e,Object.freeze({name:t,payload:n}))}function SO(e){let t;return n=>(t??=e(n),t)}function CO(e){return Object.freeze({challenge:jO(e.challenge),challenges:e.challenges.map(e=>jO(e)),createCredential:e.createCredential,init:DO(e.init),input:OO(e.input),method:kO(e.method),response:AO(e.response)})}function wO(e){return Object.freeze({challenge:jO(e.challenge),credential:e.credential,init:DO(e.init),input:OO(e.input),method:kO(e.method),...e.response===void 0?{}:{response:AO(e.response)}})}function TO(e){return Object.freeze({challenge:jO(e.challenge),credential:e.credential,init:DO(e.init),input:OO(e.input),method:kO(e.method),response:AO(e.response)})}function EO(e){return Object.freeze({...e.challenge?{challenge:jO(e.challenge)}:{},...e.challenges?{challenges:e.challenges.map(e=>jO(e))}:{},error:e.error,init:DO(e.init),input:OO(e.input),...e.method?{method:kO(e.method)}:{},...e.response===void 0?{}:{response:AO(e.response)}})}function DO(e){if(e)return NO({...e,...e.headers?{headers:new Headers(e.headers)}:{}})}function OO(e){return e instanceof Request?e.clone():e instanceof URL?new URL(e):e}function kO(e){return NO(Object.assign({},e))}function AO(e){return e instanceof Response?e.clone():jO(e)}function jO(e){try{return MO(structuredClone(e))}catch{return NO(e)}}function MO(e){if(!e||typeof e!=`object`||Object.isFrozen(e))return e;Object.freeze(e);for(let t of Object.values(e))MO(t);return e}function NO(e){return!e||typeof e!=`object`||Object.isFrozen(e)||Object.freeze(e),e}function PO(e,t){let n=_O(e);for(let e of Object.keys(n))e.toLowerCase()===`authorization`&&delete n[e];return n.Authorization=t,n}function FO(e,t,n,r,i,a){let o=!!r&&!i&&VO(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 IO(e,t){return t?new Headers(t):new Headers(e instanceof Request?e.headers:void 0)}function LO(e){let t=e;for(;t[pO];)t=t[pO];return t}function RO(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 zO(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 BO(e,t){let n=e.get(`Accept-Payment`);if(!n)return t;try{return{...t,entries:ZD(n),header:n}}catch{return t}}function VO(e,t){if(t===`always`)return!0;if(t===`never`)return!1;let n=WO(e);return t===`same-origin`?UO()?n.origin===globalThis.location.origin:!0:t.origins.some(e=>HO(n,e))}function HO(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 UO(){return globalThis.location!==void 0}function WO(e){return e instanceof URL?e:e instanceof Request?new URL(e.url):new URL(e,UO()?globalThis.location.href:void 0)}var GO=class extends Error{name=`MissingPaymentSchemeError`;constructor(){super(`Missing Payment scheme.`)}},KO=class extends Error{name=`InvalidCredentialEncodingError`;constructor(){super(`Invalid base64url or JSON.`)}};function qO(e){let t=e.match(/^Payment\\s+(.+)$/i);if(!t?.[1])throw new GO;try{let e=sb(t[1]),n=JSON.parse(e),{opaque:r,request:i,...a}=n.challenge,{meta:o,opaque:s}=JO(r);return{challenge:PD.parse({...a,...o!==void 0&&{meta:o},...s!==void 0&&{opaque:s},request:wD(i)}),payload:n.payload,...n.source&&{source:n.source}}}catch{throw new KO}}function JO(e){if(e===void 0)return{};if(typeof e==`string`)return{opaque:e};if(!YO(e))throw Error(`Invalid opaque.`);return{meta:e,opaque:TD(e)}}function YO(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`string`)}function XO(e){let{meta:t,opaque:n,request:r,...i}=e.challenge,a=n??(t===void 0?void 0:TD(t)),o={challenge:{...i,...a!==void 0&&{opaque:a},request:TD(r)},payload:e.payload,...e.source&&{source:e.source}};return`Payment ${ab(JSON.stringify(o),{pad:!1,url:!0})}`}function ZO(e){return e}function QO(e,t){let{context:n,createCredential:r}=t;return{...e,context:n,createCredential:r}}let $O=new Map;async function ek(e){$O.set(e,($O.get(e)??0)+1),await Promise.resolve();let t=($O.get(e)??0)>1;return queueMicrotask(()=>{let t=$O.get(e)??0;t<=1?$O.delete(e):$O.set(e,t-1)}),t}ad(),$u();let tk={blockTime:1e3,extendSchema:Eh(),formatters:{transaction:md({exclude:[`aaAuthorizationList`],format:sC}),transactionReceipt:Ym({format:cC}),transactionRequest:Qu({format:lC})},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 ek(e):!1})()?(n.nonceKey=id,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)=>fS(e,t))},async verifyHash(e,t){let{address:n,hash:r,signature:i}=t;if(typeof i==`string`&&i.endsWith(`7777777777777777777777777777777777777777777777777777777777777777`)){let a=Ub(i);if(a.type!==`keychain`){let i=await ah(e,{address:n,blockNumber:t.blockNumber,blockTag:t.blockTag});if(!i||i===`0xef01007702c00000000000000000000000000000000000`)return Yb(a,{address:n,payload:r})}}return await E(e,yy,`verifyHash`)({...t,chain:null})}},nk=Th({...tk,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`]}}}),rk=Th({...tk,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`]}}}),ik=Th({...tk,id:1337,name:`Tempo`,nativeCurrency:{name:`USD`,symbol:`USD`,decimals:6},rpcUrls:{default:{http:[`http://localhost:8545`]}}}),ak=Th({...tk,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`]}}});function ok(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 va(r)}}function sk(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=ih({chain:i.chain,transport:KC(Ay(e),Ay(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?KC(Ay(a),Ay(n)):Ay(a);return ih({chain:{...t,id:r},transport:o})}}let ck={mainnet:4217,testnet:42431},lk={usdc:`0x20C000000000000000000000b9537d11c60E8b50`,pathUsd:`0x20c0000000000000000000000000000000000000`};ck.mainnet,lk.usdc,ck.testnet,lk.pathUsd;let uk={[ck.mainnet]:`0x33b901018174DDabE4841042ab76ba85D4e24f25`,[ck.testnet]:`0xe1c4d3dce17bc111181ddf716f75bae49e61a336`},dk={[ck.mainnet]:`https://rpc.tempo.xyz`,[ck.testnet]:`https://rpc.moderato.tempo.xyz`},fk=[`push`,`pull`],pk=q({amount:ED(),memo:Y(MD()),recipient:SE(G(),_E(e=>e))}),mk=(1n<<64n)-1n,hk=SE(jD(),_E(e=>e.toLowerCase())),gk=q({accessKeyAddress:hk,keyType:mE([`p256`,`secp256k1`,`webAuthn`])}),_k=q({accessKey:Y(gk),chainId:Y(KT())}),vk=OD(`subscriptionExpires must be a valid date`).check(AE(e=>e.getTime()%1e3==0,`subscriptionExpires must be representable as whole seconds`)),yk=mE([`day`,`week`]),bk=SE(oE([G(),XT(),kE(e=>typeof e==`number`&&Number.isSafeInteger(e))]),_E(e=>e.toString())).check(BT(/^[1-9]\\d*$/,`Invalid periodCount`),AE(e=>{try{return BigInt(e)<=mk}catch{return!1}},`periodCount exceeds uint64`));function xk(e){return AE(e=>{let{amount:t,decimals:n}=e;return ny(t,n)>0n},e)}function Sk(e){let{periodCount:t,periodUnit:n}=e;try{let e=n===`day`?86400n:604800n;return BigInt(t)*e<=mk}catch{return!1}}let Ck=ZO({name:`tempo`,intent:`charge`,schema:{credential:{payload:cE(`type`,[q({hash:MD(),type:J(`hash`)}),q({signature:ND(),type:J(`transaction`)}),q({signature:ND(),type:J(`proof`)})])},request:SE(q({amount:ED(),chainId:Y(KT()),currency:G(),decimals:KT(),description:Y(G()),externalId:Y(G()),feePayer:Y(SE(oE([JT(),kE()]),_E(e=>typeof e==`object`?!0:e))),memo:Y(MD()),recipient:Y(G()),splits:Y(K(pk).check(zT(1),RT(10))),supportedModes:Y(K(mE(fk)).check(zT(1)))}).check(AE(({amount:e,decimals:t,splits:n})=>{if(!n)return!0;let r=ny(e,t),i=n.reduce((e,n)=>e+ny(n.amount,t),0n);return n.every(e=>ny(e.amount,t)>0n)&&i<r},`Invalid splits`)),_E(({amount:e,chainId:t,decimals:n,feePayer:r,memo:i,splits:a,supportedModes:o,...s})=>({...s,amount:ny(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:ny(e.amount,n).toString()}))},...o!==void 0&&{supportedModes:o}}}:{}})))}}),wk=ZO({name:`tempo`,intent:`session`,schema:{credential:{payload:cE(`action`,[q({action:J(`open`),authorizedSigner:Y(G()),channelId:MD(),cumulativeAmount:ED(),signature:ND(),transaction:ND(),type:J(`transaction`)}),q({action:J(`topUp`),additionalDeposit:ED(),channelId:MD(),transaction:ND(),type:J(`transaction`)}),q({action:J(`voucher`),channelId:MD(),cumulativeAmount:ED(),signature:ND()}),q({action:J(`close`),channelId:MD(),cumulativeAmount:ED(),signature:ND()})])},request:SE(q({amount:ED(),chainId:Y(KT()),channelId:Y(MD()),currency:G(),decimals:KT(),escrowContract:Y(G()),feePayer:Y(SE(oE([JT(),kE()]),_E(e=>typeof e==`object`?!0:e))),minVoucherDelta:Y(ED()),recipient:Y(G()),suggestedDeposit:Y(ED()),unitType:G()}).check(AE(({amount:e,decimals:t})=>ny(e,t)>0n,`Session amount must be greater than 0`)),_E(({amount:e,chainId:t,channelId:n,decimals:r,escrowContract:i,feePayer:a,minVoucherDelta:o,suggestedDeposit:s,...c})=>({...c,amount:ny(e,r).toString(),...s?{suggestedDeposit:ny(s,r).toString()}:{},methodDetails:{escrowContract:i,...n!==void 0&&{channelId:n},...o!==void 0&&{minVoucherDelta:ny(o,r).toString()},...t!==void 0&&{chainId:t},...a!==void 0&&{feePayer:a}}})))}}),Tk=ZO({name:`tempo`,intent:`subscription`,schema:{credential:{payload:q({signature:ND(),type:J(`keyAuthorization`)})},request:SE(q({amount:ED(),accessKey:Y(gk),chainId:Y(KT()),currency:hk,decimals:KT(),description:Y(G()),externalId:Y(G()),methodDetails:Y(_k),periodCount:bk,periodUnit:yk,recipient:hk,subscriptionExpires:vk}).check(xk(`Subscription amount must be greater than 0`),AE(Sk,`Subscription period exceeds uint64`)),_E(({accessKey:e,amount:t,chainId:n,decimals:r,methodDetails:i,subscriptionExpires:a,...o})=>{let s={...i,...e!==void 0&&{accessKey:e},...n!==void 0&&{chainId:n}};return{...o,amount:ny(t,r).toString(),subscriptionExpires:a.toISOString(),...Object.keys(s).length>0?{methodDetails:s}:{}}}))}}),Ek=(1n<<64n)-1n;function Dk(e){return e instanceof Date?e:new Date(e)}function Ok(e){let t=e.getTime();if(!Number.isFinite(t))throw new $({reason:`subscriptionExpires is invalid`});if(t%1e3!=0)throw new $({reason:`subscriptionExpires must be representable as whole seconds`});let n=t/1e3;if(n<=0||!Number.isSafeInteger(n))throw new $({reason:`subscriptionExpires cannot be represented in a Tempo key authorization`});return n}function kk(e){if(!/^[1-9]\\d*$/.test(e.periodCount))throw new $({reason:`periodCount is invalid`});if(e.periodUnit!==`day`&&e.periodUnit!==`week`)throw new $({reason:`periodUnit is invalid`});let t=e.periodUnit===`day`?86400n:604800n,n=BigInt(e.periodCount)*t;if(n>Ek)throw new $({reason:`subscription period cannot be represented as an unsigned 64-bit integer`});if(n>BigInt(2**53-1))throw new $({reason:`subscription period cannot be represented exactly by this Tempo client`});return Number(n)}function Ak(e){let{challengeExpires:t,request:n}=e;kk(n);let r=Ok(Dk(n.subscriptionExpires));if(t){let e=Math.floor(new Date(t).getTime()/1e3);if(!Number.isFinite(e)||r<=e)throw new $({reason:`subscriptionExpires must be strictly later than challenge expires`})}}function jk(e){let t=Wk(e.currency,`currency`),n=Wk(e.recipient,`recipient`);return[{address:t,selector:`0xa9059cbb`,recipients:[n]},{address:t,selector:`0x95777d59`,recipients:[n]}]}function Mk(e){let[t,n]=jk(e);return[{target:Wk(e.currency,`currency`),selectorRules:[{selector:t.selector,recipients:t.recipients},{selector:n.selector,recipients:n.recipients}]}]}async function Nk(e){let{accessKey:t,account:n,chainId:r,request:i}=e;if(typeof n.sign!=`function`)return;let a=Fk({accessKey:t,chainId:r,request:i});return dx(a,{signature:Wb(await n.sign({hash:mx(a)}))})}function Pk(e){let{accessKey:t,chainId:n,payload:r,request:i}=e;if(r.type!==`keyAuthorization`)throw new $({reason:`invalid keyAuthorization payload`});let a=Ik(r.signature),o=Lk(a);return Rk({accessKey:t,authorization:a,chainId:n}),zk(a,i),Vk(Bk(a),i),Hk(a.scopes,i),{authorization:a,source:{address:Uk(a,o),chainId:n}}}function Fk(e){let{accessKey:t,chainId:n,request:r}=e;return dx({address:Wk(t.accessKeyAddress,`accessKeyAddress`),chainId:BigInt(n),expiry:Ok(Dk(r.subscriptionExpires)),limits:[{token:Wk(r.currency,`currency`),limit:BigInt(r.amount),period:kk(r)}],scopes:jk(r),type:t.keyType})}function Ik(e){try{return hx(e)}catch{throw new $({reason:`invalid keyAuthorization payload`})}}function Lk(e){let t=e.signature;if(!t||t.type===`keychain`)throw new $({reason:`keyAuthorization must use a primitive signature`});return t}function Rk(e){let{accessKey:t,authorization:n,chainId:r}=e;if(n.chainId!==BigInt(r))throw new $({reason:`keyAuthorization chainId mismatch`});if(t){if(!Gd(n.address,Wk(t.accessKeyAddress,`accessKeyAddress`)))throw new $({reason:`keyAuthorization access key mismatch`});if(n.type!==t.keyType)throw new $({reason:`keyAuthorization key type mismatch`})}}function zk(e,t){if(Ak({request:t}),e.expiry!==Ok(Dk(t.subscriptionExpires)))throw new $({reason:`keyAuthorization expiry mismatch`})}function Bk(e){let[t]=e.limits??[];if(!t||e.limits?.length!==1)throw new $({reason:`keyAuthorization must contain exactly one token limit`});return t}function Vk(e,t){if(!Gd(e.token,Wk(t.currency,`currency`)))throw new $({reason:`keyAuthorization currency mismatch`});if(e.limit!==BigInt(t.amount))throw new $({reason:`keyAuthorization amount mismatch`});if(e.period!==kk(t))throw new $({reason:`keyAuthorization period mismatch`})}function Hk(e,t){if(!e||e.length<1||e.length>2)throw new $({reason:`keyAuthorization must contain recipient-scoped transfer calls`});let n=Wk(t.currency,`currency`),r=Wk(t.recipient,`recipient`),i=new Set;for(let t of e){if(!Gd(t.address,n))throw new $({reason:`keyAuthorization call target mismatch`});let e=Gk(t.selector);if(e!==`0xa9059cbb`&&e!==`0x95777d59`)throw new $({reason:`keyAuthorization selector not allowed`});if(i.has(e))throw new $({reason:`keyAuthorization duplicate selector`});if(i.add(e),t.recipients?.length!==1||!Gd(t.recipients[0],r))throw new $({reason:`keyAuthorization recipient mismatch`})}if(!i.has(`0xa9059cbb`))throw new $({reason:`keyAuthorization must allow transfer`});if(!i.has(`0x95777d59`))throw new $({reason:`keyAuthorization must allow transferWithMemo`})}function Uk(e,t){let n=mx(e);try{let e=Vb({payload:n,signature:t});if(!Yb(t,{address:e,payload:n}))throw new $({reason:`keyAuthorization signature is invalid`});return e}catch(e){throw e instanceof $?e:new $({reason:`keyAuthorization signature is invalid`})}}function Wk(e,t){if(!Ii(e))throw new $({reason:`${t} must be an address`});return e.toLowerCase()}function Gk(e){return typeof e==`string`?e.toLowerCase():``}let Kk=q({accessKey:Y(kE()),account:Y(kE())});function qk(e={}){let t=sk({chain:nk,getClient:e.getClient,rpcUrl:dk}),n=ok({account:e.account});return QO(Tk,{context:Kk,async createCredential({challenge:r,context:i}){let a=r.request.methodDetails?.chainId??ck.testnet,o=await t({chainId:a}),s=n(o,i),c=i?.accessKey??e.accessKey??r.request.methodDetails?.accessKey;if(!c)throw Error(\"No `accessKey` provided. The subscription challenge must include `accessKey`, or the client must pass one to parameters/context.\");Yk(r.request),await e.validateRequest?.(r.request);let l=await Jk(o,{accessKey:c,account:s,chainId:a,request:r.request});if(!Gd(Pk({accessKey:c,chainId:a,payload:{signature:_x(l),type:`keyAuthorization`},request:r.request}).source.address,s.address))throw Error(`keyAuthorization signer does not match the selected account`);return XO({challenge:r,payload:{signature:_x(l),type:`keyAuthorization`},source:`did:pkh:eip155:${a}:${s.address.toLowerCase()}`})}})}async function Jk(e,t){let{accessKey:n,account:r,chainId:i,request:a}=t;return await Nk({accessKey:n,account:r,chainId:i,request:a})||fx((await e.request({method:`wallet_authorizeAccessKey`,params:[{address:n.accessKeyAddress,allowedCalls:Mk(a),expiry:Ok(Dk(a.subscriptionExpires)),keyType:n.keyType,limits:[{token:a.currency,limit:BigInt(a.amount),period:kk(a)}]}]})).keyAuthorization)}function Yk(e){kk(e),Ok(Dk(e.subscriptionExpires))}let Xk=R(Hg(Nf(`mpp`),{as:`Hex`}),0,4);function Zk(e){return up(R(Hg(Nf(e),{as:`Hex`}),0,10))}function Qk(e){let{serverId:t,clientId:n,challengeId:r}=e,i=new Uint8Array(32);return i.set(up(Xk),0),i[4]=1,i.set(Zk(t),5),n&&i.set(Zk(n),15),i.set($k(r),25),I(i)}function $k(e){return up(R(Hg(Nf(e),{as:`Hex`}),0,7))}function eA(e,t){return e.toLowerCase()===t.toLowerCase()}let tA=[lk.pathUsd,lk.usdc];async function nA(e,t){let{account:n,amountOut:r,tokenOut:i,tokenIn:a,slippage:o}=t,s=a.filter(e=>!eA(e,i)),c=await Promise.allSettled([jm(e,KS.call({account:n,token:i})),...s.map(t=>jm(e,KS.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 AS(e,{tokenIn:l,tokenOut:i,amountOut:r});if(a>=t){let e=t+t*BigInt(Math.round(o*100))/10000n;return[BS.call({token:l,spender:wS,amount:e}),TS.call({tokenIn:l,tokenOut:i,amountOut:r,maxAmountIn:e})]}}catch{}}throw new iA({currency:i})}}function rA(e,t){return e?e===!0?{tokenIn:t,slippage:1}:{tokenIn:e.tokenIn?[...e.tokenIn,...t.filter(t=>!e.tokenIn.some(e=>eA(e,t)))]:t,slippage:e.slippage??1}:!1}var iA=class extends Error{name=`InsufficientFundsError`;constructor({currency:e}){super(`Insufficient funds: no balance in ${e} and no viable swap route from fallback currencies.`)}};function aA(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 oA={Proof:[{name:`challengeId`,type:`string`},{name:`realm`,type:`string`}]};function sA(e){return{name:`MPP`,version:`2`,chainId:e}}function cA(e,t){return{challengeId:e,realm:t}}function lA(e){return`did:pkh:eip155:${e.chainId}:${e.address}`}function uA(e={}){let{clientId:t}=e,n=sk({chain:nk,getClient:e.getClient,rpcUrl:dk}),r=ok({account:e.account});return QO(Ck,{context:q({account:Y(kE()),autoSwap:Y(kE()),mode:Y(mE(fk))}),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 XO({challenge:i,payload:{signature:await Ey(s,{account:c,domain:sA(o),types:oA,primaryType:`Proof`,message:cA(i.id,i.realm)}),type:`proof`},source:lA({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:Qk({challengeId:i.id,clientId:t,serverId:i.realm}),g=aA({amount:u,methodDetails:{...d,memo:h},recipient:l.recipient}).map(e=>rC.call({amount:BigInt(e.amount),...e.memo&&{memo:e.memo},to:e.recipient,token:f})),_=rA(a?.autoSwap??e.autoSwap,tA),v=[...(_?await nA(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 wy(s,{account:c,calls:v,experimental_fallback:!0}),t=e?.[0]?.transactionHash;if(!t)throw Error(`No transaction receipt returned.`);return XO({challenge:i,payload:{hash:t,type:`hash`},source:`did:pkh:eip155:${o}:${c.address}`})}let b=await Ud(s,{account:c,calls:v,...d?.feePayer&&{feePayer:!0},nonceKey:`expiring`,validBefore:y});return b.gas+=5000n,XO({challenge:i,payload:{signature:await Ty(s,b),type:`transaction`},source:`did:pkh:eip155:${o}:${c.address}`})}})}function dA(e,t){return{name:`Tempo Stream Channel`,version:`1`,chainId:t,verifyingContract:e}}let fA={Voucher:[{name:`channelId`,type:`bytes32`},{name:`cumulativeAmount`,type:`uint128`}]};async function pA(e,t,n,r,i,a){let o=await Ey(e,{account:t,domain:dA(r,i),types:fA,primaryType:`Voucher`,message:{channelId:n.channelId,cumulativeAmount:n.cumulativeAmount}});if(a)try{let e=Wb(o);if(e.type===`keychain`&&e.inner.type===`secp256k1`)return vv(e.inner.signature)}catch{}return o}function mA(e){return Hg(U_(G_([`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 hA=[{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 gA(e,t,n){return jm(e,{address:t,abi:hA,functionName:`getChannel`,args:[n]})}ma({abi:hA,name:`open`}),ma({abi:hA,name:`topUp`});function _A(e,t,n){let r=e.request.methodDetails?.escrowContract,i=n??r??uk[t];if(!i)throw Error(\"No `escrowContract` available. Provide it in parameters or ensure the server challenge includes it.\");return i}function vA(e,t,n,r){return XO({challenge:e,payload:t,source:`did:pkh:eip155:${n}:${r.address}`})}async function yA(e,t,n,r,i,a,o){let s=await pA(e,t,{channelId:n,cumulativeAmount:r},i,a,o);return{action:`voucher`,channelId:n,cumulativeAmount:r.toString(),signature:s}}async function bA(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=op(32),f=mA({authorizedSigner:u,chainId:c,escrowContract:r,payee:i,payer:t.address,salt:d,token:a}),p=Ca({abi:V,functionName:`approve`,args:[r,o]}),m=Ca({abi:hA,functionName:`open`,args:[i,a,o,d,u]}),h=await Ud(e,{account:t,calls:[{to:a,data:p},{to:r,data:m}],...l&&{feePayer:!0},feeToken:a});h.gas+=5000n;let g=await Ty(e,h),_=await pA(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 xA(e,t,n,r){try{let i=await gA(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 SA=q({account:Y(kE()),action:Y(mE([`open`,`topUp`,`voucher`,`close`])),channelId:Y(G()),cumulativeAmount:Y(ED()),cumulativeAmountRaw:Y(G()),transaction:Y(G()),authorizedSigner:Y(G()),additionalDeposit:Y(ED()),additionalDepositRaw:Y(G()),depositRaw:Y(G())});function CA(e={}){let{decimals:t=6}=e,n=sk({chain:nk,getClient:e.getClient,rpcUrl:dk}),r=ok({account:e.account}),i=t=>e.authorizedSigner??t.accessKeyAddress,a=e.maxDeposit===void 0?void 0:ny(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 _A(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 ny(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),C=u(v,y,_),w=s.get(C);if(!w){let e=p?.channelId??m?.channelId;if(e){let n=await xA(g,_,e,h);if(n){let e=p?.cumulativeAmountRaw?BigInt(p.cumulativeAmountRaw):p?.cumulativeAmount?ny(p.cumulativeAmount,t):void 0;e!==void 0&&(n.cumulativeAmount=e),s.set(C,n),c.set(n.channelId,C),o.set(n.channelId,_),w=n,l(w)}else if(p?.channelId)throw Error(`Channel ${p.channelId} cannot be reused (closed or not found on-chain).`)}}let T;if(w?.opened)w.cumulativeAmount+=b,T=await yA(g,f,w.channelId,w.cumulativeAmount,_,h,te),l(w);else{let e=await bA(g,f,{authorizedSigner:te,escrowContract:_,payee:v,currency:y,deposit:ee,initialAmount:b,chainId:h,feePayer:m?.feePayer});s.set(C,e.entry),c.set(e.entry.channelId,C),o.set(e.entry.channelId,_),T=e.payload,l(e.entry)}return vA(r,T,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?ny(a.cumulativeAmount,t):void 0,b=a.additionalDepositRaw?BigInt(a.additionalDepositRaw):a.additionalDeposit?ny(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 pA(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 yA(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 pA(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 vA(e,S,u,r)}return QO(wk,{context:SA,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 wA(e){let t=sb(e);return JSON.parse(t)}function TA(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 EA(e){return JSON.stringify({mpp:`authorization`,authorization:e})}function DA(){return JSON.stringify({mpp:`payment-close-request`})}function OA(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`&&kA(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`&&AA(t.data)?{mpp:`payment-need-voucher`,data:t.data}:t.mpp===`payment-receipt`&&kA(t.data)?{mpp:`payment-receipt`,data:t.data}:null}catch{return null}}function kA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.challengeId==`string`&&typeof t.channelId==`string`}function AA(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.channelId==`string`&&typeof t.requiredCumulative==`string`}let jA={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3};function MA(e){let t=e.fetch??globalThis.fetch,n=e.webSocket??globalThis.WebSocket,r=e.maxDeposit===void 0?null:ny(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,_=CA({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=hO({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`);ne(t),ne(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 C(e){if(!m)return;let t=m;m=null,t.reject(e)}function w(e){if(!f)return;let t=f;f=null,t.reject(e)}function T(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 ne(e){if(r!==null&&!(e<=r))throw Error(`requested voucher amount ${e} exceeds local maxDeposit ${r}`)}function re(e){let t=e.headers.get(`Payment-Receipt`),n=t?wA(t):null;return y(n),Object.assign(e,{receipt:n,challenge:a,channelId:i?.channelId??null,cumulative:i?.cumulativeAmount??0n})}async function ie(e,t){return o=e,re(await v(e,t))}function ae(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=jA.CLOSED,r=null}if(e===`open`&&(i=jA.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 — 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:ie,async sse(e,n){let{onReceipt:r,signal:o,...s}=n??{},c=await ie(e,{...s,headers:{..._O(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=TA(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);ne(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 T=WD(S).find(e=>e.method===_.name&&e.intent===_.intent);if(!T)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=T;let re=await _.createCredential({challenge:T,context:{}});d=null,c=T,h=0n,g=BigInt(T.request.amount);let ie=qO(re);l=ie.payload.channelId;let oe=new n(v,f);u=oe;let se=ae(oe),ce=e=>{C(Error(e)),w(Error(e)),(oe.readyState===jA.CONNECTING||oe.readyState===jA.OPEN)&&oe.close(3008,e)},le=e=>e.challengeId===T.id&&e.channelId===l,ue=new Promise((e,t)=>{let n=()=>{oe.removeEventListener(`error`,r),se.emit(`open`,{type:`open`}),e()},r=()=>{oe.removeEventListener(`open`,n),t(Error(`WebSocket connection to ${v} failed to open.`))};oe.addEventListener(`open`,n,{once:!0}),oe.addEventListener(`error`,r,{once:!0})});return oe.addEventListener(`close`,e=>{u===oe&&(u=null),c===T&&(c=null),l===ie.payload.channelId&&(l=null),p=null,C(Error(`WebSocket closed before the payment flow completed.`)),w(Error(`WebSocket closed before the payment flow completed.`)),se.emit(`close`,{code:e.code??1e3,reason:e.reason??``,type:`close`,wasClean:!0})}),oe.addEventListener(`error`,()=>{se.emit(`error`,{type:`error`})}),oe.addEventListener(`message`,async e=>{let t=typeof e.data==`string`?e.data:void 0;if(!t)return;let n=OA(t);if(!n){se.emit(`message`,{data:t,type:`message`});return}switch(n.mpp){case`authorization`:break;case`message`:h+=1n,se.emit(`message`,{data:n.data,type:`message`});break;case`payment-close-ready`:if(!le(n.data)){ce(`received mismatched payment-close-ready frame`);break}if(BigInt(n.data.spent)>(i?.cumulativeAmount??0n)){ce(`received payment-close-ready beyond local voucher state`);break}y(n.data),s?.(n.data),te(n.data),se.emit(`close`,{code:1e3,reason:`stream complete`,type:`close`});break;case`payment-error`:C(Error(n.message)),w(Error(n.message));break;case`payment-need-voucher`:{if(n.data.channelId!==l){ce(`received mismatched payment-need-voucher frame`);break}let e=BigInt(n.data.requiredCumulative);try{ne(e)}catch(e){ce(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:T,context:{action:`voucher`,channelId:l,cumulativeAmountRaw:t.toString()}});oe.send(EA(r));break}case`payment-receipt`:if(!le(n.data)){ce(`received mismatched payment-receipt frame`);break}if(p!==null&&n.data.txHash&&(n.data.acceptedCumulative!==p||n.data.spent!==p)){ce(`received mismatched payment-close receipt frame`);break}y(n.data),s?.(n.data),ee(n.data);break}}),m&&m.addEventListener(`abort`,()=>{C(Error(`WebSocket payment flow aborted.`)),w(Error(`WebSocket payment flow aborted.`)),oe.close()},{once:!0}),await ue,oe.send(EA(re)),await x(),se.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===jA.OPEN){let t=d??await(async()=>(u.send(DA()),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(EA(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(T(e,n));if(t>i.cumulativeAmount)throw Error(`fallback close amount exceeds local voucher state`);return ne(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?wA(m):void 0}}}function NA(e={}){return[uA(e),CA(e)]}(function(e){e.charge=uA,e.session=MA,e.subscription=qk})(NA||={});function PA(e){return e}function FA(){return PA({name:`http`,isPaymentRequired(e){return e.status===402},getChallenges(e){return WD(e)},getChallenge(e){return UD(e)},setCredential(e,t){let n=new Headers(e.headers);return n.set(`Authorization`,t),{...e,headers:n}}})}function IA(e){let{onChallenge:t,polyfill:n=!0,acceptPaymentPolicy:r=n&&globalThis.location!==void 0?`same-origin`:`always`,transport:i=FA()}=e,a=e.fetch??globalThis.fetch,o=e.methods.flat(),s=XD(o,e.paymentPreferences),c=vO(),l=t,u={acceptPayment:s,acceptPaymentPolicy:r,...e.fetch&&{fetch:e.fetch},eventDispatcher:c,...l&&{onChallenge:l},methods:o},d=hO(u);n&&gO(u);function f(e){return c.on(`challenge.received`,e)}function p(e){return c.on(`credential.created`,e)}function m(e){return c.on(`payment.failed`,e)}function h(e){return c.on(`payment.response`,e)}return{fetch:d,rawFetch:a,methods:o,transport:i,on:c.on,onChallengeReceived:f,onCredentialCreated:p,onPaymentFailed:m,onPaymentResponse:h,async createCredential(e,t,n){let r=i.getChallenges?i.getChallenges(e):[i.getChallenge(e)],a=KA(s.entries,n?.acceptPayment),l,u;try{let n=eO(r,o,a);if(!n)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 i=n.challenge;l=i,u=n.method,l.expires&&CD(l.expires,l.id);let s=LA(e=>qA(i,u,e??t)),d=await c.emit(`challenge.received`,RA({challenge:i,challenges:r,createCredential:s,method:u,response:e}))??await s();return RO(d),await c.emit(`credential.created`,zA({challenge:i,credential:d,method:u,response:e})),d}catch(t){throw await c.emit(`payment.failed`,BA({challenge:l,challenges:r,error:t,method:u,response:e})),t}}}}function LA(e){let t;return n=>(t??=e(n),t)}function RA(e){return Object.freeze({challenge:UA(e.challenge),challenges:e.challenges.map(e=>UA(e)),createCredential:e.createCredential,method:VA(e.method),response:HA(e.response)})}function zA(e){return Object.freeze({challenge:UA(e.challenge),credential:e.credential,method:VA(e.method),response:HA(e.response)})}function BA(e){return Object.freeze({...e.challenge?{challenge:UA(e.challenge)}:{},...e.challenges?{challenges:e.challenges.map(e=>UA(e))}:{},error:e.error,...e.method?{method:VA(e.method)}:{},response:HA(e.response)})}function VA(e){return GA(Object.assign({},e))}function HA(e){return e instanceof Response?e.clone():UA(e)}function UA(e){try{return WA(structuredClone(e))}catch{return GA(e)}}function WA(e){if(!e||typeof e!=`object`||Object.isFrozen(e))return e;Object.freeze(e);for(let t of Object.values(e))WA(t);return e}function GA(e){return!e||typeof e!=`object`||Object.isFrozen(e)||Object.freeze(e),e}function KA(e,t){return t?typeof t==`string`?ZD(t):t:e}async function qA(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 JA(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 YA(e={}){let{account:t}=e,n=await sS();return{accessKey:bS(n,t?{access:t}:void 0),keyPair:n}}function XA(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 ZA(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 QA(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 $A(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 OC({message:`Account \"${n}\" not found.`}):new AC({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(nj(t,e))return ej(t)}}return tj(l,{signable:r})}function ej(e){if(`keyPair`in e&&e.keyPair)return bS(e.keyPair,{access:e.access});if(`privateKey`in e&&e.privateKey)switch(e.keyType){case`secp256k1`:return vS(e.privateKey,{access:e.access});case`p256`:return _S(e.privateKey,{access:e.access})}throw new OC({message:`External access key cannot be hydrated for signing.`})}function tj(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 OC({message:`Account \"${e.address}\" cannot sign.`});switch(e.keyType){case`secp256k1`:return vS(e.privateKey);case`p256`:return _S(e.privateKey);case`webCrypto`:return bS(e.keyPair);case`webAuthn`:return yS(e.credential,{rpId:e.credential.rpId});case`webAuthn_headless`:return gS(e.privateKey,{rpId:e.rpId,origin:e.origin});default:throw new OC({message:`Unknown key type.`})}}function nj(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:py(e.selector)).toLowerCase():!0:!1)})}function rj(e,t){let{name:n,...r}=e;return Object.defineProperty(t,`name`,{value:n,configurable:!0}),Object.assign(t,r)}function ij(e={}){let{dialog:t=ee()?ie():re(),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.`),rj({icon:r,name:i,rdns:a},({getAccount:e,getClient:r,store:i})=>{let a=new Set,s=WC();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 DC);return}s&&(s.status!==`success`&&s.status!==`error`||(a.delete(r),s.status===`success`?t(s.result):n(new DC({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=VC({async request(e){let t=s.prepare(e);return i.setState(e=>({...e,requestQueue:[...e.requestQueue,{request:t,status:`pending`}]})),c(t.id)}},{schema:gD});async function u(e){if(!e||e.publicKey||e.address)return;let{accessKey:t,keyPair:n}=await YA();return{accessKey:t,keyPair:n,request:{...e,publicKey:t.publicKey,keyType:`p256`}}}function d(e,t,n){QA({address:e,keyAuthorization:fx(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=JA(n,{store:i});try{let e=await t(n,r??void 0);return ZA(n,{store:i}),e}catch(e){console.warn(`[accounts] silent sign with access key failed, removing key:`,e),XA(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:kw(iD.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:kw(iD.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 Ud(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:[kw(VE,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 Ud(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:[kw(VE,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 Ud(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:[kw(VE,e)]}):n},async authorizeAccessKey(t,n){let r=await u(t),i=await l.request({...n,params:[kw(iD.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:[kw(cD.parameters,e)]})},async swap(e,t){return await l.request(t)},async depositZone(e,t){return await l.request({...t,params:[kw(pD.parameters,e)]})},async withdrawZone(e,t){return await l.request({...t,params:[kw(mD.parameters,e)]})},async disconnect(){i.setState({accessKeys:[],accounts:[],activeAccount:0})}}}})}let aj=new Map;function oj(e,t){let{chains:n,feePayer:r,provider:i,store:a}=t,o=(()=>{if(r!==!1){if(typeof r==`string`)return cj(r);if(r?.url)return cj(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=aj.get(l);if(!u){let e=n.find(e=>e.id===c)??n[0],t=Ay(),r=i?sj(i,t):t;u=ih({chain:e,transport:o?lj(r,o,s):r,pollingInterval:1e3}),aj.set(l,u)}return u}function sj(e,t){return n=>({...t(n),async request({method:t,params:n}){return e.request({method:t,params:n})}})}function cj(e){return e.startsWith(`http://`)||e.startsWith(`https://`)?e:typeof window<`u`?new URL(e,window.location.origin).href:e}function lj(e,t,n){return r=>{let i=e(r),a=Ay(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=dS(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 uj(e,{enabled:t=!0,id:n}){if(!t||!n)return e();if(uj.cache.get(n))return uj.cache.get(n);let r=e().finally(()=>uj.cache.delete(n));return uj.cache.set(n,r),r}uj.cache=new Map;function dj(e){return new Promise((t,n)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>n(e.error)})}function fj(e,t){let n,r=()=>{if(n)return n;let r=indexedDB.open(e);return r.onupgradeneeded=()=>r.result.createObjectStore(t),n=dj(r),n.then(e=>{e.onclose=()=>n=void 0},()=>{}),n};return(e,n)=>r().then(r=>n(r.transaction(t,e).objectStore(t)))}let pj;function mj(){return pj||=fj(`keyval-store`,`keyval`),pj}function hj(e,t=mj()){return t(`readonly`,t=>dj(t.get(e)))}function gj(e,t,n=mj()){return n(`readwrite`,n=>(n.put(t,e),dj(n.transaction)))}function _j(e,t=mj()){return t(`readwrite`,t=>(t.delete(e),dj(t.transaction)))}function vj(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 yj(e={}){let t=typeof indexedDB<`u`?fj(`tempo`,`store`):void 0;return vj({async getItem(e){let n=await hj(e,t);return n===null?null:n},async setItem(e,n){await gj(e,n,t)},async removeItem(e){await _j(e,t)}},e)}function bj(e={}){let t=new Map;return vj({getItem(e){return t.get(e)??null},setItem(e,n){t.set(e,n)},removeItem(e){t.delete(e)}},e)}let xj=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 Sj(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 Cj=e=>t=>{try{let n=e(t);return n instanceof Promise?n:{then(e){return Cj(e)(n)},catch(e){return this}}}catch(e){return{then(e){return this},catch(t){return Cj(t)(e)}}}},wj=(e,t)=>(n,r,i)=>{let a={storage:Sj(()=>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 Cj(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},Tj=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},Ej=(e=>e?Tj(e):Tj);function Dj(e){let{chainId:t,maxAccounts:n,persistCredentials:r=!0,storage:i=typeof window<`u`?yj({key:`tempo`}):bj({key:`tempo`})}=e;return Ej(xj(wj(()=>({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 Oj(e){e.persist.hasHydrated()||await new Promise(t=>{e.persist.onFinishHydration(()=>t()),setTimeout(()=>t(),100)})}function kj(e,t){let n=Dw(e,t);if(n.error){let e=n.error.issues.at(0);throw e?.code===`invalid_union`&&e.note===`No matching discriminator`?new kC({message:`Unsupported method \"${t?.method}\".`}):new EC(-32602,`Invalid params: ${Aj(n.error.issues)}`)}return{...t,_decoded:n.data}}function Aj(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?Aj([t]):t.message}`)):[`${e.path.join(`.`)}: ${e.message}`]).join(`, `)}let jj=new Set;function Mj(e={}){let{adapter:t=ij(),chains:n=[nk,ak,rk],maxAccounts:r,persistCredentials:i,testnet:a,storage:o=typeof window<`u`?yj():bj()}=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=Dj({chainId:(a?n.find(e=>e.testnet)??n[n.length-1]:n[0]).id,maxAccounts:r,persistCredentials:i,storage:o}),l=(e={})=>$A({...e,store:c}),u;function d(e={}){let{chainId:t,feePayer:r}=e;return oj(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=BC();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`,L(e))),c.subscribe(e=>e.accounts.length>0,e=>{e?m.emit(`connect`,{chainId:L(c.getState().chainId)}):m.emit(`disconnect`,new AC)});function h(){if(c.getState().accounts.length===0)throw new AC({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(VC({...m,async request({method:t,params:r}){return await Oj(c),uj(async()=>{let i;try{i=kj(vD,{method:t,params:r})}catch(e){if(!(e instanceof kC))throw e;return await oj(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 L(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=JA(e,{store:c});if(n)try{let r=await a({...t,keyAuthorization:{address:n.address,...vx(n)}});return ZA(e,{store:c}),r}catch{return XA(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=F(await p.sendTransaction(l,{method:`eth_sendTransaction`,params:[kw(VE,l)]}),ip(L(c.getState().chainId),32),Pj);return{capabilities:{sync:a},id:e}}let u=await p.sendTransactionSync(l,{method:`eth_sendTransactionSync`,params:[kw(VE,l)]}),d=u.transactionHash,f=L(c.getState().chainId),m=F(d,ip(f,32),Pj);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 AC({message:`No accounts connected.`});let o=e?.tokens;if(!o||o.length===0)throw new CC({message:\"`tokens` is required.\"});let s=oj(e?.chainId,{chains:n,store:c});return await Promise.all(o.map(async e=>{let[t,n]=await Promise.all([KS(s,{account:a,token:e}),qS(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:L(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(Pj.slice(2)))throw Error(\"`id` not supported\");ep(e);let t=R(e,0,32),r=L(Number(R(e,32,64))),a=await oj(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 OC({message:`Address ${t} is not connected.`})}let a=r?n.filter(e=>r.includes(L(e.id))):n,o={};for(let e of a)o[L(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??op(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 kC({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 kC({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 kC({message:\"`deposit` not supported by adapter.\"});return await p.deposit(i._decoded.params[0],i);case`wallet_send`:{if(h(),!p.send)throw new kC({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_swap`:if(h(),!p.swap)throw new kC({message:\"`swap` not supported by adapter.\"});return await p.swap(i._decoded.params?.[0]??{},i);case`wallet_depositZone`:{if(h(),!p.depositZone)throw new kC({message:\"`depositZone` not supported by adapter.\"});let e=i._decoded.params?.[0]??{},t={...e,...e.feePayer===void 0?{}:{feePayer:_(e.feePayer)}};return await p.depositZone(t,i)}case`wallet_withdrawZone`:if(h(),!p.withdrawZone)throw new kC({message:\"`withdrawZone` not supported by adapter.\"});return await p.withdrawZone(i._decoded.params?.[0]??{},i);case`wallet_switchEthereumChain`:{let{chainId:e}=i._decoded.params[0];if(!n.some(t=>t.id===e))throw new PC({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:Tf({method:t,params:r})})}},{schema:gD}),{chains:n,getAccount:l,getClient(e={}){let{chainId:t,feePayer:r}=e;return oj(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,``)}`;jj.has(e)||(jj.add(e),yD({info:{icon:t.icon??Nj,name:t.name??`Injected Wallet`,rdns:e,uuid:crypto.randomUUID()},provider:v}))}return e.mpp&&IA({methods:[NA({getClient:({chainId:e})=>{let t=v.getClient({chainId:e}),n=v.getAccount();return Object.assign(t,{account:n})},mode:`pull`})]}),u=v,v}let Nj=`data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"1\" height=\"1\"><rect width=\"1\" height=\"1\"/></svg>`,Pj=Hg(rp(`TEMPO_5792`)),Fj={data:`__MPPX_DATA__`,error:`root_error`,root:`root`},Ij={serviceWorker:`__mppx_worker`,tab:`__mppx_tab`},Lj={challengeId:`data-mppx-challenge-id`,remaining:`data-remaining`};var Rj=class{name;constructor(e){this.name=`--mppx-${e}`}toString(){return`var(${this.name})`}};let zj={accent:new Rj(`accent`),background:new Rj(`background`),border:new Rj(`border`),foreground:new Rj(`foreground`),muted:new Rj(`muted`),negative:new Rj(`negative`),positive:new Rj(`positive`),surface:new Rj(`surface`),fontFamily:new Rj(`font-family`),fontSizeBase:new Rj(`font-size-base`),radius:new Rj(`radius`),spacingUnit:new Rj(`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: ${zj.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 Bj(e){let t=new URL(location.href);t.searchParams.set(Ij.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 Vj(e){let t=document.getElementById(Fj.data),n=wf(t.textContent),r=t.getAttribute(Lj.remaining);!r||Number(r)<=1?t.remove():t.setAttribute(Lj.remaining,String(Number(r)-1));let i=document.currentScript,a=i?.getAttribute(Lj.challengeId),o=a?(i.removeAttribute(Lj.challengeId),n[a]):Object.values(n).find(t=>t.challenge.method===e);return{...o,error(e){if(!e){document.getElementById(Fj.error)?.remove();return}let t=document.getElementById(Fj.error);if(t){t.textContent=e;return}let n=document.createElement(`p`);n.id=Fj.error,n.className=`mppx-error`,n.role=`alert`,n.textContent=e,document.getElementById(o.rootId)?.after(n)},root:document.getElementById(o.rootId),submit:Bj,vars:zj}}let Hj=Vj(`tempo`),Uj=String.raw,Wj=document.createElement(`style`);Wj.textContent=Uj`\n form {\n display: flex;\n flex-direction: column;\n gap: calc(${Hj.vars.spacingUnit} * 8);\n }\n button {\n background: ${Hj.vars.accent};\n border-radius: ${Hj.vars.radius};\n color: ${Hj.vars.background};\n cursor: pointer;\n font-weight: 500;\n padding: calc(${Hj.vars.spacingUnit} * 4) calc(${Hj.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`,Hj.root.append(Wj);let Gj=Mj({testnet:Hj.challenge.request.methodDetails?.chainId===ak.id||Hj.challenge.request.methodDetails?.chainId===ik.id}),Kj=document.createElement(`button`);Kj.innerHTML=`${Hj.text.pay===`Pay`?`Continue with`:Hj.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>`,Kj.onclick=async()=>{try{Hj.error(),Kj.disabled=!0;let e=await(async()=>{let e=await Gj.request({method:`eth_accounts`});return e.length>0?e.at(0):(await Gj.request({method:`wallet_connect`})).accounts[0]?.address})(),t=await NA({account:e,getClient:e=>{let t=e.chainId??Hj.challenge.request.methodDetails?.chainId;return ih({chain:[...Gj?.chains??[],ak,ik].find(e=>e.id===t),transport:Oy(Gj)})}})[0].createCredential({challenge:Hj.challenge,context:{}});await Hj.submit(t)}catch(e){let t=e instanceof Error&&`shortMessage`in e?e.shortMessage:void 0;Hj.error(t??(e instanceof Error?e.message:`Payment failed`))}finally{Kj.disabled=!1}},Hj.root.appendChild(Kj)})();</script>"